DevOps/Kubernetes

[Kubernetes][CKA] 개요

박한결 2023. 12. 12. 22:17

개요

  • $395
    • 계속 가격이 올라감
    • 시험을 볼 생각이 있으면 미리 사두는 편이 좋을 것 같다
  • 온라인 시험 ( 감독관 존재 )
    • 12개월 내에 재응시 가능 
    • hans-on (실습) 시험 
  • 기술이 어떻게 동작하는지 알아야 함
    • kubernetes 공식 document 항시 확인 가능
    • 암기가 많이 필요하진 않음

상세내용

  • CLI 실습 문제
  • 2시간
Domain Weight
Cluster Architecture, Installation & Configuration 25%
Workloads & Scheduling 15%
Services & Networking 20%
Storage 10%
Troubleshooting 30%

 

Cluster Architecture, Installation & Configuration

Kubernetes 클러스터의 기본 구조와 구성 요소를 이해하고, 클러스터를 설치 및 구성하는 방법

  • Manage role based access control (RBAC)
    • RBAC(Role-Based Access Control)를 사용하여 Kubernetes 리소스에 대한 접근을 제어하는 방법
    • 사용자와 그룹에 특정 역할을 할당하고, 권한을 관리하는 방법
  • Use Kubeadm to install a basic cluster
    • Kubeadm은 Kubernetes 클러스터를 쉽게 설치할 수 있는 도구
    • Kubeadm을 사용하여 기본적인 Kubernetes 클러스터를 설치하고 구성하는 방법
  • Manage a highly-available Kubernetes cluster
    • 고가용성(High Availability, HA) 클러스터는 장애 발생시에도 서비스의 중단 없이 운영될 수 있도록 설계됨
    • HA 클러스터를 구축하고 관리하는 방법
  • Provision underlying infrastructure to deploy a Kubernetes cluster
    • 클러스터를 배포하기 전에 필요한 기반 인프라(네트워킹, 스토리지, 컴퓨트 리소스 등)를 준비하는 방법
  • Perform a version upgrade on a Kubernetes cluster using Kubeadm
    • 클러스터의 Kubernetes 버전을 안전하게 업그레이드하는 방법
    • 버전 호환성 및 업그레이드 절차에 대한 이해
  • Implement etcd backup and restore
    • etcd는 Kubernetes의 중요한 데이터를 저장하는 분산 키-값 저장소
    • etcd 데이터의 백업과 복원 =  클러스터의 데이터를 안전하게 관리하는 방법

Workloads & Scheduling

Kubernetes에서 애플리케이션을 배포하고 관리하는 방법 및 다양한 워크로드 유형(예: 포드, 레플리카셋)과 그들이 어떻게 스케줄링되는지

  • Understand deployments and how to perform rolling update and rollbacks
    • Kubernetes에서 안정적인 애플리케이션 배포와 관리를 위해 배포(Deployment) 객체를 사용하는 방법
    • 롤링 업데이트를 통해 애플리케이션을 중단 없이 업데이트하고 필요한 경우 이전 버전으로 롤백하는 방법
  • Use ConfigMaps and Secrets to configure applications
    • ConfigMaps와 Secrets을 통해 애플리케이션 설정을 관리하는 방법
    • 환경 변수, 설정 파일 등의 형태로 애플리케이션에 구성 데이터를 제공하는 방법을 포함
  • Know how to scale applications
    • 애플리케이션의 트래픽이 증가할 때 이를 처리하기 위해 자동으로 또는 수동으로 포드의 수를 늘리는 방법
  • Understand to primitives used to create robust, self-healing, application deployments
    • Kubernetes의 자가 치유 메커니즘을 이해하고, 장애 발생 시 자동으로 복구할 수 있는 애플리케이션을 구축하는 방법
  • Understand how resource limits can affect Pod scheduling
    • 포드에 CPU와 메모리 등의 리소스 제한을 설정하는 방법
    • 제한이 포드의 스케줄링과 성능에 어떤 영향을 미치는지
  • Awareness of manifest management and common templating tools
    • Kubernetes 매니페스트 파일 관리
    • Helm과 같은 템플릿 도구를 사용하여 애플리케이션 배포를 효율적으로 관리하는 방법

Services & Networking

  • Understand host networking configuration on the cluster nodes
    • 클러스터 노드에서의 네트워킹 설정과 구성
    • 각 노드가 어떻게 네트워크에 연결되는지, 그리고 이 설정이 클러스터의 작동 방식에 어떤 영향을 미치는지
  • Understand connectivity between Pods
    • 파드 간의 네트워크 통신 방식과 이들이 데이터를 어떻게 주고받는지
  • Understand ClusterIp, NodePort, LoadBalancer service types and endpoints
    • Kubernetes에서 제공하는 다양한 서비스 타입들과 이들이 클러스터 내외부로 트래픽을 라우팅하는 방법
  • Know how to use Ingress controllers and Ingress resources
    • 외부 요청을 클러스터 내의 서비스로 라우팅하는 Ingress 리소스와 컨트롤러의 사용 방법
  • Know how to configure and use CoreDNS
    • 클러스터 내 DNS 서비스인 CoreDNS를 설정하고 관리하는 방법
  • Choose an appropriate container network interface plugin
    • 네트워크 인터페이스 플러그인을 선택하여 파드 간 통신 및 네트워크 정책을 효과적으로 구현하는 방법

Storage

  • Understand storage classes, persistent volumes
    • 다양한 스토리지 클래스와 영구 볼륨(Persistent Volumes, PV)의 설정 및 관리 방법
  • Understand volume mode, access modes and reclaim policies for volumes
    • 볼륨의 다양한 모드와 접근 방식, 그리고 사용 후 볼륨의 처리 방식(재사용 정책)
  • Understand persistent volume claims primitive
    • 영구 볼륨 클레임(Persistent Volume Claims, PVC)을 사용하여 애플리케이션에 필요한 스토리지를 요청하고 할당하는 방법
  • Know how to configure applications with persistent storage
    • 애플리케이션에 영구 스토리지를 연결하고 관리하는 방법

Troubleshooting

  • Evaluate cluster and node logging
    • 클러스터 및 노드의 로그를 확인하여 문제를 진단하는 방법
  • Understand how to monitor applications
    • 애플리케이션의 성능과 상태를 모니터링하는 다양한 방법
  • Manage container stdout & stderr logs
    • 컨테이너의 표준 출력(stdout)과 표준 오류(stderr) 로그를 관리하고 문제 해결에 활용하는 방법
  • Troubleshoot application failure
    • 애플리케이션 실패의 원인을 파악하고 해결하는 방법
  • Troubleshoot cluster component failure
    • 클러스터의 구성 요소(예: 마스터 노드, 워커 노드, 서비스 등)에서 발생하는 문제를 진단하고 해결하는 방법
  • Troubleshoot networking 
    • 클러스터 내외부의 네트워크 문제를 해결하는 방법

 

References

https://www.cncf.io/certification/cka/

https://github.com/cncf/curriculum