Что такое AWS CLI и как установить в Windows, macOS, Docker и Linux?
Опубликовано: 2021-06-03Интерфейс командной строки AWS или CLI - это набор инструментов с открытым исходным кодом, который позволяет управлять сервисами AWS и автоматизировать их с помощью команд.
AWS CLI поддерживает несколько платформ, таких как Windows, Linux и macOS, и обеспечивает прямой доступ к общедоступным API для AWS. Более того, автоматизация утомительных инфраструктурных задач легко возможна в среде CLI.
Версии интерфейса командной строки AWS
AWS CLI имеет две основные версии, т. Е. Версию 1.x, которая доступна для обратной совместимости, а версия 2.x является текущим общедоступным выпуском и предназначена для производственного использования. Он не полностью обратно совместим, поэтому скрипты, использующие версию 1 интерфейса командной строки AWS, могут быть несовместимы с версией 2.
Установить AWS CLI
Здесь мы рассмотрим установку AWS CLI на разных платформах. Поскольку версия 2.x является общедоступным выпуском, доступным на момент написания этой статьи, мы рассмотрим только ее установку.
Linux
Официальный метод установки AWS CLI в системах на базе Linux доступен через ZIP-пакет. Для этого требуется 64-битная система Linux / ARM и предполагается, что в системе уже установлены и доступны для использования unzip , glibc , groff и less пакетов. Поддерживаются все основные дистрибутивы Linux, такие как CentOS, Fedora, Ubuntu и Amazon Linux.
Чтобы установить последнюю версию AWS CLI в Linux x86 (64-разрядная версия), используйте следующие команды:
$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" unzip awscliv2.zip sudo ./aws/installЧтобы подтвердить успешную установку, запустите:
$ aws --version aws-cli/2.2.5 Python/3.8.8 Linux/4.14.133-113.105.amzn2.x86_64 botocore/2.0.0macOS
Установка AWS CLI для macOS официально предлагается как в графическом интерфейсе, так и в методах CLI. Чтобы использовать графический интерфейс, загрузите последнюю версию пакета AWS CLI по следующей ссылке: https://awscli.amazonaws.com/AWSCLIV2.pkg и дважды щелкните загруженный пакет, чтобы запустить установщик.
Следуйте инструкциям на экране, чтобы завершить установку. Большинство параметров можно оставить по умолчанию для обычных требований установки.
Если вы хотите установить с помощью интерфейса командной строки, при появлении новой проблемы с терминалом ниже приведены команды для загрузки и установки последней версии интерфейса командной строки AWS:
$ curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg" $ sudo installer -pkg AWSCLIV2.pkg -target / Команда sudo в приведенной выше команде необходима, если вы планируете установить ее в масштабе всей системы. Если вы хотите установить как локальный пользователь без прав администратора, есть простой официальный обходной путь.
Вам необходимо создать XML файл, в котором будет /Users/myusername путь /Users/myusername котором вы хотите установить AWS CLI. Этот путь должен быть существующим каталогом или создан перед запуском установщика, иначе он не удастся.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <array> <dict> <key>choiceAttribute</key> <string>customLocation</string> <key>attributeSetting</key> <string>/Users/myusername</string> <key>choiceIdentifier</key> <string>default</string> </dict> </array> </plist> Затем вы можете перейти к загрузке последнего установочного пакета, используя curl как:
$ curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg" После того, как пакет и XML конфигурации XML готовы, интерфейс командной строки AWS можно установить для локального пользователя, используя:
$ installer -pkg AWSCLIV2.pkg \ -target CurrentUserHomeDirectory \ -applyChoiceChangesXML choices.xml Здесь AWSCLIV2.pkg - это пакет, который мы загрузили на предыдущем шаге с помощью curl а -target указывает, что установка предназначена для локального пользователя, а -applyChoiceChangesXML основном указывает установщику, что мы будем использовать настраиваемые варианты, содержащие наш относительный путь установки /Users/myusername или любой другой путь к локальному каталогу, указанный в XML .

В качестве последнего шага выполните следующие команды, чтобы создать необходимые символические ссылки, которые требуются интерфейсу командной строки AWS для правильной работы.
$ sudo ln -s /folder/installed/aws-cli/aws /usr/local/bin/aws $ sudo ln -s /folder/installed/aws-cli/aws_completer /usr/local/bin/aws_completer Если ваш $PATH включает каталог, в который вы можете писать, и вы указываете этот каталог в качестве пути к цели, вы можете запустить указанную выше команду без sudo . Но если у вас нет доступного для записи каталога в вашем $PATH , вы должны использовать sudo для разрешений на запись в указанную целевую папку. Расположение по умолчанию для символической ссылки - /usr/local/bin/ .
Чтобы проверить установку, используйте:
$ which aws /usr/local/bin/aws $ aws --version aws-cli/2.1.29 Python/3.7.4 Darwin/18.7.0 botocore/2.0.0Окна
Для установки Windows для AWS CLI v2 требуется 64-разрядная версия Windows или более поздняя версия и права администратора для установки.
Последнюю версию установочного пакета Windows можно загрузить по адресу : https://awscli.amazonaws.com/AWSCLIV2.msi и запустить с правами администратора для завершения установки.
В качестве альтернативы вы можете использовать misexec в CLI для установки в командной строке как:
msiexec.exe /i https://awscli.amazonaws.com/AWSCLIV2.msi Вы можете использовать aws --version в командной строке, чтобы проверить установку.
C:\>aws --version aws-cli/2.2.7 Python/3.8.8 Windows/10 exe/AMD64 prompt/offДокер
Наконец, если вы не хотите устанавливать AWS CLI в своей локальной ОС и у вас есть доступ к Docker, достаточно одной команды выполнить команды AWS CLI как:
$ docker run --rm -it amazon/aws-cli command где command - это команда интерфейса командной строки AWS, которую необходимо выполнить. Приведенная выше команда запустит контейнер с необходимой настройкой AWS CLI и сразу перейдет к выполнению указанной команды и завершится, как только это будет сделано.
Существует множество вариантов использования существующих учетных данных AWS CLI, конфигурации и переменных среды в качестве входных данных для контейнера, что делает его еще более удобным и переносимым. Также есть опция alias чтобы сократить длинную команду docker до чего-то простого и понятного, например, для использования хоста Linux:
$ alias aws='docker run --rm -it amazon/aws-cli'Обязательно добавьте указанную выше команду в файл профиля вашей оболочки для сохранения. После этого вы можете использовать его как:
$ aws --version aws-cli/2.1.29 Python/3.7.3 Linux/4.9.184-linuxkit botocore/2.0.0dev10Легко и выглядит лучше. Подробнее о предложениях и возможностях AWS CLI на основе Docker можно узнать здесь.
Резюме
AWS CLI предлагает интерфейс командной строки для управления вашей инфраструктурой AWS с легкостью контроля, особенно с повторяющимися задачами, и в конечном итоге открывает двери для автоматизации и управления инфраструктурой как кодом (IaC). Вы узнали, как установить его на разные платформы. В качестве следующего шага вы можете прочитать здесь, как настроить его для использования с вашей учетной записью AWS.
