Docker技术搭建Grafana监控平台

centos7虚拟机和docker的安装:可以参考之前的博文

CPU、mysql-exporter、docker监控模板:百度网盘

提取码:0000

先查看服务器时间是否和当前时间一致,如果不一致,查看对应设置:centos7时间同步博文

一、Grafana监控平台搭建步骤

搭建之前关于防火墙:1. 搭建之前先必须开启防火墙,2. 操作之后必须关闭防火墙或者把需要的端口加入防火墙规则中
查看防火墙状态:systemctl status firewalld
a 启动防火墙:systemctl start firewalld
b 关闭防火墙:systemctl stop firewalld

b2 提前把node-exporter、mysqld-exporter、prometheus、grafana、cadvisor端口加入防火墙规则中后重启生效
sudo firewall-cmd --add-port=9100/tcp --permanent
sudo firewall-cmd --add-port=9104/tcp --permanent
sudo firewall-cmd --add-port=9090/tcp --permanent
sudo firewall-cmd --add-port=3000/tcp --permanent
sudo firewall-cmd --add-port=8081/tcp --permanent
sudo firewall-cmd --add-port=8090/tcp --permanent
查看列出开放的端口在防火墙中:firewall-cmd --list-ports
重新加载防火墙使其生效(刷新防火墙的配置) firewall-cmd --reload

  1. 创建并启动 node-exporter 容器
docker run -d -p 9100:9100 --name node-exporter -v "/proc:/host/proc:ro" -v "/sys:/host/sys:ro" -v "/:/rootfs:ro" prom/node-exporter

在这里插入图片描述

  1. 对mysqld_exprot配置数据库的IP、用户名、密码

    1. 新建mysqld_exporter目录:mkdir -p /data/mysqld_exporter
    2. 切换到这个目录:cd /data/mysqld_exporter/
    3. 编辑(host是docker环境的ip、帐号密码默认): vi my.cnf
      [client]
      host=172.17.0.1
      user=root
      password=123456
    4. 加权限:chmod 755 my.cnf
      在这里插入图片描述
  2. 创建并启动mysqld_exprot

docker run -d -p 9104:9104 --name mysqld-exporter --volume=/data/mysqld_exporter/my.cnf:/etc/mysql/my.cnf:ro prom/mysqld-exporter --config.my-cnf=/etc/mysql/my.cnf

在这里插入图片描述

  1. 对prometheus配置相关数据
mkdir -p /opt/prometheus
vi /opt/prometheus/prometheus.yml

prometheus.yml 内容 如下:

global:
  scrape_interval:     60s
  evaluation_interval: 60s
scrape_configs:
  - job_name: prometheus
    static_configs:
      - targets: ['172.17.0.1:9090']
        labels:
          instance: prometheus
  - job_name: linux
    static_configs:
      - targets: ['172.17.0.1:9100']
  - job_name: mysql
    static_configs:
      - targets: ['172.17.0.1:9104']
  - job_name: 'cadvisor'
    static_configs:
      - targets: ['172.17.0.1:8081']

通过ifconfig命令查看docker的IP和prometheus.yml文件的IP一致,这里显示一致,如果不一致需要和服务器保持一致
在这里插入图片描述

prometheus.yml文件赋权

chmod 755 prometheus.yml
  1. 创建并启动 prometheus 容器
docker run -d -p 9090:9090 --name prometheus -v /opt/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml -v /etc/localtime:/etc/localtime:ro prom/prometheus

在这里插入图片描述

  1. 对grafana配置相关数据
mkdir -p /opt/grafana/data
chmod 777 /opt/grafana/data
  1. 创建并启动 grafana 容器
docker run -id --name=grafana -p 3000:3000 -v /opt/grafana/data:/var/lib/grafana -v /etc/localtime:/etc/localtime:ro grafana/grafana

在这里插入图片描述

  1. docker监控第一种方法(创建并启动 cadvisor 容器)
docker run -d -p 8081:8080 --name cadvisor  --privileged=true -v /:/rootfs:ro -v /var/run:/var/run:rw -v /sys:/sys:ro -v /var/lib/docker/:/var/lib/docker:ro google/cadvisor:latest

在这里插入图片描述

  1. 监控docker第二种方法(创建并启动 sysdig 容器-后续可以通过docker分析性能指标)
