2025/12/21 5

[쿠버네티스 튜토리얼] 7. 쿠버네티스의 리소스 조절

본 글은 GPT 정리를 참고하였습니다. 쿠버네티스(Kubernetes)에서 “리소스 조절”은 크게 2가지 의미로 쓰인다.한 컨테이너/파드(Pod)가 쓰는 CPU·메모리 양을 정하는 것부하에 따라 파드/노드 개수를 자동으로 늘리고 줄이는 것1) 가장 기본: requests / limits (리퀘스트 / 리밋)파드 안의 컨테이너마다 CPU, 메모리 사용량을 어느 정도로 잡을지를 선언한다.requests (요청량): “최소 이 정도는 필요”쿠버네티스 스케줄러(Kubernetes Scheduler)가 파드를 어느 노드(Node)에 올릴지 결정할 때 참고한다.limits (제한량): “최대 이 이상은 못 씀”실행 중 제한을 넘으면 제어가 들어가게 된다.CPU는 보통 쓰로틀링(throttling, 속도 제한)이 걸..

[쿠버네티스 튜토리얼] 6. Helm 설치 및 애플리케이션 관리

Kubernetes에서는 복잡한 애플리케이션 배포를 쉽게 하기 위해 Helm 패키지 매니저를 널리 사용한다.Helm은 차트(Chart)라는 단위로 Kubernetes 매니페스트들을 묶어 패키징하고, 템플릿화하여 재사용 가능하게 한다. 차트는 애플리케이션(예: WordPress, MySQL 등)의 Kubernetes 리소스 정의들을 포함하며, 값 파일(values.yaml)을 통해 환경별 설정을 바꿀 수 있다. 간단히 말해, Helm은 Kubernetes 세계의 apt/yum/npm 같은 패키지 매니저이다. (사용법은 도커허브와 유사하다.)차트를 이용하여 복잡한 앱을 한 줄로 설치하거나, 버전 관리를 할 수 있다.Helm CLI 설치 (로컬 환경)Helm 설치Ubuntu에서는 snap으로 설치하거나, 스크..

2025년 12월 3주차 회고

감사가 무너지면 꾸준함이 무너진다.조급해지기 전에, 대안을 찾기전에, 충분히 감사했나?이번 주의 감사알림을 무사히 발송해봤다.쿠버네티스를 써보면서 얻은 인사이트의 기록 및 네트워크에 대한 깊은 이해항상 무언가를 수행하기.체계적인 상태를 유지하기.큰그림 그리고 핵심 짚기.처음부터 끝까지 차근차근 전개하기.현 시스템에 대한 감사를 유지하기.보상 체계를 깨끗히 유지하기.입장 중심이 아닌 이익 중심으로 사고하기.윈-윈 전략 생각하기.단정 짓지 말고, 다음에 무엇을 해야 할 지 상상하기.내가 놓치고 있는 부분이 분명히 존재한다는 걸 인정하기.상대방이 어떤 점을 해결해 주는 것을 원하는가?지금 내가 다음에 무엇을, 어떤 절차로 해야 하는가?이번주에 한 것푸쉬알림 동작 성공쿠버네티스 학습핀잇 쿠버네티스 마이그레이션핀..

문제가 발생했을 때의 해결 방법

경험칙 위주로 나열할 것이기 때문에, 신뢰도가 떨어질 수 있다는 걸 인지하고 있다. 스스로 판단하고 취사선택해주길 바란다. 디버깅 준비문제를 한눈에 이해하기 쉽게 글/도식으로 정리해라.문제를 글 혹은 도식으로 정리하는 과정에서 문제의 원인이 뭔지 나온다.문제의 내가 통제할 수 있는 값들은 무엇이 있는가?문제의 내가 통제할 수 없는 값들은 무엇이 있는가?위 값들로 인해 출력되는 결과는 무엇인가? 그리고 어떠한 결과를 원하는가?"재현/롤백할 수 있는 환경"을 구축해라.빠르게 재현 가능하면서, 반복적으로 재현 가능한 환경을 구축해라.당신의 전문 지식을 발휘할 수 있는 순간이다.이게 안 되어 있다면, 주어진 문제보다 더 중요한 문제가 준비되어있지 않은 것이다.한번 시도하는 데 빠르게 재현하기 어려워지면, 디버..

[쿠버네티스 튜토리얼] 5. 쿠버네티스 네트워크 동작원리

쿠버네티스 네트워킹은 Pod 간 통신, 서비스 디스커버리, 외부 접근 등을 포함한다.앞서 서비스, 인그레스 등을 다뤘지만, 이번에는 내부 네트워크 동작 원리에 초점을 맞춰 간략히 정리한다.Pod간 통신 관점Pod IP 및 통신Kubernetes에서 각 Pod는 고유 IP를 갖는다 (Pods are given unique IPs). 클러스터 내 모든 Pod는 하나의 가상 네트워크에 연결되어 있으며, IP를 통해 서로 직접 통신 가능하다. (클러스터의 CNI 플러그인, k3s 기본은 Flannel VXLAN이 이를 구현)즉, Pod A에서 Pod B의 IP로 요청을 보내면, 노드 경계와 상관없이 네트워크 패킷이 전달된다. 이는 kube-proxy와 CNI가 협력하여 이루어진다.그러나 직접 Pod IP를 사용..