使用配置文件来初始化(目前还是实验性的)
kubeadm init --config FILEkubeadm join --config FILE
打印当前版本 kubeadm init 和 kubeadm join 的默认配置
kubeadm config print init-defaults
kubeadm config print join-defaults
将旧的 v1alpha3 版本的配置迁移到 v1beta1 版本 。 Kubernetes 1.14 版本中将会移除对 v1alpha3 这个版本的支持
kubeadm config migrate --old-config OLD_FILE --new-config NEW_FILE
v1beta1 版本配置中每个字段的细节说明
https://godoc.org/k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta1
加入集群相关
# 加入集群的命令通式
kubeadm join --token <token> <master-ip>:<master-port> --discovery-token-ca-cert-hash sha256:<hash>
# 列出加入集群时候的token
kubeadm token list
# 如果token过期,则需要重新创建一个
kubeadm token create
# sha256 值
openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | \
openssl dgst -sha256 -hex | sed 's/^.* //'
升级集群
Control Planle Node
# 升级 kubeadm
apt update && apt install kubeadm
# 查看可升级的计划
kubeadm upgrade plan
# 指定版本执行升级
kubeamd upgrade apply v1.15.0
# 更新节点的kubelet配置信息
kubeadm upgrade node
# 升级 kubelet kubectl
apt install kubelet kubectl
# 重启 kubelet
systemctl restart kubelet
Worker Nodes
# 升级 kubeadm
apt update && apt install kubeadm
# 更新节点的kubelet配置信息
kubeadm upgrade node
# 升级 kubelet kubectl
apt install -y kubelet kubectl
# 重启 kubelet
systemctl restart kubelet
