[013]操作系统原理系列 | prometheus监控docker&linux等状态

备注:

此Blog仅仅为了个人记录命令而建!!!

一、监控系统Prometheus

prometheus.yml:

global:
  # How frequently to scrape targets by default.
  scrape_interval: 15s  

  # How frequently to evaluate rules.
  evaluation_interval: 15s

# Rule files specifies a list of globs. Rules and alerts are read from
# all matching files.
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"

# A list of scrape configurations.
scrape_configs:
  - job_name: 'prometheus'
  static_configs:
  - targets:['localhost:9090']

# Alerting specifies settings related to the Alertmanager.
alerting:  
  alertmanagers:
    - targets:
  # - alertmanager:9093
docker run -d --name=pro -p 9090:9090 -v /data/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus

二、cAdvisor

cAdvisor(Container Advisor)是Google开源,用于收集一台机器上所有运行的容器信息(cAdvisor只进行查看,并不做数据的保存,所以需要将cAdvisor的数据加载到Prometheus中)

docker run -d \
--volume=/:/rootfs:ro \
--volume=/var/run:/var/run:ro \
--volume=/sys:/sys:ro \
--volume=/var/lib/docker/:/var/lib/docker:ro \
--volume=/dev/disk/:/dev/disk:ro \
--publish=8080:8080 \
--detach=true \
--name=cadvisor \
--restart=always \
google/cadvisor:latest

查看服务器的8080端口:

 三、node-exporter

node-expoter是prometheus开源的,能够提取到机器的信息

docker run -d -p 9100:9100 \
  -v "/proc:/host/proc:ro" \
  -v "/sys:/host/sys:ro" \
  -v "/:/rootfs:ro" \
  --net="host" \
  prom/node-exporter

修改配置文件prometheus.yml,增加了cAdvisor和node-expoter配置,修改如下(删除了部分注释),然后重启prometheus容器!!!

global:
  scrape_interval:     15s
  evaluation_interval: 15s
 
scrape_configs:
  - job_name: prometheus
    static_configs:
      - targets: ['192.168.172.128:9090']
        labels:
          instance: prometheus
 
  - job_name: docker
    static_configs:
      - targets: ['192.168.172.128:8080']
        labels:
          instance: localhost

  - job_name: linux
    static_configs:
      - targets: ['192.168.172.128:9100']
        labels:
          instance: localhost

 四、Grafana

grafana是跨平台的开源试题分析和可视化工具,可以通过将采集的数据查询然后做可视化的展示。
启动Grafana容器

docker run -d --name=grafana --restart=always -p 3001:3000 grafana/grafana

备注:

进入到服务器的3001端口(原本是3000端口,因为服务器在占用3000端口,所以修改成3001)
默认的用户名与密码都是admin,首次进入需要修改密码

备注:

Docker主机监控模板:193
Linux主机监控模板:9276 8919 12227 

 

五、Mongo

docker run -d --name mongo -p 27017:27017 -v $PWD/db:/data/db mongo
docker exec -it mongo mongo admin

创建用户:

$ docker exec -it mongo mongo admin
# 创建一个名为 admin,密码为 123456 的用户。
>  db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});
# 尝试使用上面创建的用户信息进行连接。
> db.auth('admin', '123456')
docker run -d --name mongodb_exporter -p 9104:9104 eses/mongodb_exporter --mongodb.uri mongodb://admin:123456@192.168.172.128:27017

查看一下:

[root@tw data]# docker logs f39a67d62b32
### Warning: the exporter is in beta/experimental state and field names are very
### likely to change in the future and features may change or get removed!
### See: https://github.com/percona/mongodb_exporter for updates
mongodb_exporter version: unknown, git commit hash: unknown
Listening on :9104

Prometheus.yml添加下面: 

- job_name: mongodb
    static_configs:
      - targets: ['192.168.172.128:9104']
        labels:
            instance: mongodb

参考课程来源:https://www.bilibili.com/video/BV1T54y1Q7VY 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值