实操案例:使用Prometheus Operator进行集群监控

据Sysdig发布的容器报告,容器以及如Kubernetes等编排工具的使用增长了51%以上,大家开始将工作负载在集群中进行托管并管理。鉴于集群中短暂的状态,对于端到端的集群有一个十分重要的需求,即能够详细监控节点、容器以及pod。

IT工程师需要管理应用程序、集群(节点和数据),并且需要减少手动配置service、目标和数据存储的工作量,同时在应用程序每次关闭和返回时进行监控。这就需要一个无缝部署以及管理高可用监控系统(如Prometheus),其中可以与Operator一起处理抓取目标的动态配置、服务发现以及用于告警集群中各种目标的配置规则。同时,使用Operator模式编写代码以减少人工干预。

本文,我们将关注Prometheus Operator是如何工作的,service monitor在Prometheus Operator中是如何发现目标和获取指标的。

在集群监控中Prometheus Operator所扮演的角色

  • 能够使用原生Kubernetes配置选项无缝安装Prometheus Operator

  • 能够在Kubernetes命名空间中创建和摧毁一个Prometheus实例,某个特定的应用程序或者团队能够轻松地使用Operator

  • 能够预配置配置文件,包括Kubernetes资源的版本、持久性、保留策略和replica

  • 能够使用标签发现目标service,并根据熟悉的Kubernetes标签查询自动生成监控目标配置。

例如:当pod /service销毁并返回时,Prometheus Operator可以自动创建新的配置文件,无需人工干预。

在Operator模式下所需的组件

  • Custom Resource Definition(CRD):创建一个新的自定义资源,包括可指定的名称和模式,无需任何编程。Kubernetes API提供和处理自定义资源的存储。

  • 自定义资源:扩展Kubernetes API或允许将自定义API引入kubernetes集群的对象。

  • 自定义控制器:以新的方式处理内置的Kubernetes对象,如Deployment、Service等,或管理自定义资源,如同管理本机Kubernetes组件

  • Operator模式(适用于CRD和自定义控制器):Operator基于Kubernetes资源和控制器增加了允许Operator执行常见应用程序任务的配置。

Operator的工作流程

Operator在后台执行以下操作以管理自定义资源:

1、CRD创建:CRD定义规范和元数据,基于该规范和元数据应创建自定义资源。当创建CRD的请求时,使用Kubernetes内部模式类型(OpenAPI v3模式)验证元数据,然后创建自定义资源定义(CRD)对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值