docker 安装部署 Prometheus 与grafana的详细过程

 更新时间:2024年12月05日 09:24:29   作者:daikq  
本文给大家详细介绍了如何在CentOS 7上使用Docker和Docker Compose安装和配置Prometheus和Grafana,并展示了如何进行基本的监控配置和数据可视化,感兴趣的朋友跟随小编一起看看吧

0. centos 7 安装后的操作

# 禁用selinux 以防兼容性问题
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
# 关闭防火墙服务
systemctl disable firewalld &>/dev/null
systemctl stop firewalld
# 更新yum源、epel源
mkdir /etc/yum.repos.d/old/ &>/dev/null
mv /etc/yum.repos.d/* /etc/yum.repos.d/old/ &> /dev/null
curl -o /etc/yum.repos.d/CentOS-Base.repo https://repo.huaweicloud.com/repository/conf/CentOS-7-reg.repo &>/dev/null
curl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo &> /dev/null
# 安装docker服务
yum clean all &>/dev/null
yum makecache &>/dev/null
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install docker-ce docker-ce-cli containerd.io

1. 准备环境

确保你已经安装了 Docker 和 Docker Compose。如果没有安装,可以参考以下命令:

# 安装 Docker
sudo yum install -y docker
sudo systemctl start docker
sudo systemctl enable docker
# 安装 Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version  # 验证安装

2. 创建工作目录

创建一个目录来存放相关配置文件:

mkdir prometheus-grafana
cd prometheus-grafana

3. 配置 Prometheus

3.1 创建 Prometheus 配置文件

新建 prometheus.yml

nano prometheus.yml

内容如下:

global:
  scrape_interval: 15s
scrape_configs:
  - job_name: 'prometheus'
    static_configs:
      - targets: ['localhost:9090']
  - job_name: 'node_exporter'
    static_configs:
      - targets: ['node_exporter:9100']

3.2 创建存储配置

创建一个目录用来保存 Prometheus 数据:

mkdir prometheus_data

4. 创建 Docker Compose 配置

新建 docker-compose.yml

nano docker-compose.yml

内容如下:

version: '3.7'
services:
  prometheus:
    image: prom/prometheus:latest
    container_name: prometheus
    ports:
      - "9090:9090"
    volumes:
      - ./prometheus.yml:/etc/prometheus/prometheus.yml
      - ./prometheus_data:/prometheus
    restart: unless-stopped
  grafana:
    image: grafana/grafana:latest
    container_name: grafana
    ports:
      - "3000:3000"
    volumes:
      - grafana_data:/var/lib/grafana
    environment:
      - GF_SECURITY_ADMIN_USER=admin
      - GF_SECURITY_ADMIN_PASSWORD=admin
    restart: unless-stopped
  node_exporter:
    image: prom/node-exporter:latest
    container_name: node_exporter
    ports:
      - "9100:9100"
    restart: unless-stopped
volumes:
  grafana_data:

5. 启动服务

运行以下命令启动容器:

docker-compose up -d

检查服务状态:

docker ps

6. 访问 Prometheus 和 Grafana

  • Prometheus:访问 http://<your_server_ip>:9090
  • Grafana:访问 http://<your_server_ip>:3000
    • 默认用户名:admin
    • 默认密码:admin

7. 配置 Grafana 数据源

  • 登录 Grafana 后,进入 Configuration > Data Sources
  • 点击 Add data source,选择 Prometheus
  • 在 URL 栏输入 http://prometheus:9090,点击 Save & Test

8. 添加监控面板

在 Grafana 中:

  • 点击 + > Import
  • 输入面板的 ID,例如:
    • Node Exporter Full:1860
  • 点击 Load,选择数据源后保存。

9. 验证监控效果

  • 在 Prometheus 中,可以通过 http://<your_server_ip>:9090 查看监控目标状态。
  • 在 Grafana 中,可以通过导入的面板查看实时图表。

注意事项

  • 数据持久化:Prometheus 和 Grafana 数据通过 docker-compose.yml 中的挂载路径实现持久化。
  • 安全性:生产环境建议修改 Grafana 默认用户名密码。
  • 扩展性:可以通过修改 prometheus.yml 添加其他监控目标,例如数据库、应用程序等。

这套方案简单易用,非常适合快速部署监控环境。

到此这篇关于docker 安装部署 Prometheus 与grafana的文章就介绍到这了,更多相关docker 部署 Prometheus 与grafana内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • docker部署RustDesk自建服务器的小结

    docker部署RustDesk自建服务器的小结

    本文详细介绍了如何使用Docker部署RustDesk自建服务器,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-12-12
  • docker在已有的tomcat镜像上打新的镜像的Dockerfile编写说明介绍

    docker在已有的tomcat镜像上打新的镜像的Dockerfile编写说明介绍

    这篇文章主要介绍了docker在已有的tomcat镜像上打新的镜像的Dockerfile编写说明介绍,需要的朋友可以参考下
    2016-10-10
  • docker 复制容器的项目实践

    docker 复制容器的项目实践

    本文主要介绍了docker 复制容器的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-11-11
  • Docker数据目录迁移方法详解

    Docker数据目录迁移方法详解

    这篇文章主要介绍了Docker数据目录迁移方法,Docker数据目录迁移成功后再也不用担心服务器系统盘目录被占满的情况的,本文给大家介绍的非常详细,需要的朋友可以参考下
    2023-05-05
  • linux中docker的安装教程

    linux中docker的安装教程

    这篇文章主要介绍了linux中docker的安装教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • 使用脚本一键打包并上传docker镜像的实现代码

    使用脚本一键打包并上传docker镜像的实现代码

    这篇文章主要介绍了使用脚本一键打包并上传docker镜像的实现代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • Docker Compose构建Jenkins的实现

    Docker Compose构建Jenkins的实现

    本文主要介绍了Docker Compose构建Jenkins的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • 使用Docker搭建Apache Kafka环境的详细过程

    使用Docker搭建Apache Kafka环境的详细过程

    这篇文章主要介绍了使用Docker搭建Apache Kafka环境,本文使用Docker技术创建单个Kafka节点和Kafka集群环境,并且使用可视化工具连接服务查看代理服务器的配置信息,需要的朋友可以参考下
    2022-10-10
  • 使用Docker部署MySQL 5.7&8.0主从集群的方法步骤

    使用Docker部署MySQL 5.7&8.0主从集群的方法步骤

    这篇文章主要介绍了使用Docker部署MySQL 5.7&8.0主从集群的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • 开发者必备Docker命令小结

    开发者必备Docker命令小结

    本文主要讲解Docker环境的安装以及Docker常用命令的使用,掌握这些对Docker环境下应用的部署具有很大帮助,感兴趣的可以了解一下
    2021-12-12

最新评论