docker搭建prometheus+blackbox-exporter+granfana实现网络监控(1)

本阶段内容:下载docker以及docker搭建prometheus
一、下载docker

1、首先,docker需要linux内核在3.10以上,因此需要查看自身内核是否支持

2、更新yum包(如何机器本身存在服务应用请慎重)

yum -y update  //升级所有包同时也升级软件和系统内核(因为我是全新的环境,可以无所顾及更新)
yum -y upgrade  //只升级所有包,不升级软件和系统内核

3、如果之前安装过docker,请卸载

yum remove docker docker-common docker-selinux docker-engine

重新输入一次命令,出现 No Packages说明已经协助干净

4、安装docker软件包, yum-util 提供yum-config-manager功能,另两个是devicemapper驱动依赖

yum install -y yum-utils device-mapper-persistent-data lvm2

5、设置docker的源,我个人喜欢中央仓库,虽然速度比较慢

yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo

6、查看docker的版本

yum list docker-ce --showduplicates | sort -r

7、根据查询的版本号,我们选择最新也就是最上面的版本进行安装。

yum -y install docker-ce-24.0.6-1.el7

出现以下界面说明安装成功8、查询验证版本号吧,并设置开机启动docker和启动docker

docker version    \查询版本
systemctl enable docker    \设置开机启动
systemctl status docker    \启动docker

以上步骤以及完成docker的安装与启动

但是,我们的监控涵盖ipv4和ipv6监控,目前搭建的docker只有ipv4环境,后续创建的docker实例也只会分配ipv4地址,只有ipv4地址的docker是没办法监控ipv6地址的,所以需要给docker配置ipv6网络环境

①、在 docker 配置文件 添加IPv6配置参数,配置文件路径均为/etc/docker/daemon.json
(如果daemon.json不存在则直接创建),并在daemon.json文件输入以下内容

{
  "ipv6": true,
  "fixed-cidr-v6": "fc00:17:1:1::/64"
}

fc00:17:1:1::/64 是docker的内网地址,还需要对docker的ipv6地址进行nat转换才能正常访问

#ip6tables -t nat -A POSTROUTING -s fc00:17:1:1::/64 -j MASQUERADE
#ip6tables -t nat -L

重启docker服务,并ip a 查看docker下的是否已经生成ipv6地址

systemctl restart docker

完成以上步骤就能创建prometeus和blackbox容器了。

二、创建prometheus容器

1、在/home创建prometheus目前,并创建prometheus.yml系统配置文件prometheus.yml

cd /home
mkdir prometheus
cd prometheus

vi prometheus.yml
global:
  scrape_interval: 1s    /拉取blackbox数据时间是1S
 
scrape_configs:
  - job_name: icmp-ping    /定义一个工作名称
    metrics_path: /probe
    params:
      module: [icmp,icmp6]
    static_configs:
    - targets:           /添加监控目的ip,也就是你想监控的ip
      - "114.114.114.114"    
      - "223.5.5.5"
    relabel_configs:
    - source_labels: [__address__]
      target_label: __param_target
    - source_labels: [__param_target]
      target_label: instance
    - target_label: __address__
      replacement: 172.17.0.3:9115    /docker  blackbox-exporter的地址和端口

2、防火墙放通9090端口

firewall-cmd --zone=public --add-port=9090/tcp --permanent \放通9090端口
firewall-cmd --reload    \重新加载防火墙配置
firewall-cmd --list-port    \列出防火墙已经放通的端口

3、创建Prometheus容器

docker run --name AHHF-prometheus -p 9090:9090 -v /home/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus 
   
\\命名名称为 AHHF-prometheus的容器,容器内部9090端口映射到宿主机所有ip的9090端口,通过 -v 参数,将主机上的 /home/prometheus/prometheus.yml 文件挂载到容器内的 /etc/prometheus/prometheus.yml 文件。这样可以将自定义的 Prometheus 配置文件应用到容器中。

容器拉取镜像创建成功后可能有下面这个报错,systemctl restart docker 重启dockers就行

重启docker后,在重启容器,docker restart +容器id,然后再查看容器状态 docker ps -a 

netstat -tulnep 查看端口确认服务是否成功启动


最后用 http://ip:9090登录prometheus界面(ip是你服务器本机ip)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值