一、安装
1.
(1)所需镜像
registry.aliyuncs.com/google_containers/kube-apiserver v1.16.0 b305571ca60a 3 months ago 217MB
registry.aliyuncs.com/google_containers/kube-controller-manager v1.16.0 06a629a7e51c 3 months ago 163MB
registry.aliyuncs.com/google_containers/kube-proxy v1.16.0 c21b0c7400f9 3 months ago 86.1MB
registry.aliyuncs.com/google_containers/kube-scheduler v1.16.0 301ddc62b80b 3 months ago 87.3MB
(2)工具
yum intall kubeadm kubelet kubectl
2. 配置阿里云地址
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
3. 预置环境
1. 主机名与ip
(1)主机名
vim /etc/sysconfig/network
HOSTNAME=k8s-master
(2) ip /etc/hosts
192.168.159.135 k8s-master
192.168.159.132 k8s-node1
2. 防火墙
systemctl disable firewalld
systemctl stop firewalld
3. selinux
setenforce 0
# 永久关闭 /etc/sysconfig/selinux
sed -i 's/SELINUX=permissive/SELINUX=disabled/' /etc/sysconfig/selinux
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
4. swap
swapoff -a
# 永久禁用,/etc/fstab 注释掉 swap所在行
sed -i 's/.*swap.*/#&/' /etc/fstab
5. 修改bridge流量
cat <<EOF > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
6.
sysctl --system
4. 安装kubeadm kubelet kubectl
$ yum install -y kubelet-1.16.0 kubeadm-1.16.0 kubectl-1.16.0
$ systemctl enable kubelet && systemctl start kubelet
5. docker安装
$ wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
$ yum -y install docker-ce
$ systemctl enable docker && systemctl start docker
6. 部署k8s master
kubeadm init --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.16.0 --apiserver-advertise-address 192.168.159.135 --pod-network-cidr=10.244.0.0/16
7. 使用kubectl
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
9. pod cni
安装kube-flannel.yml
wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
将quay.io全替换成quay-mirror.qiniu.com
kubectl create -f kube-flannel.yml
10. 生成节点加入指令
kubeadm token create --print-join-command
11. 设置master 可调度
kubectl taint node k8s-master node-role.kubernetes.io/master-
恢复不可调度
kubectl taint node k8s-master node-role.kubernetes.io/master="":NoSchedule