Skip to content

Latest commit

 

History

History
39 lines (24 loc) · 2.8 KB

01.deploy k8s.md

File metadata and controls

39 lines (24 loc) · 2.8 KB
  • 实习的主要内容是搭建 kubernetes clusters 用于部署训练机器学习的模型,然后再将对集群的操作包装起来,为用户提供 API 来进行集群操作。(目前我理解的是做这个)

  • 以前也没有使用过 k8s 或者 docker ,前几天花了一些时间了解。然后搭建起来了集群。现在记录一下使用 kubeadm 搭建集群用到的命令。墙内无法很顺利地执行这些命令,需要自己提前弄好网络环境。参考内容在这里

https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/

    1. Ubuntu16.04 上安装 Docker17.03

sudo apt-get update && sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common && curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - && sudo add-apt-repository "deb https://download.docker.com/linux/$(. /etc/os-release; echo "$ID") $(lsb_release -cs) stable" && sudo apt-get update && sudo apt-get install -y docker-ce=$(apt-cache madison docker-ce | grep 17.03 | head -1 | awk '{print $3}') && sudo docker version

或者使用官网的详细步骤

sudo apt-get remove docker docker-engine docker.io && sudo apt-get update && sudo apt-get install
apt-transport-https
ca-certificates
curl
software-properties-common -y && curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - && sudo add-apt-repository
"deb [arch=amd64] https://download.docker.com/linux/ubuntu
$(lsb_release -cs)
stable" && sudo apt-get update && apt-cache madison docker-ce && sudo apt-get install docker-ce=17.03.2ce-0ubuntu-xenial -y && sudo docker run hello-world

    1. 安装 kubelet, kubeadm, kubectl

sudo apt-get update && sudo apt-get install -y apt-transport-https curl && curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - && sudo sh -c "cat </etc/apt/sources.list.d/kubernetes.list deb http://apt.kubernetes.io/ kubernetes-xenial main EOF" && sudo apt-get update && sudo apt-get install -y kubelet kubeadm kubectl

    1. 加入新的节点(具体 token hash 会变化)

首先执行 sudo kubeadm init --pod-network-cidr=10.244.0.0/16 #附带额外的网络插件,这里选择的是 canal

系统会自动输出后续执行的指令,照做即可。例如我这边是 sudo kubeadm join 10.0.0.4:6443 --token qvw8k8.zevwb172js5cczl6 --discovery-token-ca-cert-hash sha256:2de8e7ec2bf0d40ed5fc5750f83a376448bf93b89d3b415e07e01f6a8e8f2506

记录下来输出待会儿按要求执行,也需要用于添加 Node 组成集群。然后执行添加网络插件的命令:

kubectl apply -f https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/canal/rbac.yaml

kubectl apply -f https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/canal/canal.yaml