美文网首页设计方案LinuxIT必备技能
离线安装Kubernetes v1.17.1 - 离线部署

离线安装Kubernetes v1.17.1 - 离线部署

作者: 浮云_9046 | 来源:发表于2020-02-19 11:40 被阅读0次

    目标

    在没有互联网到企业内网部署Kubernetes集群

    目录

    2020年2月21日更新:

    为了简化安装过程,我将第一篇文章做好的离线资源包上传百度云,大家可以下载直接使用。https://pan.baidu.com/s/176xRjEM8PC698zVH9TdacA 提取码: bhmn

    为了大家学习方便,请见Kubernetes离线部署视频教程

    环境

    • CentOS Linux release 7.7.1908 (Core)
    • Docker 19.03.5
    • Kubernetes 1.17.1
    • Master节点 192.168.1.30
    • Worker节点 192.168.1.31

    安装Master

    master节点上执行。

    1. scp命令上传资源包到/root目录下解压,192.168.1.30改为你节点的IP。
    scp k8sOfflineSetup.tar.gz root@192.168.1.30:/root
    
    1. 解压到/root/k8sOfflineSetup目录

    ⚠️注意:解压路径不能修改。

    mkdir /root/k8sOfflineSetup
    tar -xzvf k8sOfflineSetup.tar.gz -C /root/k8sOfflineSetup 
    
    1. 设置参数并安装
    # master节点的主机名
    export HOSTNAME=k8s-master
    # kubernetes apiserver的主机地址
    export APISERVER_NAME=apiserver.k8s.com
    # 集群中master节点的ip地址
    export MASTER_IP=192.168.1.30
    # Pod 使用的网段
    export POD_SUBNET=10.11.10.0/16
    
    cd /root/k8sOfflineSetup
    ./setup_master.sh
    

    安装Worker

    worker节点上执行。

    1. scp命令上传资源包到/root目录下解压,192.168.1.31改为你节点的IP。
    scp k8sOfflineSetup.tar.gz root@192.168.1.31:/root
    
    1. 解压到/root/k8sOfflineSetup目录

    ⚠️注意:解压路径不能修改。

    mkdir /root/k8sOfflineSetup
    tar -xzvf k8sOfflineSetup.tar.gz -C /root/k8sOfflineSetup 
    
    1. 获取加入master的参数

    ⚠️注意:是在master节点上执行。

    # 在 master 节点执行
    kubeadm token create --print-join-command
    
    # 得到token和cert,这两个参数在2个小时内可以重复使用,超过以后就得再次生成
    kubeadm join apiserver.k8s.com --token mpfjma.4vjjg8flqihor4vt     --discovery-token-ca-cert-hash sha256:6f7a8e40a810323672de5eee6f4d19aa2dbdb38411845a1bf5dd63485c43d303
    
    1. 设置参数并安装
    # worker节点的主机名
    export HOSTNAME=k8s-worker2
    # kubernetes apiserver的主机地址
    export APISERVER_NAME=apiserver.k8s.com
    # 集群中master节点的ip地址
    export MASTER_IP=192.168.1.30
    # 加入master的token
    export TOKEN=35jn30.4ru763yqfvp4j89m
    # 加入master的证书
    export CERT=sha256:4c720c8dbf3f91a542ee892188108f99ff80ba1025099a8210145917b1f13a13
    cd /root/k8sOfflineSetup
    ./setup_worker.sh
    

    完成

    现在你可以在master节点,执行kubectl get nodes看到所有节点都在线了,是不是非常快就完成部署了。

    访问Kuboard

    Kuboard是一个非常方便的web管理界面,安装完以后可以通过http://任意节点IP:32567/访问。详细使用请参考 <www.kuboard.cn>

    获取登陆Token

    # 在 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
    

    访问Kubernetes Dashboard

    请参加我的另一篇文章:从零开始部署Kubernetes v1.17.1集群(四)部署可视化管理工具

    常见问题

    Pod启动报镜像拉取失败

    有些部署文件中设置了镜像拉取策略为imagePullPolicy:Always,意思是每次启动都要拉取镜像,修改为imagePullPolicy:IfNotPresent如果不存在才拉取就行了。不过你应该记得要把每个节点包括master和worker都导入镜像才行。

    相关文章

      网友评论

        本文标题:离线安装Kubernetes v1.17.1 - 离线部署

        本文链接:https://www.haomeiwen.com/subject/ketafhtx.html