CLI または PowerShell を使用して手動で既存のデータベースのスナップショットを作成し、DBSnapshotIdentifier をメモします。
PowerShell を使用すると、次のようになります。
New-RDSDBSnapshot -DBSnapshotIdentifier "NameOfYourNewSnapshot" -DBInstanceIdentifier "YourExistingDbIdentifier"
これでスナップショットが作成されました。CloudFormation テンプレートを変更して、DBSnapshotIdentifier を使用する必要があります。
既存のテンプレートを変更して SqlServer データベースを作成し、新しいプロパティを指定しますDBSnapshotIdentifier
。
"MyDB" : {
"Type" : "AWS::RDS::DBInstance",
"Properties" : {
"DBSecurityGroups" : [
{"Ref" : "MyDbSecurityByEC2SecurityGroup"}, {"Ref" : "MyDbSecurityByCIDRIPGroup"} ],
"AllocatedStorage" : "20",
"DBInstanceClass" : "db.t2.micro",
"Engine" : "sqlserver-ex",
"MasterUsername" : "MyName",
"MasterUserPassword" : "MyPassword",
"DBSnapshotIdentifier" : "NameOfYourNewSnapshot"
}
}
スタックを実行すると、スナップショットからデータベースがドロップされて再作成されるため、ダウンタイムに対応するようにしてください。
ドキュメント:
http://docs.aws.amazon.com/powershell/latest/reference/Index.html
http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html
http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbsnapshotidentifier