作者:mobiledu2502887833 | 来源:互联网 | 2023-05-30 15:10
1.接上篇:kubernetes全面监控之prometheus-operator部署部署完成后,其实本身已经部署了grafana,也可以正常访问。但是我感觉太单调,数据不够详实。2
1.接上篇:
kubernetes全面监控之prometheus-operator部署
部署完成后,其实本身已经部署了grafana,也可以正常访问。但是我感觉太单调,数据不够详实。
2.产生个想法,再多部署一套grafana,然后数据源使用prometheus-operator的数据源,再选个喜欢的dashboard展示,是否可行呢?答案是可行。测试成功。
3.准备grafana文件
git clone https://github.com/redhatxl/k8s-prometheus-grafana.git
[root@k8s-master2 grafana]# pwd
/root/k8s-prometheus-grafana/grafana
[root@k8s-master2 grafana]# ls
grafana-deploy.yaml grafana-ing.yaml grafana-svc.yaml
[root@k8s-master2 grafana]#
4.执行部署
grafana-deploy.yaml grafana-ing.yaml grafana-svc.yaml
这三个文件
[root@k8s-master1 grafana]# kubectl apply -f grafana-ing.yaml
ingress.extensions "grafana" created
[root@k8s-master1 grafana]#
[root@k8s-master1 grafana]# cat grafana-ing.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: grafana
namespace: kube-system
spec:
rules:
- host: k8s.grafana2
http:
paths:
- path: /
backend:
serviceName: grafana
servicePort: 3000
注意这个hosts:k8s.grafana2
这是通过traefik或者ingress来访问的名字,如果不懂请参考前面的traefik篇。
做好hosts解析,我的是win7,参考见下:
解析设置好后,通过域名k8s.grafana2即可正常访问grafana web界面。
界面见下:
默认账户和密码
admin
admin
5.登录进来后最重要的一步添加数据源
这里注意
name是随意写的
type必须选prometheus
URL是service的ip
我们用的是kube-prometheus这个service的数据
因此用这个service的ip和端口即可
具体见下:
[root@k8s-master1 grafana]# kubectl get svc -n monitoring
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
alertmanager-operated ClusterIP None 9093/TCP,6783/TCP 5h
kube-prometheus ClusterIP 10.254.194.73 9090/TCP 5h
kube-prometheus-alertmanager ClusterIP 10.254.145.184 9093/TCP 5h
kube-prometheus-exporter-kube-state ClusterIP 10.254.135.58 80/TCP 5h
kube-prometheus-exporter-node ClusterIP 10.254.3.37 9100/TCP 5h
kube-prometheus-grafana ClusterIP 10.254.125.203 80/TCP 5h
prometheus-operated ClusterIP None 9090/TCP 5h
[root@k8s-master1 grafana]#
6.数据源添加成功后
添加dashboard
先去网站下一个可用的dashboard
我用的是:
https://grafana.com/dashboards/315
下好后
Import Dashboard
导入即可,界面好漂亮。完整监控了我的k8s集群。
截图见下:
prometheus-operator结合grafana展示k8s监控