AWS: Не вдалося знайти профіль конфігурації (MyName)


79

Кожного разу, коли я хочу налаштувати щось за допомогою AWS, я отримую таку помилку:

"The config profile (myname) could not be found"

як: aws configure

Я використовую Python 3.4, і я хочу використовувати AWS CLI Keyring для шифрування своїх облікових даних ..


Відповіді:


113

Я думаю, що чогось не вистачає в документації AWS у http://docs.aws.amazon.com/lambda/latest/dg/setup-awscli.html , в ній не згадується, що вам слід відредагувати файл, ~/.aws/configщоб додати профіль свого імені користувача . Це можна зробити двома способами :

  1. редагувати ~/.aws/config або

  2. aws configure --profile "your username"


Наведені вище відповіді корисні, але, на мою думку, ви виділяєте щось важливе: якщо ви пройдете протоколи aws configure --profile у програмі командного рядка aws configure, він автоматично оновить файл .aws / configure, що простіше. Спочатку я намагався відредагувати його у VIM і не зміг це правильно зрозуміти.
ouonomos

Крім того: я думаю, що для того, щоб це працювало, вам потрібно збігти область лямбда та IAM за замовчуванням. Назви регіонів у випадаючому списку незрозумілі, але відображення назви регіону в регіоні знаходиться тут: docs.aws.amazon.com/general/latest/gr/rande.html
ouonomos

1
Моя збірка також не вдалася, не вказавши output = json або текст.
brianfit

2
Чи можете ви пояснити, як створити новий профіль за допомогою aws configure? Здається, вам потрібно завантажити профіль вручну. Дякую.
Етьєн

Я вирішив свою проблему, відредагувавши ~ / .aws / config та ~ / .aws / credentials
Берк

27

Я зіткнувся з цією проблемою, коли перейшов на нову машину, несучи зі собою мою змінну середовища AWS_DEFAULT_PROFILE, але не мій каталог ~ / .aws. Я не міг отримати жодної команди awscli для роботи, поки не зняв цю змінну або належним чином не налаштував названий профіль. Але навіть aws configureкоманда була порушена, що робило речі трохи хитрими. Припускаючи, що у вас є зручна оболонка, схожа на Unix:

  • Щоб визначити, які специфічні змінні AWS можуть бути у вас під час сеансу: env | grep AWS_
    • якщо ви не бачите переліку AWS_DEFAULT_PROFILE тут, ця відповідь не стосується вас.
  • Щоб тимчасово видалити профіль за замовчуванням: unset AWS_DEFAULT_PROFILE
  • Щоб налаштувати профіль за замовчуванням: aws --profile foo configure
  • Щоб скинути змінну профілю за замовчуванням: exec $SHELL
  • Щоб протестувати нову установку: aws iam get-user

8
Те саме питання з AWS_PROFILEenv var. Просто unset AWS_PROFILEвиконайте команди aws configure *.
VFein

Я випадково видалив свою папку .aws. Твій гід мені допоміг.
Вала. D.

6

Робота з профілями трохи складна. Документацію можна знайти за адресою: https://docs.aws.amazon.com/cli/latest/topic/config-vars.html (Але потрібно звернути увагу на змінні env, такі як AWS_PROFILE)

Використання профілю з aws cli вимагає конфігураційного файлу (за замовчуванням ~/.aws/configабо встановлений за допомогою AWS_CONFIG_FILE). Зразок конфігураційного файлу для довідки: `

[profile PROFILE_NAME]
 output=json
 region=us-west-1
 aws_access_key_id=foo
 aws_secret_access_key=bar

`

Змінна Env AWS_PROFILEповідомляє AWS cli про профіль для використання з конфігурації AWS. Це не альтернативний файл конфігурації, як AWS_ACCESS_KEY_ID/ AWS_SECRET_ACCESS_KEYє ~/.aws/credentials.

Іншим цікавим фактом є те, що якщо AWS_PROFILEвстановлено та встановлено змінні and AWS_ACCESS_KEY_IDі AWS_SECRET_ACCESS_KEYсередовища, тоді облікові дані, надані AWS_ACCESS_KEY_IDта AWS_SECRET_ACCESS_KEY, замінять облікові дані, розташовані у профілі, наданому AWS_PROFILE.


5

чи можете ви перевірити свій configфайл під ~/.aws/config- у вас може бути недійсний розділ під назвою [myname], щось подібне (це приклад)

[default]
region=us-west-2
output=json

[myname]
region=us-east-1
output=text

Просто видаліть розділ [myname] (включаючи весь вміст цього профілю), і ви зможете awsзнову запустити cli


4

Використовуйте наступним чином

[profilename]
region=us-east-1
output=text

Приклад cmd

aws --profile myname CMD opts

2
я думаю, це повинно бути без "профілю" у квадратних дужках?
Маркус Келер

1
@ MarkusKöhler: Правильно, була та сама проблема. Їхні документи в деяких місцях говорять інакше: docs.aws.amazon.com/lambda/latest/dg/setup-awscli.html (ймовірно застарілий)
ddario

0

Ви насправді налаштували конкретного користувача? Посібник з покрокового налаштування в AWS пояснює, як встановити користувача за замовчуванням, а потім, як налаштувати додаткових користувачів. Якщо ви не завершили повне налаштування, у вас буде просто блок за замовчуванням, і ваше ім’я myName не буде створено ..


0

Зіткнувся з подібною проблемою і знайшов посилання нижче, більш корисне, ніж відповіді, подані тут. Думаю, це пов’язано з оновленнями AWS CLI, оскільки відповіді надані.

/server/792937/the-config-profile-adminuser-could-not-be-found

По суті, це допомагає створити два різні файли (тобто один для загальної інформації, що стосується конфігурації, а другий для інформації, що стосується облікових даних).


0

Переконайтесь, що ви перебуваєте у правильному VirtualEnvironment. Я оновив PyCharm і з якихось причин мені знову довелося спрямувати свій проект на моє VE. Відкривши термінал, я не був у своєму VE під час спроби оновлення zappa (і отримав цю помилку). Перезапустіть PyCharm, все повернеться до звичного.


0

У моєму випадку у мене була змінна з назвою "AWS_PROFILE" у змінних середовища зі старим значенням.

введіть тут опис зображення


-2

Для мене це було тому, що я мав свій .aws/configфайл таким чином:

[profile myname]
aws_access_key_id = ....
aws_secret_access_key = ....
region=us-west-1

Я думаю, що причина полягає в тому, що я заснував його з мого .aws/credentialsфайлу, що вимагає наявності [profile myname]Zappa та, можливо, деяких інших інструментів aws / elastic beanstalk.

Коли я перейшов configна це, це чудово працювало:

[myname]
aws_access_key_id = ....
aws_secret_access_key = ....
region=us-west-1

Для файлів конфігурації потрібен [профіль XXX], але для файлу облікових даних не потрібен префікс профілю.
cgseller
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.