我正在使用 aws boto3 lib 并嘗試檢索某些值。我首先檢索所有集群串列,然后獲取特定服務,然后為它們呼叫 describe-service。但我無法檢索顯示在 Auto Scaling 選項卡下的 AWS ECS 控制臺頁面上的服務的最小任務和最大任務兩個欄位。
有人知道如何從中獲取這些值嗎?
uj5u.com熱心網友回復:
ECS 控制臺隱藏了這一事實,但這些實際上是在 Application AutoScaling 配置中,而不是 ECS 配置中。我相信您需要呼叫ApplicationAutoScalingdescribe_scalable_targets來獲取這些值。
uj5u.com熱心網友回復:
感謝馬克 B的幫助。你是對的,我知道 aws ecs 服務必須注冊自動縮放服務,這是一項單獨的服務。我現在提供示例 cli 和 python 代碼來檢索這些值。
aws ecs describe-services --cluster MAGIC-Bonus-Wrappers --services service-name
aws application-autoscaling describe-scalable-targets --service-namespace ecs --resource-ids service/cluster-name/service-name
蟒蛇代碼:
client = session.client('application-autoscaling')
response = client.describe_scalable_targets(
ServiceNamespace='ecs',
ResourceIds=[serviceId])
def_val = -1, -1
if "ScalableTargets" in response and len(response['ScalableTargets']) > 0 :
target = response['ScalableTargets'][0]
if 'MinCapacity' in target and 'MaxCapacity' in target:
return target['MinCapacity'], target['MaxCapacity']
else:
return def_val
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/415546.html
標籤:
