这里是不需要存在的目录
Kubernets_1.14.2的安装部署
环境准备
master一台、node三台【我在VM虚拟机中搭建,配置都是2C4G】
服务器 | IP |
---|---|
master | 192.168.22.45 |
node01 | 192.168.22.51 |
node02 | 192.168.22.52 |
node03 | 192.168.22.53 |
集群机器基础环境部署
修改hosts与同步时间
四台服务器都要修改hosts文件
vim /etc/hosts
192.168.22.45 master01
192.168.22.45 etcd
192.168.22.45 registry
192.168.22.51 node01
192.168.22.52 node02
192.168.22.53 node03
k8s集群机器记得要同步时间
ntpdate -u ntp.api.bz
关闭防火墙与Selinux
修改yum源【如果你能翻墙请无视】
vim /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes Repo
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
enabled=1
yum makecache fast
建立docker-ee仓库
wget -P /etc/yum.repos.d/ https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
添加参数文件
第一个需要修改的文件是/etc/sysctl.d/k8s.conf
echo """
vm.swappiness = 0
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
""" > /etc/sysctl.conf
sysctl -p
第二个文件是/etc/sysctl.d/k8s.conf
cat <<EOF > /etc/sysctl.d/k8s.conf
net.ipv4.tcp_keepalive_time = 600
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_keepalive_probes = 10
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv4.neigh.default.gc_stale_time = 120
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_announce = 2
net.ipv4.ip_forward = 1
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.tcp_synack_retries = 2
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.netfilter.nf_conntrack_max = 2310720
fs.inotify.max_user_watches=89100
fs.may_detach_mounts = 1
fs.file-max = 52706963
fs.nr_open = 52706963
net.bridge.bridge-nf-call-arptables = 1
vm.swappiness = 0
vm.overcommit_memory=1
vm.panic_on_oom=0
EOF
sysctl --system
执行命令使他们生效
modprobe br_netfilter
sysctl -p /etc/sysctl.d/k8s.conf
禁用Swap(Kubernetes 1.8开始要求)
swapoff -a mount -a echo "KUBELET_EXTRA_ARGS=--fail-swap-on=false" > /etc/sysconfig/kubelet
vim /etc/fstab
#UUID=7dac6afd-57ad-432c-8736-5a3ba67340ad swap swap defaults 0 0
free -m 可以查看效果
搭建master
安装docker-ce kubelet kubeadm kubectl
yum install -y yum-utils device-mapper-persistent-data lvm2 docker-ce kubelet kubeadm kubectl
注意:
yum安装完请检查自己组建的版本,如果与博客不一致请自行修改版本号
启动docker,并设置安装的组件开机启动
systemctl daemon-reload systemctl start docker systemctl status docker systemctl enable docker systemctl start kubelet systemctl status kubelet systemctl enable kubelet
设置master免密要登录node
三次回车后密钥生成完成
ssh-keygen
拷贝密钥到其他node节点
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.22.51
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.22.52
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.22.53
预先下载docker镜像【如果你可以翻墙请无视】
docker pull mirrorgooglecontainers/kube-apiserver:v1.14.2
docker pull mirrorgooglecontainers/kube-controller-manager:v1.14.2
docker pull