Prometheus是一个开源的系统监控和报警工具包,服务商通过模板或手动创建一个Prometheus实例,计算巢会通过Prometheus实例依据计量项调用不同的PromQL语句执行,将获取的返回值作为上报数据值推送至云市场。
使用说明
推送频次:1次/小时。
服务类型:全托管服务。
适用场景:ECS部署与ACK部署场景。
支持计量项:Unit、Memory、VirtualCpu、NetworkIn、NetworkOut。
操作步骤
开启Prometheus上报,需要创建Prometheus实例以及在计算巢中配置计量项上报源为Prometheus。
步骤一:创建Prometheus实例
需要创建Prometheus实例,计算巢才可通过此实例采集数据,计算巢支持ECS与ACK部署场景。
ACK场景
新建ACK
开启Prometheus组件,在模板Resources
中添加资源ALIYUN::CS::ManagedKubernetesCluster
中的Addons
参数Name:arms-prometheus
。
ManagedKubernetesCluster:
Type: ALIYUN::CS::ManagedKubernetesCluster
Properties:
……
Addons:
- Name: arms-prometheus
……
已有ACK
开启Prometheus组件。
进入集群详情页并单击左侧运维管理。
单击Prometheus监控,并单击开始安装。
ECS场景
新建VPC
新建VPC场景需要同步新建Prometheus
实例。模板中需要创建资源ALIYUN::ARMS::Environment
、ALIYUN::ARMS::AddonRelease
、ALIYUN::ARMS::EnvironmentFeature
。
Resources:
VPC: // 新建的VPC
……
Environment:
Type: ALIYUN::ARMS::Environment
Properties:
ManagedType: agent-exporter
EnvironmentSubType: ECS
EnvironmentName:
Ref: ALIYUN::StackName
BindResourceId:
Ref: Vpc
EnvironmentType: ECS
AddonRelease:
DependsOn: Environment
Type: ALIYUN::ARMS::AddonRelease
Properties:
EnvironmentId:
Ref: Environment
Name: ecs-node-exporter
AddonVersion: 1.6.1
Values: '{"install":{"mode":"auto-install","processExporter":{"enable":true},"listenPort":9100},"discoverMode":"none","collectTextFile":"","scrapeInterval":"15","enableSecurityGroupInjection":true,"metricTags":"serviceInstanceId"}'
EnvironmentFeature:
DependsOn: AddonRelease
Type: ALIYUN::ARMS::EnvironmentFeature
Properties:
EnvironmentId:
Ref: Environment
FeatureVersion: 1.1.17
FeatureName: metric-agent
已有VPC
已有VPC场景,除了在计算巢中配置VPC参数映射外,还需要手动创建Prometheus实例。
在配置信息部分,填写接入名称,主机服务发现方式选择无条件,自定义ECS Tag注入写入
serviceInstanceId
,单击确定即可创建完成。
步骤二:配置上报源
配置计量项
说明对于Unit计量项,可以选择平均Pod数(ACK场景)或自定义指标(ECS/ACK场景)中的一种指标。若选择自定义指标,则需要输入自定义的PromQL语句,计算巢将读取此语句,并替换
namespace/serviceInstancename
收集计量数据,具体请参见PromQL语句,请确保自定义语句的准确性。登录计算巢控制台。
前往服务详情,单击售卖配置。
在计量项配置区块单击修改上报方式,对需要开启Prometheus的计量项区块中单击修改上报方式。
在弹框中选择计算巢上报,并在上报源选择Proemtehus。
绑定计量项
返回售卖配置页面。
在计量项绑定区块单击编辑,绑定需要上报的计量项。