Cadvisor +Prometheus+Grafana

(一)Cadvisor产品简介

Cadvisor是Google开源的一款用于展示和分析容器运行状态的可视化工具。通过在主机上运行Cadvisor用户可以轻松的获取到当前主机上容器的运行统计信息,并以图表的形式向用户展示。

1、部署Cadvisor

被监控主机上部署Cadvisor容器

[root@docker3 ~]# docker pull google/cadvisor

[root@docker3 ~]# 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 \

google/cadvisor:latest

2、访问cAdvisor页面

访问http://192.168.100.103:8080 cAdvisor页面可以看到收集到的数据

(二)Prometheus产品简介

Prometheus是一个最初在SoundCloud上构建的开源系统监视和警报工具包。

自2012年成立以来,很多公司和组织都采用了Prometheus,该项目拥有非常活跃的开发者和用户社区。 它现在是一个独立的开源项目,可以独立于任何公司进行维护。 为了强调这一点,并阐明项目的治理结构,Prometheus于2016年加入Cloud Native Computing Foundation(云原生基金会),作为继Kubernetes之后的第二个托管项目。

Prometheus的主要特征有:

多维度数据模型-由指标键值对标识的时间序列数据组成;

PromQL,一种灵活的查询语言;

不依赖分布式存储; 单个服务器节点是自治的;

以HTTP方式,通过pull模型拉取时间序列数据;

支持通过中间网关推送时间序列数据;

通过服务发现或者静态配置,来发现目标服务对象;

支持多种多样的图表和界面展示。

1、部署Prometheus 

[root@docker3 ~]# docker pull prom/prometheus

2、先准备配置,修改配置文件

[root@docker3 ~]# vim /tmp/prometheus.yml

配置如下:

# my global config

global:

   scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.

   evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.

   # scrape_timeout is set to the global default (10s).

# Alertmanager configuration

alerting:

   alertmanagers:

   - static_configs:

       - targets:

         # - alertmanager:9093

# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.

rule_files:

   # - "first_rules.yml"

   # - "second_rules.yml"

# A scrape configuration containing exactly one endpoint to scrape:

# Here it's Prometheus itself.

scrape_configs:

# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.

   - job_name: 'prometheus'

       # metrics_path defaults to '/metrics'

       # scheme defaults to 'http'.

     static_configs:

     - targets: ['localhost:9090']

   - job_name: 'docker'      ##定义一个叫docker的组

     static_configs:

     - targets: ['192.168.100.103:8080']   ##填写一个或多个cadvisor的主机地址用>逗号隔开

[root@docker3 ~]#  docker run -d --name=prometheus  -p 9090:9090  -v /tmp/prometh

eus.yml:/etc/prometheus/prometheus.yml -v /etc/localtime:/etc/localtime  prom/prometheus

3、访问prometheus页面

http://192.168.100.103:9090

看到docker组状态up为正常

查询项是可以查到数据的

(三)部署Granfana

1、下载grafana并运行

[root@docker3 ~]# docker pull grafana/grafana

[root@docker3 ~]# docker run -d \

--name=grafana \

 -p 3000:3000 \

grafana/grafana

2、配置Granfana

访问http://192.168.100.103:3000默认账户admin 密码 admin首次登陆需要修改密码!

3、配置数据源

4、导入模板

5、选择对应的数据源,点击导入,就可以看到被监控主机的数据

6、准备测试容器

[root@docker3 ~]# docker run -d --name=nginx -p 80:80 nginx

7、WEB操作,如下:(新建+编+保存)

8、结果如下:

到此Cadvisor +Prometheus+Grafana基本架构部署完毕

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值