전체 글
-
AWS FinOps Dashboard 설치와 활용 요약AWS/AWS FinOps 2025. 9. 4. 15:10
AWS FinOps Dashboard란?AWS FinOps Dashboard는 터미널에서 사용할 수 있는 AWS 비용 및 리소스 관리 도구입니다. Python과 Rich 라이브러리로 개발되었으며, AWS 계정의 서비스별 비용, EC2 인스턴스 상태, 예산 사용 현황 등을 한눈에 보여줍니다. 데이터를 CSV, JSON 등으로 쉽게 내보낼 수 있습니다.설치 과정 준비하기이 도구를 설치하려면 우선 Python이 PC에 있어야 합니다. Python이 없다면 공식 사이트(https://www.python.org/downloads)에서 다운로드 후 설치하세요. 그다음, AWS CLI도 필요하니, aws cli가 없다면 공식 가이드(https://docs.aws.amazon.com/cli/latest/userguid..
-
쿠버네티스 관측 가능성(Observability) 핵심 가이드Kubenetes 2025. 9. 4. 15:08
관측 가능성이란 무엇인가?관측 가능성은 시스템 내부 동작과 상태를 외부에서 파악할 수 있게 해주는 능력입니다. 쿠버네티스에서는 클러스터와 워크로드의 건강, 성능 병목, 자원 사용을 진단하고 개선하기 위해 다양한 데이터를 수집·분석합니다. 단순 모니터링보다 더 깊은 통찰력을 제공하여, 변화의 원인까지 파악할 수 있습니다.쿠버네티스 관측 가능성의 세 가지 기둥쿠버네티스 관측 가능성은 세 가지 데이터 축을 기반으로 합니다:메트릭: CPU 사용량, 실패한 파드 수 등 시간에 따른 수치 데이터로그: 각 컴포넌트가 기록하는 에러, 경고, 이벤트 등 메시지트레이스: 요청이 마이크로서비스 간에 어떻게 전달되는지 상세 경로 기록이 데이터들을 함께 모으고 분석해야 클러스터 전체의 상태와 문제점을 정확히 이해할 수 있습니다..
-
Kubernetes OOMKill 예방과 메모리 관리 실전 가이드Kubenetes 2025. 9. 4. 15:07
쿠버네티스의 메모리 요청과 제한 이해하기쿠버네티스에서 각 포드는 메모리 사용량을 요청(request)과 제한(limit)으로 지정할 수 있습니다. ‘요청’은 포드가 최소한으로 필요한 메모리, ‘제한’은 최대 사용할 수 있는 메모리입니다. 적절히 설정하지 않으면 일부 컨테이너가 과도하게 메모리를 잡아먹어 노드가 다운될 수 있으니 꼭 주의해야 합니다.resources: requests: memory: 512Mi limits: memory: 1Gi실시간 모니터링으로 조기 대응하기포드의 메모리 상태를 항상 체크해야 문제 발생 전에 막을 수 있습니다. Prometheus로 container_memory_usage_bytes 지표를 수집하고, Grafana로 경보(75%, 90% 등)를 설정하면 메모..
-
AWS EKS에서 Karpenter와 Spot 인스턴스 인터럽션 쉽게 이해하기AWS/EKS 2025. 9. 4. 15:06
EC2 Spot 인스턴스란?AWS EC2 Spot 인스턴스는 AWS가 남는 컴퓨팅 자원을 할인된 가격에 임시로 제공하는 서비스입니다. 수요에 따라 인스턴스가 예고 없이 종료될 수 있기 때문에, 비용은 저렴하지만 작업 중단을 감수해야 합니다.Karpenter의 역할과 장점Karpenter는 AWS에서 제공하는 오픈소스 Kubernetes 오토스케일러입니다. 클러스터의 상태와 워크로드를 분석해서 필요한 만큼 노드를 자동으로 생성하고 오토스케일링합니다. Spot 인스턴스와 온디맨드 인스턴스를 모두 사용할 수 있어, 자원을 효율적이면서도 경제적으로 운영할 수 있습니다.Spot 인스턴스 종료 지연 문제Spot 인스턴스가 종료될 때, 영속적인 볼륨을 사용하는 파드들은 볼륨이 제대로 분리되지 않아 재시작에 6분 이상..
-
Karpenter로 EKS 클러스터 자동 확장 쉽게 시작하기AWS/EKS 2025. 9. 4. 15:05
Kubernetes 확장의 어려움과 기존 방식의 한계Kubernetes를 운영하면서 트래픽이 증가하면 자동으로 노드를 늘려야 하는데, 기존 Cluster Autoscaler 방식은 미리 정해둔 노드 그룹이 필요하고, 설정이 복잡하며 확장 속도가 느립니다(수 분 소요). 특히 다양한 EC2 인스턴스 유형이 필요할 때마다 직접 노드 그룹을 만들어야 해서 관리가 번거롭고 자원 활용도가 떨어집니다.Karpenter란 무엇인가?Karpenter는 AWS가 개발하고 CNCF에 기증한 오픈소스 자동 노드 프로비저닝 컨트롤러입니다. 기존 방식과 다르게, Karpenter는 Kubernetes에서 필요할 때 EC2 인스턴스를 직접 생성해주어, 노드 그룹 없이도 다양한 인스턴스 유형을 자동 선택하고 빠르게 노드를 늘릴 수..
-
EKS 노드에서 삭제된 이미지를 ECR로 복구AWS/EKS 2025. 9. 4. 15:04
‼️ 문제 상황: ECR에서 이미지가 삭제된 경우개발 환경에서 사용 중인 이미지가 ECR에서 삭제되어, 파이프라인 재빌드도 불가능할 때가 있습니다. 그 이미지가 남아있는 유일한 곳이 EKS 노드라면, 직접 노드에서 이미지를 복구해야 합니다.준비 환경 요약아래 환경에서 작업을 진행합니다.EKS 클러스터: 1.30.3Kubectl: 1.30.1Containerd: 1.7.11Runc: 1.1.11EKS 노드에 접속하는 방법EKS 노드에 원격으로 접근하려면 AWS 콘솔에서 세션 매니저를 사용하면 편리합니다. 인스턴스의 connect 옵션을 누르면 바로 접속할 수 있습니다.노드에서 이미지 확인하기관리자로 권한을 얻은 후, nerdctl 명령어로 노드에 저장된 이미지를 조회할 수 있습니다.sudo -snerdct..
-
AWS 기반 AI 이미지 검증 툴 만들기 지식 카드AI 2025. 9. 4. 15:02
Amazon Q 도구 설치 및 시작 방법Amazon Q CLI를 설치하려면 공식 문서를 참고해 환경에 맞게 설치합니다. 설치 후 빌더 ID로 설정을 마치고, q chat 명령어를 입력해 Q 세션을 시작할 수 있습니다.MCP 서버 연결 설정이미지 검증 프로젝트에서는 AWS Diagram MCP 서버를 사용했습니다. 아래와 같이 설정 파일(mcp configuration)을 작성해 MCP 서버를 연동합니다.{ mcpServers: { awslabs.aws-diagram-mcp-server: { command: uvx, args: [awslabs.aws-diagram-mcp-server], env: { FASTMCP_LOG_LEVEL: ERROR }, autoAppr..
-
Amazon Q CLI와 MCP 서버로 데이터베이스 다루기AI 2025. 9. 4. 14:51
Amazon Q CLI 설치 및 세션 시작Amazon Q CLI를 사용하려면 공식 문서에 따라 설치 후, Builder ID로 인증을 완료해야 합니다. 설치가 끝나면 q chat 명령어로 세션을 시작할 수 있습니다.MCP 서버와 연동하기Amazon Q CLI는 MCP 서버(예: Postgres)를 통해 외부 데이터베이스와 연결할 수 있습니다. 연결할 때는 다음 형식의 설정 파일이 필요합니다.{ mcpServers: { postgres: { command: npx, args: [ -y, @modelcontextprotocol/server-postgres, postgresql://USERNAME:PASSWORD@HOST:5432/DBNAME ..