Prometheus监控k8s集群

Prometheus

Prometheus是什么?Prometheus是由SoundCloud开发的开源监控报警系统和时序列数据库(TSDB)。Prometheus使用Go语言开发,是Google BorgMon监控系统的开源版本。

prometheus结构图如下:


architecture.png

Prometheus Operator

prometheus Operator 可以在 Kubernetes 中创建、配置和管理 Prometheus 集群。这个 Chart 包括了多种组件以用于不同的用途。


微信截图_20191016105303.png

默认安装会监控安装这个 chart 的 kubernetes 集群。它与 kube-prometheus 项目紧密相关。

基础条件

  • Kubernetes 1.10+ with Beta APIs
  • Helm 2.10+
  • 对于版本高于 0.18.0 的 Prometheus Operator 要求 Kubernetes 集群版本高于 1.8.0。如果你才开始使用 Prometheus Operator,推荐你使用最新版。

组件

1. 必须的组件:

组件 功能描述
prometheus-operator 可以非常简单的在kubernetes集群中部署Prometheus服务,并且提供对kubernetes集群的监控,并且可以配置和管理prometheus
prometheus 监控告警工具
alertmanager 用于接收 Prometheus 发送的告警信息,它支持丰富的告警通知渠道,而且很容易做到告警信息进行去重,降噪,分组等,是一款前卫的告警通知系统。
node-exporter 用于采集服务器层面的运行指标,包括机器的loadavg、filesystem、meminfo等基础监控,类似于传统主机监控维度的zabbix-agent
kube-state-metrics 轮询Kubernetes API,并将Kubernetes的结构化信息转换为metrics
grafana 用于大规模指标数据的可视化展现,是网络架构和应用分析中最流行的时序数据展示工具

2.可选的组件:

组件 功能介绍
mysqld_exporter 监控数据库的工具
redis_exporter 监控redis的工具
cadvisor 监控docker容器运行状态

安装 Chart

通过安装一个版本名为 my-release 的 chart:

helm install --name my-release c7n/prometheus-operator

这会在集群中安装一个默认配置的 prometheus-operator。这份配置文件列出了安装过程中可以配置的选项。

默认会安装 Prometheus Operator, Alertmanager, Grafana。并且会抓取集群的基本信息
安装部署后,通过value.yaml中配置的ingress的域名即可直接访问Grafana界面。查看指定集群的监控信息

配置信息

下面列出 Prometheus Operator 常用可配置的参数,其他配置参考官方文档

  • 注:以下以replacement结尾的配置参数 : 为唯一标识采集数据的集群名称(如:staging,uat)

3.Prometheus

参数 描述 必填
prometheus.ingress.hosts Prometheus 的域名(没有做权限认证,非必须暴露) true
prometheus.ingress.paths Prometheus 的 路径 true
prometheus.prometheusSpec.storageSpec.volumeClaimTemplate.spec.storageClassName 指定集群中已经创建的 storageClass(4.1进行创建storageclass说明) true
prometheus.serviceMonitor.relabelings 实例收集的 relabel_configs,需要修改 cluster 标签的replacement 为目标集群名(如:uat,staging) true

4.Grafana

参数 描述 必填
grafana.adminPassword 登录grafana UI的管理员密码 true
grafana.ingress.hosts Grafana 的 域名 true
grafana.grafana.ini.server.root_url grafana自身的配置,即为grafana域名(如:http://grafana.staging.saas.hand-china.com) true
grafana.grafana.ini.auth.generic_oauth.auth_url 权限服务器授权地址(如:http://api.staging.saas.hand-china.com/oauth/oauth/authorize true
grafana.grafana.ini.auth.generic_oauth.token_url 权限服务器获取token(如:http://api.staging.saas.hand-china.com/oauth/oauth/token true
grafana.grafana.ini.auth.generic_oauth.api_url 权限服务器api地址(如:http://api.staging.saas.hand-china.com/iam/v1/users/self true
grafana.persistence.storageClassName grafana 存储定义,指定集群中已经创建的 storageClass(4.1进行创建storageclass说明) true
grafana.serviceMonitor.relabelings grafana 实例收集的 relabel_configs 配置,需要修改 cluster 标签的replacement 为目标集群名(如:uat,staging) true

4.1创建storageClass需配置参数说明

参数 描述 必填
storageClass.name 定义storageClass的名称 true
persistence.nfsServer NFS 服务器IP(需要提前配置好 NFS 服务器,如:127.0.0.1) true
persistence.nfsPath 挂载文件夹路径(如:/nfs-client-provisioner) true

5.Alertmanager

参数 描述 必填
alertmanager.ingress.hosts 设置Alertmanager 的域名(没有做权限认证,非必须暴露) true
alertmanager.ingress.paths 设置 Alertmanager 的 路径 true
alertmanager.alertmanagerSpec.storage.volumeClaimTemplate.spec.storageClassName 指定集群中已经创建的 storageClass(4.1进行创建storageclass说明) true
alertmanager.serviceMonitor.relabelings alertmanager 实例收集的 relabel_configs,需要修改 cluster 标签的replacement 为目标集群名(如:uat,staging) true

6. Exports

参数 描述 必填
kubeApiServer.serviceMonitor.relabelings.replacement 实例收集的 relabel_configs,需要修改 cluster 标签的replacement 为目标集群名(如:uat,staging) true
kubelet.serviceMonitor.relabelings 实例收集的 relabel_configs,需要修改 cluster 标签的replacement 为目标集群名(如:uat,staging) true
kubelet.serviceMonitor.cAdvisorRelabelings 实例收集的 relabel_configs,需要修改 cluster 标签的replacement 为目标集群名(如:uat,staging) true
kubeControllermanager.serviceMonitor.relabelings 实例收集的 relabel_configs,需要修改 cluster 标签的replacement 为目标集群名(如:uat,staging) true
coreDns.serviceMonitor.relabelings 实例收集的 relabel_configs,需要修改 cluster 标签的replacement 为目标集群名(如:uat,staging) true
kubeDns.serviceMonitor.relabelings 实例收集的 relabel_configs,需要修改 cluster 标签的replacement 为目标集群名(如:uat,staging) true
kubeScheduler.serviceMonitor.relabelings 实例收集的 relabel_configs,需要修改 cluster 标签的replacement 为目标集群名 (如:uat,staging) true
kubeProxy.serviceMonitor.relabelings 实例收集的 relabel_configs,需要修改 cluster 标签的replacement 为目标集群名(如:uat,staging) true
kubeStateMetrics.serviceMonitor.relabelings 实例收集的 relabel_configs,需要修改 cluster 标签的replacement 为目标集群名(如:uat,staging) true
nodeExporter.serviceMonitor.relabelings 实例收集的 relabel_configs,需要修改 cluster 标签的replacement 为目标集群名(如:uat,staging) true
prometheusOperator.serviceMonitor.relabelings 实例收集的 relabel_configs,需要修改 cluster 标签的replacement 为目标集群名(如:uat,staging) true
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,386评论 6 479
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,939评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,851评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,953评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,971评论 5 369
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,784评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,126评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,765评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,148评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,744评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,858评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,479评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,080评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,053评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,278评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,245评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,590评论 2 343

推荐阅读更多精彩内容