- kubelet、kubeadm要配置amr的地址,另外他们的名字和x86上面有一点不一样,他们是kubelet-1.21.2-0,多了一个-0的小尾巴
-
kubeadm init的时候加上仓库的地址,如
--image-repository registry.aliyuncs.com/google_containers
-
coredns的问题是他的镜像地址转换后变成 :
registry.aliyuncs.com/google_containers/coredns/coredns:v1.8.0
这样就找不到,所以需要手工去拉,再打tag
docker pull coredns/coredns:1.8.0
特别注意,tag后的版本是 v1.8.0 ,要多一个v
docker tag coredns/coredns:1.8.0 registry.aliyuncs.com/google_containers/coredns:v1.8.0
- init命令加上
--ignore-preflight-errors=all
kubeadm init --kubernetes-version=v{KUBERNETES_VERSION} \
--pod-network-cidr={POD_NETWORK_CIDR} \
--apiserver-advertise-address=${APISERVER_ADVERTISE_ADDRESS} \
--image-repository registry.aliyuncs.com/google_containers \
--ignore-preflight-errors=all
最后加上--ignore-preflight-errors=all
,不然第3的问题还是会出现。
- 配置config文件环境
-
安装网络插件
kubectl apply -f https://docs.projectcalico.org/v3.19/manifests/calico.yaml
最新的已经是operator的方式了。
7.测试
kubectl taint nodes --all node-role.kubernetes.io/master-
kubectl expose deployment nginx-deployment --type=NodePort
- 添加节点
source <(kubeadm completion bash)
kubeadm token create --print-join-command
9.扩容测试
kubectl scale deployment nginx-deployment --replicas=3
然后去看有没有被调度到node节点
最后来一张成果图:
![图片上传中…]