监控 Amazon EMR on EKS 的垂直自动扩展
您可以使用 kubectl Kubernetes 命令行工具列出集群上与垂直自动扩缩相关的有效建议。您还可以查看跟踪的任务签名,清除与签名关联的所有不需要的资源。
列出集群的垂直自动扩展建议
使用 kubectl 获取 verticalpodautoscaler
资源,查看当前状态和建议。以下示例查询返回 Amazon EKS 集群上的所有活跃资源。
kubectl get verticalpodautoscalers \ -o custom-columns="NAME:.metadata.name,"\ "SIGNATURE:.metadata.labels.emr-containers\.amazonaws\.com/dynamic\.sizing\.signature,"\ "MODE:.spec.updatePolicy.updateMode,"\ "MEM:.status.recommendation.containerRecommendations[0].target.memory" \ --all-namespaces
此查询的输出类似以下内容:
NAME SIGNATURE MODE MEM
ds-example-id-1
-vpa job-signature-1
Off none
ds-example-id-2
-vpa job-signature-2
Initial 12936384283
查询并删除集群的垂直自动扩展建议
删除 Amazon EMR 垂直自动扩展任务运行资源时,也会自动删除跟踪和存储建议的关联 VPA 对象。
以下示例使用 kubectl 清除由签名标识的任务的建议:
kubectl delete jobrun -n emr -l=emr-containers\.amazonaws\.com/dynamic\.sizing\.signature=integ-test jobrun.dynamicsizing.emr.services.k8s.aws "ds-
job-signature
" deleted
如果不知道具体的任务签名,或者想要清除集群上的所有资源,则可以在命令中使用 --all
或 --all-namespaces
代替唯一的任务 ID,示例如下:
kubectl delete jobruns --all --all-namespaces jobrun.dynamicsizing.emr.services.k8s.aws "ds-
example-id
" deleted