Я создаю шаблон 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.
Есть идеи, как это сделать ?
Спасибо!
Узнать больше о cfn-init было бы моей лучшей ставкой. Надеюсь, это поможет вам
К сожалению, согласно Richard@AWS по состоянию на 9 декабря 2015 года ,
RegisterRdsDbInstance
API, который регистрирует экземпляр RDS как уровень сервиса OpsWorks, не реализуется через официальный ресурс CloudFormation, и нет запланированных планов делать это.Вы можете связаться с AWS, чтобы запросить добавление этого в их дорожную карту, но в то же время вот некоторые альтернативы, которые вы можете попробовать:
AWS::OpsWorks::Layer
параметра with aType
ofdb-master
, как описано в фрагменте шаблона AWS OpsWorks .RegisterRdsDbInstance
вызов API, например, с помощью функции Lambda и пакета SDK NodeJS AWS.