强大的Grafana k8s 插件

grafana k8s插件用于集群中的Prometheus部署。收集的指标包括高级别群集和节点统计信息以及较低级别的容器和容器统计信息。使用高级指标进行提醒,使用低级指标进行故障排除。
强大的Grafana k8s 插件
Grafana

Prometheus 持久化安装

新闻联播老司机

  • 19年6月19日
  • 喜欢:0
  • 浏览:4.4k
  • Dashboard的时间需要修改改一下,改成UTC并且+10小时
    之前我们说过grafana监控K8s,当时使用的模板,自己进行修改的值。grafana有一个专门针对Kubernetes集群监控的插件
    grafana-kubernetes-app
    效果图
    强大的Grafana k8s 插件-每日运维
    Grafana Kubernetes应用程序允许您监控Kubernetes集群的性能。它包括4个仪表板,集群,节点,Pod /容器和部署。它允许自动部署所需的Prometheus导出器和默认的scrape配置,以用于集群中的Prometheus部署。收集的指标包括高级别群集和节点统计信息以及较低级别的容器和容器统计信息。使用高级指标进行提醒,使用低级指标进行故障排除。

    # 官方文档grafana-kubernetes-app插件说明
    
    要求
    目前只支持普罗米修斯
    对于出口商的自动部署,则需要Kubernetes 1.6或更高版本。
    Grafana 5.0.0+
    特征
    该应用程序使用Kubernetes标记来过滤pod指标。Kubernetes集群往往有很多pod和很多pod指标。Pod / Container仪表板利用pod标签,因此您可以轻松找到相关的pod或pod。
    
    轻松安装导出器,无论是从Grafana单击部署还是使用kubectl手动部署它们的详细说明(也非常简单!)
    
    Heapster中不可用的群集级别度量标准,如CPU容量与CPU使用率。
    
    群集指标
    Pod容量/用法
    内存容量/使用情况
    CPU容量/使用率
    磁盘容量/使用情况
    节点,窗格和容器概述
    节点度量标准
    中央处理器
    内存可用
    每个CPU加载
    读取IOPS
    写IOPS
    %的Util
    网络流量/秒
    网络数据包/秒
    网络错误/秒
    Pod / Container度量标准
    内存使用情况
    网络流量
    CPU使用率
    读取IOPS
    写IOPS
    

    我们可以在grafana 面包上的插件找到
    强大的Grafana k8s 插件-每日运维
    这里有很多grafana提供的插件可以给我们使用
    https://grafana.com/plugins
    强大的Grafana k8s 插件-每日运维
    这里还可以选择版本
    image_1ddprair41sis1adl1sn04aur9l1j.png-185.3kB

    插件安装

    如果想要安装这个插件需要进行到Pod里面,或者将插件上传到pod /var/lib/grafana/plugins

    # 首先要找到Pod
    [root@abcdocker ~]# kubectl get pod -n kube-system |grep grafana
    grafana-77b79bfc58-c47pd                1/1     Running     0          22h
    grafana-chown-qsctd                     0/1     Completed   0          23h
    
    # 进入Pod
    [root@abcdocker ~]# kubectl exec -it --namespace=kube-system grafana-77b79bfc58-c47pd bash
    
    # 使用grafana-cli下载插件
    grafana-cli plugins install grafana-kubernetes-app
    

    步骤截图
    强大的Grafana k8s 插件-每日运维
    由于需要重启生效,我们这里直接将Pod删除

    [root@abcdocker ~]# kubectl get pod -n kube-system |grep grafana
    grafana-77b79bfc58-c47pd                1/1     Running     0          23h
    grafana-chown-qsctd                     0/1     Completed   0          23h
    [root@abcdocker ~]#
    [root@abcdocker ~]#
    [root@abcdocker ~]# kubectl delete pod -n kube-system grafana-77b79bfc58-c47pd
    pod "grafana-77b79bfc58-c47pd" deleted
    
    # -n后面是命名空间,在后面是pod名称,要根据当前Pod的名称进行删除
    

    当我们看到Pod启动成功后,我们这里继续访问grafana就可以
    强大的Grafana k8s 插件-每日运维
    找到我们的插件
    强大的Grafana k8s 插件-每日运维
    右手可以看到插件的版本和插件的说明
    强大的Grafana k8s 插件-每日运维
    点击Enable之后,出现以下状态说明正常
    强大的Grafana k8s 插件-每日运维
    这时候我们点击左边的k8s小图表,点击创建集群
    强大的Grafana k8s 插件-每日运维
    接下来就是配置我们的集群
    强大的Grafana k8s 插件-每日运维
    简单说明一下

    Name 集群名称(自定义)
    URL Kubernetes Apiserver地址
    因为apiserver是使用443端口,还需要开启https,并获取Key
    Datasource 选择数据源  (之前创建prometheus数据源)
    

    接下来我们需要查看api-server的信息

    [root@abcdocker ~]# cat /root/.kube/config
    

    certificate-authority-data = CA Cert 对应
    server = https://10.4.82.141:8443 (这里是apiserver地址,我这里用的是vip,根据你们自己的环境配置)
    client-certificate-data = Client Cert
    client-key-data = Client Key
    强大的Grafana k8s 插件-每日运维
    强大的Grafana k8s 插件-每日运维
    这里需要说明一下,config文件里面是使用base64编译过后的,所以我们填写的时候是需要使用base64解码
    image_1ddq3gt5v139e1hc2145ila0iae6v.png-1158.6kB

    cat /root/.kube/config |grep certificate-authority-data
    echo "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUMxakNDQWI2Z0F0......"|base64 -d
    

    强大的Grafana k8s 插件-每日运维
    我的环境配置如下
    强大的Grafana k8s 插件-每日运维
    然后我们点击Save
    如果没有提示证书错误,提示找不到这个元数据,那么请等一会
    有报错会有红色的叹�号
    解决不了可以到https://i4t.com/bubble进行提问,账号免注册直接qq登陆
    强大的Grafana k8s 插件-每日运维
    强大的Grafana k8s 插件-每日运维
    Dashboard的时间需要修改改一下,改成UTC并且+10小时
    强大的Grafana k8s 插件-每日运维
    最后效果图如下
    强大的Grafana k8s 插件-每日运维
    效果图修改好之后,我们记得curl +s或者点击保存按钮

    相关文章:

    1. Kubernetes 1.14 二进制集群安装
    2. Kubenetes 1.13.5 集群二进制安装
    3. Kuerbernetes 1.11 集群二进制安装
    4. CentOS 7 ETCD集群配置大全