一、配置國內源和預裝環境:
- 1、配置國內源(提高k8s下載源):
sudo touch /etc/apt/sources.list.d/kubernetes.list
- 2、修改權限:
sudo chmod 666 /etc/apt/sources.list.d/kubernetes.list
- 3、添加k8s倉庫源:
sudo tee /etc/apt/sources.list.d/kubernetes.list <<-'EOF' deb http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial main EOF
- 4、執行sudo apt update
此時執行會報錯,因為簽名認證失敗,需要重新⽣成,進行步驟5
- 5、添加認證key
#運⾏如下命令,添加錯誤中對應的key(錯誤中NO_PUBKEY后⾯的key的后8位):
gpg --keyserver keyserver.ubuntu.com --recv-keys BA07F4FB gpg --export --armor BA07F4FB | sudo apt-key add - sudo apt update
二、配置基礎設施
-
1、禁⽌防⽕牆
sudo ufw disable
- 2、關閉swap
# 成功 $ sudo swapoff -a # 永久關閉swap分區 $ sudo sed -i 's/.*swap.*/#&/' /etc/fstab
- 3、禁⽌selinux
# 安裝操控selinux的命令 $ sudo apt install -y selinux-utils # 禁⽌selinux $ setenforce 0 # 重啟操作系統 $ shutdown -r now # 查看selinux是否已經關閉 $ sudo getenforce Disabled(表示已經關閉)
- 4、網絡配置,配置內核參數,將橋接的IPv4流量傳遞到iptables的鏈
sudo touch /etc/sysctl.d/k8s.conf sudo tee /etc/sysctl.d/k8s.conf <<-'EOF' net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 vm.swappiness = 0 EOF #執行命令使修改生效 sudo modprobe br_netfilter sudo sysctl -p /etc/sysctl.d/k8s.conf
三、安裝k8s
- 1、安裝k8s
apt update && sudo apt-get install -y kubelet kubernetes-cni kubeadm kubectl
# 最新的k8s版本差異,集群搭建方式有差異,推薦使用1.13sudo apt update &&sudo apt-get install -y kubelet=1.13.1-00 kubernetes-cni=0.6.0-00 kubeadm=1.13.1-00 kubectl=1.13.1-00 -
2、設置開機自啟動
sudo systemctl enable kubelet && systemctl start kubelet sudo shutdown -r now
-
3、驗證k8s
獲取節點 kubectl get nodes # 查看版本 kubectl version