Настройка нескольких учетных записей AWS для динамического инвентаризации Ansible ec2

У нас есть пять учетных записей AWS, и в учетной записи организации создается пользователь IAM для программного доступа. Каждая из дочерних учетных записей имеет роль IAM с одинаковым именем. Доверительные отношения - это настройка между пользователем и ролями из этих учетных записей. Как переключаться между учетными записями для конфигурации динамического инвентаризации ec2 ??

Файл конфигурации - ec2.ini

iam_role = arn:aws:iam::xxxx-xxxx-xxxx:role/RoleName

У меня есть несколько файлов ec2.ini в разных каталогах.

../env/
├── account -1
│   ├── ec2.ini
│   └── ec2.py
├── account-2
│   ├── ec2.ini
│   └── ec2.py
├── account-3
│   ├── ec2.ini
│   └── ec2.py
└── account-4
    ├── ec2.ini
    └── ec2.py

Ansible Command

ansible-playbook -i ../env/account-x/ec2.py playbook.yml

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

Всего 1 ответ


Вы можете попробовать передать ему имя профиля перед командой:

AWS_PROFILE=account-a ansible-playbook -i ../env/account-x/ec2.py playbook.yml

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


Есть идеи?

10000