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