Qemu/KVM 위에 쿠버네티스 클러스터 만들기 - 1

Qemu/KVM 위에 쿠버네티스 클러스터 만들기 - 2 (이글 이글)

Qemu/KVM 위에 쿠버네티스 클러스터 만들기 - 3

 

https://kubernetes.io/ko/docs/setup/production-environment/tools/kubeadm/install-kubeadm/

 

kubeadm 설치하기

이 페이지에서는 kubeadm 툴박스를 설치하는 방법을 보여준다. 이 설치 프로세스를 수행한 후 kubeadm으로 클러스터를 만드는 방법에 대한 자세한 내용은 kubeadm을 사용하여 클러스터 생성하기 페이

kubernetes.io

 

컨테이너 런타임을 설치했다면 이제 진짜 쿠버네티스 관련 패키지들을 설치할 차례애오.

 

위 페이지에 들어가서 자세하게 읽어보는게 좋은데 간단하게 요약하자면

  • 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개의 워커노드가 있는 쿠버네티스 클러스터가 될 수 있게요.

 

 

 

 

 

 

오늘은 여기까지.

QEMU/KVM 위에 쿠버네티스 클러스터 만들기 -3 (tistory.com)에서 계속