現在、「負荷分散されたテンプレート」を使用してデプロイするときに、AWS Toolkit for Visual Studio によって作成されたテンプレートに基づいて CloudFormation スタックをセットアップしています。EC2 インスタンスを多少カスタマイズするスクリプトを作成する必要があります。1. 証明書ストアに 2 つの証明書をインストールします。2. 証明書の 1 つを使用するように IIS を構成します。3. IIS で TLS 1.2 を有効にします。
クライアント証明書認証をサポートする必要があるため、これらの証明書をロード バランサーではなく IIS にインストールする必要があります。
新しいバージョンが到着したときに AMI を簡単に更新できるようにしたいので、カスタム AMI を作成せずにこれを実現したいと考えています。以下を使用しています: ami-f6803f9f (テンプレートで使用されるデフォルト)。
したがって、これらのカスタマイズを CloudFormation テンプレートの一部として行いたいと考えています。テンプレートの「AWS::CloudFormation::Init」部分を使用して、(スクリプトが機能することを確認するためだけに) 簡単なファイルを作成しようとしました。ただし、スタックを起動すると、ファイルが作成されません。ファイルを作成することになっているテンプレートの部分は次のようになります。
"Metadata" : {
"AWS::CloudFormation::Init" : {
"config" : {
"files" : {
"C:/ClientCA.pfx" : {
"content" : { "Fn::Join" : ["", [
"test1\n",
"test2\n"
]]}
}
}
}
}
}
したがって、私の質問は次のとおりです。 1. ファイルが作成されないのはなぜですか? テンプレートに何か問題があるためですか、それとも init-scripts の場合、この AMI はこれらのタイプをサポートしていませんか? 2. 「AWS::CloudFormation::Init」を使用して S3 から証明書をダウンロードし、UserData に追加した PowerShell スクリプトを使用して証明書をインストールする予定です。これは良いアプローチですか、それとも別の方法で行うべきですか?