As organizations evolve, whether through growth, acquisitions, or divestitures, they often encounter situations where the seamless transfer of Savings Plans between AWS Organizations becomes a crucial aspect of their cloud management strategy. This article offers an in-depth guide on self-managing and automating the migration of Savings Plans using APIs. This method is particularly useful when you want to transfer accounts from one AWS Organization to another.
Overview of Savings Plan Migration
The process of migrating Savings Plans comprises a three-step workflow, as detailed below
- Migrate all member accounts from the source organization to the target organization.
- Collapse the source organization and merge the management account into the target organization as a member account.
- Enable Savings Plan sharing for both the target organization and its member accounts.
Steps for Savings Plan Migration
Preparing for Savings Plan Migration:
- Check AWS root user account access or AWS Identity and Access Management (IAM) access to move both the management and member accounts in the organization.
- Validate payment methods for the member accounts to address any charges that are incurred while the accounts are migrating.
- Back up any Cost Management reports from the member accounts that are needed. The member accounts can't access these reports after leaving the Organization.
Executing the Savings Plan Migration:
Let's designate Organization (A) as the source Organization and Organization (B) as the destination Organization. The objective is to migrate the Savings Plan from Organization (A) to Organization (B). In this scenario, the source Organization (A) is fully dissolved after the Savings Plan migration.
Step 1: Migrate all member accounts under Source Organization (A) to the Target Organization (B). This process can be performed in two different ways:
Option A. Through AWS Console - The Organization (B) has to send invitation to the member account of Organization (A). Remove the member account beforehand from the Organization (A). This is because the Member account can only accept invitation as a standalone account. The result is all member accounts under Organization (A) are migrated to the Organization (B)
Option B. Through Custom Code - Customers can automate the migration of AWS accounts from Organization (A) to Organization (B) through a custom Script. Deploy the accept-invitation-role.yml CloudFormation template to all the accounts in Organization (A) before being migrated. The process includes migration of the Organization (A) management account which includes deletion of the source Organization (A).
Step 2: Collapse the Source Organization (A) and merge the Management Account (that has the Savings Plan in question) under the Target Organization (B) as a Member Account.
Ensure all Management and Member Accounts are removed from Organization (A). Then, Delete the Organization (A) .
Step 3: Enable Savings Plan Sharing on the Target Organization (B) Management, as well as all Member accounts. This will apply to the Member account of collapsed Organization (A) that has the Savings Plan.
This will essentially yield the same outcome as migrating a Savings Plan from one Management account to another, while simultaneously enabling sharing with all member accounts within a consolidated Organization.
Constraints
Self-managed migrations of Savings Plans may not be viable in two specific scenarios detailed below. In such cases, it becomes necessary to initiate an AWS Support Case to explore potential options for transferring Savings Plans between Organizations.
- Scenario 1: When the requirement is to maintain all accounts within their existing organization and migrate solely the Savings Plan to the target Organization.
- Scenario 2: When the objective is to move a select few AWS accounts, including the one associated with the Savings Plan, from the source Organization to the target Organization
Conclusion
Opting for self-managed Savings Plan migrations grants customers the flexibility to transfer these plans seamlessly between various AWS Organizations, especially in intricate account consolidation and M&A situations. This approach significantly reduces the overall turnaround time and minimizes dependencies.