AWS CDK: как развернуть ресурсы для разных учетных записей? - PullRequest
0 голосов
/ 22 февраля 2020

Можно ли развернуть ресурсы для двух разных AWS учетных записей с использованием CDK?

В качестве простого примера представьте 2 связанных ресурса (возможно, 2 разные роли IAM), которые необходимо развернуть на счета accountA и accountB. Они связаны, поэтому их жизненные циклы должны быть связаны друг с другом (т.е. они создаются и уничтожаются одновременно, и мне не нужно выполнять два действия по развертыванию). Я хотел бы иметь возможность указать во время развертывания, где ресурсы go, а не во время синтеза.

Это требование легко достигается с помощью Terraform (с помощью двух разных определений provisioner). Как мне добиться этого с помощью CDK? Может ли это быть достигнуто в пределах одного стека, или модель CDK соответствует одному стеку на целевую учетную запись? Как выглядит простой пример?

1 Ответ

1 голос
/ 22 февраля 2020

Да, это возможно. вам нужно передать объект конфигурации среды в реквизиты стека.

Из документов:

Каждый экземпляр стека в приложении AWS CDK явно или неявно связано с окружающей средой (env). Среда - это целевая учетная запись AWS и AWS Область, в которую стекается стек.

Использование:

const envEU  = { account: '2383838383', region: 'eu-west-1' };
const envUSA = { account: '8373873873', region: 'us-west-2' };

new MyFirstStack(app, 'first-stack-us', { env: envUSA, encryption: false });
new MyFirstStack(app, 'first-stack-eu', { env: envEU, encryption: true  });

Подробнее здесь .

Если вы хотите развернуть 2 разных ресурса в одном и том же стеке на 2 разных аккаунта, это пока не поддерживается. Вам потребуется создать разные стеки для каждого ресурса и соответственно передать объект среды.

...