기존에 helm chart를 통해 Application 배포를 수행했었다. helm을 사용하면서 아쉬웠던 부분은 helm value로 지정되어 있지 않거나 특정 resource를 추가하기 위해서는 helm chart 자체의 개선이 필요했다. 이로 인해 시간이 좀더 소요되었었고 이슈가 있을 경우 helm chart의 구조를 모르는 경우는 분석에 또 시간이 소요되었다. 이러한 이슈를 다르게 접근한 Kustomize라는 도구를 알게 되었고 이 단점들을 어느정도 보완해줄수 있는 도구라는 생각이 들었다. Kustomize 란 Kustomize는 사실 2017년부터 만들어졌고 소개되어왔다. 현재는 kubectl에 1.14부터 포함되어 사용이 가능하다. Kustomize는 선언적(declarative)를 지향한다. ..
LDAP연동을 한 Jenkins가 LDAP 연동과의 문제로 로그인이 불가한 상황이 있었다. 이와 같은 경우 UI상에서는 해결할수 있는 방법이 없어 이를 간단히 shell 상에서 변경하여 해결하는 방법을 기술하였다. 먼저 /var/jenkins_home/config.xml 파일을 확인하자. 해당파일이 실제 Configure Global Security에서 참조하는 파일이며 여기서 아래와 같은 useSecurity 항목을 수정해야 한다. 일반적으로 useSecurity element는 true로 설정되어 있을것이다. true위 useSecurity를 false 로 아래와 같은 명령을 통해 변경하고 cd /var/jenkins_home/ cp config.xml config.xml_old sed -i "s/u..
initcontainer를 사용하여 특정 volume에 데이터를 수정해야 하는 상황이 있고 이때 다수의 command line을 입력해주어야 하는 경우가 생겨 관련된 내용을 정리해보았다. 실제 initcontainer는 container가 동작되기 약 3초정도 후에 동작된것을 확인할수 있다. 즉 동시에 실행되는것은 아니고 initcontainer가 먼저 동작되고 완료된 이후 실제 서비스가 될 container가 동작되었다. (참고로 현재 환경은 이미 image가 pull 된 상태이다.) [root@node-003 ~]# crictl ps -a | grep openldap c680eec173823 e41f3abfaad4c 12 minutes ago Running openldap 0 80986d8ca7d21..
OpenStack API 요청을 cURL로 확인해야할 일이 있어 간단히 script으로 정리해보았다. step by step cURL과 같은 cli 기반의 요청을 위해서는 먼저 token 정보가 필요하다. 먼저 token을 가져오는 아래와 같은 요청을 먼저 수행하자. 우선 수행을 위해서는 당연하게도 openrc 파일내에 선언된 환경변수가 필요하다. [root@deploy ~]# source admin-openrc.sh [root@deploy ~]# curl -v -s -X POST $OS_AUTH_URL/auth/tokens?nocatalog \ -H "Content-Type: application/json" \ -d '{ "auth": { "identity": { "methods": ["password..
Kubernetes 환경에서 Backup과 Restore를 명령줄로 수행할수 있는 도구를 찾다가 Velero라는 도구가 있어 이를 사용해보면서 내용을 정리해보았다. https://github.com/vmware-tanzu/velero Velero란 Velero란 (이전에 알려진것은 Heptio Ark이다.) Kubernetes Cluster 자원과 PV(persistent Volume)들을 Backup하고 Restor 할수 있게 해주는 도구이다. https://velero.io/docs/main/ Velero는 다음과 같은 기능을 수행할수 있다. Backup과 Restore Backup의 scheduling Object Storage 로 Sync Cluster간 pod 부터 pv까지 자원 Migratio..
Certificate 인증서(Certificate)를 가진 서버에 사용자(browser)가 접근하려 할때 해당 인증서(Certificate)를 검증하게 되고 신뢰된 서버라는 검증이 완료되면 통신을 수행하게 된다. 이때 사용되는 검증시 사용되는 것이 인증서라 할수 있으며 여기 포함된 public key를 통해 암호화된 통신을 제공하게 된다. 참고로 인증서내에는 소유자의 검증을 위한 중요정보(ex. public key, 인증서 발급자, 연관된 subdomain 정보등)이 포함된다. 실제 Browser에서 인증서를 export 해보면 아래와 같은 정보를 확인해볼수 있다. Subject Name Issuer Name Issued Certificate Certificate Fingerprints Public Ke..
nginx-ingress를 사용해 다수의 subpath를 각 Application별로 지정해 접근할수 있는 환경을 만들어보고자 한다. ingress에서 subpath를 사용해야 하는 경우 아래와 같은 설정이 필요하다. (kubernetes 1.19.8 에서 아래 설정이 동작되었다.) apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: grafana-ingress namespace: monitoring annotations: nginx.ingress.kubernetes.io/rewrite-target: /$2 spec: rules: - host: "test.jacobbaek.com" http: paths: - path: /grafana(/|$)(..
아래 주소와 같이 바로 다운로드 및 실행이 가능한 환경을 만들고자 하는 need가 생겨 nginx web server로 구현하는 방법을 알아보았다. https://get.k3s.io/ nginx에서는 다음과 같은 setting을 추가하면 된다. (여기서는 8088의 임의의 port로 listen한 대상이 파일의 content를 포함하여 출력되도록 하였다.) server { listen 8088; location "/" { add_header Content-Type text/plain; try_files /k3s.sh =404; }결국 browser상에서 해당 파일을 뭐로 인지할것인지에 대한 부분으로 header에 content-type을 text/plain으로 표기하여 browser에서는 이를 text로..
- Total
- Today
- Yesterday
- vmware openstack
- ceph
- Jenkinsfile
- macvlan
- socket
- open policy agent
- openstack backup
- OpenStack
- kubernetes
- K3S
- boundary ssh
- mattermost
- nginx-ingress
- kubernetes install
- openstacksdk
- Terraform
- hashicorp boundary
- azure policy
- ansible
- minikube
- wsl2
- DevSecOps
- GateKeeper
- minio
- aquasecurity
- jenkins
- metallb
- Helm Chart
- crashloopbackoff
- kata container
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |