Predefined Should have packages jq (https://stedolan.github.io/jq/download/) openstacksdk (https://docs.openstack.org/openstacksdk/latest/user/) Defined variables for using script. ImageName="centos7" VmName="TestVM" Flavor="m1.large" Keypair="testvm-key"gathering UUID and names flavorUuid=`openstack flavor list -f value | grep $Flavor | awk '{print $1}'` echo "flavor uuid : "$flavorUuid..
jq command installation stedolan.github.io/jq/download/ Examples1 우선 다음과 같은 json data가 있다고 가정하자. jacob@jacob-laptop:~$ cat data.txt { "pools": [ { "name": "volume1", "id": 1, "size_bytes": 100 }, { "name": "volume2", "id": 2, "size_bytes": 200 }, { "name": "volume3", "id": 3, "size_bytes": 300 } ], "total": 600 }pools내에 각 pool내 name, id를 pool에 맞춰서 출력해보도록 하자. jacob@jacob-laptop:~$ cat data.txt | ..
Jenkinsfile 을 통한 pipeline 구성시 groovy를 사용해야 해서 겸사겸사 간단히 테스트 가능한 환경 구성과 몇몇 예제 syntax를 정리한다. Groovy 설치 https://groovy-lang.org/install.html java_home export가 되어있어야 한다. 즉, jdk, jre 같은 JAVA_HOME 설정시 지정경로를 사용할 package 설치를 우선수행해주어야 한다. Examples list에 value를 추가 하여 list를 출력 def tlst = [] tlst.add(1) tlst.add(2) tlst.add(8) println(tlst)map으로 할당된 value를 key로 찾아 출력하는 example def kvmap() { kv = [:] kv['..
clouds.yaml이란? OpenStack이 다수 존재하는 경우 sdk를 이용하거나 openstack command를 이용하여 관리하고자 할때 사용하는 template 이라 보면 된다. https://specs.openstack.org/openstack/openstack-specs/specs/clouds-yaml-support.html 참고로 openstack으로 public cloud service를 하는 대상들도 사용할 수 있다. 그예로 platform9이 있다. https://docs.platform9.com/openstack/cli-access/multi-cloud-cli/ 사용을 위한 준비 우선 다음과 같은 구조의 파일을 생성해야 한다. (자동으로 생성해주지는 않고 형식을 맞춰 생성한다.) c..
Kubernetes 환경에서 Jenkins helm chart로 Jenkins를 사용하니 ssh를 통한 node 등록이 default로 활성화 되어 있지 않았다. 하여 plugin 설치와 함께 ssh를 통한 node(slave) 등록 방법에 대하여 알아보도록 하겠다. plugin 설치 아래 plugin이 설치되어 있어야 한다. https://plugins.jenkins.io/ssh-slaves/ node(slave) 추가 위 plugin 설치가 완료되면 new node항목을 클릭하여 node를 추가한다. 이름을 추가하고 지속적으로 사용할 예정이기에 Permanent Agent 를 선택하고 name을 추가하여 생성을 진행한다. 아래와 같이 Launch agents via SSH 라는 메뉴가 활성화 되어 있..
NAT Loopback (or Hairpin) NAT 환경에서 NAT 뒷단에 두개의 서버 (Server A, Server B)가 있는 상황 Server B는 public ip로 서비스를 하고 있는 상황이며 Server A에서는 public ip로 Server B에 접속해야 하는 상황 이와 같은 경우 연결이 이루어지지 않는다. 이를 NAT loopback 혹은 hairpin 이라고 이야기 한다. iptables를 통한 연결방법 다음과 같은 rule을추가한다. # router: # - eth0 : 82.120.11.22(public IP), # - eth1 : 192.168.1.1(internal IP) # Server a (src) : 192.168.1.100 # Server a (dst) : 192.16..
nginx-ingress와 namespace nginx-ingress는 기본적으로 모든 namespace의 resource를 control할 수 있도록 배포가 되어진다. 해당 개념과는 다르게 지정된 namespace의 resource만을 control할수 있게도 가능하다. 이번에는 지정된 namespace의 resource만 control 되는 환경에서 다른 namespace에 있는 service를 backend로 가지는 ingress를 생성하는 방법에 대하여 알아보도록 하겠다. 참고로 아래 링크에 namespace를 지정하는 방식에 대한 설명이 있으니 한번 참고해 보면 좋을듯하다. https://docs.nginx.com/nginx-ingress-controller/installation/running..
Github plugin Jenkins pipeline job의 경우 기본 github plugin으로는 job 실행이 되지 않는다. https://plugins.jenkins.io/github/ 물론 우회할수 있는 방법이 있긴하다. 우회방법은 아래와 같다. freestyle job을 생성 (해당 job은 build other projects를 post-build actions으로 지정)하고 아래 trigger 설정을 추가한다. projects to build에 지정된 job에 pipeline 선언 (사전에 pipeline Job은 생성되어 있다는 가정) 이후 github에 설정을 추가한다. 요약하자면 두개의 job을 생성한다. 하나는 freestyle job, 나머지는 pipeline job으로 생성하..
- Total
- Today
- Yesterday
- wsl2
- Helm Chart
- azure policy
- socket
- nginx-ingress
- aquasecurity
- crashloopbackoff
- hashicorp boundary
- macvlan
- Terraform
- ceph
- kata container
- K3S
- Jenkinsfile
- vmware openstack
- mattermost
- open policy agent
- boundary ssh
- GateKeeper
- minikube
- DevSecOps
- OpenStack
- kubernetes
- metallb
- openstacksdk
- openstack backup
- kubernetes install
- jenkins
- ansible
- minio
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |