zoukankan      html  css  js  c++  java
  • 08.验证集群功能

    08.验证集群功能

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

    检查节点状态

    $ 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 时正常。

    创建测试文件

    $ 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
    

    执行定义文件

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

    检查各 Node 上的 Pod IP 连通性

    $ kubectl get pods  -o wide|grep nginx-ds
    nginx-ds-dbn97   1/1       Running   0          2m        172.30.29.2   kube-node2
    nginx-ds-rk777   1/1       Running   0          2m        172.30.81.2   kube-node1
    nginx-ds-tr9g5   1/1       Running   0          2m        172.30.39.2   kube-node3
    

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

    source /opt/k8s/bin/environment.sh
    for node_ip in ${NODE_IPS[@]}
      do
        echo ">>> ${node_ip}"
        ssh ${node_ip} "ping -c 1 172.30.39.2"
        ssh ${node_ip} "ping -c 1 172.30.81.2"
        ssh ${node_ip} "ping -c 1 172.30.29.2"
      done
    

    检查服务 IP 和端口可达性

    $ kubectl get svc |grep nginx-ds
    nginx-ds     NodePort    10.254.254.228   <none>        80:8900/TCP   4m
    

    可见:

    • Service Cluster IP:10.254.254.228
    • 服务端口:80
    • NodePort 端口:8900

    在所有 Node 上 curl Service IP:

    source /opt/k8s/bin/environment.sh
    for node_ip in ${NODE_IPS[@]}
      do
        echo ">>> ${node_ip}"
        ssh ${node_ip} "curl 10.254.254.228"
      done
    

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

    检查服务的 NodePort 可达性

    在所有 Node 上执行:

    source /opt/k8s/bin/environment.sh
    for node_ip in ${NODE_IPS[@]}
      do
        echo ">>> ${node_ip}"
        ssh ${node_ip} "curl ${node_ip}:8900"
      done
    

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


    链接:https://www.orchome.com/1201
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
     
  • 相关阅读:
    Django url处理
    Django从请求到返回流程
    Django快速开发投票系统
    Python3集成安装xadmin
    解读TCP 四种定时器
    前后端交互中出现的问题(二)
    前后端交互中出现的问题(一)
    IDEA总是启动不了
    安装maven时遇到的问题
    Java基础笔记(十九)——抽象类abstract
  • 原文地址:https://www.cnblogs.com/linux20190409/p/10976984.html
Copyright © 2011-2022 走看看