Docker 搭建Prometheus监控预警通知

       身处小公司,全栈(全干)攻城狮,没有闲篇,直接开干。

一、准备内容

本次搭建环境共涉及2台服务器,分别是A服务器(192.168.1.30),B服务器(192.168.1.31)

1.1.预留端口

8899: cAdvisor--docker容器监控

9090: prometheus端口

9100:node_exporter---收集主机的监控数据

9093: alertmanager ---告警组件

9094:飞书端口

需要防火墙放开端口,就不一一列举。

命令如下:

firewall-cmd --permanent --add-rich-rule="rule family="ipv4"  port protocol="tcp" port="9093" accept"

firewall-cmd --reload
如果部署在阿里云等云服务器,还需要在阿里云的安全规则中放行相关端口。

1.2需要在各个服务的pom中添加依赖       

        <!-- 监控相关 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <dependency>
            <groupId>io.micrometer</groupId>
            <artifactId>micrometer-registry-prometheus</artifactId>
        </dependency>

1.3需要在各个服务的nacos配置中添加如下内容

另外需要注意:配置以后可能不生效,需要重启nacos和相关服务

management:
  endpoints:
    web:
      exposure:
        # 暴露相关项目信息
        include: "prometheus" # 只暴露/actuator/prometheus
  endpoint:
    prometheus:
      enabled: true
    health:
      show-details: always
  metrics:
    export:
      prometheus:
        enabled: true 

1.4 在Dockerfile中java执行命令添加参数

此参数可不加,根据自己情况而定。

"-XX:+HeapDumpOnOutOfMemoryError","-XX:HeapDumpPath=/data/soft/dump/服务.hprof","-XX:+ExitOnOutOfMemoryError","-XX:MaxRAMPercentage=75.0"

其中:

-XX:+HeapDumpOnOutOfMemoryError:参数表示当JVM发生OOM时,自动生成DUMP文件

-XX:HeapDumpPath=/temp/dump/服务.hprof:生成dump目录文件的位置以及文件名称

-XX:+ExitOnOutOfMemoryError:JVM在第一次出现内存不足错误时退出,启动JVM实例

-XX:MaxRAMPercentage=75.0: 这为JVM定义了75%的总内存限制

1.5 安装Telnet服务

yum install telnet telnet-server

二、架构图

架构设计图如下所示:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值