kubeadm离线安装k8s集群
部署过程
一、环境配置
主机名 IP地址 角色 配置
master1 192.168.1.101 主节点 2C 2G
master2 192.168.1.102 工作节点 2C 2G
master3 192.168.1.103 工作节点 2C 2G
备注:实验环境的虚拟机至少2核2g
二、服务器基础环境优化(3台操作相同)
1.关闭防护墙,安全性
sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/g‘ /etc/selinux/config
setenforce 0
systemctl stop firewalld
systemctl disable firewalld
2.服务器时间同步
timedatectl set-timezone Asia/Shanghai
3.修改主机名
hostnamectl set-hostname master &&bash
hostnamectl set-hostname node01 &&bash
hostnamectl set-hostname node02 &&bash
4.添加hosts文件
vim /etc/hosts #主机名解析
末尾添加:
192.168.1.101 master1
192.168.1.102 node1
192.168.1.103 node2
其它2台可以添加,也可以拷贝文件:
scp /etc/hosts root@192.168.1.101:/etc/hosts
scp /etc/hosts root@192.168.1.102:/etc/hosts
5.关闭交换内存swap
swapoff -a #临时关闭
sed -i ‘12s/^\//#\//g‘ /etc/fstab #永久关闭
6.网桥设置
echo -e "net.bridge.bridge-nf-call-ip6tables = 1\nnet.bridge.bridge-nf-call-iptables = 1" >> /etc/sysctl.d/k8s.conf
sysctl --system #使其生效
三、部署docker(3台操作相同)
1.解压安装docker
tar -zxvf docker-ce-18.09.tar.gz
cd docker && yum localinstall *.rpm -y #yum安装相关依赖
2.启动docker
systemctl start docker
systemctl enable docker #开机启动
docker version
3.docker加速器
vim /etc/docker/daemon.json #添加
{
"registry-mirrors": ["https://fskvstob.mirror.aliyuncs.com/"]
}
systemctl daemon-reload #重新加载
systemctl restart docker
四、部署K8s群集
1.解压安装k8s
cd ../
tar -zxvf kube114-rpm.tar.gz
cd kube114-rpm && yum localinstall *.rpm -y
#yum解决依赖
2.导入k8s镜像
cd ../
docker load -i k8s-114-images.tar.gz
docker load -i flannel-dashboard.tar.gz
注意:如果导入镜像发生如下报错:
报错原因:镜像压缩包下载出问题了
解决办法:重新下载或更换镜像
3.查看k8s镜像
docker images
#共9个镜像
在master节点操作
4.master初始化
address对应master的ip
version对应kubernetes的版本
kubeadm init --apiserver-advertise-address 192.168.1.101 --apiserver-bind-port 6443 --kubernetes-version 1.14.1 --pod-network-cidr 10.244.0.0/16
把红框的内容记下来,后面加入节点时需要。
5.生成配置文件,查看节点
mkdir /root/.kube
cp -i /etc/kubernetes/admin.conf /root/.kube/config
kubectl get node
kubectl get pod --all-namespaces
6.配置KUBECONFIG变量
echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> /etc/profile
source /etc/profile
echo $KUBECONFIG
应该返回/etc/kubernetes/admin.conf
7.部署flannel网络
kubectl create -f kube-flannel.yml
kubectl get node
在node节点服务器操作
8.kubeadm join 加入node节点
systemctl enable kubelet
#添加开机启动k8s
kubeadm join 192.168.1.101:6443 --token isd65j.dz7ney9x39lmxkyb \
--discovery-token-ca-cert-hash sha256:7a2d435db69b333370465a0475bd518b74c684882d9acda80c92ad01b9e2a61a
#这里是集群初始化是最后输出的token信息。
9.在master上面查看
kubectl get node
10.部署k8s UI界面(dashboard)
kubectl apply -f kubernetes-dashboard.yaml
kubectl apply -f admin-role.yaml
kubectl apply -f kubernetes-dashboard-admin.rbac.yaml
kubectl -n kube-system get svc
部署成功之后可以通过节点ip:32000端口进行访问。
版权声明:本文为xy8310292原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。