kubeadm离线安装k8s集群1.14

部署过程

一、环境配置

主机名 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版权协议,转载请附上原文出处链接和本声明。