Kubernetes Metrics Server
插件介绍
从Kubernetes 1.8开始,Kubernetes通过Metrics API提供资源使用指标,例如容器CPU和内存使用率。这些度量可以由用户直接访问(例如,通过使用kubectl top命令),或者由集群中的控制器(例如,Horizontal Pod Autoscaler)使用来进行决策,具体的组件为Metrics-Server,用来替换之前的heapster,heapster从1.11开始逐渐被废弃。
字段说明
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
description | 否 | String | 插件相关的描述信息 |
name | 是 | String | 插件规格名称,固定为:Single-instance |
replicas | 是 | String | 实例数,默认为:1 |
resources | 是 | resources object | 容器资源(CPU、内存)配额。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
multiAZBalance | 否 | Bool | 多可用区部署模式是否为均分模式,开启后将使用均分模式部署 |
multiAZEnabled | 否 | Bool | 是否多可用区部署,默认为false,如果为true,则强制跨可用区部署,若为false,则优先跨可用区部署。 |
tolerations | 否 | List<Object> 表6 tolerations污点 | 插件的污点容忍策略 |
node_match_expressions | 否 | List<Object> 表7 nodeMatchExpression | 插件的节点亲和配置 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
limitsCpu | 是 | String | CPU大小限制,单位:m |
limitsMem | 是 | String | 内存大小限制,单位:Mi |
name | 是 | String | 插件名称,固定为:metrics-server |
requestsCpu | 是 | String | 申请的CPU大小,单位:m |
requestsMem | 是 | String | 申请的内存大小,单位:Mi |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
key | 否 | String | 污点键 |
effect | 否 | String | 污点策略 |
operator | 否 | String | 操作符 |
tolerationSeconds | 否 | Int | 容忍时间窗 |
请求示例
{
"kind": "Addon",
"apiVersion": "v3",
"metadata": {
"annotations": {
"addon.install/type": "install"
}
},
"spec": {
"clusterID": "b78fb690-b82c-11ee-83cf-0255ac100b0f",
"version": "1.3.39",
"addonTemplateName": "metrics-server",
"values": {
"basic": {
"image_version": "v0.6.2",
"swr_addr": "***",
"swr_user": "***",
"rbac_enabled": true,
"cluster_version": "v1.23"
},
"flavor": {
"description": "Has only one instance",
"name": "Single",
"replicas": 1,
"resources": [
{
"limitsCpu": "1000m",
"limitsMem": "1000Mi",
"name": "metrics-server",
"requestsCpu": "100m",
"requestsMem": "300Mi"
}
],
"category": [
"CCE",
"Turbo"
]
},
"custom": {
"annotations": {},
"multiAZBalance": false,
"multiAZEnabled": false,
"node_match_expressions": [],
"tolerations": [
{
"key": "node.kubernetes.io/not-ready",
"operator": "Exists",
"effect": "NoExecute",
"tolerationSeconds": 60
},
{
"key": "node.kubernetes.io/unreachable",
"operator": "Exists",
"effect": "NoExecute",
"tolerationSeconds": 60
}
]
}
}
}
} 
