docker容器监控:Cadvisor +Prometheus+Grafana的安装部署

news2024/11/27 5:33:57

目录

Cadvisor +Prometheus+Grafana的安装部署

一、安装docker:

1、安装docker-ce

2、阿里云镜像加速器

3、下载组件镜像

4、创建自定义网络

二、部署Cadvisor

1、被监控主机上部署Cadvisor容器

2、访问cAdvisor页面

三、安装prometheus

1、部署Prometheus 

2、先准备配置

3、访问prometheus页面

四、部署Granfana

1、下载grafana并运行

2、配置Granfana

3、配置数据源

4、导入模板

5、选择对应的数据源,点击导入,

6、准备测试容器

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

8、结果如下:


Cadvisor +Prometheus+Grafana的安装部署

一、安装docker:

1、安装docker-ce

[root@huyang3 ~]# iptables -F

[root@huyang3 ~]# setenforce 0

[root@huyang3 ~]# systemctl stop firewalld

[root@huyang3 ~]# cd /etc/yum.repos.d/

[root@lhuyang3 ~]# wget

http://mirrors.aliyun.com/repo/Centos-7.repo

[root@huyang3 ~]# yum -y install yum-utils device-mapper-persistent-data lvm2

[root@huyang3 ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

[root@huyang3 ~]# yum -y install docker-ce

[root@huyang3 ~]# systemctl start docker

[root@huyang3 ~]# systemctl enable docker

[root@huyang3 ~]# docker version

2、阿里云镜像加速器

阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台

[root@huyang3 ~]# cat << END > /etc/docker/daemon.json

{

    "registry-mirrors":[ "https://nyakyfun.mirror.aliyuncs.com" ]

}

END

[root@huyang3 ~]# systemctl daemon-reload

[root@huyang3 ~]# systemctl restart docker

3、下载组件镜像

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

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

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

[root@huyang3 ~]# docker images

4、创建自定义网络

        为了把后期创建的Cadvisor+InfluxDB+Grafana这三个容器都加入自己定义的网络便于理解和管理,所以才新建一个自定义网络。

[root@huyang3 ~]# docker network create monitor

[root@huyang3 ~]# docker network ls

        Ps备注:假如出现上述网络创建不成功的话,则重启docker,然后再创建网络,这样就可以创建成功了!

[root@huyang3 ~]# docker network inspect monitor

二、部署Cadvisor

1、被监控主机上部署Cadvisor容器

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

[root@huyang3 ~]# 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.133:8080 cAdvisor页面可以看到收集到的数据

三、安装prometheus

1、部署Prometheus 

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

2、先准备配置

[root@huyang3 ~]# 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.133:8080']   ##填写一个或多个cadvisor的主机地址用逗号隔开运行容器

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

--name=prometheus  -p 9090:9090  \

-v /tmp/prometheus.yml:/etc/prometheus/prometheus.yml \

-v /etc/localtime:/etc/localtime \

prom/prometheus

3、访问prometheus页面

http://192.168.100.133:9090

看到docker组状态up为正常

查询项是可以查到数据的

四、部署Granfana

1、下载grafana并运行

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

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

--name=grafana \

 -p 3000:3000 \

grafana/grafana

2、配置Granfana

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

 

3、配置数据源

4、导入模板

5、选择对应的数据源,点击导入,

就可以看到被监控主机的数据

6、准备测试容器

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

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

 

8、结果如下:

 

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/847609.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux 网络】 数据链路层协议

数据链路层协议 数据链路层解决的问题以太网协议认识以太网以太网帧格式 认识MAC地址对比理解MAC地址和IP地址认识MTUMTU对IP协议的影响MTU对UDP协议的影响MTU对于TCP协议的影响ARP协议ARP协议的作用ARP协议的工作流程ARP数据报的格式 总结 数据链路层解决的问题 IP拥有将数据跨…

hcip——期中小试

要求&#xff1a; 1、该拓扑为公司网络&#xff0c;其中包括公司总部、公司分部以及公司骨干网&#xff0c;不包含运营商公网部分。 2 、设备名称均使用拓扑上名称改名&#xff0c;并且区分大小写。 3 、整张拓扑均使用私网地址进行配置。 4 、整张网络中&#xff0c;运行 O…

扩增子分析流程——Lotus2: 一行命令完成所有分析

为什么介绍lotus2 因为快&#xff0c;作者比较了lotus2流程和qiime2、dada2、vsearch等&#xff0c;lotus2的速度最快、占用内存最小。 因为方便&#xff0c;只需要一行代码&#xff0c;即可完成全部分析。 lotus2 -i Example/ -m Example/miSeqMap.sm.txt -o myTestRun而且分…

数学建模学习(10):遗传算法

遗传算法简介 • 遗传算法&#xff08;Genetic Algorithms&#xff09;是基于生物进化理论的原理发展起来的一种广为 应用的、高效的随机搜索与优化的方法。其主要特点是群体搜索策略和群体中个体之 间的信息交换&#xff0c;搜索不依赖于梯度信息。它是20世纪70年代初期由美国…

【MMU】认识 MMU 及内存映射的流程

MMU&#xff08;Memory Manager Unit&#xff09;&#xff0c;是内存管理单元&#xff0c;负责将虚拟地址转换成物理地址。除此之外&#xff0c;MMU 实现了内存保护&#xff0c;进程无法直接访问物理内存&#xff0c;防止内存数据被随意篡改。 目录 一、内存管理体系结构 1、…

kuboard安装和使用

windows平台下使用docker和docker-compose部署Kuboard&#xff0c;并添加Docker Desktop for windows的k8s单机集群 使用docker安装 docker run -d \--restartunless-stopped \--namekuboard \-p 80:80/tcp \-p 10081:10081/tcp \-e KUBOARD_ENDPOINT"http://内网IP:80&…

常量池-JVM(十九)

上篇文章说gc日志以及arthas。 Arthas & GC日志-JVM&#xff08;十八&#xff09; 一、常量池 常量池主要放两大类&#xff1a;字面量和符号引用。 字面量就是由字母、数字等构成的字符串或者数值常量。 符号引用主要包含三类常量。 类和接口的全限定名。字段的名称和…

线程安全问题的原因和解决方案

前言 如果某个代码&#xff0c;在单线程执行下没有问题&#xff0c;在多线程执行下执行也没有问题&#xff0c;则称“线程安全”&#xff0c;反之称“线程不安全”。 目录 前言 一、简述线程不安全案例 二、线程安全问题的原因 &#xff08;一&#xff09;&#xff08;根本…

JMeter处理接口签名之BeanShell实现MD5加密

项目A需要给项目B提供一个接口&#xff0c;这个接口加密了&#xff0c;现在需要测试这个接口&#xff0c;需要怎么编写脚本呢&#xff1f;实现接口签名的方式有两种&#xff1a;BeanShell实现MD5加密和函数助手实现MD5加密&#xff0c;之前已经分享过了函数助手实现MD5加密&…

国产水声功率放大器ATA-L50在水下通信领域中的应用

水下通信是指在水下环境中进行信息交流和传递的技术。由于水下环境的特殊性&#xff0c;水下通信面临着诸多挑战&#xff0c;如水压、水体的吸收和散射等。然而&#xff0c;随着科技的发展&#xff0c;水下通信技术已经取得了长足的进步&#xff0c;并广泛应用于海洋资源开发、…

【IMX6ULL驱动开发学习】01.IMX6ULL驱动开发_编写第一个hello驱动(不涉及硬件操作)

目录 一、驱动程序编写流程 二、代码编写 2.1 驱动程序hello_drv.c 2.2 测试程序 2.3 编写驱动程序的Makefile 三、上机实验 3.1 NFS 挂载 3.2 测试示例 一、驱动程序编写流程 构造file_operations结构体 在里面填充open/read/write/ioctl成员 注册file_operations结…

深度学习(35)—— StarGAN(2)

深度学习&#xff08;34&#xff09;—— StarGAN&#xff08;2&#xff09; 完整项目在这里&#xff1a;欢迎造访 文章目录 深度学习&#xff08;34&#xff09;—— StarGAN&#xff08;2&#xff09;1. build model&#xff08;1&#xff09;generator&#xff08;2&#…

官宣了!Nank南卡耳机签约世界游泳冠军傅园慧!共塑国货好品质

骨传导开放式耳机行业领导品牌Nank南卡今日宣布&#xff0c;将邀请世界游泳冠军傅园慧为品牌形象代言人&#xff0c;Nank南卡对品牌推广大使的选择并非跟随流量的潮向&#xff0c;而是甄选与自身价值观更为相符的游泳冠军。赛场上的傅园慧所体现的不怕输、不放弃&#xff0c;坚…

XXL-Job 具体通过docker 配置,再通过springboot执行注册实现完整流程

【2023】XXL-Job 具体通过docker 配置安装容器&#xff0c;再通过springboot执行注册实现 一、概述二、安装1、拉取镜像2、创建数据库3、创建容器并运行3、查看容器和日志4、打开网页 127.0.0.1:9051/xxl-job-admin/ 三、实现注册测试1、创建一个SpringBoot项目、添加依赖。2、…

源码分析——HashMap(JDK1.8)源码+底层数据结构分析

文章目录 HashMap 简介底层数据结构分析JDK1.8之前JDK1.8之后 HashMap源码分析构造方法put方法get方法resize方法 HashMap常用方法测试 HashMap 简介 HashMap 主要用来存放键值对&#xff0c;它基于哈希表的Map接口实现&#xff0c;是常用的Java集合之一。 JDK1.8 之前 HashM…

品牌战略的力量与影响:如何利用品牌战略抢占市场的制高点

商海如战场&#xff0c;如何在众多品牌中脱颖而出?答案可能不仅仅在于有一个出色的产品或服务&#xff0c;还需要一个强大的品牌战略。这不仅是一个标志或广告活动&#xff0c;而是决定企业命运的关键。那么什么是品牌战略?品牌战略包含哪些内容?品牌战略又能给企业带来哪些…

CMake良心教程(1)手把手教你入门!

目录 一.CMake是什么&#xff1f;有什么用&#xff1f; 二.环境配置 2.1CMake安装 2.2MinWG安装 三.构建最小项目 3.1项目的构建 3.2外部构建与内部构建 四.CMakeLists.txt语法介绍 4.1 project关键字 4.2 set 与 PROJECT_NAME 4.3 MESSAGE关键字 4.4 ADD_EXECUTABL…

浅谈建筑能耗管理云平台系统的分析与设计

安科瑞 华楠 摘要&#xff1a;本文以建筑能耗为研究对象&#xff0c;分析并设计了基于云服务平台的建筑能耗管控系统。该系统可辅助企业多维度&#xff08;即纵向时间纬度、不同专业指标纬度、不同权限纬度等&#xff09;监测企业建筑能耗情况&#xff0c;并基于其对海量数据、…

马氏杆法检查斜视

使用 检查水平向斜视时&#xff0c;使用水平向马氏杆检查;重直向斜视时&#xff0c;使用重直问马氏杆;检查旋转斜视时&#xff0c;使用双马氏杆. 检查水平向斜视 双眼屈光不正全矫 双眼同时打开&#xff0c;右眼前加水平向马氏杆&#xff0c;左眼前不加 双眼同时观察点光源&…

extern关键字的使用

test.c int add(int a, int b) {return a b; }main.cpp #include <iostream> using namespace std;//方法一&#xff1a; //#include "test.c"//方法二&#xff1a; extern "C" int add(int a, int b); //如果直接在C程序中调用C编译过的函数&…