• Kubernetes安装-Ubuntu版


    由于Docker、Kubernetes之间的版本要求比较严格,如果版本不一致会导致安装失败,或者无效所以版本依赖之间要求比较严格,本文章使用的Docker版本为19.03,Kubernetes的版本为1.19.0

    Kubernetes安装步骤

    Master节点和Worker节点的步骤基本一样的。

    根据官方推荐,开启响应端口号
    image

    关闭Swap

    sudo swapoff -a
    
    • 1

    更改crou驱动,Kubernetes的默认驱动设置为systemd,而Docker为crounfs,需要把Docker的驱动改为systemd

    vim /etc/docker/damemon.json
    
    • 1

    往damemon.json添加配置:“exec-opts”: [ “native.cgroupdriver=systemd” ]

    如果docker之前没有添加过阿里云的镜像地址需要添加,详细的damemon.json内容如下:

    {
     "registry-mirrors" : [
       "https://mirror.ccs.tencentyun.com",
       "http://registry.docker-cn.com",
       "http://docker.mirrors.ustc.edu.cn",
       "http://hub-mirror.c.163.com",
       "https://xjuddlv8.mirror.aliyuncs.com"
     ],
     "insecure-registries" : [
       "registry.docker-cn.com",
       "docker.mirrors.ustc.edu.cn"
     ],
     "exec-opts": [ "native.cgroupdriver=systemd" ],
     "debug" : true,
     "experimental" : true
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    安装kubeadm工具

    sudo apt update && sudo apt install -y apt-transport-https
    
    • 1

    添加阿里云公钥

    curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | sudo apt-key add -
    
    • 1

    由于Kubernates的镜像很多都需要墙的,所以这里使用阿里云镜像,否则不墙的话一定超时报错。

    添加阿里云的镜像地址

    vim /etc/apt/sources.list.d/kubernetes.list
    
    • 1

    往kubernetes.list的文件里面写入以下内容(注意并不是执行命令):

    deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
    
    • 1

    更新package库,然后下载Kubernetes相关包

    sudo apt update
    
    • 1
    apt-get install -y kubelet=1.19.0-00 kubeadm=1.19.0-00 kubectl=1.19.0-00
    
    • 1

    注意这里,“=”后面的是版本号(可选),不选默认最新版本,如果和Docker容器版本不一致的话,会安装失败,由于本文章使用的是Docker-19.03版本,对应Kubernetes的1.19.0版本。

    查看Kubernetes版本

    kubelet --version
    
    • 1

    至此Kubernetes安装完成。

    Master节点部署

    初始化Master节点,并且Clico CNI网络插件

    sudo kubeadm init  --pod-network-cidr=192.168.0.0/16 --image-repository registry.aliyuncs.com/google_containers
    
    • 1

    image

    当出现“Your Kubernetes control-plane has initialized successfully!”的提示,就说明Master节点(控制平面)已经安装成功了,然后记得保存下方的:kubeadm join …等命令,该命令是添加工作节点需要用到的命令。

    根据安装成功的提示,赋予普通用户权限

    mkdir -p $HOME/.kube
    
    • 1
    sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    
    • 1
    sudo chown $(id -u):$(id -g) $HOME/.kube/config
    
    • 1

    安装Pod Network插件

    kubectl apply -f https://docs.projectcalico.org/v3.10/manifests/calico.yaml
    
    • 1

    查看插件的安装情况

    kubectl get pods --all-namespaces
    
    • 1

    image

    当所有的STATUS为Running的时候,则表示安装成功。
    至此,Kubernetes的Master节点部署完成。

    部署Worker节点

    kublet的安装工作节点的步骤和master基本一致,只是worker节点不需要安装kubectl.

    sudo apt update
    
    • 1
    apt-get install -y kubelet=1.19.0-00 kubeadm=1.19.0-00
    
    • 1

    设置开机自启动

    systemctl start kubectl
    
    • 1
    systemctl enable kubectl
    
    • 1

    Worker节点加入Kubuernetes集群

    kubeadm join 172.31.148.210:6443 --token k7rgl6.4v2dj4s9k3uoqt4x \
        --discovery-token-ca-cert-hash sha256:a85fc30fa9b7779588c363462db5dbd7a66b0f56f52676acf4e96cd611074a27
    
    • 1
    • 2

    以上的命令是Master Init的时候打印的内容。

    在Master节点查看

    kubectl get nodes
    
    • 1
  • 相关阅读:
    数据结构二叉树前序遍历递归和非递归算法
    第4章:向量处理机
    docker镜像与容器基本的基本操作(三)
    (C++栈与队列02) 栈的应用 单调队列
    AWS无服务器 应用程序开发—第九章 权限(Amazon IAM)
    Generative AI 新世界 | Falcon 40B 开源大模型的部署方式分析
    小插曲 -- 使用Visual Studio Code远程连接香橙派
    MySQL 慢查询日志 使用方法浅析 日志定位与优化技巧
    Scala (二) --------- 变量和数据类型
    护眼灯对眼睛有好处吗?盘点眼科专家推荐的护眼台灯
  • 原文地址:https://blog.csdn.net/qq_36871369/article/details/125546130