CentOS7.8安装k8s

1, 安装 docker / kubelet

# 在 master 节点和 worker 节点都要执行 \# 最后一个参数 1.20.6 用于指定 kubenetes 版本,支持所有 1.20.x 版本的安装 # 腾讯云 docker hub 镜像 \# export REGISTRY_MIRROR="https://mirror.ccs.tencentyun.com"
# DaoCloud 镜像 \# export REGISTRY_MIRROR="http://f1361db2.m.daocloud.io"
# 华为云镜像 \# export REGISTRY_MIRROR="https://05f073ad3c0010ea0f4bc00b7105ec20.mirror.swr.myhuaweicloud.com"
# 阿里云 docker hub 镜像
export REGISTRY_MIRROR=https://registry.cn-hangzhou.aliyuncs.com
curl -sSL https://kuboard.cn/install-script/v1.20.x/install_kubelet.sh | sh -s 1.20.6

image

2,初始化 master 节点

关于初始化时用到的环境变量

APISERVER_NAME 不能是 master 的 hostname
APISERVER_NAME 必须全为小写字母、数字、小数点,不能包含减号
POD_SUBNET 所使用的网段不能与 master节点/worker节点 所在的网段重叠。

只在 master 节点执行 # 替换 x.x.x.x 为 master 节点实际 IP(请使用内网 IP) # export 命令只在当前 shell 会话中有效,开启新的 shell 窗口后,如果要继续安装过程,请重新执行此处的 export 命令
export MASTER_IP=10.0.0.17

替换 k8s.test 为 您想要的 dnsName (不建议使用 master 的 hostname 作为 APISERVER_NAME) export APISERVER_NAME=k8s.test # Kubernetes 容器组所在的网段,该网段安装完成后,由 kubernetes 创建,事先并不存在于您的物理网络中

echo "${MASTER_IP}    ${APISERVER_NAME}" >> /etc/hosts

cat host

[root@it-1c2d ~]# cat /etc/hosts
::1 localhost       localhost.localdomain   localhost6      localhost6.localdomain6 127.0.0.1 localhost       localhost.localdomain   localhost4      localhost4.localdomain4 127.0.0.1 it      it 127.0.0.1       it-1c2d it-1c2d 10.0.0.17    k8s.test

初始化master节点

curl -sSL https://kuboard.cn/install-script/v1.20.x/init_master.sh | sh -s 1.20.6 /coredns

检查 master 初始化结果

只在 master 节点执行 # 执行如下命令,等待 3-10 分钟,直到所有的容器组处于 Running 状态

watch kubectl get pod -n kube-system -o wide # 查看 master 节点初始化结果
kubectl get nodes -o wide

image

image

3,初始化work节点

执行:

只在 master 节点执行
kubeadm token create --print-join-command

可获取kubeadm join 命令及参数,如下所示。

image

有效时间

该 token 的有效时间为 2 个小时,2小时内,您可以使用此 token 初始化任意数量的 worker 节点。

初始化worker,针对所有的 worker 节点执行

在worker机器上:

只在 worker 节点执行 # 替换 x.x.x.x 为 master 节点实际 IP(请使用内网 IP) # export 命令只在当前 shell 会话中有效,开启新的 shell 窗口后,如果要继续安装过程,请重新执行此处的 export 命令
export MASTER_IP=10.0.0.17

替换 k8s.test 为 您想要的 dnsName (不建议使用 master 的 hostname 作为 APISERVER_NAME) export APISERVER_NAME=k8s.test echo "${MASTER_IP} ${APISERVER_NAME}" >> /etc/hosts

复制上面输出的kubeadm token create 命令
kubeadm join k8s.test:6443 --token ezm388.yegy627vbx319lev --discovery-token-ca-cert-hash sha256:255fc6a65316054aa5f1bfd92467ebce52f557983f5e901663a3a460af2c60b5

4,安装 Kuboard v3

[root@it-1c2d docker]# kubectl apply -f https://addons.kuboard.cn/kuboard/kuboard-v3.yaml

在浏览器中打开链接 http://your-node-ip-address:30080

输入初始用户名和密码,并登录

用户名: admin
密码: Kuboard123

image

5.安装Ingress

kubectl apply -f https://github.com/kubernetes/ingress-nginx/blob/ingress-nginx-3.15.2/deploy/static/provider/cloud/deploy.yaml

看状态:

get pod -n ingress-nginx

  1. docker ps看看强大的k8s

image

``

posted @ 2021-07-08 12:29  李济宏(Amadeus)  阅读(270)  评论(0编辑  收藏  举报