在资源栈之间移动资源

本文向您介绍如何将资源从一个资源栈移动到另一个资源栈。

应用场景

一个资源只能存在于一个资源栈中,如果您想通过资源栈B管理某一资源,但该资源已经存在于另一个资源栈A中,您可以选择将该资源从资源栈A中移除并保留资源,然后将资源再导入到资源栈B中。本文以EIP资源为例,向您介绍如何将EIP资源从资源栈A中移动到资源栈B中。

前提条件

请确保您已创建包含EIP资源的资源栈(资源栈A)。更多信息,请参见ALIYUN::VPC::EIP创建资源栈

从资源栈中移除资源

本示例中需要将EIP资源从资源栈A中移除并保留EIP资源,以便于后续将EIP资源导入另一个资源栈B中。如果您想在移除资源的同时保留资源本身,请将资源的删除策略DeletionPolicy设置为Retain。更多信息,请参见背景信息

操作步骤

  1. 登录资源编排控制台

  2. 在左侧导航栏,单击资源栈

  3. 在顶部菜单栏的地域下拉列表,选择资源栈的所在地域,例如:华东1(杭州)。

  4. 更新资源的删除策略,将待移除资源(EIP)的DeletionPolicy设置为Retain

    具体操作,请参见更新删除策略

    当待移除资源未设置DeletionPolicy或设置DeletionPolicyDelete时需要执行该步骤,当DeletionPolicyRetain时可以忽略该步骤。

  5. 移除EIP资源。

    具体操作,请参见移除资源

将资源导入新资源栈

说明

导入资源时,请务必设置删除策略DeletionPolicy,否则导入不成功。

使用现有资源创建资源栈

您可以通过导入现有资源EIP的方式创建资源栈B。具体操作,请参见使用现有资源创建资源栈

执行成功后,您可以在资源编排控制台上查看新创建的资源栈B,在资源栈B的资源页签查看已导入的EIP资源信息。

资源导入的模板如下所示:

ROSTemplateFormatVersion: '2015-09-01'
Resources:
  Eip:
    Type: ALIYUN::VPC::EIP
    DeletionPolicy: Retain
    Properties:
      Bandwidth: 5
Outputs:
  EipAddress:
    Value:
      Fn::GetAtt:
        - Eip
        - EipAddress
  AllocationId:
    Value:
      Fn::GetAtt:
        - Eip
        - AllocationId

将现有资源导入资源栈

前提条件

请确保您已创建不包含EIP资源的资源栈(资源栈B)。具体操作,请参见创建资源栈

操作步骤

您可以将现有资源EIP导入资源栈B。具体操作,请参见将现有资源导入资源栈

执行成功后,您可以在资源栈B的资源页签,查看已导入的EIP资源信息。

导入资源前的模板中不包含EIP资源,导入后的模板中包含EIP资源,模板示例如下:

导入前

ROSTemplateFormatVersion: '2015-09-01'

导入后

ROSTemplateFormatVersion: '2015-09-01'
Resources:
  Eip:
    Type: ALIYUN::VPC::EIP
    DeletionPolicy: Retain
    Properties:
      Bandwidth: 5
Outputs:
  EipAddress:
    Value:
      Fn::GetAtt:
        - Eip
        - EipAddress
  AllocationId:
    Value:
      Fn::GetAtt:
        - Eip
        - AllocationId