AlmaLinux上容器化部署Prometheus+Grafana监控方案
1. 项目概述在AlmaLinux系统上容器化部署PrometheusGrafana监控组合是当前企业级监控系统搭建的主流方案之一。作为CentOS的替代品AlmaLinux凭借其稳定性和长期支持特性正成为越来越多运维团队的首选操作系统。而将Prometheus和Grafana这两个黄金搭档通过Docker容器化部署不仅能实现环境隔离还能大幅简化部署和迁移流程。这套监控方案的核心价值在于实时采集系统/服务指标数据Prometheus通过可视化仪表盘直观展示监控数据Grafana利用容器技术实现快速部署和环境一致性2. 环境准备与依赖安装2.1 系统基础配置首先确保AlmaLinux系统已完成基础配置# 更新系统 sudo dnf update -y # 安装必要工具 sudo dnf install -y curl wget vim net-tools # 检查防火墙状态 sudo firewall-cmd --state提示如果防火墙处于active状态需要开放相关端口Prometheus默认9090Grafana默认30002.2 Docker环境安装容器化部署的核心是Docker环境在AlmaLinux上安装步骤如下# 安装依赖包 sudo dnf install -y yum-utils device-mapper-persistent-data lvm2 # 添加Docker仓库 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo # 安装Docker引擎 sudo dnf install -y docker-ce docker-ce-cli containerd.io # 启动并设置开机自启 sudo systemctl start docker sudo systemctl enable docker # 验证安装 docker --version3. Prometheus容器化部署3.1 配置文件准备创建Prometheus配置目录并编写配置文件mkdir -p ~/prometheus/config vim ~/prometheus/config/prometheus.yml典型配置示例global: scrape_interval: 15s evaluation_interval: 15s scrape_configs: - job_name: prometheus static_configs: - targets: [localhost:9090]3.2 启动Prometheus容器使用Docker运行Prometheus服务docker run -d \ --nameprometheus \ -p 9090:9090 \ -v ~/prometheus/config:/etc/prometheus \ prom/prometheus参数说明-d后台运行--name容器名称-p端口映射主机端口:容器端口-v配置文件挂载3.3 验证安装访问http://服务器IP:9090应该能看到Prometheus的Web界面。可以通过Status Targets查看监控目标状态。4. Grafana容器化部署4.1 启动Grafana容器直接运行官方Grafana镜像docker run -d \ --namegrafana \ -p 3000:3000 \ grafana/grafana4.2 初始配置访问http://服务器IP:3000使用默认账号登录admin/admin首次登录会要求修改密码4.3 添加Prometheus数据源左侧菜单选择Configuration Data Sources点击Add data source选择Prometheus配置URL为http://prometheus服务器IP:9090点击Save Test5. 监控系统集成与优化5.1 监控节点配置要让Prometheus监控更多节点需要修改配置文件scrape_configs: - job_name: node_exporter static_configs: - targets: [node1:9100, node2:9100]然后在各节点上运行node_exporter容器docker run -d \ --namenode_exporter \ -p 9100:9100 \ quay.io/prometheus/node-exporter5.2 Grafana仪表盘导入在Grafana中点击 Import输入仪表盘ID如1860为Node Exporter全指标仪表盘选择对应的Prometheus数据源点击Import5.3 告警规则配置在Prometheus配置中添加告警规则rule_files: - alert.rules # 创建告警规则文件 vim ~/prometheus/config/alert.rules示例告警规则groups: - name: example rules: - alert: HighCPUUsage expr: 100 - (avg by(instance)(irate(node_cpu_seconds_total{modeidle}[5m])) * 100) 80 for: 5m labels: severity: warning annotations: summary: High CPU usage on {{ $labels.instance }} description: {{ $labels.instance }} CPU usage is {{ $value }}%6. 容器编排与持久化6.1 使用Docker Compose管理创建docker-compose.yml文件version: 3 services: prometheus: image: prom/prometheus ports: - 9090:9090 volumes: - ./prometheus/config:/etc/prometheus restart: unless-stopped grafana: image: grafana/grafana ports: - 3000:3000 volumes: - grafana-storage:/var/lib/grafana restart: unless-stopped volumes: grafana-storage:启动服务docker-compose up -d6.2 数据持久化方案Prometheus数据持久化# 创建数据卷 docker volume create prometheus-data # 修改运行命令添加数据卷 -v prometheus-data:/prometheusGrafana数据持久化# 创建数据卷 docker volume create grafana-storage # 修改运行命令添加数据卷 -v grafana-storage:/var/lib/grafana7. 安全加固措施7.1 访问控制Prometheus基础认证basic_auth: username: admin password: $PASSWORDGrafana安全配置修改默认管理员密码配置LDAP/SSO集成设置数据源权限7.2 网络隔离建议将监控组件部署在独立网络# 创建自定义网络 docker network create monitor-net # 运行容器时加入网络 --network monitor-net8. 常见问题排查8.1 Prometheus无法采集数据检查步骤确认targets状态是否为UP检查防火墙规则验证exporter是否正常运行查看Prometheus日志docker logs prometheus8.2 Grafana无法连接数据源排查方法测试数据源连接检查网络连通性确认Prometheus服务地址正确查看Grafana日志docker logs grafana8.3 容器资源占用过高优化建议限制容器资源--memory2g --cpus1调整Prometheus存储参数优化Grafana仪表盘查询9. 性能调优技巧9.1 Prometheus存储优化调整抓取间隔global: scrape_interval: 30s启用数据压缩--storage.tsdb.wal-compression9.2 Grafana性能优化设置仪表盘自动刷新间隔优化查询语句避免全量扫描使用模板变量减少重复面板10. 扩展监控能力10.1 添加黑盒监控使用blackbox_exporter监控HTTP/HTTPS/TCP等服务- job_name: blackbox metrics_path: /probe params: module: [http_2xx] static_configs: - targets: - https://example.com relabel_configs: - source_labels: [__address__] target_label: __param_target - source_labels: [__param_target] target_label: instance - target_label: __address__ replacement: blackbox:911510.2 集成Alertmanager配置告警通知alerting: alertmanagers: - static_configs: - targets: - alertmanager:9093创建alertmanager.yml配置route: receiver: email-notifications receivers: - name: email-notifications email_configs: - to: adminexample.com from: alertmanagerexample.com smarthost: smtp.example.com:587 auth_username: user auth_password: password

