一、安装node-export
首先需要将node-exporter.yaml复制到~/k8s/文件夹下然后使用如下命令启动该程序:
curl -O https://raw.githubusercontent.com/OrvilleX/Dockerfiles/master/k8smonitor/node-exporter.yamlkubectl apply -f node-exporter.yaml
该组件用于收集宿主机器的相关运行指标,如果使用者需要关闭宿主开放的端口可以进行对应的修改。
二、安装kube-state-metrics
curl -O https://raw.githubusercontent.com/OrvilleX/Dockerfiles/master/k8smonitor/kube-state-metrics/kube-state-metrics-service-account.yamlkubectl apply -f kube-state-metrics-service-account.yamlcurl -O https://raw.githubusercontent.com/OrvilleX/Dockerfiles/master/k8smonitor/kube-state-metrics/kube-state-metrics-cluster-role.yamlkubectl apply -f kube-state-metrics-cluster-role.yamlcurl -O https://raw.githubusercontent.com/OrvilleX/Dockerfiles/master/k8smonitor/kube-state-metrics/kube-state-metrics-cluster-role-binding.yamlkubectl apply -f kube-state-metrics-cluster-role-binding.yamlcurl -O https://raw.githubusercontent.com/OrvilleX/Dockerfiles/master/k8smonitor/kube-state-metrics/kube-state-metrics-deployment.yamlkubectl apply -f kube-state-metrics-deployment.yamlcurl -O https://raw.githubusercontent.com/OrvilleX/Dockerfiles/master/k8smonitor/kube-state-metrics/kube-state-metrics-service.yamlkubectl apply -f kube-state-metrics-service.yaml
- kube-state-metrics-service-account.yaml
- kube-state-metrics-cluster-role.yaml
- kube-state-metrics-cluster-role-binding.yaml
- kube-state-metrics-deployment.yaml
- kube-state-metrics-service.yaml
完成之后我们就可以监控K8S中POD等诸多资源信息。
三、安装Prometheus
首先我们需要将以下文件复制进去并按照此顺序依次执行并确保每次执行的正确即可:
curl -O https://raw.githubusercontent.com/OrvilleX/Dockerfiles/master/k8smonitor/prometheus/prometheus-rbac-setup.yamlkubectl apply -f prometheus-rbac-setup.yamlcurl -O https://raw.githubusercontent.com/OrvilleX/Dockerfiles/master/k8smonitor/prometheus/prometheus-configmap.yamlkubectl apply -f prometheus-configmap.yamlcurl -O https://raw.githubusercontent.com/OrvilleX/Dockerfiles/master/k8smonitor/prometheus/prometheus-deploy.yamlkubectl apply -f prometheus-deploy.yamlcurl -O https://raw.githubusercontent.com/OrvilleX/Dockerfiles/master/k8smonitor/prometheus/prometheus-svc.yamlkubectl apply -f prometheus-svc.yaml
- prometheus-rbac-setup.yaml
- prometheus-configmap.yaml
- prometheus-deploy.yaml
- prometheus-svc.yaml
确保完成之后可以通过访问任意宿主的30003端口查看是否运行正常。
四、安装Grafana
首先我们需要将以下文件复制进去并按照此顺序以此执行并确保每次执行的正确即可:
curl -O https://raw.githubusercontent.com/OrvilleX/Dockerfiles/master/k8smonitor/grafana/grafana-deploy.yaml
kubectl apply -f grafana-deploy.yaml
curl -O https://raw.githubusercontent.com/OrvilleX/Dockerfiles/master/k8smonitor/grafana/grafana-svc.yaml
kubectl apply -f grafana-svc.yaml
curl -O https://raw.githubusercontent.com/OrvilleX/Dockerfiles/master/k8smonitor/grafana/grafana-ing.yaml
kubectl apply -f grafana-ing.yaml
- grafana-deploy.yaml
- grafana-svc.yaml
- grafana-ing.yaml
因为能够使用Grafana看到我们所关心的指标,我们需要导入以下资源配置具体的看板。
https://github.com/OrvilleX/Dockerfiles/blob/master/k8smonitor/grafana/k8s-pgmon-cadvisor-brief.json
https://github.com/OrvilleX/Dockerfiles/blob/master/k8smonitor/grafana/k8s-pgmon-cadvisor-namespace.json
https://github.com/OrvilleX/Dockerfiles/blob/master/k8smonitor/grafana/k8s-pgmon-docker-monitoring-all.json
https://github.com/OrvilleX/Dockerfiles/blob/master/k8smonitor/grafana/k8s-pgmon-etcd-external-cn.json
https://github.com/OrvilleX/Dockerfiles/blob/master/k8smonitor/grafana/k8s-pgmon-node-exporter-brief.json
https://github.com/OrvilleX/Dockerfiles/blob/master/k8smonitor/grafana/k8s-pgmon-node-exporter-describe.json
https://github.com/OrvilleX/Dockerfiles/blob/master/k8smonitor/grafana/k8s-pgmon-node-exporter-docker.json
https://github.com/OrvilleX/Dockerfiles/blob/master/k8smonitor/grafana/k8s-pgmon-node-exporter-server-metrics.json
