docker私有仓库和监控及报警环境搭建

一、私有仓库搭建(registry) 以172.16.113.12仓库为例
1、下载registry镜像
docker pull registry
2、运行镜像
docker run -d -p 5000:5000 -v /home/registry/:/var/lib/registry/ --name registry registry
3、push镜像
镜像的标签改成仓库地址     docker tag image 172.16.113.12:5000/image
docker push  172.16.113.12:5000/image
4、pull镜像
docker pull  172.16.113.12:5000/image
5、查看仓库镜像
172.16.113.12:5000/v2/_catalog
6、注意事项
docker必须配置--insecure-registry 172.16.113.12:5000,否则会提示连接错误
配置文件目录:/etc/systemd/system/docker.service.d/docker.conf

二、docker监控搭建(prometheus+cadvisor) 以172.16.113.12为例
1、下载prometheus镜像
docker pull prom/prometheus
2、下载cadvisor镜像
docker pull google/cadvisor
3、在要监控的docker主机运行cadvisor镜像
docker run -d -v /:/rootfs:ro -v /var/run:/var/run:rw -v /sys:/sys:ro -v /home/lib/docker/:/var/lib/docker:ro -p 8080:8080 --name cadvisor  google/cadvisor
4、配置 prometheus.yml
global:
  scrape_interval: 15s
  external_labels:
    monitor: 'codelab-monitor'
scrape_configs:
  - job_name: 'prometheus'
    scrape_interval: 5s
    static_configs:
      - targets: ['172.16.106.6:8080','172.16.106.7:8080','172.16.106.8:8080']
主要是targets,配置的是目标docker的cadvisor地址
5、运行镜像
docker run -d -p 9090:9090 -v /home/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml --name prometheus prom/prometheus
6、查看监控
prometheus      172.16.113.12:9090
cadvisor     172.16.106.6:8080
7、查询语法支持正则过过滤

三、监控报警
1、下载alertmanager镜像
docker pull prom/alertmanager
2、prometheus.yml文件添加报警文件
rule_files:
   - "first.rules"
指定文件为first.rules
3、first.rules添加报警规则
ALERT InstanceStatus
  IF up{job="docker-solr"} == 0
  FOR 10s
  LABELS {
    instance = "",
  }
  ANNOTATIONS {
    summary = "服务器  运行状态",
    description = "服务器  已当机超过 10s"
  }
当job=docker-solr的up值为0,且连续10秒,则触发报警
4、编辑alertmanager的转发配置simple.yml
global:
  resolve_timeout: 1m
route:
  group_by: ['InstanceStatus']
  group_wait: 5s
  group_interval: 10s
  repeat_interval: 1h
  receiver: 'team-X-pager'
receivers:
- name: 'team-X-pager'
  webhook_configs:
  - url: 'http://api.110monitor.com/alert/api/event/prometheus/ 4702344f-5a25-82b4-5d91-7e3b2e654527'
    send_resolved: true
使用webhook模式,配置报警通过onealert进行转发
5、申请onealert账号,配置prometheus应用,并生成红色的应用ID
6、运行alertmanager镜像
docker run -d -p 9093:9093 -v /home/prometheus/simple.yml:/etc/alertmanager/config.yml --name alertmanager prom/alertmanager
7、重启prometheus镜像
docker restart prometheus
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值