大家好,因为最近在准备CKA考试需要安装V1.15的集群,所以自己安装了一下,在此记录。此方法适合国内环境安装,无需连接国外网站。
禁用SWAP、关闭防火墙、关闭SELINUX、配置主机名
systemctl disable firewalld
systemctl stop firewalld
setenforce 0
#check一下自己的/etc/selinux/config文件中有没有设为disable,没有设自己改一下
swapoff -a
chmod a+x /etc/rc.local
echo 'swapoff -a' >> /etc/rc.local
#设置hostname
hostnamectl set-hostname k8s.xxx
vim /etc/hosts 添加host
#设置内核参数
vi /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
vm.swappiness=0
modprobe br_netfilter
sysctl -p /etc/sysctl.d/k8s.conf
安装docker
wget -O /etc/yum.repos.d/docker-ce.repo https://download.docker.com/linux/centos/docker-ce.repo
#使用清华大学的源
sed -i 's+download.docker.com+mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo
yum makecache fast
yum install docker-ce
systemctl start docker
#开机自启动
systemctl enable docker
安装kubernetes相关组件
修改源为aliyun
cat >> /etc/yum.repos.d/kubernetes.repo << EOF
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=0
EOF
安装kubectl,kubelet,kubeadm。按照此顺序按照,否则kubectl,kubelet版本会安装成最新的
yum install -y kubectl-1.15.4-0.x86_64 kubelet-1.15.4-0.x86_64 kubeadm-1.15.4-0.x86_64
systemctl start kubelet
systemctl enable kubelet
Master初始化
#使用flannel网络所以加上network的配置
#将下载镜像地址改为aliyun的这样就可以不去国外下载
kubeadm init --pod-network-cidr=10.244.0.0/16 --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers
#init完执行下面命令
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
加入集群
直接执行上面的kubeadm join命令即可
现在使用kubectl get nodes查看集群节点状态会看到所有的节点都是NotReady状态,是因为我们还没有安装flannel网络,使用如下命令来安装
wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
kubectl apply -f kube-flannel.yml
等待几分钟后再使用kubectl get nodes查看节点状态就都是Ready了