Как добавить псевдоним домена в существующий дистрибутив CloudFront с помощью AWS CDK

#amazon-web-services #ssl-certificate #amazon-cloudformation #amazon-cloudfront #aws-cdk

#amazon-веб-сервисы #ssl-сертификат #amazon-cloudformation #amazon-cloudfront #aws-cdk

Вопрос:

Я только что развернул CloudFormation solutions из решений AWS. Решения включали новый дистрибутив CloudFront. Моя проблема заключается в том, что я хочу добавить пользовательский домен mysite.example.com в dxxxxxx.cloudfront.net дистрибутив. Я уже создал псевдоним и сертификат с помощью диспетчера сертификатов. Мой вопрос в том, как мне добавить новый домен в существующий CloudFront.

Я понимаю, что мы можем импортировать существующий дистрибутив с помощью Distribution.fromDistributionAttributes .

например

 const distribution = cloudfront.Distribution.fromDistributionAttributes(this, 'ImportedDist', {
  domainName: 'd111111abcdef8.cloudfront.net',
  distributionId: '012345ABCDEF',
});
 

Допустим, у меня есть доменное имя псевдонима и сертификат ARN, готовые к использованию.

 const domainName = 'mysite.example.com';
const certificateArn = 'arn:aws:acm:us-east-1: 123456789012:certificate/abcdefgh-1234-5678-9012-abcdefghujkl';
 

Что мне делать дальше?

Ответ №1:

Добавьте свой домен и сертификат, обновив приложение CDK «AWS solutions». Приложения CDK предназначены для изменения и повторного развертывания.

Конструкция дистрибутива принимает certificate?:ICertificate и domainNames?: string[] в качестве реквизита для конструктора. Экземпляры также предоставляют a addBehavior(pathPattern, origin, behaviorOptions?) , что кажется удобным.

Если приложение находится в рабочей стадии, помните, что обновления иногда приводят к замене ресурсов или прерыванию работы. В документах CloudFormation указано поведение обновления для каждого свойства сервиса. В счастливом случае вы увидите Update requires: No interruption . Запустите cdk diff команду, чтобы просмотреть изменения, которые CloudFormation внесет в ваши ресурсы.

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