Deploy stacks across multiple AWS Accounts and Regions
Why you should have a distributed state of mind (hint: compliance, reliability, cost) and how you can execute it with Altostra Deployment Manager.
May 12 2021 · 4 min read
Everybody has a testing environment. Some people are lucky enough enough to have a totally separate environment to run production in.
— stahnma (@stahnma) August 21, 2015
AWS best practices recommends distributing your environments and products across regions (an environment per region), across accounts (a product per account) or both.
The distribution of products and environments across different accounts and regions is useful for several reasons - security, performance control and billing being the main ones—in a lot of cases it is not only a choice, but a requirement: mainly when dealing with compliance and disaster recovery.
When facing state or international regulation, a lot of companies are required to manage their processes and information in specific geographical locations (such as the EU or the US, for example). Other regulations also enforce strict requirements on the type and locations of DR sites across the world—and in most cases, forces organizations to distribute their operational sites across the globe.
The (AWS) world is your oyster
Whether you decided to use a distributed deployment scheme as a good engineering practice or out of necessity and compliance issues, distributed deployments are hard.
To help you manage your distributed environments and products, Altostra supports Cross Account / Cross Region (CACR) deployments. What it technically means is that you can seamlessly deploy your projects to any region in any of your Altostra-connected AWS accounts, while still having a centralized view on all your projects and deployments status across environments.
Deploying cross accounts and cross regions
In order to deploy to any of your accounts, you first need to create an Altostra Environment.
When you connect your first AWS account to Altostra, we automatically generate a
Production environment for that account and region. In our example, that
Production environment is connected to our
Production Account in the
To see how you can deploy to two different accounts, we’ll add a new QA environment in our
QA Account, in the
The first time you create an environment for a specific account and region, Altostra will need to initialize the region before you can use it. The initialization takes less than a minute, and once it’s done, the environment is active and can be deployed to.
Now, all we need is to deploy our project to both our environments:
And voila! We have our project deployed across two different accounts in two different continents!
Want to give it a try? We provide a free-forever plan for developers. Create your free account today at https://app.altostra.com.
Want to stay up to date with the latest Altostra news? Join our community on Discord.