1. 情況籌備
在開端安裝Kubernetes之前,須要籌備以下情況:
- 效勞器:至少3台效勞器,倡議採用虛擬機。
- 操縱體系:推薦利用CentOS 7或Ubuntu 18.04。
- 硬件請求:最低設置為2核CPU跟2GB內存,倡議4GB以上內存。
- 收集:確保效勞器之間收集互通。
2. 封閉防火牆跟SELinux
為了確保Kubernetes的正常運轉,須要封閉防火牆跟SELinux。
封閉防火牆
systemctl stop firewalld
systemctl disable firewalld
封閉SELinux
setenforce 0
sed -i 's/enforcing/disabled/g' /etc/selinux/config
3. 封閉Swap
Kubernetes請求節點上的Swap空間必須封閉,不然可能會呈現Pod調理掉敗的情況。
swapoff -a
sed -i '/swap/d' /etc/fstab
4. 修改主機名跟hosts文件
為便利管理,倡議修改主機名為master
、node1
、node2
等。
hostnamectl set-hostname master
同時,修改/etc/hosts
文件,增加以下內容:
192.168.1.100 master
192.168.1.101 node1
192.168.1.102 node2
5. 安裝Docker
Kubernetes依附於Docker,因此須要先安裝Docker。
# 安裝yum-utils包
sudo yum install -y yum-utils
# 增加Docker客棧
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 安裝Docker
sudo yum install -y docker-ce docker-ce-cli containerd.io
# 啟動Docker效勞
sudo systemctl start docker
# 設置Docker效勞開機自啟
sudo systemctl enable docker
6. 安裝Kubeadm、Kubelet跟Kubectl
# 安裝kubeadm
sudo yum install -y kubeadm
# 安裝kubelet
sudo yum install -y kubelet
# 安裝kubectl
sudo yum install -y kubectl
# 設置kubelet開機自啟
sudo systemctl enable kubelet
7. 初始化Master節點
在Master節點上履行以下命令初始化集群:
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
初始化實現後,記錄下以下信息:
- kubeadm join命令:用於將Node節點參加集群。
- admin.conf文件:用於在非Master節點上設置kubectl。
8. 安裝Pod收集
Kubernetes須要Pod收集來實現Pod之間的通信。以下以Calico為例停止安裝:
# 安裝Calico
sudo kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
9. 將Node節點參加集群
在Node節點上履行以下命令,將節點參加集群:
sudo kubeadm join 192.168.1.100:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash>
其中,<token>
跟<hash>
分辨調換為初始化Master節點時記錄的值。
10. 驗證集群狀況
在Master節點上履行以下命令,驗證集群狀況:
sudo kubectl get nodes
假如全部節點都處於Ready
狀況,則表示集群安裝成功。
總結
本文介紹了在Linux體系下安裝跟設置Kubernetes的具體步調。經由過程本文的領導,妳可能輕鬆搭建一個Kubernetes集群,並開端利用Kubernetes停止容器化利用的管理。