相关新闻

独立开发者软著申请全攻略:DIY与代办选择指南

独立开发者软著申请全攻略:DIY与代办选择指南

1. 软著申请:独立开发者绕不开的“必修课” 最近和几个独立开发的朋友聊天,发现大家普遍对“软件著作权”这件事又爱又恨。爱的是,它确实是证明你代码所有权、保护劳动成果最直接、最基础的法律凭证,无论是上架应用商店、参与项目…

2026/10/13 23:02:58 阅读更多 →
AI搜索摘要如何重塑信息生态:技术原理、风险与应对策略

AI搜索摘要如何重塑信息生态:技术原理、风险与应对策略

1. 项目概述:当搜索不再“浏览”最近在折腾一些个人项目,需要频繁查阅技术文档和开源方案,一个越来越明显的感受是:我好像很久没有真正“点开”过一个网页了。无论是查找一个API的具体参数,还是想了解某个框架的优劣对…

2026/10/13 23:02:56 阅读更多 →
Java枚举类深度解析与高级应用实战

Java枚举类深度解析与高级应用实战

1. Java枚举类深度解析与应用实战 枚举(Enum)是Java 5引入的一种特殊数据类型,它通过有限的命名值来定义变量集合。在实际开发中,枚举类远比简单的常量定义强大得多。我见过不少开发者仅仅把枚举当作常量列表使用,这实…

2026/10/13 16:12:29 阅读更多 →

最新新闻

AI合规不止于模型:ISO/IEC 42001:2023 管理体系要点解析

AI合规不止于模型:ISO/IEC 42001:2023 管理体系要点解析

