> 文章列表 > 离线安装k8s/kubernetesv1.17.1

离线安装k8s/kubernetesv1.17.1

离线安装k8s/kubernetesv1.17.1

条件:
3台没有网络的centos7.9服务器

1.系统优化

hostnamectl set-hostname k8s-master &&  bash #只在master节点上执行
hostnamectl set-hostname k8s-node1  &&  bash #只在node1节点上执行
hostnamectl set-hostname k8s-node2  &&  bash #只在node2节点上执行
cat >> /etc/hosts << EOF
192.168.243.180 k8s-master
192.168.243.181 k8s-node1
192.168.243.182 k8s-node2
EOF
#关闭防火墙:
systemctl stop firewalld
systemctl disable firewalld
#关闭selinux:
sed -i 's/enforcing/disabled/' /etc/selinux/config # 永久
setenforce 0 # 临时
#关闭swap:
swapoff -a # 临时
sed -i 's/.*swap.*/#&/' /etc/fstab # 永久cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl --system # 生效

2. 安装docker

请点击:离线安装可以参考博客

3. 安装k8s

安装包下载:
链接:https://pan.baidu.com/s/1RmWylpXekr4Am2yd_42aDQ?pwd=MAQQ
提取码:MAQQ
–来自百度网盘的分享
3.1 所有服务器执行

cd /root #上传到此目录下
mkdir /root/k8sOfflineSetup
tar -zxvf k8sofflineSetup.tar.gz -C /root/k8sOfflineSetup
cd /root/k8sOfflineSetup
chmod +x scripts/*

3.2 master节点上执行

cd /root/k8sOfflineSetup
export HOSTNAME=k8s-master # master节点的主机名
export APISERVER_NAME=apiserver.k8s.com # k8s apiserver的主机地址
export MASTER_IP=192.168.243.180 # 集群中master节点的ip地址
export POD_SUBNET=10.11.10.0/16 # Pod 使用的网段sh setup_master.sh
kubectl get nodes
kubectl get pods -n kube-system
kubeadm token create --print-join-command #创建加入集群的token和秘钥,记录下来
[root@k8s-master ~]# kubeadm token create --print-join-command
W0415 15:22:22.571978   61871 validation.go:28] Cannot validate kube-proxy config - no validator is available
W0415 15:22:22.572369   61871 validation.go:28] Cannot validate kubelet config - no validator is available
kubeadm join apiserver.k8s.com:6443 --token rry6jz.x0fegbxxojlo59zw     --discovery-token-ca-cert-hash sha256:59d0ff9225b587ea64901496ae1e1a0916da13a0448e07fa8feebcbd36b0171e 
[root@k8s-master ~]# 

3.3 node1上执行

export HOSTNAME=k8s-node1 # node1节点的主机名
export APISERVER_NAME=apiserver.k8s.com #k8s apiserver的主机地址
export MASTER_IP=192.168.243.180 # 集群中master节点的ip地址
# 加入master的token,就是上述步骤记住的token后面的内容
export TOKEN=rry6jz.x0fegbxxojlo59zw
# 加入master的证书,就是上述步骤九标红的discovery-token-ca-cert-hash后面的内容
export CERT=sha256:59d0ff9225b587ea64901496ae1e1a0916da13a0448e07fa8feebcbd36b0171ecd /root/k8sOfflineSetup
chmod +x scripts/*
sh setup_worker.sh

3.4 node2上执行

export HOSTNAME=k8s-node2 # node1节点的主机名
export APISERVER_NAME=apiserver.k8s.com #k8s apiserver的主机地址
export MASTER_IP=192.168.243.180 # 集群中master节点的ip地址
# 加入master的token,就是上述步骤记住的token后面的内容
export TOKEN=rry6jz.x0fegbxxojlo59zw
# 加入master的证书,就是上述步骤九标红的discovery-token-ca-cert-hash后面的内容
export CERT=sha256:59d0ff9225b587ea64901496ae1e1a0916da13a0448e07fa8feebcbd36b0171ecd /root/k8sOfflineSetup
chmod +x scripts/*
sh setup_worker.sh

4.验证查看

[root@k8s-master ~]# kubectl get nodes
NAME         STATUS   ROLES    AGE     VERSION
k8s-master   Ready    master   22m     v1.17.1
k8s-node1    Ready    <none>   4m26s   v1.17.1
k8s-node2    Ready    <none>   39s     v1.17.1
[root@k8s-master ~]# 
在浏览器输入:masterIP:32567
[root@k8s-master ~]# kubectl get nodes
NAME         STATUS   ROLES    AGE   VERSION
k8s-master   Ready    master   36m   v1.17.1
k8s-node1    Ready    <none>   32m   v1.17.1
k8s-node2    Ready    <none>   31m   v1.17.1
[root@k8s-master ~]# 
# 在 Master 节点上执行此命令
kubectl -n kube-system get secret $(kubectl -n kube-system get secret | grep kuboard-user | awk '{print $1}') -o go-template='{{.data.token}}' | base64 -d

5.登录页面

使用方面请自行研究
在这里插入图片描述

6.安装仓库

cd /opt #代码上传到这里
docker load -i registry.tar.gz
tar zxvf docker-registry.tar.gz -C /opt
rm -fr registry.tar.gz docker-registry.tar.gz
docker run -d -p 5000:5000 --restart=always --name registry -v /opt/docker-registry:/var/lib/registry registry:2

6.安装rancher2.4

docker run -d --restart=unless-stopped \\-p 8080:80 -p 8443:443 \\-e CATTLE_SYSTEM_DEFAULT_REGISTRY=192.168.243.180:5000 \\-e CATTLE_SYSTEM_CATALOG=bundled \\-v /opt/rancher:/var/lib/rancher \\--name rancher2 192.168.243.180:5000/rancher/rancher:v2.4.17

#rancher2.4登录 thhps://ip:8443
用户:admin 密码自己设置
离线安装k8s/kubernetesv1.17.1离线安装k8s/kubernetesv1.17.1
离线安装k8s/kubernetesv1.17.1

7. 利用rancher添加K8S集群

离线安装k8s/kubernetesv1.17.1离线安装k8s/kubernetesv1.17.1
离线安装k8s/kubernetesv1.17.1