Поиск по сайту:

Как установить и настроить интерфейс командной строки AWS


AWS предоставляет обширный интерфейс командной строки, обеспечивающий доступ ко всем предлагаемым сервисам. Вы можете использовать это на удаленных компьютерах, чтобы предоставить им доступ к определенным функциям вашей учетной записи, или на своем персональном компьютере, чтобы помочь в администрировании вашей инфраструктуры.

Установите Python и пип

Интерфейс командной строки AWS работает на Python, поэтому вам необходимо установить его вместе с соответствующим менеджером пакетов pip. Есть версия для Python 2.6.5 и выше и отдельная версия для Python 3.3 и выше. Вероятно, вы захотите установить Python 3:

python3 --version

Если у вас его нет, вы можете загрузить последнюю версию для Windows или установить ее из диспетчера пакетов в Linux:

sudo apt install python3.7

В macOS Python 3 доступен в brew.

pip, вероятно, установлен вместе с Python, но если это не так, вы можете скачать скрипт установки:

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py

Установите интерфейс командной строки AWS из pip

После установки Python вы можете загрузить и установить интерфейс командной строки AWS из pip3:

pip3 install awscli --upgrade --user

Убедитесь, что установка прошла успешно:

aws --version

Если команда не работает, вам может потребоваться добавить папку, в которой находится Python, в PATH:

ls -al $(which python3)

Настройка интерфейса командной строки AWS с помощью пользователя IAM

Пользователи IAM — это лучший способ управления доступом к учетной записи в AWS. Вместо того, чтобы использовать ключ доступа к корневой учетной записи (что опасно, особенно на удаленных серверах), вы вместо этого создаете новую «учетную запись пользователя» с разрешениями для выполнения необходимой работы. Например, если у вас есть сервер, которому необходимо загружать контент на S3, нет причин давать ему разрешение на запуск новых экземпляров EC2, поэтому вы должны создать для этого отдельного пользователя IAM.

Если вы просто устанавливаете интерфейс командной строки AWS на свой персональный компьютер, можно предоставить пользователю IAM полный административный доступ, поскольку он у вас все равно будет. AWS на самом деле рекомендует это вместо использования вашей учетной записи root для всего. Имейте в виду, однако, что если вы включили двухфакторную аутентификацию для своей учетной записи AWS, любой, у кого есть ваш ключ доступа IAM администратора, может обойти ваш брелок. Но эти ключи будут заблокированы на вашем персональном компьютере, поэтому это не большая проблема, если вы держите их в безопасности.

Перейдите в консоль управления IAM и нажмите на вкладку «Пользователи». Отсюда добавьте нового пользователя для использования CLI:

Дайте ему имя и обязательно установите тип доступа «Программный доступ», который дает вам идентификатор ключа доступа и секретный ключ доступа, необходимые для работы CLI.

Нажмите «Далее», и вам будет предложено определить разрешения для вашего пользователя IAM. Лучше всего управлять разрешениями с помощью групп, поэтому создайте новую группу под названием «Администратор» и добавьте политику «AdministratorAccess» в качестве разрешения:

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

Далее вас попросят указать теги. Они используются для организации пользователей IAM в более крупных организациях; вы можете пропустить этот шаг или просто написать «admin» в одном из них.

Нажмите, чтобы создать своего пользователя, и вы попадете на этот экран, показывающий ваш идентификатор ключа доступа и секретный ключ доступа:

Вы можете скачать их в виде файла .csv для безопасного хранения, но оставьте вкладку открытой, чтобы вы могли настроить интерфейс командной строки с помощью этого ключа.

Свяжите CLI с вашей учетной записью

Когда ваш ключ доступа будет готов к работе, выполните следующую команду:

aws configure

Вам будет предложено ввести идентификатор ключа доступа и секретный ключ доступа; вставьте их.

Вас также спросят здесь об имени вашего региона по умолчанию — вы определенно захотите установить его здесь, чтобы предотвратить головную боль от каждой команды, запрашивающей флаг --region . Имейте в виду, что ваш регион включает только местоположение и один номер (например, «us-east-2»), а не конечную букву, включенную в идентификатор зоны доступности (например, «us -восток-2c“). Команды не будут выполняться, если это установлено неправильно, но вы всегда можете повторно запустить aws configure, чтобы установить его снова в будущем.

После привязки вашей учетной записи все настроено и готово к использованию интерфейса командной строки AWS. Убедитесь, что он правильно связан, перечислив свои экземпляры EC2:

aws ec2 describe-instances

Это должно вывести массив JSON со списком всех запущенных экземпляров EC2. Интерфейс командной строки AWS выводит много JSON, поэтому сейчас самое время установить и изучить jq для работы с JSON в командной строке.