一、配置国内源和预装环境:
- 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