버전업그레이드
-
PodDisruptionBudget을 이용한 Pod 재배치SystemEngineering/kubernetes 2021. 9. 7. 22:11
개요 쿠버네티스 환경을 운영하다 보면 클러스터의 노드를 변경해야 하는 순간이 온다. 이럴 때 교체 대상이 되는 노드를 drain 한다. drain은 노드 위에서 운영되고 있는 Pod를 다른 노드로 재 배치하고 Schedule을 중지시킨다는 내용이다. 하지만 drain을 무작정하게 되면 모든 파드가 동시에 재배치 되거나 헬스 체크를 통과하기 전에 다음 파드의 재배치가 시작되어 정상적인 파드가 하나도 없는 상태가 될 가능성이 있다. 이러한 현상을 예방해보자. 문제 상황 서비스되고 있는 Deployment가 드레인 상태의 노드에 스케줄링되어있을 경우 Node A 에서 drain을 하게 되면 service 1에 묶여있는 deployment는 동시에 재 배치되므로 이러한 경우에는 Node B와 Node C에 배치..
-
Custom AMI 로 EKS NodeGroup 배포CloudEngineering (AWS)/EKS 2021. 9. 4. 16:15
개요 EKS NodeGroup에 Custom AMI를 배포하는 법을 알아보겠다. EKS NodeGroup 즉, EC2에 각 보안 요소를 적용하거나 에이전트를 설치하여 Golden Image로 운영을 필요로 하는 분들이 많을 것이다. EKS NodeGroup은 기본적으로 AutoScaling이 적용되어 있기 때문에 서버가 Scale IN/OUT 될 때마다 보안 요소를 적용하고 에이전트를 일일이 설치할 수는 없을 것이다. Custom AMI 생성 노드 그룹에 적용할 Custom AMI는 EKS가 운영되는 클러스터의 버전에 맞는 이미지를 기반으로 생성해야한다. 또한, EKS 클러스터는 주기적으로 버전 업그레이드가 필요하다. 이때 노드 그룹(Data Plane) 또한 버전을 함께 변경해 줘야 한다. Custom..