Создание слоя RDS Opsworks с помощью шаблона Cloudformation

Я создаю шаблон CloudFormation, который создает стек opsworks, слои и несколько приложений. В моих слоях есть opsworks ones и RDS ones. В документации AWS есть только способ созданияOpsworks::Layer, но я не знаю, как сделать уровень сервиса Amazon RDS:

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

{
  "Type": "AWS::OpsWorks::Layer",
  "Properties": {
    "Attributes" : { String:String },
    "AutoAssignElasticIps" : Boolean,
    "AutoAssignPublicIps" : Boolean,
    "CustomInstanceProfileArn" : String,
    "CustomJson" : JSON object,
    "CustomRecipes" : Recipes,
    "CustomSecurityGroupIds" :  [ String, ... ],
    "EnableAutoHealing" : Boolean,
    "InstallUpdatesOnBoot" : Boolean,
    "LifecycleEventConfiguration" : LifeCycleEventConfiguration,
    "LoadBasedAutoScaling" : LoadBasedAutoScaling,
    "Name" : String,
    "Packages" : [ String, ... ],
    "Shortname" : String,
    "StackId" : String,
    "Type" : String,
    "VolumeConfigurations" : [ VolumeConfiguration, ... ]
  }
}

Моя цель-автоматизировать создание ресурсов opsworks с помощью cloudformation.
Есть идеи, как это сделать ?
Спасибо!

2 ответа

  1. К сожалению, согласно Richard@AWS по состоянию на 9 декабря 2015 года , RegisterRdsDbInstanceAPI, который регистрирует экземпляр RDS как уровень сервиса OpsWorks, не реализуется через официальный ресурс CloudFormation, и нет запланированных планов делать это.

    Вы можете связаться с AWS, чтобы запросить добавление этого в их дорожную карту, но в то же время вот некоторые альтернативы, которые вы можете попробовать:

    1. Создайте экземпляр RDS и остальную часть стека OpsWorks из шаблона CloudFormation, затем вручную присоедините уровень сервиса RDS к стеку OpsWorks с помощью консоли AWS, интерфейса командной строки AWS или любого другого пакета SDK AWS платформы.
    2. Используйте самоуправляемый слой экземпляра базы данных, работающий на экземпляре EC2 с помощью AWS::OpsWorks::Layerпараметра with a Typeofdb-master, как описано в фрагменте шаблона AWS OpsWorks .
    3. Создайте пользовательский ресурс CloudFormation, выполняющий RegisterRdsDbInstanceвызов API, например, с помощью функции Lambda и пакета SDK NodeJS AWS.