클라우드 네이티브 환경에서 Amazon EKS는 가장 강력한 컨테이너 오케스트레이션 플랫폼 중 하나입니다. 하지만 복잡한 분산 시스템에서 노드 수준의 문제는 피할 수 없는 현실입니다. 이 가이드는 EKS 노드의 잠재적 문제를 진단하고 해결하는 체계적인 접근법을 제공합니다.1. 노드 상태 진단1.1 초기 상태 점검# 노드 전체 상태 확인kubectl get nodes -o wide# 상세 노드 정보 추출kubectl describe node 노드 상태 유형Ready: 정상 작동NotReady: 문제 감지SchedulingDisabled: 스케줄링 제한Unknown: 통신 불가2. 리소스 병목 현상 심층 분석2.1 CPU 성능 모니터링평균 CPU 사용률 90% 초과 시 즉각 대응 필요주요 원인:비효율적 애플..
DevOps/Kubernetes
안녕하세요, 어제에 이어서 오늘 포스팅은 또 다른 쿠버네티스 골치거리인 ImagePullBackOff 상태에 대해 다뤄보겠습니다.🤔 ImagePullBackOff가 발생하는 이유Pod가 ImagePullBackOff 상태라면, 쿠버네티스가 컨테이너 이미지를 가져오는데 실패했다는 의미입니다. 📋 문제 확인하기먼저 자세한 에러 메시지를 확인해보겠습니다.# Pod 상태 확인kubectl get podskubectl describe pod 🚨 주요 원인과 해결방법1. 이미지 이름/태그 오타가장 흔한 실수, 이미지 이름이나 태그를 잘못 입력했을 수 있습니다.해결방법# deployment.yamlspec: containers: - name: my-app # 틀린 예: image: nginx:lates..
Kubernetes 클러스터를 운영하다 보면 종종 "ContainerCreating" 상태에 머물러 있는 파드(Pod)를 마주치게 됩니다. 이 상태는 단순해 보이지만, 실제로는 다양한 복잡한 메커니즘과 잠재적 문제들을 내포하고 있습니다.Kubernetes Pod 생성 워크플로우1. Pod 생성 요청Kubernetes 클러스터에 Pod 생성을 요청하면 다음과 같은 순차적인 프로세스가 시작됩니다: API Server 요청: 사용자나 컨트롤러가 API Server에 Pod 생성 요청 YAML/JSON 매니페스트 파일을 통해 Pod 스펙 정의 Scheduler 개입: API Server는 스케줄러에게 Pod 배치 요청 노드 선택 기준 리소스 가용성 노드 선택자(nodeSelector) 어피니티/안티 어피니티 규..
안녕하세요, 이번 포스팅에서는 ArgoCD의 애플리케이션의 변동사항을 슬랙을 통해서 수신하는 방법에 대해서 알아보겠습니다.1. 슬랙의 api 설정 (api.slack.com)application 설정 Your Apps에서 애플리케이션을 만들어줍니다.application의 이름을 설정하고, 설치할 슬랙의 workspace을 선택한 다음, Create App을 누릅니다.App Home에서 Scopes를 설정합니다.다음의 권한을 봇 토큰 범위에 넣습니다.chat:write, chat:write.customize를 넣어줍니다.(TMI: 공식 문서에 따르면 chat:write:bot, chat:write.customize의 설정이 필요하지만, 해당 내용 현재는 User와 Bot의 토큰 범위가 구분되고 있습니다.)..