Rancher2.x 一键式部署 Prometheus + Grafana 监控 Kubernetes 集群
目录
1、Prometheus & Grafana 介绍
Prometheus 是一套开源的系统监控、报警、时间序列数据库的组合,Prometheus 基本原理是通过 Http 协议周期性抓取被监控组件的状态,而通过 Exporter Http 接口输出这些被监控的组件信息,而且已经有很多 Exporter 可供选择。Grafana 是一个可视化仪表盘,它拥有美观的图标和布局展示,功能齐全的仪表盘和图形编辑器,默认支持 CloudWatch、Graphite、Elasticsearch、InfluxDB、Mysql、PostgreSQL、Prometheus、OpenTSDB 等作为数据源。我们可以将 Prometheus 抓取的数据,通过 Grafana 优美的展示出来,非常直观。
2、环境、软件准备
首先必须有一个rancher部署或者管理的kubernetes集群环境。(rancher部署或者管理kubernetes集群可自行百度,这里就不在详述。)
3、Rancher 2.x 应用商店
Rancher 2.x 提供了应用商店功能,通过应用商店,我们可以非常方便的安装各服务到 Kubernetes 集群中,而且真的是一键式,非常方便了有木有。Rancher 应用商店默认支持官方认证、Helm Stable、Helm Incubator 三种类型的仓库,当然也支持自定义类型的商店。
- 官方认证:由Rancher 维护的官方模板仓库
- Helm Stable:由Kubernetes 社区维护的模板仓库
- Helm Incubator:未经测试验证的应用模板仓库
- 自定义商店
注意:默认 Rancher 只开启了官方认证方式,即由 Rancher 维护的官方模板仓库,如果想也支持 Helm Stable 仓库,那么需要将开关设置为 启用 即可,那么 Rancher 会自动同步 Helm 模板仓库到本地。
稍等片刻,同步完成后,就可以切换到任意集群任意 project 下应用商店页面,点击 启动 就可以查看到所有支持的模板应用啦!例如下图显示了所有官方认证支持的模板应用。
可以看到其中有很多模板服务,找到你要部署的服务
4、一键式部署 Prometheus
接下来我们就可以通过 Rancher 官方提供的模板来一键式部署 Prometheus。登录 Rancher UI,切换到 local-test 集群下 Default 项目下的应用商店页面,找到 Prometheus 点击 “查看详情” 进入到 Prometheus 配置页面。可以看到 Rancher 默认会将一些可配置信息已经提取出来了,例如 Image、Service Type、Ingress、Volume 等参数,我们可以根据实际应用需要来配置它们。
一切配置完毕,我们还可以点击预览,选择对应的模板,看下修改配置后的模板文件是怎样的,最后点击 “启动” 就会开始自动部署啦!稍等片刻,拉取镜像会费点时间,如果一切部署正常,在工作负荷、负载均衡、服务发现页面下 prometheus 命令空间下可以看到如下:
此时,切换到应用商店页面,就可以列举出来我们已经部署的模板服务。
点击应用名称 prometheus 进入到该模板服务详情页面,这里可以看到该服务所有启动的资源以及一些注释说明信息。
5、验证 Prometheus + Grafana
5.1、NodePort 方式
最后,我们来验证一下通过模板仓库部署的 Prometheus 服务是否能够正常运行并访问。首先本地通过 NodePort 方式访问一下 Grafana 页面,Grafana 服务自动分配的端口号为 30424,本地访问 http://192.168.134.130:31578 地址,使用上边配置的 Grafana Admin password 登录一下即可。
默认安装的 Grafana 已经配置好了 8 个 Dashboard,涉及到 Deployment、Nodes、Pods、Kubernetes Cluster Status 等监控仪表盘。
我们选择 Kubernetes Capacity Planning Dashboard 监控一段时间,得到的监控图像如下,妥妥没问题。
接下来,本地访问一下 http://192.168.134.130:30309 地址,Prometheus 服务自动分配的端口号为 30773,也是妥妥没有问题的。
最后,本地访问一下 http://192.168.134.130:30005 地址,上边 Alertmanager 配置的 NodePort 端口号为 30005,也是妥妥没有问题的。
原文地址:https://www.cnblogs.com/xiaobao2/p/11753602.html
- Spring Cloud(十一)高可用的分布式配置中心 Spring Cloud Bus 消息总线集成(RabbitMQ)
- Keras中带LSTM的多变量时间序列预测
- Spring Cloud(十)高可用的分布式配置中心 Spring Cloud Config 中使用 Refresh
- Hibernate 的性能优化的时候碰到了"抓取策略",有四种
- 基于 Spring Cloud 完整的微服务架构实战
- maven build时报错Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12.4:test
- Spring Cloud(九)高可用的分布式配置中心 Spring Cloud Config 集成 Eureka 服务
- Spring Cloud(八)高可用的分布式配置中心 Spring Cloud Config
- 用Raspberry Pi Zero打造「即插即用」的Web服务器
- Spring Cloud(七)服务网关 Zuul Filter 使用
- 基于Metronic的Bootstrap开发框架经验总结(1)-框架总览及菜单模块的处理
- Spring Cloud(六)服务网关 zuul 快速入门
- Docker Registry Server 搭建,配置免费HTTPS证书,及拥有权限认证、TLS 的私有仓库
- Ubuntu 17.04 编译安装 Nginx 1.9.9 配置 https 免费证书
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Laravel框架学习 -- php artisan down/up
- Spring中基于注解@AspectJ的AOP实现
- python提高--running-python-code-contained-in-a-strin
- linux shell 监控脚本 及 邮件发送
- Laravel框架学习 -- 安装
- Redis 键管理与小功能
- redis 数据持久化
- 不蒜子 | 给网站、博客文章添加阅读次数统计,我用两行代码 搞定计数
- redis 主从复制
- Spring 当一个接口多个实现时,怎么注入
- redis主从同步,显示master_link_status:down的解决思路
- CentOS自带Python被删 && YUM报错修复
- MySQL主从库--同步异常
- redis 哨兵机制
- C语言共享内存