
인프런 워밍업 스터디 클럽 4기 데브옵스 1주차 미션 - 구간별 상태 확인
쿠버네티스 무게감 있게 설치하기 (1)
# 구간별 상태 확인
- MAC OS 기준
[3-1] Rocky Linux 버전 확인
▶ k8s-master 원격접속 후 명령어 실행
cat /etc/*-release
[3-2] Hostname 확인
▶ k8s-master 원격접속 후 명령어 실행
hostname
[3-3], [3-4] Network 확인
▶ k8s-master 원격접속 후 명령어 실행
ip addr
[3-5] 자원(cpu, memory) 확인
▶ k8s-master 원격접속 후 명령어 실행
lscpu
free -h
쿠버네티스 무게감 있게 설치하기 (2)
구간별 상태 확인
- MAC OS 기준
[4] Rocky Linux 기본 설정
▶ 타임존 설정 확인
timedatectl
[5] kubeadm 설치 전 사전작업
▶ 방화벽 해제 확인
systemctl status firewalld
▶ 스왑(swap) 비활성화 확인
free
[6] 컨테이너 런타임 설치
[6-1] 컨테이너 런타임 설치 전 사전작업
▶ iptables 세팅
cat /etc/modules-load.d/k8s.conf
cat /etc/sysctl.d/k8s.conf
lsmod | grep overlay
lsmod | grep br_netfilter
[6-2] 컨테이너 런타임 (containerd 설치)
[6-2-1] containerd 패키지 설치 (option2)
[6-2-1-1] docker engine (containerd.io)만 설치
▶ docker repo 설정 확인
repolist enabled
▶containerd 설치 확인
systemctl status containerd
▶설치 가능한 버전의 containerd.io 리스트 확인
yum list containerd.io --showduplicates | sort -r
[6-3] 컨테이너 런타임 (CRI활성화)
▶ cri 활성화 설정 확인
cat /etc/containerd/config.toml
▶ kubelet cgroup 확인 (configmap)
kubectl get -n kube-system cm kubelet-config -o yaml
▶ kubelet cgroup 확인 (kubelet)
cat /var/lib/kubelet/config.yaml
[7] kubeadm 설치
▶ repo 설정 확인
yum repolist enabled
▶ SELinux 설정 확인
cat /etc/selinux/config
sestatus
▶ kubelet, kubeadm, kubectl 패키지 설치
kubeadm version
kubectl version
systemctl status kubelet
cat /var/lib/kubelet/config.yaml
journalctl -u kubelet | tail -10
▶ 설치 가능한 버전의 kubeadm 리스트 확인
yum list --showduplicates kubeadm --disableexcludes=kubernetes
[8] kubeadm으로 클러스터 생성
[8-1] 클러스터 초기화 (Pod Network 세팅)
▶ 클러스터 상태 확인
kubectl get node
kubectl cluster-info dump | grep -m 1 cluster-cidr
kubectl cluster-info
kubectl get pods -n kube-system
[8-2] kubectl 사용 설정
▶ 인증서 설정 확인
cat ~/.kube/config
[8-3] CNI Plugin 설치 (calico)
▶ calico pod 설치 및 pod network cidr 적용 확인
kubectl get -n calico-system pod
kubectl get -n calico-apiserver pod
kubectl get installations.operator.tigera.io default -o yaml | grep cidr
[8-4] Master에 pod를 생성 할 수 있도록 설정
▶ Master Node에 Taint 해제 확인
kubectl describe nodes | grep Taints
[9] 쿠버네티스 편의 기능 설치
[9-1] kubectl 자동완성 기능
▶ kubectl 기능 설정 확인
cat ~/.bashrc
[9-2] Dashboard 설치
▶ dashboard 설치 확인
kubectl get pod -n kubernetes-dashboard
[9-3] Metrics Server 설치
▶ metrics server 설치 확인
kubectl get pod -n kube-system | grep metrics
kubectl top pod -A
☕ 한마디
처음엔 "무게감 있게"라는 표현이 과한 줄 알았지만, 각 설정의 깊이와 연관성을 느끼면서 정말 그렇게 불러도 될 만큼의 깊이를 느꼈습니다. 이번 실습을 통해 쿠버네티스를 단순한 도구가 아닌 운영체제 위에 올라가는 하나의 플랫폼처럼 바라보게 된 계기가 되었어요.
앞으로 더 깊이 들어갈 여지가 많은 만큼, 이번 기초가 든든한 초석이 되기를 바랍니다. 모두 화이팅입니다! 💪
댓글을 작성해보세요.