天天看点

基于Prometheus+Grafana 搭建监控平台

文章目录

        • 安装Prometheus
          • 1、从docker镜像操作搜索镜像,并拉取下来
          • 2、运行镜像
          • 3、在浏览器端访问http://localhost:9090即可进入prometheus管理页面
        • Prometheus与SpringBoot集成
        • 安装Grafana
          • 1、从docker镜像操作搜索镜像,并拉取下来
          • 2、运行镜像
          • 3、在浏览器上访问http://localhost:3000
        • Prometheus与Grafana整合
          • 1、配置Prometheus 设置其监控节点
          • 2、重启容器
          • 3、在Grafana中设置数据源
          • 4、从官网上选择一个Grafana面板配置
          • 5、启动应用,稍后片刻即可查看
          • 6、调整面板数据自动刷新频率

本文中Prometheus、Grafana皆采用容器方式安装,如对容器知识不太了解,可移步至Docker

安装Prometheus

1、从docker镜像操作搜索镜像,并拉取下来
docker search Prometheus
docker pull prom/prometheus
           
2、运行镜像
docker run -d --name prometheus -p 9090:9090 f73e06535383
           

将容器的9090端口映射为物理机的9090端口。

prometheus默认端口9090

3、在浏览器端访问http://localhost:9090即可进入prometheus管理页面

如查看系统cpu核数

基于Prometheus+Grafana 搭建监控平台

Prometheus与SpringBoot集成

SpringBoot项目引入依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
    <groupId>io.micrometer</groupId>
    <artifactId>micrometer-registry-prometheus</artifactId>
</dependency>
           

一旦增加上述的依赖,Spring Boot会自动配置一个PrometheusMeterRegistry和CollectorRegistry来收集和输出格式化的metrics数据。使得Prometheus服务器可以爬取。

所有应用的metrics数据是根据一个叫http://localhost:port/actuator/prometheus的endpoint来设置是否可用。

另外,需要在application.properties中配置如下

management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always
management.endpoint.prometheus.enabled=true
           

安装Grafana

可以提供友好的监控页面。

1、从docker镜像操作搜索镜像,并拉取下来
docker search grafana
docker pull grafana/grafana
           
2、运行镜像
docker run -d --name grafana -p 3000:30000 8df10701ce62
           

将容器的3000端口映射为物理机的3000端口。

grafana默认端口3000

3、在浏览器上访问http://localhost:3000

初始登录用户名/密码均为admin

基于Prometheus+Grafana 搭建监控平台

Prometheus与Grafana整合

1、配置Prometheus 设置其监控节点
## 进入容器
docker exec -it 5278123e7808 /bin/sh
## 进入/etc/prometheus文件夹,打开prometheus.yml文件
           

增加需要监控的节点

scrape_configs:
  - job_name: 'prometheus'
    static_configs:
    - targets: ['localhost:9090']
  - job_name: 'spring-actuator'
    metrics_path: '/actuator/prometheus'
    scrape_interval: 5s
    static_configs:
    - targets: ['192.168.5.101:19090']
           

这里192.168.5.101:19090 是springBoot的应用ip和port。

2、重启容器
docker restart 5278123e7808
           
3、在Grafana中设置数据源

菜单选择

Configuration

->

Data Source

->

Add Data Source

配置Prometheus作为数据源。

配置时填入的url是prometheus的url。

基于Prometheus+Grafana 搭建监控平台
4、从官网上选择一个Grafana面板配置
推荐:https://grafana.com/grafana/dashboards/6756

下载完成后,在"+“这个菜单中,点击"import”,导入下载好的json文件即可。保存即可

5、启动应用,稍后片刻即可查看

Dashboards

->

Home

下选择刚才设置的面板即可

基于Prometheus+Grafana 搭建监控平台

监控画面如图所示

基于Prometheus+Grafana 搭建监控平台
6、调整面板数据自动刷新频率
基于Prometheus+Grafana 搭建监控平台

根据需要设置刷新频率即可。

继续阅读