본문 바로가기

엔지니어

Kubernetes : Kubeadm : 설치

Kubeadm를 설치하여 멀티 노드 Kubernetes 클러스터를 구성합니다.
이 예에서는 다음과 같이 3 개의 호스트를 사용하여 설정합니다.
전제 조건으로 각 노드의 Hostname, MAC address, Product_uuid은 고유해야합니다.
MAC address와 Product_uuid는 일반적으로 물리적 시스템과 일반적인 방법으로 만든 가상 머신이면 이미 고유되어있을 것입니다. Product_uuid은 [dmidecode -s system-uuid 명령으로 확인할 수 있습니다.
----------- + --------------------------- + ---------- ---------------- + ------------
| | |
eth0 | 10.0.0.30 eth0 | 10.0.0.51 eth0 | 10.0.0.52

  • ---------- + ----------- + ----------- + ---------- + - ---------- + ---------- +
    | [dlp.srv.world] | | [node01.srv.world] | | [node02.srv.world] |
    | Master Node | | Worker Node | | Worker Node |
  • ---------------------- + ---------------------- + - --------------------- +

우선 노드 공통 설정을 모든 노드에 적용해야합니다.
[1]여기를 참고 모든 노드에 Docker 서비스를 설치하고 시작해야합니다 .
[2]여기를 참고 모든 노드에서 SELinux를 Permissive or Disabled로 변경해야합니다 . (kubelet 미 대응을위한)
[3]여기를 참고 모든 노드에서 Firewalld을 중지해야합니다 .
[4] 모든 노드에서 시스템 요구 사항을 충족 Swap 비활성화 등의 설정을 실시해야합니다.
[root @ dlp ~] # swapoff -a
[root @ dlp ~] # vi / etc / fstab

swap 줄은 비활성화

#/ dev / mapper / cl-swap swap swap defaults 0 0
[root @ dlp ~] # cat << EOF> /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
[root @ dlp ~] # sysctl --system
[5] 모든 노드에서 Kubeadm를 설치합니다.
[root @ dlp ~] # cat << 'EOF'> /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
EOF

[root @ dlp ~] # yum -y install kubeadm kubelet kubectl

아직 시작하지 않고 활성화에만 적용

[root @ dlp ~] # systemctl enable kubelet