Kubernetes增加master节点

发布时间:2024年01月18日

在这里插入图片描述

一. 新增节点

无论是node节点还是master节点,kubelet、kubeadm、kubectl、CRI需要部署好,

### 新增node, 重新生成token, 复制加入即可, 前提是需要装上面的 kubectl kubeadm kubelet containerd 等
kubeadm token create --print-join-command

### 新增 master节点,先生成 token 及 ca
kubeadm token create --print-join-command

# 再生成key
kubeadm init phase upload-certs --upload-certs
# 然后组合起来
    --control-plane --certificate-key ${KEY}

# 查看污点
kubectl describe node master-1 |grep -i tain
Taints:             node-role.kubernetes.io/master:NoSchedule

# 根据实际情况去除污点, 多去除几次, 有可能没去除到
kubectl taint node master-1 node.kubernetes.io/not-ready:NoSchedule-

二. 容器状态

Pod状态Pod含义解决方案
PendingPod未被调度到节点上Pod状态为Pending
Init:N/MPod包含M个Init容器,其中N个已经启动完成Pod状态为Init:N/M(Init:Error和Init:CrashLoopBackOff)
Init:ErrorInit容器已启动失败Pod状态为Init:N/M(Init:Error和Init:CrashLoopBackOff)
Init:CrashLoopBackOffInit容器启动失败,反复重启Pod状态为Init:N/M(Init:Error和Init:CrashLoopBackOff)
CompletedPod的启动命令已执行完毕Pod状态为Completed
CrashLoopBackOffPod启动失败,反复重启Pod状态为CrashLoopBackOff
ImagePullBackOffPod镜像拉取失败Pod状态为ImagePullBackOff
RunningPod运行正常。Pod Running但是未正常工作无需处理Pod状态为Running但没正常工作
TerminatingPod正在关闭中Pod状态为Terminating
EvictedPod被驱逐Pod状态为Evicted

三. 拷贝容器文件

# 获得容器的ID
[root@k8s-lon ~/apisix/apisix-on-kubernetes]# crictl  ps -a |awk '/xingguang-etcd-1/ {print $1}'
be320d0d21878

# 获得容器完整ID
[root@k8s-lon ~/apisix/apisix-on-kubernetes]# ctr -n k8s.io task ls  |grep be320d0d21878
be320d0d218786b1310c548595a99509eb5e0717502f36cb4c454621fcfe2db6    27283     RUNNING
[root@k8s-lon ~/apisix/apisix-on-kubernetes]# 

# 任意创建目录
mkdir /root/apisix/apisix-on-kubernetes/etcd-1

# 获得挂载命令,
[root@k8s-lon ~/apisix/apisix-on-kubernetes]# ctr -n k8s.io snapshot mounts  /root/apisix/apisix-on-kubernetes/etcd-1 be320d0d218786b1310c548595a99509eb5e0717502f36cb4c454621fcfe2db6
mount -t overlay overlay /root/apisix/apisix-on-kubernetes/etcd-1 -o index=off,workdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/1496/work,upperdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/1496/fs,lowerdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/1086/fs

# 直接挂载上,进入挂载点,就可以任意操作容器的文件, 一定不要删除文件,否则容器中文件也会丢失
mount -t overlay overlay /root/apisix/apisix-on-kubernetes/etcd-1 -o index=off,workdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/1496/work,upperdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/1496/fs,lowerdir=/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/1086/fs

# 使用完毕后,必须 umount, 保证容器中的数据不丢失
文章来源:https://blog.csdn.net/moon_naxx/article/details/135675071
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。