• K8s 集群部署过程文档


    1.环境部署之前要做的事情:

    ========================
    ip 分配:
    一台阿里云ECS
    master0:
    192.168.8.169
    node01:
    192.168.8.170
    node02:
    192.168.8.171
    ========================
    永久修改主机名:
    hostnamectl set-hostname master01
    reboot
    
    hostnamectl set-hostname node01
    reboot
    
    hostnamectl set-hostname node02
    reboot
    ========================
    更新系统软件包:
    >: yum update -y
    # 安装软件管理包和可能使用的依赖
    >: yum -y groupinstall "Development tools"
    >: yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel psmisc libffi-devel
    # 检测是否成功:git依赖安装是否成功 pass
    # 安装一些软件包
    yum install bash-completion vim wget telnet sysstat net-tools lsof-y
    ========================
    # 禁用swap
    swapoff -a # 临时修改,重启后恢复
    
    [root@master01 ~]# vim /etc/fstab # 配置文件 永久修改,修改
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33

    [root@master01 ~]# vim /etc/fstab
    在这里插入图片描述
    [root@master01 ~]# free -g
    在这里插入图片描述
    Swap 显示都为0表示修改成功了。

    # 安装 docker 和 docker-compose 必备4条命令
    [root@master01 ~]# sudo yum update
    [root@master01 ~]# sudo yum install -y yum-utils device-mapper-persistent-data lvm2
    [root@master01 ~]# sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    [root@master01 ~]# sudo yum install docker-ce -y
    
    # 查看你安装的版本
    [root@master01 ~]#docker -v 
    ### Docker version 20.10.5, build 55c4c88 
    
    # 启动 docker 服务端:
    [root@master01 ~]#systemctl start docker    # 启动
    [root@master01 ~]#systemctl stop docker     # 停止
    [root@master01 ~]#systemctl restart docker  # 重启
    
    # 安装docker-compose
    [root@master01 ~]# curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
    [root@master01 ~]# sudo chmod +x /usr/local/bin/docker-compose # 虚拟机必须执行该命令 否则没权限
    [root@master01 ~]# docker-compose -v
    ### docker-compose version 1.25.0, build 0a186604
    
    ######》node01 和 node02 步骤一样的 《######
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22

    2.安装运行时

    在这里插入图片描述
    这里我们选择 安装 Docker,此步骤已完成。

    3.安装 kubeadm, kubelet, kubectl
    安装方式,箭头所指:
    在这里插入图片描述

    mkdir k8s_install/  && cd k8s_install/
    mkdir k8s_install_pkg && cd k8s_install_pkg
    
    • 1
    • 2
    # 访问该网址下载
    # 安装CNI插件
    https://github.com/containernetworking/plugins/releases/download/v0.8.2/cni-plugins-linux-amd64-v0.8.2.tgz
    
    # 安装crictl
    https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.22.0/crictl-v1.22.0-linux-amd64.tar.gz
    
    # 安装 kubeadm kubelet kubectl
    https://storage.googleapis.com/kubernetes-release/release/v1.19.14/bin/linux/amd64/kubeadm
    https://storage.googleapis.com/kubernetes-release/release/v1.19.14/bin/linux/amd64/kubelet
    https://storage.googleapis.com/kubernetes-release/release/v1.19.14/bin/linux/amd64/kubectl
    
    # 安装 kubelet.service 或谷歌搜 kubelet.service 点击github master raw 右上角
    ### 这是没注意版本的错误写法,注个意
    #https://raw.githubusercontent.com/kubernetes/release/master/cmd/kubepkg/templates/latest/deb/kubelet/lib/systemd/system/kubelet.service
    ### 注意版本是v0.4.0,在master分支右边点击 tag找到v0.4.0即可
    https://raw.githubusercontent.com/kubernetes/release/v0.4.0/cmd/kubepkg/templates/latest/deb/kubelet/lib/systemd/system/kubelet.service
    
    # 安装 10-kubeadm.conf 或谷歌搜 10-kubeadm.conf 点击github master raw 右上角
    ### 这是没注意版本的错误写法,注个意
    # https://raw.githubusercontent.com/kubernetes/release/master/cmd/kubepkg/templates/latest/deb/kubeadm/10-kubeadm.conf
    
    ### 注意版本是v0.4.0,在master分支右边点击 tag找到v0.4.0即可
    https://raw.githubusercontent.com/kubernetes/release/v0.4.0/cmd/kubepkg/templates/latest/deb/kubeadm/10-kubeadm.conf
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    下载好后截图如下:
    在这里插入图片描述

    cd /root/k8s_install
    vim k8s_install.sh
    
    • 1
    • 2

    复制粘贴 以下命令到 k8s_install.sh里, 安装的完整命令如下:

    #!/bin/sh
    K8S_INSTALL_PKG=~/k8s_install/k8s_install_pkg
    CNI_VERSION="v0.8.2"
    ARCH="amd64"
    sudo mkdir -p /opt/cni/bin
    # curl -L "https://github.com/containernetworking/plugins/releases/download/${CNI_VERSION}/cni-plugins-linux-${ARCH}-${CNI_VERSION}.tgz" | sudo tar -C /opt/cni/bin -xz
    tar -zxvf $K8S_INSTALL_PKG/cni-plugins-linux-${ARCH}-${CNI_VERSION}.tgz -C  /opt/cni/bin
    
    DOWNLOAD_DIR=/usr/local/bin
    sudo mkdir -p $DOWNLOAD_DIR
    
    CRICTL_VERSION="v1.22.0"
    ARCH="amd64"
    # curl -L "https://github.com/kubernetes-sigs/cri-tools/releases/download/${CRICTL_VERSION}/crictl-${CRICTL_VERSION}-linux-${ARCH}.tar.gz" | sudo tar -C $DOWNLOAD_DIR -xz
    tar -zxvf $K8S_INSTALL_PKG/crictl-${CRICTL_VERSION}-linux-${ARCH}.tar.gz -C $DOWNLOAD_DIR
    
    RELEASE="v1.19.14"
    ARCH="amd64"
    cd $DOWNLOAD_DIR
    # sudo curl -L --remote-name-all https://storage.googleapis.com/kubernetes-release/release/${RELEASE}/bin/linux/${ARCH}/{kubeadm,kubelet,kubectl}
    cd $K8S_INSTALL_PKG
    cp kubeadm kubelet kubectl $DOWNLOAD_DIR/
    cd $DOWNLOAD_DIR
    sudo chmod +x {kubeadm,kubelet,kubectl}
    
    RELEASE_VERSION="v0.4.0"
    # curl -sSL "https://raw.githubusercontent.com/kubernetes/release/${RELEASE_VERSION}/cmd/kubepkg/templates/latest/deb/kubelet/lib/systemd/system/kubelet.service" | sed "s:/usr/bin:${DOWNLOAD_DIR}:g" | sudo tee /etc/systemd/system/kubelet.service
    cat $K8S_INSTALL_PKG/kubelet.service | sed "s:/usr/bin:${DOWNLOAD_DIR}:g" | sudo tee /etc/systemd/system/kubelet.service
    sudo mkdir -p /etc/systemd/system/kubelet.service.d
    #curl -sSL "https://raw.githubusercontent.com/kubernetes/release/${RELEASE_VERSION}/cmd/kubepkg/templates/latest/deb/kubeadm/10-kubeadm.conf" | sed "s:/usr/bin:${DOWNLOAD_DIR}:g" | sudo tee /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
    cat $K8S_INSTALL_PKG/10-kubeadm.conf | sed "s:/usr/bin:${DOWNLOAD_DIR}:g" | sudo tee /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
    
    systemctl enable --now kubelet
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33

    以上命令含义请参考 URL

    然后截图进度如下:
    在这里插入图片描述
    执行命令:

    [root@master01 k8s_install]# chmod +x k8s_install.sh
    
    • 1

    在这里插入图片描述
    然后执行命令:

    [root@master01 k8s_install]# ./k8s_install.sh 
    
    • 1

    正常的输出:
    在这里插入图片描述
    成功的标志是:
    执行命令:

    [root@master01 k8s_install]# kubeadm version
    
    • 1

    在这里插入图片描述
    能看到这个输出就说明 kubeadm 安装成功了。
    执行命令:

    [root@master01 k8s_install]# kubectl version
    
    • 1

    版本是1.19.14,有个连接拒绝的报错,因为目前没有通过 kubeadm 去 安装 K8s 集群,所以它报了拒绝的提示信息:
    在这里插入图片描述

    [root@master01 k8s_install]# systemctl status kubelet
    
    • 1

    执行结果:
    在这里插入图片描述
    结果说明:
    红色代码提示退出
    同样的道理,因为我们还没有 安装 K8s 集群,安装之后 kubelet 就能跑起来了。

    下一步 【待补充loading…】

  • 相关阅读:
    剑指 Offer 32 - II. 从上到下打印二叉树 II(LeetCode 102. 二叉树的层序遍历)(BFS层序遍历变形)
    [附源码]java毕业设计校园征兵及退役复原管理系统
    【Linux】环境变量
    docker容器的detached模式下查看logs
    Web服务器与Http协议
    python入门-安装及环境配置(简单好用)
    C++为什么始终无法取代 C 吗?
    Jenkins pipeline中的全局变量
    剑指offer——JZ84 二叉树中和为某一值的路径(三) 解题思路与具体代码【C++】
    云IDE产品测评报告
  • 原文地址:https://blog.csdn.net/YJG7D314/article/details/126366946