CC00033.CloudKubernetes——|Kubernetes&高可用集群.V07|——|Node扩容|

一、加入Kubernetes Node
### --- 在node1上执行
~~~     向集群添加新节点,执行在kubeadm init输出的kubeadm join命令:

[root@k8s-node1 ~]# kubeadm join master.k8s.io:16443 --token 6npcq0.ps39u2hwjaae0g31 --discovery-token-ca-cert-hash sha256:706cb8d93f25dc82e127a6fcf86c6ab27971ee5830659977c0ec0e5171db101e
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.
### --- **集群网络重新安装,因为添加了新的node节点**

[root@k8s-master2 flannel]# kubectl get node
NAME          STATUS     ROLES    AGE    VERSION
k8s-master1   Ready      master   14m    v1.16.3
k8s-master2   Ready      master   41m    v1.16.3
k8s-node1     NotReady   <none>   115s   v1.16.3
### --- 检查状态

[root@k8s-master2 flannel]# kubectl get pods --all-namespaces
kube-system   kube-flannel-ds-6srvr                 0/1     Init:0/1   0          10s
kube-system   kube-flannel-ds-c48zg                 1/1     Running    0          10s
kube-system   kube-flannel-ds-hld8w                 1/1     Running    0          10s
### --- 因为新添加了node节点,所以重新部署一下网络

[root@k8s-master2 flannel]# kubectl delete -f kube-flannel.yml 
podsecuritypolicy.policy "psp.flannel.unprivileged" deleted
clusterrole.rbac.authorization.k8s.io "flannel" deleted
clusterrolebinding.rbac.authorization.k8s.io "flannel" deleted
serviceaccount "flannel" deleted
configmap "kube-flannel-cfg" deleted
daemonset.apps "kube-flannel-ds" deleted
[root@k8s-master2 flannel]# kubectl apply -f kube-flannel.yml
### --- 检查状态:都是ready状态说明加入OK

NAME          STATUS   ROLES    AGE    VERSION
k8s-master1   Ready    master   19m    v1.16.3
k8s-master2   Ready    master   46m    v1.16.3
k8s-node1     Ready    <none>   7m4s   v1.16.3
[root@k8s-master2 flannel]# kubectl get pods --all-namespaces
kube-system   kube-flannel-ds-6srvr                 1/1     Running   0          2m11s
kube-system   kube-flannel-ds-c48zg                 1/1     Running   0          2m11s
kube-system   kube-flannel-ds-hld8w                 1/1     Running   0          2m11s
kube-system   kube-proxy-4pp2x                      1/1     Running   0          6m29s
二、测试kubernetes集群
### --- 在Kubernetes集群中创建一个pod,验证是否正常运行:

[root@k8s-master1 ~]# kubectl create deployment nginx --image=nginx
deployment.apps/nginx created
[root@k8s-master1 ~]# kubectl expose deployment nginx --port=80 --target-port=80 --type=NodePort
service/nginx exposed
[root@k8s-master1 ~]# kubectl get pods
NAME                     READY   STATUS    RESTARTS   AGE
nginx-86c57db685-hfzcg   1/1     Running   0          44s
 
[root@k8s-master1 ~]# kubectl get svc
NAME         TYPE        CLUSTER-IP    EXTERNAL-IP   PORT(S)        AGE
kubernetes   ClusterIP   10.1.0.1      <none>        443/TCP        52m
nginx        NodePort    10.1.15.138   <none>        80:30168/TCP   19s
### --- 访问地址:http://NodeIP:Port 

~~~     http://10.10.10.11:30168/   输出:Welcome to nginx!
~~~     http://10.10.10.12:30168/   输出:Welcome to nginx!
~~~     http://10.10.10.13:30168/   输出:Welcome to nginx!
### --- 通过虚拟IP访问也是可以访问到的,此刻任何一个master节点节点宕机,都可正常输出,

~~~     http://10.10.10.15:30168/   输出:Welcome to nginx!
附录一:
### --- 报错现象:

[root@k8s-node1 ~]# kubeadm join master.k8s.io:16443 --token 6npcq0.ps39u2hwjaae0g31 --discovery-token-ca-cert-hash sha256:706cb8d93f25dc82e127a6fcf86c6ab27971ee5830659977c0ec0e5171db101e
[preflight] Running pre-flight checks
    [WARNING Hostname]: hostname "k8s-node1" could not be reached
    [WARNING Hostname]: hostname "k8s-node1": lookup k8s-node1 on 114.114.114.114:53: no such host
### --- 解决方案:

[root@k8s-node1 ~]# cat /etc/hosts
10.10.10.15    master.k8s.io   k8s-vip
10.10.10.11    master01.k8s.io k8s-master1
10.10.10.12    master02.k8s.io k8s-master2
10.10.10.13    node01.k8s.io   k8s-node1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

yanqi_vip

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

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

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

打赏作者

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

抵扣说明:

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

余额充值