【Vegas原创】CentOS7.8安装k8s

2年前 (2022) 程序员胖胖胖虎阿
259 0 0

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 创建,事先并不存在于您的物理网络中
export POD_SUBNET=10.100.0.1/20
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

6. docker ps看看强大的k8s

image

版权声明:程序员胖胖胖虎阿 发表于 2022年9月27日 下午8:56。
转载请注明:【Vegas原创】CentOS7.8安装k8s | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...