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 NameIssuer NameIssued CertificateCertificate FingerprintsPublic Key InfoEx..
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로..
Cluster API VMWARE에서 시작한 OpenSource Project로 Kubernetes의 서브 프로젝트로 선언적 API들과 다수의 Kubernetes Cluster들을 쉽게 운영하고 업그레이드, 배포하기 위한 도구로서 제공되는것에 초점을 맞추고 있다. Cluster API는 kubernetes cluster 전체주기관리(생성,설정,업그레이드,제거)에 대한 선언적인 접근과 kuberetes 스타일의 API를 가져오는 프로젝트이다. Cluster API를 통해 다음과 같은 기능을 수행할 수 있다. multi-master 안정된 Kubernetes cluster들을 배포할수 있다. Kubernetes cluster 초기의 요구되는 모든것을 배포하고 관리할수 있다. 보안 best practices를..
요근래 ubuntu를 사용하면서 CVE 취약점 에 대응하기 위해 찾아보다 보니 좀 이해가 되지 않는 문구(단어)들이 있어 이를 영문으로 정리되어 있는 페이지를 기반으로 다시 한글로 정리해보았다. 먼저 Ubuntu에서 제공하는 CVE 기반 페이지이다. https://ubuntu.com/security/cves 위 페이지에는 다음 과 같은 5가지의 상태정보가 기입되어 있다. Status Description DNE Does Not Exist 의 약자로 관련 패키지(영향도가 있는)가 존재하지 않는다는 의미 released 공식 저장소에 업데이트된 패키지가 발행되었다. needs triage 관련 패키지가 여전히 지원되고 있는 패키지이나 해당 패키지의 영향도에 대한 판별을 위한 작업이 필요하다. needed 업..
- Total
- Today
- Yesterday
- aquasecurity
- kubernetes install
- open policy agent
- openstack backup
- Terraform
- kata container
- boundary ssh
- metallb
- K3S
- minio
- DevSecOps
- macvlan
- hashicorp boundary
- Jenkinsfile
- OpenStack
- Helm Chart
- vmware openstack
- minikube
- mattermost
- jenkins
- openstacksdk
- kubernetes
- crashloopbackoff
- nginx-ingress
- ceph
- GateKeeper
- socket
- ansible
- azure policy
- wsl2
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |