摘要:
consul 作用与zookeeper一样,提供服务注册、服务发现、配置中心 每个运行consul的节点为一个agent,可以是client或server模式,每个数据中心必须拥有至少一台server来保存consul集群状态信息,建议在生产环境 使用systemd启动时,需设置为Type=noti 阅读全文
摘要:
监控方法论: 监控系统组件: 指标数据采集 指标数据存储 指标数据去世分析及可视化 告警 监控体系: 系统层: 系统:cpu、load、内存、swap、磁盘io、进程数、 网络:网络设备、负载、延迟、丢包率 中间件: 消息中间件: kafka、mq web服务容器: tomcat、jetty 数据库 阅读全文
摘要:
prometheus数据存储: 本地存储: 默认使用本地tsdb存数据,每个采样数据仅占:3.5b左右 百万条时间序列,30s的间隔,保留60天,占用200多G空间 tsdb路径: /data/ 数据写入过程中,先把数据写入到wal日志(用于数据恢复),并放在内存,2小时后将内存数据存到新的bloc 阅读全文
摘要:
pushgateway 采用被动推送的方式,需要自定义监控脚本,把需要监控的数据主动推给pushgateway的api,然后pushgateway等待普罗米修斯抓取数据 默认数据存储在内存中 普罗米修斯配置pushgateway与普通exporter一样 github: https://github 阅读全文
摘要:
prometheus联邦集群 在多个数据中心部署prometheus server,最后在一个中心prometheus server进行数据聚合(只用抓取3个prometheus server的数据即可) 在大规模集群中,可用于指标分类, 中心prometheus配置: scrape_configs 阅读全文
摘要:
标签重新打标: 指标抓取的生命周期: 服务发现: 每个scrape_interval期间,prom会检查执行的job 会根据job指定的发现配置生成target列表(服务发现过程) 服务发现会返回一个Target列表,其中包含一组称为元数据的标签,这些标签都以“\_\__meta__”为前缀(每个服 阅读全文
摘要:
服务发现: 小型环境静态配置即可,大型环境必须使用服务发现 官方文档: https://prometheus.io/docs/prometheus/latest/configuration/configuration/ 基于文件的服务发现: 仅优先于静态配置的服务发现 prom定期从文件中加载tar 阅读全文
摘要:
altermanager: 报警组件 github: https://github.com/prometheus/alertmanager/tags 端口: 9093 通信端口 9094 集群端口 报警过程: pro采集数据-->触发-->alertmanager-->分组、抑制、静默-->媒介类型 阅读全文
摘要:
exporter: prometheus的指标暴露器,在各个被监控节点运行,采集数据,等待promtheus主服务来拉取数据 官方exporter: https://prometheus.io/download/ 其他exporter: https://prometheus.io/docs/inst 阅读全文
摘要:
PromQL语句: promql是内置的数据查询语言,使用表达式来查询 根据指标和标签,以及时间范围,表达式的查询可覆盖在一个时间序列,或只包含单个时间序列的单个样本 采集的数据是float64格式,毫秒精度的时间戳 采集cadvisor指标的语句: https://www.iteye.com/bl 阅读全文
摘要:
普罗米修斯配置文件 配置文件: 主文件语法: global: scrape_interval: 15s #每隔15s抓取一次数据,默认1m scrape_timeout: 10s #抓取超时时间,默认10s evaluation_interval: 15s #定期评估警报规则是否满足触发条件。如果满 阅读全文
摘要:
promtheus命令: -h --config.file="prometheus.yml" #指定配置文件路径 --version #显示版本 --web.listen-address=":9090" #指定web监听端口 --web.config.file="" #可以启用TLS或身份验证的配置 阅读全文
摘要:
Prometheus: 在k8s集群中,采用metrics server方式监控核心指标,其他监控由普罗米修斯完成 go语言开发,cncf的毕业项目 可结合PushGateway、Altermanager、Grafana成完整的itg监控系统 所有被监控的指标数据叫target 负责时序型指标数据的 阅读全文
摘要:
k8s命令行插件 通过kubectl可以直接调用的插件 2种实现方法: 独立执行文件,可写脚本,命名必须是: kubectl-插件 krew插件管理工具,由k8s社区维护 官方插件开发案例: https://github.com/kubernetes/sample-cli-plugin K8s命令行 阅读全文
摘要:
kube-state-metrics指标暴露器 监听k8s的api-server。生成有关资源对象的状态指标,如deploy、node、pod的副本状态,调度了多少次,可用pod是几个,多少job在运行 kube-state-metrics不存储数据,抓取一次显示一次,需要交给prometheus存 阅读全文
摘要:
jenkins+gitlab+harbor实现k8s CI/CD 主机 说明 2.2.2.15 jenkins和gitlab(虚拟机运行)、harbor(docker运行)、k8s控制节点 2.2.2.25 k8s node节点 2.2.2.35 k8s node节点 版本说明: docker:20 阅读全文
摘要:
k8s挂载ceph存储 例1:使用配置文件挂载rbd 1)ceph创建rbd存储池及用户 #创建存储池 ceph osd pool create k8s-rbd 32 32 ceph osd pool application enable k8s-rbd rbd rbd pool init -p k 阅读全文