Qemu/KVM 위에 쿠버네티스 클러스터 만들기 - 1
Qemu/KVM 위에 쿠버네티스 클러스터 만들기 - 2 (이글 이글)
Qemu/KVM 위에 쿠버네티스 클러스터 만들기 - 3
https://kubernetes.io/ko/docs/setup/production-environment/tools/kubeadm/install-kubeadm/
컨테이너 런타임을 설치했다면 이제 진짜 쿠버네티스 관련 패키지들을 설치할 차례애오.
위 페이지에 들어가서 자세하게 읽어보는게 좋은데 간단하게 요약하자면
- 2CPUs/2GB 이상에
- 모든 노드가 네트워크에 연결된
- 그리고 각각 고유한 MAC, product_uuid를 갖는
- 특정포트들이 개방된
- 스왑은 비활성화된
위 여부를 확인해야해요. KVM 위에 CentOS 7 기반 VM을 설치하고 이 위에 K8s를 설치할 때
mac address 및 product_uuid가 각각 고유한 것을 차차 확인하면서 설치 진행 보아요.
iptables에서 bridged traffic을 보게 해주세요.
cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
br_netfilter
EOF
cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sudo sysctl --system
준비 끝
쿠버네티스 설치 시작
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kubelet kubeadm kubectl
EOF
# swap off
swapoff
#swap memory 확인
free -h
## vi로 /etc/fstab 파일 안에 swap 설정 부분을 지우거나 주석처리
# permissive 모드로 SELinux 설정(효과적으로 비활성화)
sudo setenforce 0
sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
sudo yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
sudo systemctl enable --now kubelet
이제 systemctl status 명령으로 kubelet의 상태를 보면 얘가 10초마다 한 번씩 실행되면서 계속 실패중인 것을 확인할 수 있어요.
정상이에요.
쿠버네티스 패키지 설치 끝.
여기까지 하고 vm은 종료하고 이 vm을 3개 더 복제해줄꺼에요. 최종 1개의 마스터노드 3개의 워커노드가 있는 쿠버네티스 클러스터가 될 수 있게요.
오늘은 여기까지.