Как вставить идентификаторы ресурсов AWS в файлы конфигурации приложения - PullRequest
1 голос
/ 12 апреля 2019

Я следую руководству AWS по развертыванию сайта HA Wordpress на Elastic Beanstalk, которое включает в себя использование расширения eb-php-wordpress. Процесс требует редактирования нескольких файлов конфигурации с известными идентификаторами ресурса перед развертыванием приложения.

В частности, в инструкциях говорится, что нужно отредактировать файл efs-create.config с идентификатором VPC и идентификаторами подсети. Этот файл, помимо прочего, помогает установить свойство OptionSettings ресурса AWS::ElasticBeanstalk::Environment. По этой причине я подозреваю, что я должен иметь возможность ссылаться на него с Ref:. Правда ли, что поскольку VPC будет создаваться другим файлом, а среда облачной информации среды EB создается рядом со стеком VPC, а не «внутри» него? Должен ли я использовать Fn:: звонок для получения информации?

Раздел файла конфигурации, с которым я работаю, выглядит следующим образом:

option_settings:
  aws:elasticbeanstalk:customoption:
    EFSVolumeName: "EB-EFS-Volume"
    VPCId: "vpc-XXXXXXXX"
## Subnet Options
    SubnetA: "subnet-XXXXXXXX"
    SubnetB: "subnet-XXXXXXXX"
    SubnetC: "subnet-XXXXXXXX"
    SubnetD: "subnet-XXXXXXXX"

Будет ли строка VPCId что-то вроде

VPCId: {Ref: VPC}

Где VPC - это имя ресурса VPC, который я создал? Или, проще говоря, как бы я сослался на идентификатор VPC по умолчанию VPC, если я буду придерживаться этого?

1 Ответ

1 голос
/ 12 апреля 2019

Вы должны иметь возможность использовать Ref для получения различных идентификаторов эластичного бобового стебля именованных ресурсов , в соответствии с документами .Однако VPC не является одним из этих именованных ресурсов (то есть ресурсов с логическим идентификатором), но является свойством одного из названных ресурсов, в данном случае логическим идентификатором.AWSEBSecurityGroup, а свойство VpcId, поэтому вы можете получить его вместо этого, используя GetAtt:

{ "Fn::GetAtt" : [ "AWSEBSecurityGroup", "VpcId" ] }

из документации по функциям и CloudFormation docs

Аналогичный подход должен также работать для подсетей.

...