简介:《ISO/IEC 42001:2023》是ISO与IEC联合发布的首个人工智能管理体系国际标准,为各类组织在使用或开发AI产品与服务时建立、执行、维护并持续改进AI管理系统(AIMS)提供了权威框架。这份PDF文档内含完整正文和附录,共…

2026/10/13 23:02:16 阅读更多 →
openpyxl读取Excel实战:从单元格到大文件性能优化

openpyxl读取Excel实战:从单元格到大文件性能优化

接过一个统计报表的活儿,要在一堆 Excel 里提取数据并汇总。刚开始我图省事,直接用 pandas 一把梭,后来发现需求越来越细:要判断单元格格式、要区分公式和结果、要处理合并单元格和文本型数字,还得在大文件场景下控内存…

2026/10/13 23:02:16 阅读更多 →
计算机二级C语言备考攻略:吃透题库与操作题是关键

计算机二级C语言备考攻略:吃透题库与操作题是关键

计算机二级C语言,大概是全国计算机等级考试里报名量最大的一科。我身边有不少人抱着“多一个证总没坏处”的心态报了名,然后备考方式就是借一本C语言教材从第一页开始啃,啃到指针就放弃,最后上考场,选择题靠直觉&#…

2026/10/13 23:02:16 阅读更多 →
破解版资源不可取:如何合规分享技术资源与实战笔记

破解版资源不可取:如何合规分享技术资源与实战笔记

简介:Evp破解版工具是一款面向服务端开发、部署及运维人员的实用资源,主要解决服务端文件的解压与修改问题。根据页面描述,该工具在服务端场景中具有不可替代性——常规解压软件可能无法正确识别或处理服务端特殊文件结构,必须借助…

2026/10/13 23:02:16 阅读更多 →
C++/WinRT 文件处理实战:从 StorageFile 到异步读写与流式处理

C++/WinRT 文件处理实战:从 StorageFile 到异步读写与流式处理

如果你刚从 Win32 转过来写 C/WinRT,第一件需要适应的就是“文件不再是一个句柄”。过去我打开文件拿到 HFILE,然后 ReadFile、WriteFile,一套组合拳打完收工。到了 C/WinRT 里,文件被封装成了StorageFile对象,读文件不…

2026/10/13 23:02:16 阅读更多 →
Django+LLM+遗传算法:打造AI驱动的旅游路线规划与推荐系统

Django+LLM+遗传算法:打造AI驱动的旅游路线规划与推荐系统

每年毕业设计的选题库里,“旅游网站”几乎是大热门,但说实话,十个里面至少有八个做成了标准的增删改查演示——用户注册登录、景点列表、后台维护,顶多再加一个关键字搜索。答辩的时候老师问一句“技术亮点在哪里”,很…

2026/10/13 23:01:16 阅读更多 →

日新闻

物联网系统集成避坑指南:从选型到验收的关键要点

物联网系统集成避坑指南:从选型到验收的关键要点

做了这么多年物联网系统集成的项目,我最大的感受是,大部分坑不是出在技术前沿,而是出在一些看起来很平常的地方。设备选了便宜的、协议没问清楚、现场没摸透、验收标准写得含糊——这些细枝末节,最后都会变成延期、超支和扯皮的大…

2026/10/13 0:00:57 阅读更多 →
ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

如果你玩ESP32有一阵子了,很难不碰到舵机控制这道坎。做智能小车要转方向,做机械臂要抬关节,做云台要偏航俯仰,背后都是同一个东西在干活:舵机。而我见过太多人卡在“代码能编译、舵机就是不听话”这个阶段&#xff0c…

2026/10/13 0:00:57 阅读更多 →
CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

1. 为什么CAN总线至今仍是工业现场的“硬通货”?——从汽车底盘到智能温室的真实需求你有没有拆过一辆老款燃油车的中控台?或者调试过某高校实验室里那台跑着Modbus协议却频频丢帧的PLC控制柜?又或者,在某个农业物联网项目里&…

2026/10/13 0:00:57 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →