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..
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..
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..
helm을 신규로 만들게 되면 helm chart repo를 개인적으로 소유해야 하는 경우가 발생되기도 한다. 이러한 경우 어떻게 repo를 만들어서 추가하여 사용할 수 있는지 알아보도록 하자. helm chart repo on localhost 우선 helm chart를 localhost에서 구동해보자. 물론 chart museum이나 minio(s3)같은 환경을 활용해도 무방하다. 여기서는 간단히 동작을 알아보기 위해 간단히 python webserver로 동작시키는 방식을 사용했다. 우선 여러개의 helm chart가 존재하는 디렉토리로 이동해 다음과 같은 helm chart repo로 동작되게 하기 위한 준비과정을 수행한다. python http.server 모듈을 이용한 웹서버 구동 jacob@..
이슈사항 및 발생원인 production 환경에서 잘못해서 PVC를 삭제한 경우 어떻게 대처하고 재생성을 하였는지를 기록해보고자 한다. 실수로 dev 환경으로 착각하고 아래와 같은 명령어를 실행하였다. [root@kube ~]# kubectl delete pvc/spinnaker-minio -n spinnaker실제 pvc는 volumeattached 명령어로 확인해본 결과 아직 attached 상태이기에 pv가 삭제되지는 않았다. (다시한번 production에 대한 permission 관리와 다양한 접근제어가 필요하다는 생각을...) [root@kube ~]# kubectl get volumeattachment -n spinnaker NAME ATTACHER PV NODE ATTACHED AGE cs..
이슈사항 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
- vmware openstack
- metallb
- ansible
- macvlan
- minio
- kata container
- ceph
- wsl2
- crashloopbackoff
- Helm Chart
- socket
- DevSecOps
- K3S
- hashicorp boundary
- openstack backup
- azure policy
- mattermost
- Jenkinsfile
- jenkins
- Terraform
- OpenStack
- open policy agent
- boundary ssh
- kubernetes install
- kubernetes
- minikube
- openstacksdk
- nginx-ingress
- aquasecurity
- GateKeeper
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |