티스토리 뷰
문제1. 쿠버네티스 클러스터 정보 보기
- console에 계정으로 로그인 한 후 hk8s 클러스터로 이동하시오.
- hk8s 클러스터의 control-plane, worker node의 이름을 찾아서 ~/hk8s-node-info.txt 파일로 저장하시오.
- hk8s 클러스터에서 ready인 노드의 이름만 추출하여 ~/hk8s-node-ready.txt 파일에 저장하시오.
Solution
- console에 계정으로 로그인 한 후 hk8s 클러스터로 이동하시오.
# 현재 클러스터 위치 확인
$ kubectl config current-context
k8s
# hk8s의 클러스터로 변경후 확인해준다.
$ kubectl config use-context hk8s
Switched to context "hk8s".
$ kubectl config current-context
hk8s
- hk8s 클러스터의 control-plane, worker node의 이름을 찾아서 ~/hk8s-node-info.txt 파일로 저장하시오.
# node 정보 확인
$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8s-master Ready control-plane 137d v1.26.0
k8s-worker1 Ready <none> 137d v1.26.0
k8s-worker2 Ready <none> 137d v1.26.0
# 첫번째 필드만 필터링
$ kubectl get nodes | cut -d' ' -f1
NAME
hk8s-master
hk8s-worker1
hk8s-worker2
# 출력 결과에서 NAME을 제거
$ kubectl get nodes | cut -d' ' -f1 | grep -v NAME
hk8s-master
hk8s-worker1
hk8s-worker2
# 출력 결과 '~/hk8s-node-info.txt'에 저장 및 확인
$ kubectl get nodes | cut -d' ' -f1 | grep -v NAME > ~/hk8s-node-info.txt
$ cat ~/hk8s-node-info.txt
hk8s-master
hk8s-worker1
hk8s-worker2
- hk8s 클러스터에서 ready인 노드의 이름만 추출하여 ~/hk8s-node-ready.txt 파일에 저장하시오.
# word가 ready인 것만 출력
$ kubectl get nodes | grep -i -w ready
hk8s-master Ready control-plane 130d v1.26.0
hk8s-worker1 Ready <none> 130d v1.26.0
# 첫번째 필드만 출력
$ kubectl get nodes | grep -i -w ready | cut -d' ' -f1
hk8s-master
hk8s-worker1
# 저장 및 확인
$ kubectl get nodes | grep -i -w ready | cut -d' ' -f1 > ~/hk8s-node-ready.txt
$ cat ~/hk8s-node-ready.txt
hk8s-master
hk8s-worker1
문제2. 멀티 클러스터 정보 보기
- k8s 클러스터로 이동하시오.
- k8s 클러스터 상태를 확인하시오.
- k8s 클러스터에서 동작중인 모든 CNI 이름을 ~/k8s_cni_name.txt에 저장하시오.
- k8s 클러스터에서 ready 상태 인 노드 이름을 추출하여 ~/k8s-node-ready.txt에 저장하시오.
Solution
- k8s 클러스터로 이동하시오.
# k8s 클러스터로 이동 및 확인
$ kubectl config use-context k8s
Switched to context "k8s".
$ kubectl config current-context
k8s
- k8s 클러스터 상태를 확인하시오.
# k8s 클러스터 상태정보 확인
$ kubectl cluster-info
Kubernetes control plane is running at https://10.0.2.10:6443
CoreDNS is running at https://10.0.2.10:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy
- k8s 클러스터에서 동작중인 모든 CNI 이름을 ~/k8s_cni_name.txt에 저장하시오.
# 해당 master 위치로 이동
$ ssh k8s-master
Welcome to Ubuntu 22.04.1 LTS (GNU/Linux 5.15.0-60-generic x86_64)
# 사용중인 CNI 확인 방법1
# calico라는 것을 확인할 수 있다.
$ ls /etc/cni/net.d/
10-calico.conflist calico-kubeconfig
# 사용중인 CNI 확인 방법2
$ ps -ef | grep cni
root 3529 2830 0 Jul09 ? 00:00:00 runsv cni
root 3694 3661 0 Jul09 ? 00:00:00 svlogd -ttt /var/log/calico/cni
root 404182 402203 0 08:58 pts/1 00:00:00 grep --color=auto cni
# yaml 파일을 뒤져보는 등의 다양한 방법들이 있음
# k8s master에서 나와 '~/k8s_cni_name.txt'에 저장 및 확인
$ exit
logout
Connection to k8s-master closed.
$ echo "calico" > ~/k8s_cni_name.txt
$ cat ~/k8s_cni_name.txt
calico
- k8s 클러스터에서 ready 상태 인 노드 이름을 추출하여 ~/k8s-node-ready.txt에 저장하시오.
# 1번 문제와 동일
$ kubectl get nodes | grep -i -w ready | cut -d' ' -f1 > ~/k8s-node-ready.txt
$ cat ~/k8s-node-ready.txt
k8s-master
k8s-worker1
k8s-worker2
'junior > Kubernetes' 카테고리의 다른 글
[k8s] kubernetes Upgrade-master (0) | 2023.07.10 |
---|---|
[k8s] ETCD Backup&Restore(2) (0) | 2023.07.10 |
[k8s] ETCD Backup&Restore(1) (0) | 2023.07.10 |
[k8s] CKA 커리큘럼 (0) | 2023.07.10 |
[k8s] 커맨드 자동완성 기능 (0) | 2023.07.10 |