CKA考试题:[使用kubeadm部署k8s,一个master,一个node]

使用kubeadm部署一个k8s集群,把节点node01加入集群。(docker已安装)

1.添加kubernetes源:(master+node01均执行该步骤)

sudo apt update && sudo apt install -y apt-transport-https curl
curl -s https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | sudo apt-key add -

2. 检查是否添加成功 (master+node01均执行该步骤)

sudo cat /etc/apt/sources.list.d/kubernetes.list

3.安装kubelet,安装kubeadm,kubectl (master+node01均执行该步骤)

sudo apt update
sudo apt install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl

4.集群初始化 init出错,可以使用 kubeadm reset 重置集群 

kubeadm init --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.13.1 --pod-network-cidr=192.168.0.0/16

5.配置kubelet

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

kubectl get pods --all-namespaces  //可以看到coredns的状态是pending,这是因为我们还没有安装网络插件

6.安装calico网络组件

kubectl apply -f https://docs.projectcalico.org/v3.3/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml
kubectl apply -f https://docs.projectcalico.org/v3.3/getting-started/kubernetes/installation/hosted/kubernetes-datastore/calico-networking/1.7/calico.yaml

7.默认情况下,由于安全原因,集群并不会将pods部署在Master节点上。但是在开发环境下,我们可能就只有一个Master节点,这时可以使用下面的命令来解除这个限制:

kubectl taint nodes --all node-role.kubernetes.io/master-

node01加入集群

8.node01加入master节点

kubeadm join [masterIP]:6443 --token b0x4dv.nbut63ktiaikcc24 --discovery-token-ca-cert-hash sha256:551fe78b50dfe52410869685b7dc70b9a27e550241a6112d8d1fef2073759bb4

9 master节点查看node状态

kubectl get node -o wide

10.常规命令运行起来 检验集群部署是否成功

原文地址:https://www.cnblogs.com/peteremperor/p/12745329.html