Kubernetes 1.13.3 部署 Prometheus+Grafana-7.5.2(最新版本踩坑)
本教程直接在 Kubernetes 1.13.3 版本上安装 Prometheus 和 Grafana-7.5.2,至于它们的原理和概念就不再赘述,这里就直接开始操作。
Git 下载相关 YAML 文件
[root@k8s-master01 ~]# git clone git@gitee.com:MagicBinary/kubernetes-prometheus.git
部署 Prometheus 组件
官方文档:https://prometheus.io/docs/introduction/overview/
[root@k8s-master01 kubernetes-prometheus]# ls
grafana prometheus README.md
[root@k8s-master01 kubernetes-prometheus]# kubectl apply -f prometheus/
configmap/prometheus-config created
daemonset.extensions/node-exporter created
service/node-exporter created
deployment.apps/prometheus created
service/prometheus created
clusterrole.rbac.authorization.k8s.io/prometheus created
serviceaccount/prometheus created
clusterrolebinding.rbac.authorization.k8s.io/prometheus created
查看 Pod 以及 SVC 状态情况
[root@k8s-master01 kubernetes-prometheus]# kubectl get pod -n kube-system -o wide
[root@k8s-master01 kubernetes-prometheus]# kubectl get svc -n kube-system -o wide
浏览器访问 node-exporter
http://任意节点 IP 地址:31672/metrics
浏览器访问 Prometheus
http://任意节点 IP 地址:30003/targets
由于 YAML 文件里面指定镜像版本为latest
,所以这里都是拉取最新版本的
部署 Grafana 组件
官方文档:https://grafana.com/docs/grafana/latest/installation/kubernetes/
由于官方 YAML 中用到 K8s 持久化 PV 存储,如果你的环境有存储了,则不需要配置 NFS 存储来实现,直接使用即可,我这里的实验环境是没有存储的,所以需要通过 NFS 来实现持久化存储。
配置 NFS 存储
所有节点都需要安装 nfs
[root@k8s-master01 ~]# yum install -y nfs-common nfs-utils
拿 master 来作为 nfs-server,创建共享目录
[root@k8s-master01 ~]# mkdir /nfsdata
授权共享目录
[root@k8s-master01 ~]# chmod 666 /nfsdata
编辑 exports 文件,使配置生效
[root@k8s-master01 ~]# cat /etc/exports
/nfsdata *(rw,no_root_squash,no_all_squash,sync)
启动服务
[root@k8s-master01 ~]# systemctl start rpcbind
[root@k8s-master01 ~]# systemctl start nfs
在另一台 Node 上挂载测试
[root@k8s-node01 ~]# mkdir /test
[root@k8s-node01 ~]# mount -t nfs 192.168.115.21:/nfsdata /test/
[root@k8s-node01 ~]# cd /test/
[root@k8s-node01 test]# date > test.txt
[root@k8s-node01 test]# cat test.txt
2021年 07月 19日 星期一 16:15:59 CST
测试完成,将其卸载
[root@k8s-node01 ~]# umount /test
构建 Grafana
创建 PV
[root@k8s-master01 grafana]# ls
grafana.yaml nfs-pv1.yaml
[root@k8s-master01 grafana]# kubectl apply -f nfs-pv1.yaml
persistentvolume/pv1 created
[root@k8s-master01 grafana]# kubectl get pv
创建 Grafana 组件
官方的 YAML 文件需要修改两个地方,如下所示。
[root@k8s-master01 grafana]# kubectl apply -f grafana.yaml
persistentvolumeclaim/grafana-pvc created
deployment.apps/grafana created
service/grafana created
故障排查
创建好了,发现 Pod 没有 Running 状态
查看 Pod 的信息,容器一直重启失败,网上说要在 YAML 文件加 command 命令并不可靠
于是查看 Pod 日志发现了问题所在,看来是权限问题
[root@k8s-master01 grafana]# kubectl log grafana-64b445bd65-tzgrx
log is DEPRECATED and will be removed in a future version. Use logs instead.
GF_PATHS_DATA='/var/lib/grafana' is not writable.
You may have issues with file permissions, more information here: http://docs.grafana.org/installation/docker/#migrate-to-v51-or-later
mkdir: can't create directory '/var/lib/grafana/plugins': Permission denied
由于我的是实验环境,所以 NFS 存储目录就直接给 777 权限了,如果是生产环境不建议这样操作
[root@k8s-master01 ~]# chmod 777 /nfsdata/
重启构建一下 grafana
[root@k8s-master01 grafana]# kubectl delete -f grafana.yaml
[root@k8s-master01 grafana]# kubectl apply -f grafana.yaml
再次检查 Grafana Pod 状态,已经 running
查看 svc 端口,就可以在浏览器访问 Grafana
http://任意节点 IP 地址:31557
初始用户密码都是 admin;
到此就完成 Prometheus 和 Grafana 最新版本的部署,后续继续更新添加监控 Node 具体操作。
Kubernetes 1.13.3 部署 Prometheus+Grafana-7.5.2(最新版本踩坑)的更多相关文章
- CentOS7安装部署Prometheus+Grafana (转)
转自:https://www.jianshu.com/p/967cb76cd5ca 作为监控系统的后起之秀,prometheus的安装可谓非常简单,不需要第三方的依赖(数据库.缓存.PHP之类的).下 ...
- Rancher2.x 一键式部署 Prometheus + Grafana 监控 Kubernetes 集群
目录 1.Prometheus & Grafana 介绍 2.环境.软件准备 3.Rancher 2.x 应用商店 4.一键式部署 Prometheus 5.验证 Prometheus + G ...
- k8b部署prometheus+grafana
来源: https://juejin.im/post/5c36054251882525a50bbdf0 https://github.com/redhatxl/k8s-prometheus-grafa ...
- kubernetes之监控Operator部署Prometheus(三)
第一章和第二章中我们配置Prometheus的成本非常高,而且也非常麻烦.但是我们要考虑Prometheus.AlertManager 这些组件服务本身的高可用的话,成本就更高了,当然我们也完全可以用 ...
- 部署Prometheus+Grafana监控
Prometheus 1.不是很友好,各种配置都手写 2.对docker和k8s监控有成熟解决方案 Prometheus(普罗米修斯) 是一个最初在SoudCloud上构建的监控系统,开源项目,拥有非 ...
- k8s实战之部署Prometheus+Grafana可视化监控告警平台
写在前面 之前部署web网站的时候,架构图中有一环节是监控部分,并且搭建一套有效的监控平台对于运维来说非常之重要,只有这样才能更有效率的保证我们的服务器和服务的稳定运行,常见的开源监控软件有好几种,如 ...
- kubenetes部署prometheus+grafana
文章目录 环境介绍 创建node-exporter 创建Prometheus 创建Grafana 测试 环境介绍 # 关于k8s的集群部署,可以查看我其他博客 [root@master ~]# cat ...
- 群晖-使用docker套件部署Prometheus+Grafana
Docker 部署 Prometheus 说明: 先在群辉管理界面安装好docker套件,修改一下镜像源(更快一点) 所需容器如下 Prometheus Server(普罗米修斯监控主服务器 ) No ...
- Kubernetes部署Prometheus+Grafana(非存储持久化方式部署)
1.在master节点处新建一个文件夹,用于保存下载prometheus+granfana的yaml文件 mkdir /root/prometheus cd /root/prometheus git ...
随机推荐
- 『动善时』JMeter基础 — 35、JMeter接口关联【JSON提取器】详解
目录 1.JSON提取器介绍 2.JSON提取器界面详解 3.JSON提取器的使用 (1)测试计划内包含的元件 (2)HTTP Cookie管理器内容 (3)用户登陆请求界面内容 (4)JSON提取器 ...
- springboot整合JDBC出现Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'.
今天使用springboot整合JDBC的使用,开始使用的是 com.mysql.jdbc.Driver驱动 结果运行出现此异常 那我们根据提示要求来修改即可 把驱动改成最新的com.mysql.cj ...
- AtCoder Regular Contest 121 D - 1 or 2
题目链接:点我点我 Problem Statement Snuke has a blackboard and NN candies. The tastiness of the ii-th candy ...
- 论鸿蒙OS在某些人眼中的样子
对于鸿蒙OS,博客园有一篇文章<为鸿蒙OS说两句公道话(我对鸿蒙OS的一些看法)>.有兴趣的可以看看. 在这篇文章中,个人觉得最精彩的不是文章本身,而是评论内容. 下面我挑一些出来,和大家 ...
- 常用正则表达式RE(慕课网_Meshare_huang)
import re str1 = 'imooc python' # str1.find('l1') 输出: -1 # str1.find('imooc') 0 # str1.startswith('i ...
- C# HTTP请求对外接口、第三方接口公用类
/// <summary> /// 网络数据请求公共函数 /// </summary> public class HttpWebRequestCommon { #region ...
- 在Visual Studio 中使用git——分支管理-下(九)
在Visual Studio 中使用git--什么是Git(一) 在Visual Studio 中使用git--给Visual Studio安装 git插件(二) 在Visual Studio 中使用 ...
- TVM性能评估分析(四)
TVM性能评估分析(四) Figure 1. Efficient Privacy-Preserving ML Using TVM Figure 2. Motivation: Privacy-Pre ...
- 使用Apache TVM将机器学习编译为WASM和WebGPU
使用Apache TVM将机器学习编译为WASM和WebGPU TLDR 在Apache TVM深度学习编译器中引入了对WASM和WebGPU的支持.实验表明,在将模型部署到Web时,TVM的WebG ...
- TSR交通标志检测与识别
TSR交通标志检测与识别 说明: 传统图像处理算法的TSR集成在在ARM+DSP上运行,深度学习开发的TSR集成到FPGA上运行. 输入输出接口 Input: (1)图像视频分辨率(整型int) (2 ...