cka

· CKA
오토스케일링 기본 개념 및 유형쿠버네티스에서 오토스케일링은 리소스 수요 변화에 탄력적이고 효율적으로 대응할 수 있도록 워크로드를 자동으로 업데이트하는 능력을 의미한다. 쿠버네티스는 세 가지 주요 오토스케일링 방식을 제공한다. 오토스케일링 유형HPA (Horizontal Pod Autoscaler): 파드의 복제본 수를 조정하는 수평적 스케일링VPA (Vertical Pod Autoscaler): 개별 파드의 CPU와 메모리 요청값을 조정하는 수직적 스케일링Cluster Autoscaler: 클러스터의 노드 수를 조정하는 클러스터 레벨 스케일링 HPA 심화 이해HPA 기본 개념 및 작동 원리HPA는 워크로드 리소스(디플로이먼트, 스테이트풀셋 등)를 자동으로 업데이트하여 수요에 맞게 워크로드 크기를 자동으로..
· CKA
로깅과 모니터링 기본 개념쿠버네티스 환경에서는 로그를 로컬 디스크에 저장하지 않고, 중앙집중형 스토리지(클러스터 레벨 로깅)를 사용하는 것이 권장된다.파드의 로그는 kubectl logs 명령으로 직접 확인할 수 있다.컨테이너 로그는 컨테이너 런타임(예: Docker, containerd)이 관리한다.시스템 컴포넌트 로그(kubelet, 컨테이너 런타임 등)는 별도의 방식으로 수집된다. 클러스터 레벨 로깅컨테이너, 파드, 노드의 생명주기와 분리된 외부 스토리지에 로그를 저장해야 장애 상황에서도 로그를 확인할 수 있다.쿠버네티스는 자체적으로 클러스터 레벨 로깅 도구를 제공하지 않으며, 외부 도구(예: ELK, Fluentd, Loki 등)와 연동해 구축한다. 모니터링 아키텍처코어 메트릭 파이프라인: 쿠버..
· CKA
쿠버네티스 DNS 기본 개념쿠버네티스는 클러스터 내부에서만 사용하는 DNS 시스템을 제공한다.파드, 서비스 등 리소스 간 통신 시 IP 대신 도메인 이름을 사용할 수 있다.서비스 디스커버리(내부 서비스 탐색) 용도로 활용된다. DNS 네이밍 규칙 및 구조서비스 도메인: 서비스이름.네임스페이스.svc.cluster.local파드 도메인: 파드IP.네임스페이스.pod.cluster.local파드 템플릿에서 .spec.template.spec.hostname과 .spec.template.spec.subdomain을 설정해 도메인 이름을 커스터마이즈할 수 있다. DNS 정책 및 설정.spec.dnsPolicy 필드로 파드의 DNS 정책을 지정한다.Default: 노드의 DNS 설정 사용ClusterFirst: ..
· CKA
클러스터 네트워킹 기본 개념쿠버네티스는 파드마다 고유한 IP를 할당하여, 파드 간 직접 통신이 가능하도록 설계되었다.파드는 하나 이상의 컨테이너로 구성되며, 같은 파드 내 컨테이너들은 동일한 네트워크 네임스페이스(IP, 포트)를 공유한다.파드의 네트워크 인프라는 pause 컨테이너(파드 내 네트워크 네임스페이스를 유지하는 인프라 컨테이너)가 담당하며, 사용자 컨테이너는 pause 컨테이너의 네트워크 네임스페이스를 공유한다.여러 노드로 구성된 클러스터에서 각 노드에 배포된 파드들은 IP를 통해 서로 통신한다.파드는 하나 이상의 컨테이너로 구성되며, 같은 파드 내 컨테이너들은 동일한 네트워크 네임스페이스(IP, 포트)를 공유한다. 클러스터 네트워킹 구조 각 노드에는 여러 파드와 kube-proxy가 존재한다..
· CKA
시크릿 기본 개념 및 YAML 구조시크릿(Secret)은 암호, API 키, 인증 토큰과 같이 민감한 데이터를 저장하고 관리하기 위한 쿠버네티스 오브젝트다. 시크릿을 사용하면 이러한 민감한 정보를 파드 정의(YAML) 파일에 직접 하드코딩하는 것을 피할 수 있어 보안을 강화하고 설정 관리를 유연하게 할 수 있다. 기본 시크릿 YAML 예시가장 일반적인 Opaque 타입의 시크릿 예시다. stringData 필드를 사용하면 값을 Base64로 인코딩하지 않고 평문으로 편리하게 작성할 수 있다.apiVersion: v1kind: Secretmetadata: name: my-secrettype: OpaquestringData: username: "admin" password: "my-secure-pass..
· CKA
컨피그맵 기본 개념 및 YAML 구조컨피그맵(ConfigMap)은 애플리케이션 코드와 설정을 분리하기 위해 사용하는 API 오브젝트다. Key-Value 쌍 형태로 비-기밀(non-confidential) 설정 데이터를 저장한다.주요 목적: 컨테이너 이미지에 하드코딩된 설정 값을 외부로 분리하여, 배포 환경에 따라 유연하게 설정을 변경할 수 있도록 한다.저장 데이터: 환경 변수, 커맨드 라인 인수, 설정 파일 등 기본 컨피그맵 YAML 예시app-color와 app-mode라는 두 개의 설정 값을 갖는 컨피그맵 예시다.apiVersion: v1kind: ConfigMapmetadata: name: my-configdata: app-color: blue app-mode: "production" YAM..
belljun
'cka' 태그의 글 목록