Redis にアクセスするために手動で作成したセキュリティグループがあり、 AWS CloudFormation でLAMPスタックを作成しています。このLAMPスタックからのアクセスを許可するには、Redisの Amazon EC2 セキュリティグループを更新する必要がありますが、CloudFormationで更新したいのですが、可能ですか?
既存のSecurityGroupsは SecurityGroupIngress を使用して更新できます
例えば:
"SecurityGroupRedisIngress": {
"Type": "AWS::EC2::SecurityGroupIngress",
"Properties" : {
"GroupId": "sg-123456789",
"IpProtocol": "tcp",
"FromPort": "6379",
"ToPort": "6379",
"CidrIp": "1.2.3.4/0"
}
}
はい、更新できます。クラウド形成テンプレートに必要な変更を加え、必要なテンプレートとパラメーターファイルまたはパラメーターのリストを指定して以下のコマンドを実行します。
以下のコマンドを使用してテンプレートに変更を加えた後、テンプレートを検証することは常に良い習慣です。検証に問題がなければ、スタック更新コマンドを実行できます。
aws cloudformation validate-template --template-body "file:// mention_your_template_name(example.json)"
aws cloudformation update-stack --stack-name "メンションユースタック名" --template-body "file:// mention_your_template_name(example.json)" --parameters "file:// mention_your_parameter_file or list_of_parameters(example_parameters.json)"
テンプレートを更新したら、aws cloudformationコンソールを開いてスタックをクリックし、その下のリソースコンソールをクリックして、更新したリソースに注意してください。
テンプレート内の任意のAWSリソースを変更できますが、RDSなどに対処するときは注意が必要です...リソースを更新するときにリソースが再作成されるため、awsのドキュメントを確認してください。データベースのスナップショットを取ることをお勧めします。しかし、セキュリティグループにとっては問題ありません。