2016-02-24 6 views
0

Я пытаюсь опросить текущие члены группы масштабирования AWS, чтобы я мог увеличить значение в моем коде. Мне нужно уметь назначать рабочие процессы на основе количества активных членов. Я создал скрипт, который выполняется под rc.local на нового члена группы масштабирования:Группа масштабирования опроса AWS во время загрузки

for ((i=0; i<20; i++)); do 
    OUT=$(aws autoscaling describe-auto-scaling-instances --query AutoScalingInstances[].InstanceId | wc -l) 
    echo "Output is $OUT" >> /tmp/ec2log 
    echo "Waiting for a response...." >> /tmp/ec2log 
    ping -c 5 127.0.0.1 &> /dev/null # Wait for a bit before retrying 
done 

Моя проблема (и причина, почему я зацикливание по команде), что AWS CLI не похоже, реагируют на мои первоначальные запросы.

Как передать текущее количество серверов в моей группе масштабирования на новый сервер, добавленный в эту группу?

+1

это, вероятно, возможно, но я считаю, что вы ошибаетесь. автомасштабирование должно изменить количество экземпляров, чтобы приспособить рабочую нагрузку, которая у вас другая. У вас должно быть фиксированное количество работников на один экземпляр и увеличиваться, когда ваши работники не смогут идти в ногу и уменьшаться, когда у вас слишком много праздных работников. – Mircea

ответ

2

Сеть может не работать при запуске этого сценария, поэтому aws cli не отвечает, и ваш сценарий должен называть exit 0 успешным. Неправильно выполнять свой скрипт в rc.local, поскольку он выполняется в конце каждого уровня выполнения.

Я бы назвал aws autoscaling описать-авто-масштабирование-экземпляры --область us-east-1 -query AutoScalingInstances []. InstanceId --outout text | wc -w в вашем коде, чтобы получить количество членов группы автомасштабирования.

rc.local

#

Этот сценарий выполняется в конце каждого многопользовательского запуска.

Убедитесь, что сценарий будет «выход 0» на успех или любое другое значение

по ошибке.

+0

Хороший звонок ... Я собираюсь включить это с помощью сценария запуска для запуска моего приложения – user3063045

Смежные вопросы