スタックテンプレートを更新することで、スタックからリソースを削除できます。リソースは、その削除ポリシーに応じて、削除または保持されます。
シナリオ
以下の例では、Elastic IP アドレス (EIP) を使用して、物理リソースを保持しながらスタックからリソースを削除する方法を説明します。
前提条件
EIP リソースを含むスタックが作成されていること。詳細については、「既存リソースからのスタック作成」および「ALIYUN::VPC::EIP」をご参照ください。
背景情報
スタックからリソースを削除すると、次のいずれかの結果になります:
-
ROS はスタックからリソースを削除し、基盤となる物理リソースも削除します。これは、リソースの
DeletionPolicy属性がDeleteに設定されている場合に発生します。説明削除ポリシーを指定しない場合、これがデフォルトの動作です。
-
ROS はスタックからリソースを削除しますが、物理リソースは保持します。これは、リソースの
DeletionPolicy属性がRetainに設定されている場合に発生します。説明誤った削除を防ぐには、
DeletionPolicy属性をRetainに設定します。
以下の手順では、2 番目のシナリオである、物理リソースを保持しながらスタックからリソースを削除する方法を示します。
操作手順
-
左側のナビゲーションペインで、スタック をクリックします。
-
上部メニューで、スタックを作成するリージョン (例: [China (Hangzhou)]) を選択します。
-
削除したいリソースの削除ポリシーを更新します。EIP などのリソースの
DeletionPolicy属性をRetainに設定します。削除するリソースに
DeletionPolicyが設定されていない場合、またはDeletionPolicyがDeleteに設定されている場合は、このステップを実行します。DeletionPolicyがRetainに設定されている場合は、このステップをスキップします。-
スタック ページで、スタックを見つけ、操作 列の 更新 をクリックします。
-
最後のステップ をクリックします。 テンプレートの選択 ページで、テンプレートの準備 セクションで 現在のテンプレートを置き換える を選択します。
-
テンプレートのインポート方法 セクションで、テンプレート内容の入力 を選択します。 テンプレート内容 セクションで、EIP リソースの
DeletionPolicy属性をRetainに変更し、Next をクリックします。この例では、テンプレートは EIP リソースの
DeletionPolicy属性を指定していません。更新前
ROSTemplateFormatVersion: '2015-09-01' Resources: Eip: Type: ALIYUN::VPC::EIP Properties: Bandwidth: 5 Eip2: Type: ALIYUN::VPC::EIP Properties: Bandwidth: 5 Outputs: EipAddress: Value: Fn::GetAtt: - Eip - EipAddress AllocationId: Value: Fn::GetAtt: - Eip - AllocationId EipAddress2: Value: Fn::GetAtt: - Eip2 - EipAddress AllocationId2: Value: Fn::GetAtt: - Eip2 - AllocationId更新後
ROSTemplateFormatVersion: '2015-09-01' Resources: Eip: Type: ALIYUN::VPC::EIP DeletionPolicy: Retain Properties: Bandwidth: 5 Eip2: Type: ALIYUN::VPC::EIP Properties: Bandwidth: 5 Outputs: EipAddress: Value: Fn::GetAtt: - Eip - EipAddress AllocationId: Value: Fn::GetAtt: - Eip - AllocationId EipAddress2: Value: Fn::GetAtt: - Eip2 - EipAddress AllocationId2: Value: Fn::GetAtt: - Eip2 - AllocationId -
設定パラメーター ページで、変更の確認 をクリックして新しい削除ポリシーを保存します。
-
-
EIP リソースを削除します。
-
スタック ページで、対象のスタックを見つけ、操作 列の 更新 をクリックします。
-
最後のステップ をクリックします。テンプレートの選択 ページで、テンプレートの準備 セクションで 現在のテンプレートを置き換える を選択します。
-
テンプレートのインポート方法 セクションで、テンプレート内容の入力 を選択します。テンプレート内容 セクションで、テンプレートの内容を編集し、Next をクリックします。
この例では、
Resourcesセクションから EIP リソース定義を削除し、Outputsセクションから対応するエントリを削除します。 EIP リソースを削除した後のテンプレートは次のとおりです。ROSTemplateFormatVersion: '2015-09-01' Resources: Eip2: Type: ALIYUN::VPC::EIP Properties: Bandwidth: 5 Outputs: EipAddress2: Value: Fn::GetAtt: - Eip2 - EipAddress AllocationId2: Value: Fn::GetAtt: - Eip2 - AllocationId -
設定パラメーター ページで、変更の確認 をクリックしてスタックを更新します。
-
結果
スタックが更新されると、削除されたリソースはスタック詳細ページの リソース タブに表示されなくなります。削除ポリシーが Retain に設定されているため、ROS は物理的な EIP リソースを削除しません。Elastic IP アドレスは、Virtual Private Cloud (VPC) コンソールの [Elastic IP Addresses] ページで確認できます。
次のステップ
既存のスタックにリソースを追加するには、「既存リソースのスタックへのインポート」をご参照ください。