[k8s] 명령어 자동 완성, 클러스터 이동 및 클러스터 정보, 노드 정보, CNI 정보 확인 방법

HYEOB KIM·2022년 7월 5일
1

kubernetes

목록 보기
5/14
post-custom-banner

명령어 자동 완성 기능

k8s 공식 문서 - kubectl Cheat Sheet

source <(kubectl completion bash) # setup autocomplete in bash into the current shell, bash-completion package should be installed first.
echo "source <(kubectl completion bash)" >> ~/.bashrc # add autocomplete permanently to your bash shell.

kubectl 명령어

kubectl [command] [type] [name] [flags]
  • command: create, get, delete, edit
  • type: node, pod, service
  • name: 리소스의 이름
  • flags: --help, -o options, --dry-run

k8s 클러스터 정보 보기

쿠버네티스 클러스터 정보 보기

  • console에 user 계정으로 로그인 한 후 hk8s 클러스터로 이동하시오.
$ kubectl config use-context hk8s
Switched to context "hk8s".
$ kubectl config current-context
hk8s
  • hk8s 클러스터의 control-plane, worker node의 이름을 찾아서 /var/CKA2022/hk8s-node-info.txt 파일로 저장하시오.
$ kubectl get nodes
NAME      STATUS     ROLES                  AGE    VERSION
hk8s-m    Ready      control-plane,master   161d   v1.22.4
hk8s-w1   Ready      <none>                 161d   v1.22.4
hk8s-w2   NotReady   <none>                 152d   v1.22.4

$ kubectl get nodes | cut -d' ' -f1
NAME
hk8s-m
hk8s-w1
hk8s-w2

$ kubectl get nodes | cut -d' ' -f1 | grep -v NAME
hk8s-m
hk8s-w1
hk8s-w2

$ kubectl get nodes | cut -d' ' -f1 | grep -v NAME > /var/CKA2022/hk8s-node-info.txt

$ cat /var/CKA2022/hk8s-node-info.txt
hk8s-m
hk8s-w1
hk8s-w2
  • hk8s 클러스터에서 ready 상태인 노드의 이름만 추출하여 /var/CKA2022/hk8s-node-ready.txt 파일에 저장하시오.
$ kubectl get nodes
NAME      STATUS     ROLES                  AGE    VERSION
hk8s-m    Ready      control-plane,master   161d   v1.22.4
hk8s-w1   Ready      <none>                 161d   v1.22.4
hk8s-w2   NotReady   <none>                 152d   v1.22.4

$ kubectl get nodes | grep -i -w ready
hk8s-m    Ready      control-plane,master   161d   v1.22.4
hk8s-w1   Ready      <none>                 161d   v1.22.4

$ kubectl get nodes | grep -i -w ready | cut -d' ' -f1
hk8s-m
hk8s-w1

$ kubectl get nodes | grep -i -w ready | cut -d' ' -f1 > /var/CKA2022/hk8s-node-ready.txt

$ cat /var/CKA2022/hk8s-node-ready.txt
hk8s-m
hk8s-w1

멀티 클러스터 정보 보기

  • k8s 클러스터로 이동하시오.
$ kubectl config use-context k8s
Switched to context "k8s".

$ kubectl config current-context
k8s
  • k8s 클러스터 상태를 확인합니다.
$ kubectl cluster-info
Kubernetes control plane is running at https://k8s-master:6443
CoreDNS is running at https://k8s-master:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
  • k8s 클러스터에서 동작중인 모든 CNI 이름을 /var/CKA2022/k8s_cni_name.txt에 저장하시오
$ ssh k8s-master

$ ls /etc/cni/net.d/
10-flannel.conflist

$ echo "flannel" > /var/CKA2022/k8s_cni_name.txt

$ cat /var/CKA2022/k8s_cni_name.txt
flannel
  • k8s 클러스터에서 ready 상태 인 노드 이름을 추출하여 /var/CKA2022/k8s-node-ready.txt 에 저장하시오.
$ kubectl get nodes | grep -i -w ready | cut -d' ' -f1 > /var/CKA2022/k8s-node-ready.txt

$ cat /var/CKA2022/k8s-node-ready.txt
k8s-master
k8s-worker1
profile
Devops Engineer
post-custom-banner

0개의 댓글