Работа с AWS ELB через командную строку в Unix/Linux
AWS CLI — это консольная утилита которая позволяет работать с AWS ELB через командную строку. Я хотел бы сделать заметку о том как работать AWS ELB в консоле.
Работа с AWS ELB через командную строку в Unix/Linux
Устанавливаем AWS CLI:
Установка AWS CLI в Unix/Linux
Открываем конфиг:
# vim ~/.aws/credentials
Прописываем ключи. Например:
[Your_acc_name] aws_access_key_id = XXXXXXXXXXXXXXXXXXXXXXXXX aws_secret_access_key = YYYYYYYYYYYYYYYYYYYY
Где:
- Your_acc_name — Имя для аккаунта. Потом можно его использовать.
- aws_access_key_id — Ключик.
- aws_secret_access_key — Еще один ключик.
Создание, удаление я не выполнял еще. А вот просмотр данных — это да. Сейчас я покажу некоторые примеры использования.
Проверим что содержится во всех LB по определенному аккаунту:
$ aws elb describe-load-balancers --profile Your_acc_name --region us-east-1 --output text
ИЛИ:
$ aws elb describe-load-balancers --profile Your_acc_name --region us-east-1 --output json
Для того, чтобы получить имена всех ELB, выполните:
$ aws elb describe-load-balancers --profile Your_acc_name --region us-east-1 | grep -E "LoadBalancerName"
Проверим что имеется в определенном ELB:
$ aws elb describe-load-balancers --profile Your_acc_name --region us-east-1 --load-balancer-name My_ELB_name
Иногда, выпадают ноды из кластера и чтобы проверить статус хелса всех нод в кластере ELB ( нужно знать имя. Я в верху описывал как получить его):
$ aws elb describe-instance-health --profile Your_acc_name --region us-east-1 --output text --load-balancer-name My_ELB_name INSTANCESTATES N/A i-02eb2e3a74dc8755b N/A InService INSTANCESTATES N/A i-03e2bf392cf4d65e6 N/A InService INSTANCESTATES N/A i-041101b6ade745211 N/A InService INSTANCESTATES N/A i-05dd40ff3e5c566db N/A InService INSTANCESTATES N/A i-088bad3a48ac31542 N/A InService INSTANCESTATES N/A i-08e1958dfd3df0989 N/A OutService INSTANCESTATES N/A i-09d6cb51aaadbc909 N/A InService INSTANCESTATES N/A i-0be24594ebc5c3522 N/A InService INSTANCESTATES N/A i-0e00a72a7a6ec154e N/A InService INSTANCESTATES N/A i-0f7a57e6bc0024d31 N/A InService
Я указал какой регион использовать:
--region us-east-1
Можно добавить данную опцию в конфигурационный файл, например:
[Your_acc_name] aws_access_key_id = XXXXXXXXXXXXXXXXXXXXXXXXX aws_secret_access_key = YYYYYYYYYYYYYYYYYYYY region=us-east-1
Тогда, можно будет выполнять:
$ aws elb describe-instance-health --profile Your_acc_name --output text --load-balancer-name My_ELB_name
Предположим, что необходимо убрать одну из нод в ELB кластере, то выполнить это можно так:
$ aws elb deregister-instances-from-load-balancer --profile Your_acc_name --load-balancer-name My_ELB_name --instances i-08e1958dfd3df0989
Предположим, что необходимо добавить еще одну ноду в ELB кластер, то выполнить это можно так:
$ aws elb register-instances-with-load-balancer --profile Your_acc_name --load-balancer-name My_ELB_name --instances i-08e1958dfd3df0989
PS: Возможно, потребуется указать региона, например:
--region us-east-1
На этом у меня все, статья «Работа с AWS ELB через командную строку в Unix/Linux» завершена.