Я попытался установить эластичный IP-адрес, выполнив:
ec2-allocate-address
однако это дает мне ошибку:
Required option '-K, --private-key KEY' missing (-h for usage)
почему это?
Большинство инструментов консоли AWS требуют использования закрытого ключа и сертификата (для некоторых (например, относящихся к S3) вам требуются ключи доступа.
В вашей учетной записи на AWS есть страница с названием «Учетные данные безопасности» - на этой странице вы можете создать (или загрузить) новый сертификат или загрузить существующий сертификат. После создания сертификата вы больше не сможете получить доступ к своему закрытому ключу - поэтому вы должны сохранить его, когда он будет создан для вас.
Для ec2-allocate-address
(и большинство инструментов AWS) вы можете либо установить две переменные среды, содержащие путь к вашему сертификату и закрытому ключу, либо передать пути напрямую как часть командной строки.
Если вы будете использовать инструмент более одного раза или использовать несколько инструментов, проще установить переменные среды:
export EC2_PRIVATE_KEY=/path/to/pk-XXXXXXXXXXXXXXXXXXXXXXXXXXXX.pem
export EC2_CERT=/path/to/cert-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.pem
Существует ряд распространенных вариантов инструментов AWS, которые можно найти в Документы AWS
Я считаю, что у вас уже должен быть сертификат закрытого ключа. Ключ связан с группой безопасности, к которой принадлежит ваш узел. Я лично использую ключ, регистрируя его в моем SSH-клиенте Tunnelier, для получения SSH-соединения с моими узлами.
Другими словами, вам не нужно выдавать себе новый сертификат, потому что сертификат уже существует. Вам нужно просто экспортировать его в файл и включить в запрос командной строки.
Вы можете получить ключ X.509 по этому URL-адресу: https://aws-portal.amazon.com/gp/aws/developer/account/index.html?action=access-key