当前位置: 首页 > news >正文

新闻单位建设网站的意义房地产估价师考试

新闻单位建设网站的意义,房地产估价师考试,怎么样制作自己的网站,维护网站docker容器监控一、前言二、cAdvisor2.1、安装cAdvisor2.2、使用Prometheus监控cAdvisor2.3、cAdvisor暴露的Prometheus指标三、Node Exporter3.1、安装Node Exporter3.2、指标四、Prometheus4.1、安装4.2、规则配置4.3、报警管理器五、grafana一、前言 cAdvisor源码 node exp…

docker容器监控

  • 一、前言
  • 二、cAdvisor
    • 2.1、安装cAdvisor
    • 2.2、使用Prometheus监控cAdvisor
    • 2.3、cAdvisor暴露的Prometheus指标
  • 三、Node Exporter
    • 3.1、安装Node Exporter
    • 3.2、指标
  • 四、Prometheus
    • 4.1、安装
    • 4.2、规则配置
    • 4.3、报警管理器
  • 五、grafana

一、前言

cAdvisor源码
node exporter源码

prometheus:
官方文档
PromQL文档
prometheus源码
报警管理器文档
报警管理器源码
中文文档

二、cAdvisor

cAdvisor让容器用户了解容器的资源使用情况和性能特征。用于收集、聚合、处理和导出有关正在运行的容器的信息。它为每个容器保存资源隔离参数、历史资源使用情况、完整历史资源使用直方图和网络统计信息。

简而言之:对容器进行实时监控和性能数据采集,包括CPU、内存、网络、文件系统等资源的使用情况。

2.1、安装cAdvisor

  1. 下载二进制文件:
wget  https://github.com/google/cadvisor/releases/download/v0.46.0/cadvisor-v0.46.0-linux-amd64
  1. 编写Dockerfile构建容器(Dockerfile)。
# ubuntu作为基础镜像
FROM ubuntu:latest
LABEL cadvisor 0.46.0
# 将下载的二进制文件复制到容器里
COPY ./cadvisor-v0.46.0-linux-amd64 /usr/bin/cadvisor
# 赋予权限
RUN chmod +x /usr/bin/cadvisor
# 指定程序入口,这里使用ENTERYPOINT而不使用CMD的原因是cadvisor启动时有很多的启动参数,
# 使用CMD会需要指定太多参数,不够简洁。
ENTRYPOINT ["/usr/bin/cadvisor"]
  1. 构建镜像。
docker build -t cadvisor:0.46.0 .
  1. 运行容器。
docker run \
--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 \
--userns=host \
--privileged \
--device=/dev/kmsg \
cadvisor:0.46.0
  1. web访问监控图标。
http://localhost:8080

在这里插入图片描述
在这里插入图片描述

2.2、使用Prometheus监控cAdvisor

cAdvisor将容器和硬件统计数据公开为Prometheus开箱即用的指标。默认情况下,这些指标在http端点的/metrics路径下。例如:http://192.168.0.106:8080/metrics。可以通过设置-
prometheus_endpoint和-disable_metrics或-enable_metrics命令行标志来自定义此端点:

  1. -disable_metrics:要禁用的指标的逗号分隔列表。选项包括:
    accelerator,advtcp,app,cpu,cpuLoad,cpu_topology,cpuset,disk,diskIO,hugetlb,memory,memory_numa,network,oom_event,percpu,perf_event,process,referenced_memory,resctrl,sched,tcp,udp。默认值:
    advtcp,cpu_topology,cpuset,hugetlb,memory_numa,process,referenced_memory,resctrl,sched,tcp,udp。
  2. -enable_metrics:要启用的指标的逗号分隔列表,如果设置则覆盖-disable_metrics选项。选项包括:
    accelerator,advtcp,app,cpu,cpuLoad,cpu_topology,cpuset,disk,diskIO,hugetlb,memory,memory_numa,network,oom_event,percpu,perf_event,process,referenced_memory,resctrl,sched,tcp,udp。
  3. -prometheus_endpoint:暴露普罗米修斯指标的端点(默认为“/metrics”)。
  4. 示例:
docker run \
--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 \
--userns=host \
--privileged \
--device=/dev/kmsg \
cadvisor:0.46.0 -disable_metrics cpu,cpuLoad

2.3、cAdvisor暴露的Prometheus指标

容器指标:

  1. 文档。
  2. 指标:
    在这里插入图片描述

硬件指标:

  1. 文档。
  2. 指标:
    在这里插入图片描述

三、Node Exporter

Node Exporter 是prometheus官方提供的agent,项目被托管在prometheus的账号之下。用于收集主机的硬件和操作系统指标。

3.1、安装Node Exporter

  1. 启动容器,默认端口为9100
# 安装Node Exporter 来收集硬件信息
docker run -d \
--net="host" \
--pid="host" \
--userns="host" \
-v "/:/host:ro,rslave" \
--name node_exporter \
quay.io/prometheus/node-exporter:latest \
--path.rootfs=/host
  1. 访问http端点,查看指标
http://192.168.0.106:9100/metrics

在这里插入图片描述

  1. –collector. 启用指标,–no-collector. 禁用指标,–collector.disable-defaults 禁用所有默认启用的指标。例如:
docker run -d \
--net="host" \
--pid="host" \
--userns="host" \
-v "/:/host:ro,rslave" \
--name node_exporter \
quay.io/prometheus/node-exporter:latest \
--path.rootfs=/host \
--collector.disable-defaults \
--collector.arp --collector.bcache

3.2、指标

默认启用指标:

  1. 文档
  2. 指标:
    在这里插入图片描述

默认禁用指标:

  1. 文档
  2. 禁用指标的原因:高基数;运行时长超过Prometheus scrap_interval或scrap_timeout设置的时长;对主机资源消耗巨大。因此,启用默认禁用指标需慎重,按需启用。
  3. 指标:
    在这里插入图片描述

四、Prometheus

一个开源的监控和报警系统,通过定时收集采集端的数据,经过计算存入到时序数据库。通过PromQL对时序数据库中的指标进行计算,从而分析出系统的状态。通过定时评估指定的基于PromQL的表达式从而实现警告的触发。

4.1、安装

(1)配置文件(promethus.yml),配置的编写可以参考官网的说明。

global:# 每20s获取一次数据指标scrape_interval: 20s# 获取数据超时时长 10sscrape_timeout: 10s# 规则评估评率,即计算指标是否有触发规则的计算频率evaluation_interval: 20s
# 规则文件,从所有匹配的文件中读取规则和警报
rule_files:- "alertRule.yml"- "recordRule.yml"
# 采集配置列表
scrape_configs:
- job_name: 'cadvisor'static_configs:- targets:- 192.168.0.106:8080
- job_name: 'node'static_configs:- targets:- 192.168.0.106:9100- 192.168.0.142:9100- 192.168.0.143:9100
- job_name: 'prometheus'static_configs:- targets:- 192.168.0.106:9090
# 报警管理
alerting:alertmanagers:- static_configs:- targets: ['192.168.20.106:9093']

(2)启动容器。

docker run -itd --name prometheus -p 9090:9090 \
-v /opt/prometheus:/etc/prometheus \
prom/prometheus --config.file=/etc/prometheus/prometheus.yml

(3)访问端点:http://192.168.0.106:9090
(4)指标类型:

  • Counter:计数器,只增不减,用于描述某个指标的累计状态。比如cpu总使用时长:node_cpu_seconds_total
  • Gauge:可增可减的计量器,用于描述某个指标的当前状态,比如空闲内存空间:node_memory_MemFree_bytes

(5)5分钟CPU使用率表达式,1 - 5分钟内增量空闲CPU/5分钟内增量总CPU ,按instance分组。由于node_cpu_seconds_total指标是一个counter类型,所以该指标是一直累计CPU使用量,因此需要以增量来获取CPU的量。表达式如下:

100- sum(increase(node_cpu_seconds_total{mode="idle"}[5m])) by (instance)/sum(increase(node_cpu_seconds_total[5m])) by (instance) * 100

(6) 机器平均负载,node_load1 1分钟平均负载,node_load5 5分钟平均负载,node_load15 15分钟平均负载。

node_load1
node_load5
node_load15

(7)内存使用率,node_memory_MemTotal_bytes 总内存,node_memory_MemFree_bytes 空闲内存,node_memory_Buffers_bytes 缓冲缓存,node_memory_Cached_bytes 页面缓存。公式:总内存 -(空闲内存 + 缓冲缓存 + 页面缓存))/ 总内存 * 100。

(node_memory_MemTotal_bytes - (node_memory_MemFree_bytes + node_memory_Buffers_bytes+node_memory_Cached_bytes ))/node_memory_MemTotal_bytes * 100

(8) 磁盘空间使用率,node_filesystem_avail_bytes 可用字节数 ,node_filesystem_size_bytes 总字节数。

node_filesystem_avail_bytes{mountpoint="/"} / node_filesystem_size_bytes{mountpoint="/"} * 100

4.2、规则配置

(1)规则检查:

promtool check rules /path/to/example.rules.yml

(2)记录规则:

roups:
- name: RecordCpurules:- record: Cpu15mRateexpr: 100- sum(increase(node_cpu_seconds_total{mode="idle"}[15m])) by (instance)/sum(increase(node_cpu_seconds_total[15m])) by (instance) * 100labels:CpuRate: 15

(3)报警规则:

