Terraform OpenStack Provider를 활용한 resource(instance 부터 network, volume 등)을 코드 기반으로 생성하고 삭제하는 방법에 대하여 알아보도록 하겠습니다. terraform을 써보신 분이라면 쉽게 이해하실수 있는 구조로 생성이 되어집니다. provider 정의 VM 생성을 위한 resource 들 생성 혹은 가져오기 가져온 ID 혹은 name을 통해 VM 생성 작업 수행 부가적으로 VM에 연결할 추가 resource 연결 OpenStack Provider는 terraform 작성시 두가지 방식을 사용할수 있다. (다른 provider도 동일한 형태이기는 하다.) resources datasources 간단하게 분류하면 resources는 신규로 생성하여 해..
cirros image를 이용해 다른 VM에 ssh로 접근하는 방법에 대하여 알아보도록 하겠다. (사실 이방법은 의미있는 작업은 아니나 debugging이 필요한 VM에 연결 가능한 VM이 cirros밖에 없었던 상황에서 유용하게 쓰여서 간단히 정리해보려 한다.) cirros image에는 openssh client가 아닌 dropbear client가 설치되어 있다. 하여 openssh key를 가지고 연결하려 하니 아래와 같은 에러가 발생되었고 (private-key는 copy&paste로..) $ ssh -i ./openssh-private-key centos@10.10.10.21 ssh: Exited: String too long아래와 같은 변환 작업을 통해 접속이 가능하였다. $ dropbear..
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..
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..
certbot을 이용한 무료 certification 생성하여 적용하는 과정에 대해 알아보자. 해당 내용은 아래와 같은 환경이 마련된 상태에서 진행되었다. kubernetes AWS route53 dns 등록 : example.com(가정사항) nginx-ingress : abc.example.com 실제 동작될 환경은 kubernetes 상에 동작되는 pod이며 해당 pod는 ingress로 외부에서 연결이 가능하다. ingress의 tls 항목에 secretName에서 사용할 인증서를 아래와 같은 과정을 통해 생성 및 적용해보자. certbot 준비 CentOS7 기준으로 아래와 같은 순서로 인증서 생성을 진행한다. yum install epel-release -y yum install certbot..
Kubernetes 환경에서 Logging 및 Monitoring을 위한 환경 구성에 대하여 알아보도록 하자. 먼저 사용되는 구성요소들은 다음과 같다. logging Fluent-bit (각 노드) -> elasticsearch -> grafana / kibana monitoring node_exporter (각 노드) -> prometheus -> grafana 각 구성요소는 다음과 같은 구성으로 이루어진다. component helm chart namspace persistence volume etc ElasticSearch elastic/elasticsearch(helm.elastic.co) LMA 사용 Fluentbit stable/fluent-bit LMA 미사용 elasticsearch로 lo..
매번 까먹어서 통신을 위한 domain 을 입력해야할때 몇번을 찾는 경우가 있어 이번 기회에 정리하고자 한다. [service-name].[namespace].svc.[cluster-name] 일반적으로 아래와 같이 kubernetes로 구동시켜진 pod에 exec 로 들어가 확인해보면 cluster name과 함께 service-name을 제외한 도메인을 확인할수 있다. [root@master001 ~]# kubectl exec -it jenkins-859966c5fb-cczrk -n jenkins cat /etc/resolv.conf nameserver 10.233.0.3 search jenkins.svc.cluster.local svc.cluster.local cluster.local options..
이슈사항 kubespray를 이용한 worker node scaleout시에 실패가 발생되는 현상 아래와 같은 docker client의 버전 이슈가 발생됨. RUNNING HANDLER [container-engine/docker : Docker | wait for docker] ****************************************************************************************************************************************************************** Wednesday 20 May 2020 00:08:17 +0000 (0:00:01.264) 0:05:48.031 ********* FAIL..
- Total
- Today
- Yesterday
- hashicorp boundary
- metallb
- K3S
- crashloopbackoff
- nginx-ingress
- mattermost
- aquasecurity
- openstack backup
- ceph
- Helm Chart
- azure policy
- Jenkinsfile
- vmware openstack
- wsl2
- kata container
- GateKeeper
- socket
- DevSecOps
- minikube
- kubernetes
- ansible
- jenkins
- minio
- openstacksdk
- macvlan
- kubernetes install
- OpenStack
- Terraform
- open policy agent
- boundary ssh
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |