Tools/Kubernetes

[CKA 도전 시리즈] 2. 쿠버네티스 아키텍처 (시험환경)

MOMOBOB 2023. 1. 7. 00:15
반응형

 

시험 클러스터 환경

 

 

마스터용 컴포넌트

  • Etcd 저장소
    • Key-value 타입의 저장소
    • node, pod들의 상태 정보를 key,value 형태로 저장
  • kube-apiserver
    • k8s-api를 사용하도록 요청을 받고 요청이 유효한지 검사
    • k8s에 보내는 모든 요청은 kube-apiserver를 이용해 다른 컴포넌트로 전달.
  • Kube-scheduler
    • 파드를 실행 가능한 노드중 가장 알맞는 노드 선택
    • Kube-controller-manager
    • 파드를 관찰하며 개수를 보장

 

위커노드용 컴포넌트

  • Kubelet
    • 모든 노드에서 실행되는 k8s 에이전트
    • 데몬 형태로 동작
    • 컨테이너의 실핼을 직접 관리, 정상적으로 실행되는지 헬스 체크함.
  • Kube-proxy
    • K8s의 network 동작을 관리
    • Iptables rule을 구성
  • 컨테이너 런타임
    • 컨테이너를 실행하는 엔진
    • Docker, containerd, runc

 

명령어 자동 완성기능 설정

https://kubernetes.io/docs/reference/kubectl/cheatsheet/

 

kubectl Cheat Sheet

This page contains a list of commonly used kubectl commands and flags. Kubectl autocomplete BASH source <(kubectl completion bash) # set up autocomplete in bash into the current shell, bash-completion package should be installed first. echo "source <(kubec

kubernetes.io

 

반응형

 

 

연습문제

 

문제1. 쿠버네티스 클러스터 정보 보기

  • console에 user 계정으로 로그인 한 후 hk8s 클러스터로 이동하시오
    • kubectl config use-context hk8s
  • hk8s 클러스터의 control-plane, worker node의 이름을 찾아서 /var/CKA2022/hk8s-node-info.txt 파일로 저장하시오
    • kubectl get nodes | cut -d' ' -f1 | grep -v NAME > /var/CKA2022/hk8s-node-info.txt
  • hk8s 클러스터에서 ready 상태인 노드의 이름만 추출하여 /var/CKA2022/hk8s-node-ready.txt 파일에 저장하시오
    • kubectl get nodes | grep -i -w ready | cut -d' ' -f1 > /var/CKA2022/hk8s-node-ready.txt

 

문제2. 멀티 클러스터 정보 보기

  • k8s 클러스터로 이동하시오
    • kubectl config current-context
  • k8s 클러스터 상태를 확인합니다
    • kubectl cluster-info
  • k8s 클러스터에서 동작중인 모든 CNI 이름을 /var/CKA2022/k8s_cni_name.txt에 저장하시오
    • ssh k8s-master
    • ls /etc/cni/net.d/
    • echo "flannel" > /var/CKA2022/k8s_cni_name.txt
  • k8s 클러스터에서 ready 상태 인 노드 이름을 추출하여 /var/CKA2022/k8s-node-ready.txt 에 저장하시오
    • kubectl get nodes | grep -i -w ready | cut -d' ' -f1 > /var/CKA2022/k8s-node-ready.txt

 

 


Thank you!

 

 

반응형