• 对于注定会优秀的人来说,他所需要的,只是时间----博主
  • 手懒得,必受贫穷,手勤的,必得富足----《圣经》
  • 帮助别人,成就自己。愿君在本站能真正有所收获!
  • 如果你在本站中发现任何问题,欢迎留言指正!
  • 宝剑锋从磨砺出,梅花香自苦寒来!
  • 本站开启了防爆破关小黑屋机制,如果您是正常登录但被关进小黑屋,请联系站长解除!

<三十二>Kubernetes学习笔记-手动搭建k8s-1.10.4之验证集群功能

kubernetes eryajf 8个月前 (12-09) 1223°C 已收录 0个评论
本文预计阅读时间 7 分钟

本文档使用 daemonset 验证 master 和 worker 节点是否工作正常。

1,检查节点状态

$ kubectl get nodes
NAME         STATUS    ROLES     AGE       VERSION
kube-node1   Ready     <none>    3h        v1.10.4
kube-node2   Ready     <none>    3h        v1.10.4
kube-node3   Ready     <none>    3h        v1.10.4

都为 Ready 时正常。

2,创建测试文件

$ cat > nginx-ds.yml <<EOF
apiVersion: v1
kind: Service
metadata:
  name: nginx-ds
  labels:
    app: nginx-ds
spec:
  type: NodePort
  selector:
    app: nginx-ds
  ports:
  - name: http
    port: 80
    targetPort: 80
---
apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
  name: nginx-ds
  labels:
    addonmanager.kubernetes.io/mode: Reconcile
spec:
  template:
    metadata:
      labels:
        app: nginx-ds
    spec:
      containers:
      - name: my-nginx
        image: nginx:1.7.9
        ports:
        - containerPort: 80
EOF

2,执行定义文件

启动之前,可以先将上边定义的镜像pull下来。

$ kubectl create -f nginx-ds.yml
service "nginx-ds" created
daemonset.extensions "nginx-ds" created

3,检查各 Node 上的 Pod IP 连通性

$kubectl get pods  -o wide|grep nginx-ds
nginx-ds-bw72r                      1/1       Running   0          6h        172.30.29.2   kube-node3
nginx-ds-fbx76                      1/1       Running   0          6h        172.30.84.2   kube-node1
nginx-ds-jbjzg                      1/1       Running   0          6h        172.30.8.2    kube-node2

可见,nginx-ds 的 Pod IP 分别是 172.30.84.2、172.30.8.2、172.30.29.2,在所有 Node 上分别 ping 这三个 IP,看是否连通:

cat > magic.sh << "EOF"
#!/bin/bash

source /opt/k8s/bin/environment.sh

for node_ip in ${NODE_IPS[@]}
do
    echo ">>> ${node_ip}" 
    ssh ${node_ip} "ping -c 1 172.30.84.2"
    ssh ${node_ip} "ping -c 1 172.30.8.2"
    ssh ${node_ip} "ping -c 1 172.30.29.2"
done
EOF

4,检查服务 IP 和端口可达性

$kubectl get svc |grep nginx-ds
nginx-ds           NodePort    10.254.110.153   <none>        80:8781/TCP      6h

可见:

  • Service Cluster IP:10.254.110.153
  • 服务端口:80
  • NodePort 端口:8781

在所有 Node 上 curl Service IP:

cat > magic.sh << "EOF"
#!/bin/bash

source /opt/k8s/bin/environment.sh

for node_ip in ${NODE_IPS[@]}
do
    echo ">>> ${node_ip}" 
    ssh ${node_ip} "curl 10.254.110.153"
done
EOF

预期输出 nginx 欢迎页面内容。

5,检查服务的 NodePort 可达性

在所有 Node 上执行:

cat > magic.sh << "EOF"
#!/bin/bash

source /opt/k8s/bin/environment.sh

for node_ip in ${NODE_IPS[@]}
do
    echo ">>> ${node_ip}" 
    ssh ${node_ip} "curl ${node_ip}:8781"
done
EOF

预期输出 nginx 欢迎页面内容。


weinxin
扫码订阅本站,第一时间获得更新
微信扫描二维码,订阅我们网站的动态,另外不定时发送WordPress小技巧,你可以随时退订,欢迎订阅哦~

二丫讲梵 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明<三十二>Kubernetes学习笔记-手动搭建k8s-1.10.4之验证集群功能
喜欢 (1)
[如果想支持本站,可支付宝赞助]
分享 (0)
eryajf
关于作者:
学无止境,我愿意无止境学。书山有路,我愿意举身投火,淬炼成金!

您必须 登录 才能发表评论!