У мене є сценарій python boto3, який робить ff:
- створити список завдань зі статусом "РАБОТИ" для послуги через
ecs_client.list_tasks(cluster=mycluster,serviceName=myservice,desiredStatus='RUNNING')
- зробіть цикл for для списку завдань, описаних вище, і зупиніть кожну програму via
ecs_client.stop_task(cluster=mycluster,task=mytask)
- опишіть службу, щоб отримати RunCount та бажанийCount
ecs_client.describe_services(cluster=mycluster,services=[myservice])
- при цьому цикл, якщо runCount <desireCount - означає, що завдання наразі зупинено і ще не замінено, тому не зупиняйте наступне завдання ще!
while myservice['services'][0]['runningCount'] < myservice['services'][0]['desiredCount']:
Якщо цикл while вже не відповідає дійсності - значить, і кількість запущених, і бажаних підрахунків рівні, зупиніть наступне завдання у списку.
Це фактичний потік, і я не в змозі показати фактичний код, оскільки я все ще працюю на своїй поточній роботі, і весь мій код належить їм :)