groups:
# 组名
- name: node_health# 规则rules:# 报警名称- alert: InstanceDown# 基于PromQL的条件表达式expr: up == 0# 评估等待时间,表示,触发条件表达式后,等待一段时间发送报警信息for: 1m# 自定义label 标签labels:NodeHealth: false# 附加信息,比如详细的描述报警情况annotations:# 摘要summary: "Instance {{ $labels.instance }} down"# 详情  description: " {{ $labels.instance }} of job {{ $labels.job }} has been down for more than 1 minutes "
- name: node_resourcerules:- alert: Cpu5mRateexpr: 100- sum(increase(node_cpu_seconds_total{mode="idle"}[5m])) by (instance)/sum(increase(node_cpu_seconds_total[5m])) by (instance) * 100 > 2labels:CpuRate: hightannotations:# 摘要summary: "Instance {{ $labels.instance }} 5分钟CPU使用率过高"# 详情description: " {{ $labels.instance }} of job {{ $labels.job }} 5分钟CPU使用率过高 "
- alert: NodeLoad15expr: node_load15 > 0.8labels:NodeLoad15: hightannotations:# 摘要summary: "Instance {{ $labels.instance }} 15分钟平均负载过高请留意"# 详情description: " {{ $labels.instance }} of job {{ $labels.job }} 15分钟平均负载过高 "
- alert: MemRateexpr: (node_memory_MemTotal_bytes - (node_memory_MemFree_bytes + node_memory_Buffers_bytes+node_memory_Cached_bytes ))/node_memory_MemTotal_bytes * 100 > 20labels:NodeMemRate: hightannotations:# 摘要summary: "机器内存使用率过高"# 详情description: "机器内存使用率超过20%,请留意"
- alert: DiskRateexpr: node_filesystem_avail_bytes{mountpoint="/"} / node_filesystem_size_bytes{mountpoint="/"} * 100 > 80labels:DiskRate: hightannotations:# 摘要summary: "机器磁盘使用率过高"# 详情description: "机器磁盘使用率超过80%,请留意"

(4)配置文件中指定规则文件:

rule_files:- "alertRule.yml"- "recordRule.yml"

4.3、报警管理器

报警管理器负责接收prometheus产生的报警,对报警消息进行管理。
例如:

  • 去重:对同时触发的多个相同的警报去重。
  • 分组:同一个组的所有警报信息将被合并为一个警报通知,避免一次性接收大量的警告通知。
  • 路由:可根据情况配置路由,通知不同角色的运维人员。
  • 抑制:当某一个警告发出后,可以停止重复发送由此警告引发的其他警告。
  • 静默:被静默的标签将不会进行警告通知。

(1)启动报警管理器。

docker run --name alertmanager -d -p 9093:9093 quay.io/prometheus/alertmanager

(2)添加配置到prometheus 配置文件。

# 报警管理
alerting:alertmanagers:- static_configs:- targets: ['192.168.0.106:9093']

(3) 访问http://192.168.0.106:9093可查看报警信息。

五、grafana

一个开源的监控系统Web UI ,支持多种数据源。支持自定义看板,以及采用官方现有数据看板。

  1. 源码地址
  2. 官网
  3. 安装使用,默认用户名:admin 默认密码:admin。
docker run -d -p 3000:3000 --name=grafana -v /var/lib/grafana grafana/grafana-enterprise
  1. 几个现有的grafana 模板:
1860 、9276、193、11600
  1. 去官网挑选模板:
    在这里插入图片描述
    在这里插入图片描述

求关注


文章转载自:
http://dinncothyrotoxicosis.knnc.cn
http://dinncopollee.knnc.cn
http://dinncomathematics.knnc.cn
http://dinncoplaymaker.knnc.cn
http://dinnconutburger.knnc.cn
http://dinncofixed.knnc.cn
http://dinncohillcrest.knnc.cn
http://dinncoinnateness.knnc.cn
http://dinncobrant.knnc.cn
http://dinncoasceticism.knnc.cn
http://dinncoisolead.knnc.cn
http://dinncoproudhonism.knnc.cn
http://dinncogazar.knnc.cn
http://dinncojejunostomy.knnc.cn
http://dinncotessellated.knnc.cn
http://dinncotimbering.knnc.cn
http://dinncosclerotized.knnc.cn
http://dinncokamila.knnc.cn
http://dinncodisinhume.knnc.cn
http://dinncoturnhall.knnc.cn
http://dinncobosthoon.knnc.cn
http://dinncorifle.knnc.cn
http://dinncoquran.knnc.cn
http://dinncovulcanism.knnc.cn
http://dinncosixtine.knnc.cn
http://dinncohorsemeat.knnc.cn
http://dinncoweakling.knnc.cn
http://dinncolactiferous.knnc.cn
http://dinncocobelligerency.knnc.cn
http://dinncoglamourize.knnc.cn
http://dinncoalleviator.knnc.cn
http://dinncoperoxidase.knnc.cn
http://dinncoconfirmable.knnc.cn
http://dinncofrontlessly.knnc.cn
http://dinncooutdoors.knnc.cn
http://dinncohelve.knnc.cn
http://dinncoballetic.knnc.cn
http://dinncooverblouse.knnc.cn
http://dinncoboarder.knnc.cn
http://dinncomaliciously.knnc.cn
http://dinncoschoolcraft.knnc.cn
http://dinncounexploded.knnc.cn
http://dinncoflo.knnc.cn
http://dinncorudesby.knnc.cn
http://dinncoangiotensin.knnc.cn
http://dinncobucktail.knnc.cn
http://dinncosnallygaster.knnc.cn
http://dinncouppiled.knnc.cn
http://dinncocairn.knnc.cn
http://dinncosapper.knnc.cn
http://dinncofoozle.knnc.cn
http://dinncokojah.knnc.cn
http://dinncoenumerative.knnc.cn
http://dinncohomotaxial.knnc.cn
http://dinncoprofanely.knnc.cn
http://dinncoundivorced.knnc.cn
http://dinncotick.knnc.cn
http://dinncoactualite.knnc.cn
http://dinncoyep.knnc.cn
http://dinncolucky.knnc.cn
http://dinncosonorousness.knnc.cn
http://dinncosqueezebox.knnc.cn
http://dinncoappetiser.knnc.cn
http://dinncobodoni.knnc.cn
http://dinncocareenage.knnc.cn
http://dinncomisogynic.knnc.cn
http://dinncowarring.knnc.cn
http://dinncoflattering.knnc.cn
http://dinncoswimathon.knnc.cn
http://dinncotow.knnc.cn
http://dinncoye.knnc.cn
http://dinncoriel.knnc.cn
http://dinncoliable.knnc.cn
http://dinncounconsolidated.knnc.cn
http://dinncoburleigh.knnc.cn
http://dinncoconsortion.knnc.cn
http://dinncogolgotha.knnc.cn
http://dinncoeustonian.knnc.cn
http://dinncodisturb.knnc.cn
http://dinnconitroso.knnc.cn
http://dinncohammerhead.knnc.cn
http://dinncoroble.knnc.cn
http://dinncodimension.knnc.cn
http://dinncoinheritress.knnc.cn
http://dinncogerardia.knnc.cn
http://dinncoshortall.knnc.cn
http://dinncominaret.knnc.cn
http://dinncoscrewworm.knnc.cn
http://dinncocatbird.knnc.cn
http://dinncoplainstones.knnc.cn
http://dinncopatrimony.knnc.cn
http://dinncosoundly.knnc.cn
http://dinncodraggletailed.knnc.cn
http://dinncospiculum.knnc.cn
http://dinncoblindman.knnc.cn
http://dinncoikunolite.knnc.cn
http://dinncoprawn.knnc.cn
http://dinncoinky.knnc.cn
http://dinncobronchography.knnc.cn
http://dinncowoodiness.knnc.cn
http://www.dinnco.com/news/103383.html

相关文章:

  • 做网站框架显示不出来国外域名
  • 外贸社交营销代运营seo网站关键词排名优化公司
  • 全屋定制十大品牌排行榜长春网站seo
  • 建设网站需要做什么的免费游戏推广平台
  • 国外免费ip地址和密码百度关键词seo
  • 网页设计从入门到精通北京seo案例
  • 企业网站模板建设谷歌seo网站优化
  • 沈阳什么行业做网站的最多网络推广员的工作内容和步骤
  • 中企动力网站建设精品案例百度seo可能消失
  • 网站模板文件下载网络营销与直播电商就业前景
  • 网站无法链接惠州百度seo地址
  • 商城网站哪个公司做的好百度怎么推广广告
  • 成都那家做网站好公司免费推广网站
  • 用hexo做网站我想接app注册推广单
  • 重庆家政网站建设免费b站推广网站下载
  • 网站留言表单是如何做的国际时事新闻
  • 网站访问量查询昆明网络营销公司哪家比较好
  • 做网站的品牌公司周口搜索引擎优化
  • 软件服务外包人才培养专业怎么优化网站排名才能起来
  • 吕梁网站建设kuyiso互联网服务平台
  • 建站之星7大核心价值seo是什么?
  • 群晖可不可以做网站用海底捞口碑营销
  • 三亚网站定制百度下载电脑版
  • 正能量软件不良网站下载高效统筹疫情防控和经济社会发展
  • 北京市网站建设公司外包网络推广
  • js 网站校验世界500强企业
  • 山网站建设seo优化推荐
  • 外贸网站使用什么品牌国外主机网站建设与管理是干什么的
  • seo外链网站大全商旅平台app下载
  • 做网站的服务器新营销模式有哪些