Kubernetes(k8s)安装

作者: 姜家志 | 来源:发表于2019-12-01 15:37 被阅读0次

    Kubernetes 是用于自动部署、扩展和管理容器化应用程序的开源系统。它旨在提供『跨主机集群的自动部署、扩展以及运行应用程序容器的平台』。它支持一系列容器工具,包括Docker等。- https://zh.wikipedia.org/wiki/Kubernetes

    在这篇文章中,我会介绍下如何在Ubuntu上安装Kubernetes。

    安装Docker

    使用命令安装:

    sudo apt install docker.io

    查看安装结果:

    docker --version

    Docker version 18.09.7, build 2d0083d
    

    启动Docker服务:

    sudo systemctl enable docker

    安装Kubernetes

    先要确认是否安装了curl,如果没有安装,运行命令安装:

    sudo apt install curl

    添加google的apt包依赖:

    curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add
    sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main"
    

    安装Kubernetes基础软件:

    sudo apt install kubeadm kubectl kubelet
    

    kubeadm是一个工具,通过执行必要的操作来启动和运行一个最小可用的集群。它被故意设计为只关心启动集群,而不是节点准备工作,使用kubeadm做为所有部署的基础将会使得创建一个符合期望的集群变得更容易。
    kubectl是命令行工具,可以用来操控Kubernetes集群。
    kubelet是在每个节点上运行的主要"节点代理",kubelet以PodSpec为单位来运行任务,PodSpec是一个描述pod的YAML或JSON对象

    启动Kubernetes

    首先要关闭内存交换系统,因为Kubernetes在使用内存交换系统上无法正常执行:

    sudo swapoff -a

    设置Kubernetes的域名,这里设置为master-node:

    sudo hostnamectl set-hostname master-node

    设置从节点的命令为:hostnamectl set-hostname slave-node
    初始化主节点并设置IP地址:

    sudo kubeadm init --pod-network-cidr=10.244.0.0/16

    初始化成功后会提醒我们做两件事情,第一创建用户相关信息:

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

    如果不按照上面的进行操作就会出现错误:

    nable to connect to the server: x509: certificate signed by unknown authority (possibly because of "crypto/rsa: verification error" while trying to verify candidate authority certificate "kubernetes")

    第二其它节点如何加入集群:

    kubeadm join ip:6443 --token 83zs28******u73b1 \
        --discovery-token-ca-cert-hash sha256:9a0b682***********0a1039dec66ff7dd3eb1061af4f90e7923ae1932b
    

    安装结果

    安装完成之后可以通过命令查看:

    kubectl get pods --all-namespaces

    可以看到运行结果:

    NAMESPACE     NAME                                  READY   STATUS    RESTARTS   AGE
    kube-system   coredns-5644d7b6d9-8wv9c              0/1     Pending   0          9m32s
    kube-system   coredns-5644d7b6d9-vfd5w              0/1     Pending   0          9m32s
    kube-system   etcd-master-node                      1/1     Running   0          8m30s
    kube-system   kube-apiserver-master-node            1/1     Running   0          8m41s
    kube-system   kube-controller-manager-master-node   1/1     Running   0          8m23s
    kube-system   kube-proxy-dmvw7                      1/1     Running   0          9m32s
    kube-system   kube-scheduler-master-node            1/1     Running   0          8m43s
    

    下一篇将会介绍如何安装Kubernetes dashboard(Web UI)。

    引用

    https://kubernetes.io/zh/
    https://zh.wikipedia.org/wiki/Kubernetes
    https://vitux.com/install-and-deploy-kubernetes-on-ubuntu/

    相关文章

      网友评论

        本文标题:Kubernetes(k8s)安装

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