kubernetes添加删除重启节点

1.添加节点

(master)查看目前节点

[root@k8s-master ~]# kubectl get nodes
NAME         STATUS   ROLES    AGE    VERSION
k8s-master   Ready    master   153m   v1.14.0
k8s-node1    Ready    <none>   117m   v1.14.0

clone k8s在执行kubeadm init命令前时的状态机器,修改ip,修改主机名

node2上操作

hostnamectl set-hostname k8s-node2
reboot

添加k8s-node2节点(node2上操作)

[root@k8s-node2 ~]# echo 1 > /proc/sys/net/ipv4/ip_forward
[root@k8s-node2 ~]# kubeadm join 192.168.111.130:6443 --token ymtl8s.933t59qfezi9gjcq --discovery-token-ca-cert-hash sha256:7816d0b2572e6c569ed8e63ece15a7a08d06ed3fc89698245bf2aaa6acc345d7 
[preflight] Running pre-flight checks
[preflight] Reading configuration from the cluster...
[preflight] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -oyaml'
[kubelet-start] Downloading configuration for the kubelet from the "kubelet-config-1.14" ConfigMap in the kube-system namespace
[kubelet-start] Writing kubelet configuration to file "/var/lib/kubelet/config.yaml"
[kubelet-start] Writing kubelet environment file with flags to file "/var/lib/kubelet/kubeadm-flags.env"
[kubelet-start] Activating the kubelet service
[kubelet-start] Waiting for the kubelet to perform the TLS Bootstrap...

This node has joined the cluster:
* Certificate signing request was sent to apiserver and a response was received.
* The Kubelet was informed of the new secure connection details.

Run 'kubectl get nodes' on the control-plane to see this node join the cluster.

master上查看是否成功添加

[root@k8s-master ~]# kubectl get nodes
NAME         STATUS   ROLES    AGE    VERSION
k8s-master   Ready    master   178m   v1.14.0
k8s-node1    Ready    <none>   142m   v1.14.0
k8s-node2    Ready    <none>   27s    v1.14.0
root@k8s-master ~]# kubectl get po --all-namespaces -o wide ##-o查看pod运行在那个node上,--namespace=kube-system查看系统pod
NAMESPACE     NAME                                 READY   STATUS    RESTARTS   AGE     IP                NODE         NOMINATED NODE   READINESS GATES
kube-system   coredns-fb8b8dccf-ltlx4              1/1     Running   0          3h12m   10.244.0.4        k8s-master   <none>           <none>
kube-system   coredns-fb8b8dccf-q949f              1/1     Running   0          3h12m   10.244.0.5        k8s-master   <none>           <none>
kube-system   etcd-k8s-master                      1/1     Running   2          3h11m   192.168.111.130   k8s-master   <none>           <none>
kube-system   kube-apiserver-k8s-master            1/1     Running   2          3h12m   192.168.111.130   k8s-master   <none>           <none>
kube-system   kube-controller-manager-k8s-master   1/1     Running   2          3h11m   192.168.111.130   k8s-master   <none>           <none>
kube-system   kube-flannel-ds-amd64-2gr2v          1/1     Running   0          177m    192.168.111.130   k8s-master   <none>           <none>
kube-system   kube-flannel-ds-amd64-bsrkx          1/1     Running   0          157m    192.168.111.131   k8s-node1    <none>           <none>
kube-system   kube-flannel-ds-amd64-xdg5p          1/1     Running   0          15m     192.168.111.132   k8s-node2    <none>           <none>
kube-system   kube-proxy-2mj4q                     1/1     Running   0          157m    192.168.111.131   k8s-node1    <none>           <none>
kube-system   kube-proxy-ffd8s                     1/1     Running   0          15m     192.168.111.132   k8s-node2    <none>           <none>
kube-system   kube-proxy-qp5k7                     1/1     Running   0          3h12m   192.168.111.130   k8s-master   <none>           <none>
kube-system   kube-scheduler-k8s-master            1/1     Running   2          3h12m   192.168.111.130   k8s-master   <none>           <none>
[root@k8s-master ~]# 
2.删除节点

master上执行:

kubectl drain k8s-node2 --delete-local-data --force --ignore-daemonsets
kubectl delete node k8s-node2

node2上执行:

kubeadm reset

如果需要重新加node,重新启动node机器,再次运行“kubeadm join …”

3.节点重启

无需特别操作,保证节点kubelet是开机启动就行

systemctl enable kubelet
systemctl restart kubelet 或者 service kubelet start

################################################

k8s 删除和维护服务节点
#将 node 节点标记为不可调度,不影响现有 pod。注意 daemonSet 不受影响
kubectl cordon node-name

#驱逐该节点的 pod
kubectl drain node-name

#维护结束,节点重新投入使用
kubectl uncordon node-name

#删除节点
kubectl delete node node-name

#加入新节点,在master节点上执行,将输出再到新节点上执行
kubeadm token create --print-join-command
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

网络飞鸥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值