본문 바로가기

Kubernetes4

[Kubernetes] Kubernetes 버전 업그레이드 시 주의사항 Cordon특정 노드를 스케줄러에서 제외시켜 파드가 할당되지 않도록 합니다.기존에 노드에 배포된 파드는 그대로 남아있습니다.노드의 status에 Ready외에 SchedulingDisabled가 추가됩니다.kubectl cordon kubectl uncordon   Drain특정 노드를 스케줄러에서 제외시켜 파드가 할당되지 않도록 하고, 기존에 배포된 파드를 다른 노드로 이동시킵니다.노드를 업데이트 하는 경우 활용 가능합니다.노드의  status에 Ready외에 SchedulingDisabled가 추가됩니다.kubectl drain orkubectl drain --ignore-daemonsets --force  주의 사항1. Pod가 emptyDir을 사용하여 Local Data를 저장하는 경우empt.. 2025. 1. 20.
[Kubernetes] Nginx Controller에 Let’s Encrypt 인증서 등록(DNS01) http01에서는 와일드카드 인증서 발급이 불가하기 때문에 dns01 방식을 사용합니다. 해당 테스트는 Azure의 Kubernetes를 사용하여 진행하였습니다. 사전 준비1. Nginx Controller를 설치합니다.2. 테스트 용도의 Pod 또는 Deployment와 Cluster IP 타입의 Service를 생성합니다.3. DNS Zone Contributor 이상의 권한을 가진 Service Principal을 Azure Kubernetes에게 할당합니다.  Helm으로 Cert-Manager 설치하기Cert-Manager는 Kubernetes 클러스터 내에서 SSL/TLS 인증서를 관리하는 도구 입니다(컨드롤러).사용자와 Provider(letsencrypt) 중간에서 중계해주는 역할을 합니다.. 2025. 1. 20.
[Kubernetes] Pod 또는 Deployment 생성 시 주의 사항 장애 상황1. 다음 명령어를 사용하여 Deployment와 Service를 생성합니다.// Deployment 생성kubectl create deploy --image=nginx:latest --port=8080 --replicas=1// Service 생성kubectl expose deploy --name= --port=80 --target-port=8080 2. Nginx Ingress Controller를 설치하고 Ingress를 생성합니다.apiVersion: networking.k8s.io/v1kind: Ingressmetadata: name: nuri-ingress namespace: nurispec: ingressClassName: nginx rules: - host: balan.. 2025. 1. 20.
[Kubernetes] Nginx Controller에 Let’s Encrypt 인증서 등록(http01) Kubernetes에 올라가 있는 웹에 https로 통신해야 하는 경우 Let’s Encrypt 인증서를 발급하고 적용할 수 있다. 해당 테스트에서는 Nginx Ingress Controller를 사용해서 테스트 합니다.와일드카드 인증서를 발급할 경우 DNS01 문서를 참조해주세요  사전 준비Nginx Controoler 설치테스트 용도의 Pod 또는 Deployment와 Cluster IP 타입의 Service 생성 Helm으로 Cert-Manager 설치하기Cert-Manager는 Kubernetes 클러스터 내에서 SSL/TLS 인증서를 관리하는 도구(컨트롤러)사용자와 Provider(letsencrypt) 중간에서 중계 역할Kubernetes에 배포될 때 cert-manager는 자동으로 ingr.. 2024. 9. 25.