docker run -id --name sysdig --privileged=true --volume=/var/run/docker.sock:/host/var/run/docker.sock --volume=/dev:/host/dev --volume=/proc:/host/proc:ro --volume=/boot:/host/boot:ro --volume=/lib/modules:/host/lib/modules:ro --volume=/usr:/host/usr:ro sysdig/sysdig

在这里插入图片描述

  1. 使用谷歌浏览器查看: 输入服务器地址:192.xxx.xx.xxx:9090
    切换Targets,查看都是up状态,配置OK(Tips:左边的ip可以换成服务器ip+端口进行访问,例如 192.168.xx.xxx:8081)
    在这里插入图片描述

在这里插入图片描述

  1. 通过IP地址: http://192.xxx.xx.xxx:3000/ 访问Grafana平台, 初始账号密码:admin/admin
    在这里插入图片描述
    这里选择skip跳过,一般不用重设密码
    在这里插入图片描述

  2. 配置数据源,选择齿轮,选择Data sources
    在这里插入图片描述
    选择第一个Prometheus, 点击Select
    在这里插入图片描述

  3. 只填写下面这一个地方,这里填写docker的ip地址和端口号: http://172.170.1:9090
    在这里插入图片描述
    点击Save & test 按钮,显示下面这两处地方,代表配置成功
    在这里插入图片描述

  4. 导入模版,选择Import
    在这里插入图片描述

在这里插入图片描述
选监控CPU的json文件,选择数据源:Prometheus(有时候可能没有,没关系), 选择 Import
在这里插入图片描述

  1. 查看,展示如下,模板配置成功,选择左上角自动展示docker的IP,右上角选择5分钟内,刷新时间为5s
    分组名称:linux IP地址:默认展示 选择时间:最近5分钟内, 刷新时间选择:5s
    如下展示–配置成功
    在这里插入图片描述

  2. 再复制一个浏览器窗口,进行导入mysql.json模版后,默认点击Import按钮
    Interval:auto IP地址:默认展示 选择时间:最近5分钟内, 刷新时间选择:5s
    在这里插入图片描述
    在这里插入图片描述

  3. 再复制一个浏览器窗口,docker模板导入及数据展示,配置OK
    在这里插入图片描述

  4. 展示下面界面,docker模板导入成功
    在这里插入图片描述

到此docker监控Grafana技术配置完成!!!

  • 43
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Docker容器平台搭建可以通过使用Kubernetes来实现。Kubernetes是一个开源的容器编排平台,它可以帮助我们管理和调度大规模的Docker容器集群。下面是搭建Docker容器平台的步骤: 1. 安装Docker和Kubernetes:首先,需要在所有的节点上安装Docker和Kubernetes。可以按照官方文档提供的步骤进行安装。 2. 初始化Kubernetes集群:在主节点上运行以下命令来初始化Kubernetes集群: ```shell kubeadm init ``` 3. 配置Kubernetes网络:Kubernetes需要一个网络插件来实现容器之间的通信。常用的网络插件有Flannel、Calico等。选择一个适合你的网络插件,并按照其文档进行配置。 4. 加入工作节点:在工作节点上运行以下命令,将其加入到Kubernetes集群中: ```shell kubeadm join <master-node-ip>:<master-node-port> --token <token> --discovery-token-ca-cert-hash <hash> ``` 5. 部署容器平台:使用Kubernetes的资源配置文件(YAML文件)来部署容器平台的各个组件,如Master节点、Worker节点、网络插件、存储等。可以使用kubectl命令来创建和管理这些资源。 6. 部署应用程序:使用kubectl命令或Kubernetes Dashboard来部署和管理应用程序。可以通过创建Deployment、Service等资源来定义和管理应用程序的运行。 7. 监控和扩展:使用Kubernetes提供的监控和扩展功能来监控和管理容器平台。可以使用Prometheus、Grafana等工具来监控集群的状态,并使用Horizontal Pod Autoscaler来自动扩展应用程序的副本数量。 请注意,以上步骤只是一个简单的概述,实际搭建过程可能会更加复杂,具体的步骤和配置取决于你的需求和环境。建议参考Kubernetes官方文档和相关教程来获取更详细的指导。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值