-
이슈 1 : 마스터 노드에 pod가 배포되어 부하로 인해 접근이 불가
-> 마스터 노드에 taint를 걸어서 pod가 배포되는 것을 방지
이슈 2 : 워커 노드에 하나의 pod가 부하를 일으켜 접근이 불가
-> pod 별로 리소스 사용량 limit을 걸음
Deployment : 배포 관련 편의 기능 제공
이슈 3 : 변경 사항이 반영되지 않음
JAVA 서비스에서 properties만 수정 시 이미지 변경을 캐치하지 못하여 변경 사항이 벼ㅏㄴ영 안됨
-> rollout 통해서 강제 재시작 가능
이슈 4 : 내 Pod가 배치 작업에 영향을 받음
배치 작업을 별도 노드로 분리 (노드에 레이블 설정)
operation = true 인 노드에만 배포
이슈 5 : 내 파드들이 하나의 노드메만 배포됨
천재지변이 있을 수 있으므로 여러 노드에 배포 하는게 좋음
podAntiAffinity로 골고루 배치하도록 설정. (A에 배치하려니 어 이미 있네. 다른 곳에 배치)
이슈 6 : 재배포가 안되는 상황
배포될 곳이 없어서 기다리는 상황 (affinity/anti-affinity) 노드를 증설
이슈 7,8 : ACL 문제 (애플리케이션을 포트로 분리했을 때), 포트가 기억이 안나는 문제
Ingress의 Path 기반 라우팅으로 해결. port를 사용하지 않음. ingress 포트만 뚫으면 됨
이슈 9 : Pod는 살아있는데 App 이 비정상이 경우 : Liveness Probe 통해서 원하는 방식으로 헬스체크를 가능
이슈 10 : 재배포 시 순단 발생 : Readiness Probe로 해결. 컨테이너가 준비가 되었는지, 요청을 받을 수 있는 상태가 아니면 요청 쏘지 않음
레퍼런스
'NHN forward 22 K8s 도입하면 서 겪은 일들'