• 云原生|kubernetes |部署k8s图形化管理组件 kuboard v3


    前言

    kubernetes的图形化管理工具是非常多的,比较常用的比如官方的kubernetes dashboard,青云的kubesphere,私有化部署的rancher等等。官方的dashboard比较中规中矩,你不能说它差,但也可以说没有什么特别亮眼的地方,kubesphere这个玩意是比较重型的图形化工具,部署以及维护会比较费劲,rancher对资源的占用比较高。

    那么,kuboard这个图形化管理界面可能会适用于大部分人了,Kuboard 完全采用场景化的设计,操作过程更适合人们的思考方式。例如,集群概览的展示方式、名称空间的展示方式。

    部署

    kuboard这个图形化工具部署起来也非常的简单,也就几条命令就可以了,不需要太多的技巧:

    1. wget https://addons.kuboard.cn/kuboard/kuboard-v3.yaml --no-check-certificate
    2. kubectl apply -f kuboard-v3.yaml

    在apply文件之前,需要给node打上标签:

    查询node的名称

    1. [root@master ~]# kubectl get no
    2. NAME STATUS ROLES AGE VERSION
    3. k8s-master Ready 24d v1.18.3
    4. k8s-node1 Ready 24d v1.18.3
    5. k8s-node2 Ready 24d v1.18.3

    现有三个节点,就全部打上etcd标签,标签打完后就可以apply 文件了: 

    1. kubectl label nodes k8s-master k8s.kuboard.cn/role=etcd
    2. kubectl label nodes k8s-node1 k8s.kuboard.cn/role=etcd
    3. kubectl label nodes k8s-node2 k8s.kuboard.cn/role=etcd

     关于标签的简要说明

     kuboard-v3.yaml 这个文件内有做nodeselectorterms,也就是节点选择,相关代码如下:

    1. spec:
    2. affinity:
    3. nodeAffinity:
    4. requiredDuringSchedulingIgnoredDuringExecution:
    5. nodeSelectorTerms:
    6. - matchExpressions:
    7. - key: node-role.kubernetes.io/master
    8. operator: Exists
    9. - matchExpressions:
    10. - key: node-role.kubernetes.io/control-plane
    11. operator: Exists
    12. - matchExpressions:
    13. - key: k8s.kuboard.cn/role
    14. operator: In
    15. values:
    16. - etcd

     

    稍等片刻后,查看kuboard这个namespace里的pod状态,running即可。

    1. [root@master ~]# k get po -n kuboard -owide
    2. NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
    3. kuboard-etcd-4nsqv 1/1 Running 0 105m 192.168.217.17 k8s-node1
    4. kuboard-etcd-spfdc 1/1 Running 0 105m 192.168.217.16 k8s-master
    5. kuboard-etcd-wj2bs 1/1 Running 0 105m 192.168.217.18 k8s-node2
    6. kuboard-v3-695f6bd686-p9pwb 1/1 Running 0 105m 10.244.1.28 k8s-node1

    此时应该是有4个pod,注意一哈,kuboard-v3-695f6bd686-p9pwb这个pod是在node1节点的,本例中,node1节点的IP地址是192.168.217.17,一哈会用到这个IP哦。




    OK,这样的一个简单的kuboard就基本部署完成了,但还差最后一哆嗦,此工具需要客户端。

    安装客户端

    获取kuboard的客户端部署文件:

    1. curl -k 'http://192.168.217.17:30080/kuboard-api/cluster/default/kind/KubernetesCluster/default/resource/installAgentToKubernetes?token=Yx9WHCgfAL8zzxVmK5TEljCqJjEmfRqS' > kuboard-agent.yaml
    2. kubectl apply -f kuboard-agent.yaml

    apply这个文件,将会多出两个pod,可以看到这两个pod是在node1节点的哦:

    1. [root@master ~]# kubectl get po -n kuboard -o wide
    2. NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
    3. kuboard-agent-2-5546cbdd74-ctgc5 1/1 Running 0 81m 10.244.1.29 k8s-node1
    4. kuboard-agent-69fd468b5b-w9mrz 1/1 Running 0 81m 10.244.1.30 k8s-node1
    5. kuboard-etcd-4nsqv 1/1 Running 0 115m 192.168.217.17 k8s-node1
    6. kuboard-etcd-spfdc 1/1 Running 0 115m 192.168.217.16 k8s-master
    7. kuboard-etcd-wj2bs 1/1 Running 0 115m 192.168.217.18 k8s-node2
    8. kuboard-v3-695f6bd686-p9pwb 1/1 Running 0 115m 10.244.1.28 k8s-node1

    使用方法

    打开浏览器,输入任意节点IP:30080即可登录kuboard(注意哈,不是htttps)

    账号:admin

    密码:Kuboard123

    进入后,有一个界面是集群导入的,如果前面的agent没有安装,将看不到集群的哦。

     

     

     

     

  • 相关阅读:
    Java语言基础第四天
    苹果5G芯片研发失败:继续依赖高通,还要担心被起诉?
    【C++】超详细typedef用法和实例,看完不信你不会
    JavaFx之Hello, World!
    HTTP状态码
    C++11详解
    【数据结构】栈和队列
    【自动驾驶】初学者播包与可视化工具学习记录
    Springboot 国际化
    Typora安装无需破解免费使用
  • 原文地址:https://blog.csdn.net/alwaysbefine/article/details/126962212