<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Srinivasa Raju Addepalli</title>
    <description>The latest articles on DEV Community by Srinivasa Raju Addepalli (@sraddepalli).</description>
    <link>https://dev.to/sraddepalli</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F475244%2F300ab334-cead-4e99-b739-ee2555a0cb95.jpg</url>
      <title>DEV Community: Srinivasa Raju Addepalli</title>
      <link>https://dev.to/sraddepalli</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sraddepalli"/>
    <language>en</language>
    <item>
      <title>AWS MGN Overview</title>
      <dc:creator>Srinivasa Raju Addepalli</dc:creator>
      <pubDate>Wed, 21 Sep 2022 04:17:55 +0000</pubDate>
      <link>https://dev.to/aws-builders/aws-mgn-overview-12lo</link>
      <guid>https://dev.to/aws-builders/aws-mgn-overview-12lo</guid>
      <description>&lt;br&gt;
 
&lt;h1&gt;
  
  
  &lt;strong&gt;AWS MGN&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;AWS MGN (AWS Application Migration Service) is a highly automated lift-and-shift (rehost) solution:&lt;/p&gt;

&lt;p&gt;• Simplifies, expedites, and reduces the cost of migrating applications to AWS&lt;/p&gt;

&lt;p&gt;• Enables lift-and-shift migration from any source infrastructure with minimal business disruption.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Jbu75H57--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hk5nc63lpwnxw753ycv2.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Jbu75H57--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hk5nc63lpwnxw753ycv2.PNG" alt="Image description" width="880" height="128"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;AWS MGN utilizes continuous, block-level replication and enables short cutover windows measured in minutes. &lt;/p&gt;

&lt;p&gt;AWS MGN (AWS Application Migration Service) is based on CloudEndure Migration and improves on it by integrating with the AWS Management Console. (Note: CloudEndure Migration will be no longer be available for use in most AWS Regions as of December 30, 2022. It will continue to be available for migrations into GovCloud and China Regions through 2023).&lt;/p&gt;

&lt;p&gt;AWS recommends AWS MGN as the primary migration service for lift-and-shift migrations. If AWS MGN is unavailable in a specific AWS Region, we can use the AWS SMS APIs through March 2023. AWS SMS (AWS Server Migration Service) utilizes incremental, snapshot-based replication and enables cutover windows measured in hours.&lt;/p&gt;

&lt;p&gt;With AWS MGN, we can migrate our applications from physical infrastructure, VMware vSphere, Microsoft Hyper-V, Amazon Elastic Compute Cloud (Amazon EC2), Amazon Virtual Private Cloud (Amazon VPC), and other clouds to AWS.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;AWS MGN Benefits&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;• Minimal downtime during migration&lt;br&gt;
• Reduced costs&lt;br&gt;
• Automated modernization&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--dtyzHkTd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f05vazadryfc3qjy6wk0.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--dtyzHkTd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f05vazadryfc3qjy6wk0.PNG" alt="Image description" width="602" height="384"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Initializing Application Migration Service&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;In order to use Application Migration Service, the service must first be initialized for any AWS Region in which we plan to use Application Migration Service.&lt;/p&gt;

&lt;p&gt;Application Migration Service must be initialized upon first use from within the Application Migration Service Console. The initialization process occurs automatically once a user accesses the Application Migration Service Console. The user is directed to create the Replication Settings template, and upon saving the template, the service is initialized by creating the IAM Roles which are required for the service to work.&lt;/p&gt;

&lt;p&gt;Application Migration Service can only be initialized by the Admin user of our AWS Account. &lt;/p&gt;

&lt;p&gt;During initialization the following IAM roles will be created:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;AWSServiceRoleForApplicationMigrationService&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AWSApplicationMigrationReplicationServerRole&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AWSApplicationMigrationConversionServerRole&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AWSApplicationMigrationMGHRole&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AWSApplicationMigrationLaunchInstanceWithDrsRole&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AWSApplicationMigrationLaunchInstanceWithSsmRole&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;AWSApplicationMigrationAgentRole&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Additional Policies&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You can create roles with granular permission for Application Migration Service. The service comes with the following pre-defined managed IAM policies:&lt;/p&gt;

&lt;p&gt;• AWSApplicationMigrationFullAccess - This policy provides permissions to all public APIs of AWS Application Migration Service (MGN), as well as permissions to read KMS key information.&lt;/p&gt;

&lt;p&gt;• AWSApplicationMigrationEC2Access - This policy allows Amazon EC2 operations required to use Application Migration Service (MGN) to launch the migrated servers as EC2 instances.&lt;/p&gt;

&lt;p&gt;• AWSApplicationMigrationReadOnlyAccess - The Read-Only policy allows the user to view all data available in the Application Migration Service Console but does not allow them to modify any data or perform any actions. This policy also includes several EC2 read-only permissions.&lt;/p&gt;

&lt;p&gt;• AWSApplicationMigrationAgentPolicy - This policy allows a user to install the AWS Replication Agent.&lt;/p&gt;

&lt;p&gt;• AWSApplicationMigrationAgentInstallationPolicy - This policy allows a user to install the AWS Replication Agent.&lt;/p&gt;

&lt;p&gt;we must attach the AWSApplicationMigrationFullAccess and the AWSApplicationMigrationEC2Access policies to our IAM users and roles in order to be able to launch Test and Cutover instances and to complete a full migration cycle with Application Migration Service.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Accessing the Application Migration Service Console&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;We can access Application Migration Service through the AWS Console:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://console.aws.amazon.com/mgn/home"&gt;https://console.aws.amazon.com/mgn/home&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Application Migration Service is AWS Region-specific. We have to select the correct Region from the Select a Region menu when using Application Migration Service.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zlpG8-JI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0vrox01ioyucx8u3wwek.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zlpG8-JI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0vrox01ioyucx8u3wwek.PNG" alt="Image description" width="312" height="332"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XevujzZ7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h9g6ixrvng133y603i3q.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XevujzZ7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h9g6ixrvng133y603i3q.PNG" alt="Image description" width="825" height="559"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;AWS MGN Lifecycle&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--o_4RfXY9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q5cwohi1rz3zh9srwc80.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--o_4RfXY9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q5cwohi1rz3zh9srwc80.PNG" alt="Image description" width="655" height="316"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Agent Installation&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Implementation begins by installing the AWS Replication Agent on your source servers. Once it’s installed, you can view and define replication settings. AWS Application Migration Service (AWS MGN) uses these settings to create and manage a Staging Area Subnet with lightweight Amazon EC2 instances that act as Replication Servers and low-cost staging Amazon EBS volumes. (Note: If we cannot install agents on our servers, we can use the agentless replication option)&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Continuous Replication&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Replication Servers receive data from the agent running on our source servers and write this data to the staging Amazon EBS volumes. our replicated data is compressed and encrypted in transit, and can be encrypted at rest using EBS encryption. AWS Application Migration Service keeps our source servers up to date on AWS using continuous, block-level data replication. It uses our defined launch settings to launch instances when we conduct non-disruptive tests or perform a cutover.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Testing and Cutover&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;When we launch Test or Cutover instances, AWS Application Migration Service automatically converts our source servers to boot and run natively on AWS. After confirming that our launched instances are operating properly on AWS, we can decommission our source servers. We can choose to modernize our migrated applications by leveraging AWS Application Migration Service and additional AWS services.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Best Practices&lt;/strong&gt;
&lt;/h1&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Planning&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;• Plan your Migration project prior to installing the AWS Replication Agent on your source servers.&lt;/p&gt;

&lt;p&gt;• Do not perform any reboots on the source servers prior to a Cutover.&lt;/p&gt;

&lt;p&gt;• Do not archive or disconnect the source server from AWS until your launched Cutover instance in AWS is working as expected.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Testing&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;• Perform Test at least two weeks before you plan to migrate your Source servers. This time frame is intended for identifying potential problems and solving them, before the actual Cutover takes place. After performing the test launch, validate connectivity to your Test instances (using SSH for Linux or RDP for Windows), and perform acceptance tests for your application.&lt;/p&gt;

&lt;p&gt;• Ensure that you perform a Test prior to performing a Cutover.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Successful Implementation&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;The following are the required steps to complete a successful migration implementation with Application Migration Service:&lt;/p&gt;

&lt;p&gt;• Deploy the AWS Replication Agent on your source servers.&lt;/p&gt;

&lt;p&gt;• Confirm that the data replication status is Healthy.&lt;/p&gt;

&lt;p&gt;• Test the launch of Test instances a week before the actual Cutover.&lt;/p&gt;

&lt;p&gt;• Address any issues that come up, such as Launch setting misconfiguration and potential AWS limits.&lt;/p&gt;

&lt;p&gt;• Launch Cutover instances for the servers on the planned date.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Best Practices for Ensuring Project Success&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;• Train a field technical team &amp;amp; assign a Application Migration Service SME.&lt;br&gt;
• Share project timelines with Application Migration Service.&lt;br&gt;
• Monitor data replication progress and report any issues in advance.&lt;br&gt;
• Perform a test for every server in advance, and report issues to Application Migration Service.&lt;br&gt;
• Coordinate Cutover windows with Application Migration Service in advance.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Migration workflow&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;The general process is:&lt;/p&gt;

&lt;p&gt;• Install the AWS Replication Agent on the source server. (If we are using the agentless replication for vCenter feature, then e will need to add our source servers by installing the AWS MGN vCenter Client)&lt;/p&gt;

&lt;p&gt;• Wait until Initial Sync is finished.&lt;/p&gt;

&lt;p&gt;• Launch Test instances.&lt;/p&gt;

&lt;p&gt;• Perform acceptance tests on the servers. After the Test instance is tested successfully, finalize the Test and delete the Test instance.&lt;/p&gt;

&lt;p&gt;• Wait for the Cutover window.&lt;/p&gt;

&lt;p&gt;• Confirm that there is no Lag.&lt;/p&gt;

&lt;p&gt;• Stop all operational services on the source server.&lt;/p&gt;

&lt;p&gt;• Launch a Cutover instance.&lt;/p&gt;

&lt;p&gt;• Confirm that the Cutover instance was launched successfully and then finalize the Cutover.&lt;/p&gt;

&lt;p&gt;• Archive the source server.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;AWS MGN Pricing&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;For each source server that we want to migrate, we can use AWS Application Migration Service for a free period of 2,160 hours, which is 90 days when used continuously. &lt;/p&gt;

&lt;p&gt;The free period starts as soon as we install the AWS Replication Agent on our source server and continues during active source server replication.&lt;/p&gt;

&lt;p&gt;If we do not complete our migration of a specific server within the free period, we will be charged per hour while we continue replicating that server.  &lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Additional charges&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;While our source servers are actively replicating, including during the free period, we will incur charges for any AWS infrastructure that is provisioned by AWS Application Migration Service to facilitate data replication. &lt;/p&gt;

&lt;p&gt;We will also incur charges for resources that are provisioned when we launch test or cutover instances, such as compute (Amazon EC2) and storage (Amazon EBS) resources, according to our AWS pricing plan.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Pricing details&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;AWS Application Migration Service pricing is the same for all supported AWS Regions.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--UNaPA-bU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/95igacb36hbpzknhxnzs.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UNaPA-bU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/95igacb36hbpzknhxnzs.PNG" alt="Image description" width="660" height="157"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  *&lt;em&gt;Supported AWS Regions *&lt;/em&gt;
&lt;/h1&gt;

&lt;p&gt;The following AWS Regions are supported by Application Migration Service: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--DxS9LeyE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gtb5te1uhlt7c3sghpxo.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--DxS9LeyE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gtb5te1uhlt7c3sghpxo.PNG" alt="Image description" width="393" height="701"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;AWS Application Migration Service is not yet supported in AWS GovCloud and China Regions, and does not currently support some legacy operating systems that are supported by CloudEndure Migration. Consider using CloudEndure Migration if our preferred AWS Region or operating system is not currently supported by AWS Application Migration Service.&lt;/p&gt;

&lt;p&gt;Note: While CloudEndure Migration will continue to be available for use in AWS GovCloud and China Regions, it will no longer be available in other AWS Regions as of December 30, 2022. After January 1, 2023, CloudEndure Migration will be available only for migrations to AWS Outposts and AWS GovCloud and China Regions.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;CloudEndure Migration EOL&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Important dates to plan for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;June 30, 2022 - No new CloudEndure Migration licenses will be allocated, but we can continue using existing licenses.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;September 30, 2022 - No new CloudEndure Migration agents can be installed, but we can complete migrations in progress, using the agents already installed&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;December 30, 2022 - Existing CloudEndure Migration licenses will expire, and the service will no longer be available&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(Note: These dates are excluding for the GovCloud and China Regions. The CloudEndure Migration service will continue to be available for migrations into GovCloud and China Regions, at this time.)&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;References&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;Supported operating systems - &lt;a href="https://docs.aws.amazon.com/mgn/latest/ug/Supported-Operating-Systems.html"&gt;https://docs.aws.amazon.com/mgn/latest/ug/Supported-Operating-Systems.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;CloudEndure Migration EOL - &lt;a href="https://docs.cloudendure.com/#Configuring_and_Running_Migration/Migration_EOL/Migration_EOL.htm"&gt;https://docs.cloudendure.com/#Configuring_and_Running_Migration/Migration_EOL/Migration_EOL.htm&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hope you got some valuable information. &lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Social Footprints:&lt;/strong&gt;
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.linkedin.com/in/sraddepalli/"&gt;My LinkedIn&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://github.com/sraddepalli"&gt;My GitHub&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Happy Learning 📚&lt;/p&gt;

&lt;p&gt;Thank you!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>AWS Control Tower Overview &amp; Set up</title>
      <dc:creator>Srinivasa Raju Addepalli</dc:creator>
      <pubDate>Wed, 07 Sep 2022 02:10:35 +0000</pubDate>
      <link>https://dev.to/aws-builders/aws-control-tower-overview-set-up-4e92</link>
      <guid>https://dev.to/aws-builders/aws-control-tower-overview-set-up-4e92</guid>
      <description>&lt;br&gt;
 
&lt;h1&gt;
  
  
  &lt;strong&gt;AWS Control Tower Overview &amp;amp; set up&lt;/strong&gt;
&lt;/h1&gt;
&lt;h2&gt;
  
  
  &lt;strong&gt;Introduction&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;AWS Control Tower offers the easiest way to set up and govern a secure, multi-account AWS environment. &lt;/p&gt;

&lt;p&gt;It establishes a landing zone that is based on best-practices blueprints, and it enables governance using guardrails we can choose from a pre-packaged list. The landing zone is a well-architected, multi-account baseline that follows AWS best practices. Guardrails implement governance rules for security, compliance, and operations.&lt;/p&gt;

&lt;p&gt;AWS Control Tower is an AWS native service providing a pre-defined set of blueprints and guardrails to help us implement a landing zone for AWS accounts. AWS Landing Zone is an AWS solution offered through AWS Solution Architect, Professional Services, or AWS Partner Network (APN) Partners that provides a fully configurable, customer-managed landing zone implementation. We can use either AWS Control Tower or the Landing Zone solution to create a foundational AWS environment based on best-practices blueprints implemented through AWS Service Catalog. &lt;/p&gt;

&lt;p&gt;AWS Control Tower is designed to provide an easy, self-service setup experience and an interactive user interface for ongoing governance with guardrails. While AWS Control Tower automates creation of a new landing zone with predefined blueprints (e.g., IAM Identity Center for directory and access), the AWS Landing Zone solution provides a configurable setup of a landing zone with rich customization options through custom add-ons (such as Active Directory or Okta Directory) and ongoing modifications through a code deployment and configuration pipeline.&lt;/p&gt;

&lt;p&gt;AWS Control Tower is a service that helps us to set up and manage governance rules for security, operations, and compliance at scale across all our organizations and accounts in the AWS Cloud.&lt;/p&gt;

&lt;p&gt;AWS Control Tower orchestrates the capabilities of several other AWS services, including AWS Organizations, AWS Service Catalog, and AWS IAM Identity Center (successor to AWS Single Sign-On), to build a landing zone.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--op_55Aea--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lrp1op0mjz1sqt2leh7z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--op_55Aea--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lrp1op0mjz1sqt2leh7z.png" alt="Image description" width="880" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Features of AWS Control Tower&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Landing zone&lt;/strong&gt; – A landing zone is a well-architected, multi-account environment that's based on security and compliance best practices. It is the enterprise-wide container that holds all of our organizational units (OUs), accounts, users, and other resources that you want to be subject to compliance regulation. A landing zone can scale to fit the needs of an enterprise of any size.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Guardrails&lt;/strong&gt; – A guardrail is a high-level rule that provides ongoing governance for our overall AWS environment. It's expressed in plain language. Two kinds of guardrails exist: preventive and detective.&lt;/p&gt;

&lt;p&gt;Three categories of guidance apply to these two kinds of guardrails: mandatory, strongly recommended, or elective. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Account Factory&lt;/strong&gt; – An Account Factory is a configurable account template that helps to standardize the provisioning of new accounts with pre-approved account configurations. AWS Control Tower offers a built-in Account Factory that helps automate the account provisioning workflow in our organization.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Dashboard *&lt;/em&gt;– The dashboard offers continuous oversight of our landing zone to our team of central cloud administrators. We can use the dashboard to see provisioned accounts across our enterprise.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Structure of an AWS Control Tower Landing Zone&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Root&lt;/strong&gt; – The parent that contains all other OUs in your landing zone.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Security OU&lt;/strong&gt; – This OU contains the Log Archive and Audit accounts. These accounts often are referred to as shared accounts. When we launch our landing zone, we can choose customized names for these shared accounts, and we have the option to bring existing AWS accounts into AWS Control Tower for security and logging. However, these cannot be renamed later, and existing accounts cannot be added for security and logging after initial launch.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sandbox OU&lt;/strong&gt; – The Sandbox OU is created when you launch your landing zone, if you enable it. This and other registered OUs contain the enrolled accounts that your users work with to perform their AWS workloads.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;IAM Identity Center directory *&lt;/em&gt;– This directory houses your IAM Identity Center users. It defines the scope of permissions for each IAM Identity Center user.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;IAM Identity Center users&lt;/strong&gt; – These are the identities that your users can assume to perform their AWS workloads in your landing zone.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Set Up AWS Control Tower&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;We can set up an AWS Control Tower landing zone in an existing organization, or we can start by creating a new organization that contains our AWS Control Tower landing zone.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Mx63vVUT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/77jx2p54ecpxwhd7rxmy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Mx63vVUT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/77jx2p54ecpxwhd7rxmy.png" alt="Image description" width="880" height="443"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Pre-requisites to setting up control tower for the first time:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sign up for AWS (create AWS account)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://portal.aws.amazon.com/billing/signup"&gt;https://portal.aws.amazon.com/billing/signup&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Follow the online instructions to complete the account creation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sign in as an Administrator user&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://console.aws.amazon.com/iam"&gt;https://console.aws.amazon.com/iam&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create IAM account and sign in if the IAM account is not created before.&lt;/li&gt;
&lt;li&gt;Create AWS Identity and Access Management (IAM) user and grant that user full access.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Set up MFA&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We have to enable multi-factor authentication (MFA) for our account.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--84xiUpGy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1c738meu4whkr7uhxm9t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--84xiUpGy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1c738meu4whkr7uhxm9t.png" alt="Image description" width="880" height="300"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prerequisites steps for setting up AWS Control Tower&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;• Sign in to the AWS management console with administrator user credentials.&lt;/p&gt;

&lt;p&gt;• Access AWS Control Tower console at &lt;a href="https://console.aws.amazon.com/controltower"&gt;https://console.aws.amazon.com/controltower&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;• Verify that we selected our desired home Region.&lt;/p&gt;

&lt;p&gt;• Choose Set up landing zone.&lt;/p&gt;

&lt;p&gt;• Follow the instructions in the console, accepting all the default values (email address for our account, a log archive account, and an audit account).&lt;/p&gt;

&lt;p&gt;• Confirm our choices and choose Set up landing zone.&lt;/p&gt;

&lt;p&gt;• AWS Control Tower takes time (about 30 to 45 minutes) to set up all of the resources in your landing zone&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prerequisites: Automated pre-launch checks&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Before setting up the landing zone by AWS Control Tower, it automatically runs a series of pre-launch checks in our account. There's no action required on our part for these checks, which ensure that your management account is ready for the changes that establish our landing zone.&lt;/p&gt;

&lt;p&gt;By default, all accounts are subscribed to these services.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AWS Control Tower runs:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The existing service limits for the AWS account must be sufficient for AWS Control Tower to launch. &lt;/p&gt;

&lt;p&gt;The AWS account must be subscribed to the following AWS services:&lt;/p&gt;

&lt;p&gt;• Amazon Simple Storage Service (Amazon S3)&lt;/p&gt;

&lt;p&gt;• Amazon Elastic Compute Cloud (Amazon EC2)&lt;/p&gt;

&lt;p&gt;• Amazon SNS&lt;/p&gt;

&lt;p&gt;• Amazon Virtual Private Cloud (Amazon VPC)&lt;/p&gt;

&lt;p&gt;• AWS CloudFormation&lt;/p&gt;

&lt;p&gt;• AWS CloudTrail&lt;/p&gt;

&lt;p&gt;• Amazon CloudWatch&lt;/p&gt;

&lt;p&gt;• AWS Config&lt;/p&gt;

&lt;p&gt;• AWS Identity and Access Management (IAM)&lt;/p&gt;

&lt;p&gt;• AWS Lambda&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Step 1: Create our shared account email addresses&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;In order to set up our landing zone with new shared accounts, AWS Control Tower requires two unique email addresses that aren't already associated with an AWS account. Each of these email addresses will serve as a collaborative inbox -- a shared email account -- intended for the various users in our enterprise that will do specific work related to AWS Control Tower.&lt;/p&gt;

&lt;p&gt;If we are setting up AWS Control Tower for the first time, and if we are bringing existing security and log archive accounts into AWS Control Tower, we can enter the current email addresses of the existing AWS accounts.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The email addresses are required for:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Audit account *&lt;/em&gt;– This account is for our team of users that need access to the audit information made available by AWS Control Tower. We can also use this account as the access point for third-party tools that will perform programmatic auditing of your environment to help us audit for compliance purposes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Log archive account&lt;/strong&gt; – This account is for our team of users that need access to all the logging information for all of your enrolled accounts within registered OUs in our landing zone.&lt;/p&gt;

&lt;p&gt;These accounts are set up in the Security OU when we create our landing zone. As a best practice, AWS recommends that when we perform actions in these accounts, we should use an IAM Identity Center user with the appropriately scoped permissions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Key items to configure during setup&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;• We can select our top-level OU names during setup, and you also can change OU names after we set up our landing zone. By default, the top-level OUs are named Security and Sandbox. &lt;/p&gt;

&lt;p&gt;• During setup, we can select customized names for the shared accounts that AWS Control Tower creates, called log archive and audit by default, but we cannot change these names after setup. (This is a one-time selection.)&lt;/p&gt;

&lt;p&gt;• During setup, we can optionally specify existing AWS accounts for AWS Control Tower to use as audit and log archive accounts. If we plan to specify existing AWS accounts, and if those accounts have existing AWS Config resources, we must delete the existing AWS Config resources before you can enrol the accounts into AWS Control Tower. (This is a one-time selection.)&lt;/p&gt;

&lt;p&gt;• If we are setting up for the first time, or if we are upgrading to landing zone version 3.0, we can choose whether to allow AWS Control Tower to set up an organization-level AWS CloudTrail trail for our organization, or you can opt out of trails that are managed by AWS Control Tower and manage your own CloudTrail trails. We can opt into or opt out of organization-level trails that are managed by AWS Control Tower any time you update your landing zone.&lt;/p&gt;

&lt;p&gt;• We can optionally set a customized retention policy for our Amazon S3 log bucket and log access bucket, when we set up or update your landing zone.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Configuration choices that cannot be undone&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;• We cannot change your home Region after you've set up your landing zone.&lt;/p&gt;

&lt;p&gt;• If we are provisioning Account Factory accounts with VPCs, VPC CIDRs can't be changed after they are created.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Step 2. Configure and launch your landing zone&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Before we launch our AWS Control Tower landing zone, determine the most appropriate home Region.&lt;/p&gt;

&lt;p&gt;Changing our home Region after we deployed our AWS Control Tower landing zone&lt;br&gt;
requires decommissioning as well as the assistance of AWS Support. This practice is not&lt;br&gt;
recommended.&lt;/p&gt;

&lt;p&gt;AWS Control Tower has no APIs or programmatic access for launching our landing zone. To configure and launch your landing zone in the console, perform the following series of steps.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prepare: Navigate to the AWS Control Tower console&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Open a web browser, and navigate to the AWS Control Tower console at &lt;a href="https://console.aws.amazon.com/controltower"&gt;https://console.aws.amazon.com/controltower&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In the console, verify that you are working in your desired home Region for AWS Control Tower. Then choose Set up your landing zone.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Step 2a. Review pricing and select your AWS Regions&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Do check whether we have correctly designated the AWS Region that we select for our home Region. After we deployed AWS Control Tower, we can't change the home Region.&lt;/p&gt;

&lt;p&gt;In our setup process, we can add any additional AWS Regions that we require. We can add more Regions at a later time, if needed, and we can remove Regions from governance.&lt;/p&gt;

&lt;p&gt;To select additional AWS Regions to govern&lt;/p&gt;

&lt;p&gt;• The panel shows us the current Region selections. Open the dropdown menu to see a list of additional Regions available for governance.&lt;/p&gt;

&lt;p&gt;• Check the box next to each Region to bring into governance by AWS Control Tower. Our home Region selection is not editable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;To deny access to certain Regions&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In order to deny access to AWS resources and workloads in certain AWS Regions, select Enabled in the section for the Region deny guardrail. By default, the setting for this guardrail is Not enabled.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Step 2b. Configure your organizational units (OUs)&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;If we accept the default names of these OUs, there's no action we need to take for setup to continue.&lt;/p&gt;

&lt;p&gt;To change the names of the OUs, enter the new names directly in the form field.&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Foundational OU&lt;/strong&gt; – AWS Control Tower relies upon a Foundational OU that is initially named the Security OU. We can change the name of this OU during initial setup and afterward, from the OU details page. &lt;/p&gt;

&lt;p&gt;This Security OU contains your two shared accounts, which by default are called the log&lt;br&gt;
archive account and the audit account.&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Additional OU&lt;/strong&gt; – AWS Control Tower can set up one or more Additional OUs. &lt;/p&gt;

&lt;p&gt;If Additional OU is intended for development projects, we can name it as SandboxOU.&lt;/p&gt;

&lt;p&gt;If we already have an existing OU in AWS Organizations, you may see the option to skip setting up an Additional OU in AWS Control Tower.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Step 2c. Configure our shared accounts, logging, and encryption&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Here, the panel shows the default selections for the names of our shared&lt;br&gt;
AWS Control Tower accounts. These accounts are an essential part of our landing zone. Do not move or delete these shared accounts. &lt;/p&gt;

&lt;p&gt;We can choose customized names for the audit and log archive accounts during setup. Alternatively, we have a one-time option to specify existing AWS accounts as our shared accounts.&lt;/p&gt;

&lt;p&gt;We must provide unique email addresses for our log archive and audit accounts, and we can verify the email address that we previously provided for our management account. Choose the Edit button to change the editable default values.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;About the shared accounts&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;• *&lt;em&gt;The management account *&lt;/em&gt;– The AWS Control Tower management account is part of the Root level. The management account allows for AWS Control Tower billing. The account also has administrator permissions for our landing zone. We cannot create separate accounts for billing and for administrator permissions in AWS Control Tower.&lt;/p&gt;

&lt;p&gt;The email address shown for the management account is not editable during this phase of setup. It is shown as a confirmation, so we can check that we are editing the correct management account, in case we have multiple accounts.&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;The two shared accounts&lt;/strong&gt; – We can choose customized names for these two accounts, or bring our own accounts, and we must supply a unique email address for each account, either new or existing. &lt;/p&gt;

&lt;p&gt;In order to configure the shared accounts, we have fill in the requested information:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;At the console, enter a name for the account initially called the log archive account. Many customers decide to keep the default name for this account.&lt;/li&gt;
&lt;li&gt;Provide a unique email address for this account.&lt;/li&gt;
&lt;li&gt;Enter a name for the account initially called the audit account. Many customers choose to call it the Security account.&lt;/li&gt;
&lt;li&gt;Provide a unique email address for this account.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Optionally configure log retention&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Here, we can customize the log retention policy for Amazon S3 buckets that store our AWS CloudTrail logs in AWS Control Tower, in increments of days or years, up to a maximum of 15 years. If we choose not to customize your log retention, the default settings are one year for standard account logging and 10 years for access logging. &lt;/p&gt;

&lt;p&gt;This feature also is available when we update or repair our landing zone.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Optionally configure AWS CloudTrail trails&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;As a best practice, we have to set up logging. If we wish to allow AWS Control Tower to&lt;br&gt;
set up an organization-level CloudTrail trail and manage it for us, choose Opt in. If we wish to manage logging with our own CloudTrail trails or a third-party logging tool, choose Opt out. &lt;/p&gt;

&lt;p&gt;We have to confirm our selection when requested to do so in the console. We can change our selection, and opt into, or opt out of, organization-level trails when we update our landing zone.&lt;/p&gt;

&lt;p&gt;We can set up and manage your own CloudTrail trails at any time, including organization-level and account-level trails. If we set up duplicate CloudTrail trails, we may incur duplicate costs when CloudTrail events are logged.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Optionally configure AWS KMS keys&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If we wish to encrypt and decrypt your resources with an AWS KMS encryption key, select the checkbox.&lt;/p&gt;

&lt;p&gt;If we have existing keys, we will be able to select them from identifiers displayed in a dropdown menu. We can generate a new key by choosing Create a key. we can add or change a KMS key any time we update our landing zone.&lt;/p&gt;

&lt;p&gt;When we select Set up landing zone, AWS Control Tower performs a pre-check to validate our KMS key. &lt;/p&gt;

&lt;p&gt;The key must meet these requirements:&lt;/p&gt;

&lt;p&gt;• Enabled&lt;br&gt;
• Symmetric&lt;br&gt;
• Not a multi-Region key&lt;br&gt;
• Has correct permissions added to the policy&lt;br&gt;
• Key is in the management account&lt;/p&gt;

&lt;p&gt;We may see an error banner if the key does not meet these requirements. In that case, we have to choose another key or generate a key. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;To make the key's policy update&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In order to use a KMS key with AWS Control Tower, we must make a specific policy update to the key. At minimum, the KMS key must have permissions that allow AWS CloudTrail and AWS Config to use the chosen KMS key.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Make the required policy update&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Navigate to the AWS KMS console at &lt;a href="https://console.aws.amazon.com/kms"&gt;https://console.aws.amazon.com/kms&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select Customer managed keys on the left&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In the table, select the key you wish to edit, or select Create a key from the upper right&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Under the section called Key policy, make sure we can see the policy and edit it. We may need to select Switch to policy view on the right.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;We can copy and paste the following example policy statement. Alternatively, for an existing key, we can ensure that your KMS key has these minimum permissions by adding them to our own existing policy. &lt;/p&gt;

&lt;p&gt;We can add these lines as a group in a single JSON statement, or if we prefer, we can&lt;br&gt;
incorporate them line by line into our policy's other statements.&lt;/p&gt;

&lt;p&gt;{&lt;br&gt;
"Sid": "Allow CloudTrail and AWS Config to encrypt/decrypt logs",&lt;/p&gt;

&lt;p&gt;"Effect": "Allow",&lt;/p&gt;

&lt;p&gt;"Principal": {&lt;/p&gt;

&lt;p&gt;"Service": [&lt;/p&gt;

&lt;p&gt;"cloudtrail.amazonaws.com",&lt;/p&gt;

&lt;p&gt;"config.amazonaws.com"&lt;/p&gt;

&lt;p&gt;]&lt;/p&gt;

&lt;p&gt;},&lt;/p&gt;

&lt;p&gt;"Action": [&lt;/p&gt;

&lt;p&gt;"kms:GenerateDataKey",&lt;/p&gt;

&lt;p&gt;"kms:Decrypt"&lt;/p&gt;

&lt;p&gt;],&lt;/p&gt;

&lt;p&gt;"Resource": "*"&lt;/p&gt;

&lt;p&gt;}&lt;/p&gt;

&lt;p&gt;The AWS Key Management Service (AWS KMS) allows us to create multi-Region KMS keys and asymmetric keys; however, AWS Control Tower does not support multi-Region keys or asymmetric keys.&lt;/p&gt;

&lt;p&gt;AWS Control Tower performs a pre-check of our existing keys. We may see an error message if we select a multi-Region key or an asymmetric key. In that case, generate another key for use with AWS Control Tower resources.&lt;/p&gt;

&lt;p&gt;The customer data in AWS Control Tower is encrypted at rest, by default, using SSE-S3.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Step 3. Review and set up the landing zone&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;• At the console, review the Service permissions and when we are ready, choose I understand the permissions AWS Control Tower will use to administer AWS resources and enforce rules on my behalf.&lt;/p&gt;

&lt;p&gt;• In order to finalize our selections and initialize launch, choose Set up landing zone.&lt;/p&gt;

&lt;p&gt;• It can take about thirty minutes to complete. During setup, AWS Control Tower creates our Root level, the Security OU, and the shared accounts. Other AWS resources are created, modified, or deleted.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Confirm SNS subscriptions&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The email address which we provided for the audit account will receive AWS Notification – Subscription Confirmation emails from every AWS Region supported by AWS Control Tower. &lt;/p&gt;

&lt;p&gt;In order to receive compliance emails in our audit account, we must choose the Confirm subscription link within each email from each AWS Region supported by AWS Control Tower.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Reference&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.wellarchitectedlabs.com/security/quests/quest_100_quick_steps_to_security_success/1_control_tower/"&gt;https://www.wellarchitectedlabs.com/security/quests/quest_100_quick_steps_to_security_success/1_control_tower/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Labs:&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://controltower.aws-management.tools/immersionday/"&gt;https://controltower.aws-management.tools/immersionday/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hope you have got some idea about AWS control tower.&lt;/p&gt;

&lt;p&gt;Happy Learning 📚&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Social Footprints:&lt;/strong&gt;
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.linkedin.com/in/sraddepalli/"&gt;My LinkedIn&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://github.com/sraddepalli"&gt;My GitHub&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Thank you!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Security best practices of Amazon S3</title>
      <dc:creator>Srinivasa Raju Addepalli</dc:creator>
      <pubDate>Thu, 01 Sep 2022 06:30:06 +0000</pubDate>
      <link>https://dev.to/aws-builders/security-best-practices-of-amazon-s3-56gn</link>
      <guid>https://dev.to/aws-builders/security-best-practices-of-amazon-s3-56gn</guid>
      <description>&lt;br&gt;
 
&lt;h1&gt;
  
  
  &lt;strong&gt;Security best practices of Amazon S3&lt;/strong&gt;
&lt;/h1&gt;
&lt;h2&gt;
  
  
  &lt;strong&gt;Amazon S3&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Amazon S3 is an object storage service. It enables us to store virtually unlimited amounts of data. Data files are stored as objects. &lt;/p&gt;

&lt;p&gt;We place objects in a bucket. Every S3 bucket name must be globally unique across Regions (unique across all AWS customer accounts). &lt;/p&gt;

&lt;p&gt;The objects we store can vary in size from 0 bytes to 5 TB. Though individual objects cannot be larger than 5 TB, we can store as much total data as we need.&lt;/p&gt;

&lt;p&gt;Object values are immutable, which means that after we upload an object, we cannot modify the value. If we want to modify the object, we must make a change outside of Amazon S3 and then re-upload the object. &lt;/p&gt;

&lt;p&gt;Objects also include metadata, which is a set of name-value pairs we can use to store information about the object. we can assign metadata, which is referred to as user-defined metadata, to our objects in Amazon S3. Amazon S3 also assigns system-metadata to these objects, which it uses for managing objects.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Security of Amazon S3 - Introduction&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Security is a shared responsibility between AWS and customers. AWS is responsible for the “security of the cloud,” and customers are responsible for “security in the cloud”&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Security of the cloud&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AWS is responsible for protecting the infrastructure that runs Amazon Simple Storage Service (Amazon S3). The effectiveness of the security is regularly tested and verified by third-party auditors as part of the AWS compliance programs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Security in the cloud&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Our responsibility is managing access to our data (by using tools to apply the appropriate permissions and access levels). We are also responsible for your organization’s requirements, and applicable laws and regulations.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Key security best practices of Amazon S3&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;• Access control&lt;/p&gt;

&lt;p&gt;• Data protection&lt;/p&gt;

&lt;p&gt;• Monitor and audit security settings&lt;/p&gt;

&lt;p&gt;Amazon S3 offers access policy options broadly categorized as resource based policies and user policies. Access policies we attach to our resources (buckets and objects) are referred to as resource-based policies.&lt;/p&gt;

&lt;p&gt;When granting permissions, we have to decide who is getting them, which Amazon S3 resources they are getting permissions for, and specific actions we want to allow on those resources.&lt;/p&gt;

&lt;p&gt;By default, all Amazon S3 resources (buckets, objects, and related sub resources (lifecycle configuration and website configuration) are private. &lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Access Control best practices:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;• Implement a “Least Privilege” access model to limit access to S3 resources by using a combination of Identity and Access Management (IAM) policies, bucket policies and S3 Access Points&lt;/p&gt;

&lt;p&gt;• Ensure that our S3 buckets are not publicly accessible&lt;/p&gt;

&lt;p&gt;• Limit access to specific Virtual Private Clouds (VPCs) or known IP address ranges with bucket policies, and access point policies&lt;/p&gt;

&lt;p&gt;• Use IAM roles for applications and AWS services that require Amazon S3 access&lt;/p&gt;

&lt;p&gt;• Consider Amazon S3 presigned URLs or Amazon CloudFront signed URLs to provide limited-time access to Amazon S3 for specific applications&lt;/p&gt;

&lt;p&gt;• Use Amazon S3 VPC Endpoints and Service Control Policies&lt;/p&gt;

&lt;p&gt;• Use Access Analyzer for S3 to monitor and control access to our data&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Data protection best practices for S3&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;• Encrypt all Amazon S3 data at rest using Server-side Encryption (SSE) or client-side encryption&lt;/p&gt;

&lt;p&gt;• Enforce encryption-in-transit for access to Amazon S3&lt;/p&gt;

&lt;p&gt;• Enable object versioning&lt;/p&gt;

&lt;p&gt;• Enable Multi-factor Authentication (MFA) Delete and S3 Object Lock when appropriate&lt;/p&gt;

&lt;p&gt;• Consider S3 Replication to different AWS accounts to protect our data and remain compliant&lt;/p&gt;

&lt;p&gt;• Use tools including Amazon Macie, Amazon GuardDuty for S3, and Amazon S3 Inventory to protect your sensitive data Monitor&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Monitor and audit security settings for S3&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;• Audit Amazon S3 API actions using AWS CloudTrail&lt;/p&gt;

&lt;p&gt;• Monitor data access from Amazon S3 with access logging&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Other S3 best practices&lt;/strong&gt;
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Encryption of data at rest
&lt;/h3&gt;

&lt;p&gt;We can use Server-Side Encryption and Client-Side Encryption for protecting data at rest in Amazon S3&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Server-Side Encryption&lt;/strong&gt; – Request Amazon S3 to encrypt our object before saving it on disks in its data centers and then decrypt it when you download the objects. Server-side encryption can help reduce risk to our data by encrypting the data with a key that is stored in a different mechanism than the mechanism that stores the data itself.&lt;/p&gt;

&lt;p&gt;Amazon S3 provides these server-side encryption options:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Server-side encryption with Amazon S3‐managed keys (SSE-S3).&lt;/li&gt;
&lt;li&gt;Server-side encryption with KMS key stored in AWS Key Management Service (SSE-KMS).&lt;/li&gt;
&lt;li&gt;Server-side encryption with customer-provided keys (SSE-C).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Client-Side Encryption&lt;/strong&gt; – Encrypt data client-side and upload the encrypted data to Amazon S3&lt;/p&gt;

&lt;p&gt;We have to manage the encryption process, the encryption keys, and related tools. As with server-side encryption, client-side encryption can help reduce risk by encrypting the data with a key that is stored in a different mechanism than the mechanism that stores the data itself.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Enforce encryption of data in transit&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;We can use HTTPS (TLS) to help prevent potential attackers from eavesdropping on or manipulating network traffic using person-in-the-middle or similar attacks. You should allow only encrypted connections over HTTPS (TLS) using the condition aws:SecureTransport on Amazon S3 bucket policies.&lt;/p&gt;

&lt;p&gt;Hope you have got some basic idea about Security best practices of S3.&lt;/p&gt;

&lt;p&gt;Happy Learning 📚&lt;/p&gt;

&lt;p&gt;Thank you!&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Social Footprints:&lt;/strong&gt;
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.linkedin.com/in/sraddepalli/"&gt;My LinkedIn&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://github.com/sraddepalli"&gt;My GitHub&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Six Pillars of AWS Well-Architected Framework</title>
      <dc:creator>Srinivasa Raju Addepalli</dc:creator>
      <pubDate>Mon, 22 Aug 2022 03:54:00 +0000</pubDate>
      <link>https://dev.to/aws-builders/pillars-of-aws-well-architected-framework-2kem</link>
      <guid>https://dev.to/aws-builders/pillars-of-aws-well-architected-framework-2kem</guid>
      <description>&lt;br&gt;
 
&lt;h1&gt;
  
  
  &lt;strong&gt;AWS Cloud Services - Pillars of AWS Well-Architected Framework&lt;/strong&gt;
&lt;/h1&gt;
&lt;h1&gt;
  
  
  &lt;strong&gt;What is Cloud Architecture&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;Cloud architecture is the practice of applying cloud characteristics to a solution that uses cloud services and features to meet an organization’s technical needs and business use cases. A solution is similar to a blueprint for a building.&lt;/p&gt;

&lt;p&gt;We can use AWS services to create highly available, scalable, and reliable architectures&lt;/p&gt;

&lt;p&gt;Software systems require architects to manage their size and complexity.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Cloud architects&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;• Engage with decision makers to identify the business goals and the capabilities that need improvement. &lt;/p&gt;

&lt;p&gt;• Ensure alignment between technology deliverables of a solution and the business goals.&lt;/p&gt;

&lt;p&gt;• Work with delivery teams that are implementing the solution to ensure that the technology features are appropriate. &lt;/p&gt;

&lt;p&gt;Having well-architected systems increases the likelihood that the technology deliverables will help meet business goals.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;AWS Well-Architected Framework&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;The AWS Well-Architected Framework provides a consistent approach to evaluate cloud architectures and guidance to help implement designs.&lt;/p&gt;

&lt;p&gt;It is based on six pillars - operational excellence, security, reliability, performance efficiency, cost optimization, and sustainability.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The pillars of the AWS Well-Architected Framework&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--dErdrjhb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jashvsby17buoi3r8ynl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--dErdrjhb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jashvsby17buoi3r8ynl.png" alt="The pillars of the AWS Well-Architected Framework" width="804" height="769"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Operational Excellence&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;The Operational Excellence pillar addresses the ability to run systems and gain insight into their operations to deliver business value. It also addresses the ability to continuously improve supporting processes and procedures. &lt;/p&gt;

&lt;p&gt;When we design a workload for operations, we must be aware of how it will be deployed, updated, and operated. Implement engineering practices that align with defect reductions and quick, safe fixes. Enable observation with logging, instrumentation, and business and technical metrics so that you can gain insight into what is happening inside your architecture.&lt;/p&gt;

&lt;p&gt;In AWS, we can view our entire workload (applications, infrastructure, policy, governance, and operations) as code. It can all be defined in and updated using code. This means that we can apply the same engineering discipline that we use for application code to every element of our stack.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Security&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;The Security pillar addresses the ability to protect information, systems, and assets while delivering business value through risk assessments and mitigation strategies. &lt;/p&gt;

&lt;p&gt;Our architecture will present a much stronger security presence if we implement &lt;br&gt;
a strong identity foundation, enable traceability, apply security at all layers, automate security best practices, and protect data in transit and at rest.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Reliability&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;The Reliability pillar addresses the ability of a system to recover from infrastructure or service disruptions and dynamically acquire computing resources to meet demand. It also addresses the ability of a system to mitigate disruptions such as misconfigurations or transient network issues. It can be difficult to ensure reliability in a traditional environment. Issues arise from single points of failure, lack of automation, and lack of elasticity. By applying the best practices outlined in the Reliability pillar, we can prevent many of these issues. It will help us and our customers to have a properly designed architecture with respect to high availability, fault tolerance, and overall redundancy.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Performance efficiency&lt;/strong&gt;
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;choose efficient resources and maintain their efficiency ad demand changes&lt;/li&gt;
&lt;li&gt;Democratize advanced technologies&lt;/li&gt;
&lt;li&gt;Employ mechanical sympathy.&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Cost Optimization&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;Cost optimization is an ongoing requirement of any good architectural design. The process is iterative, and it should be refined and improved throughout our production lifetime. Understand how efficient our current architecture is in relation to our goals can remove unneeded expense. We can consider using managed services because they operate at cloud scale, and they can offer a lower cost per transaction or service.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Sustainability&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;The Sustainability pillar focuses on environmental impacts, especially energy consumption and efficiency, since they are important levers for architects to inform direct action to reduce resource usage.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;The AWS Well-Architected Tool&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;The AWS Well-Architected Tool is a self-service tool that provides us with on-demand access to current AWS best practices. These best practices can help us build secure, high-performing, resilient, and efficient application infrastructure on AWS. &lt;/p&gt;

&lt;p&gt;It helps us review the state of our workloads and compares them to the latest AWS architectural best practices.&lt;/p&gt;

&lt;p&gt;This tool is available in the AWS Management Console. We can define our workload and answer a series of questions in the areas of operational excellence, security, reliability, performance efficiency, and cost optimization. The AWS Well-Architected Tool then delivers an action plan with step-by-step guidance on how to improve our workload for the cloud.&lt;/p&gt;

&lt;p&gt;We can use the results that the tool provides to identify next steps for improvement, drive architectural decisions, and bring architecture considerations into our corporate governance process.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;References :&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://www.wellarchitectedlabs.com/operational-excellence/"&gt;https://www.wellarchitectedlabs.com/operational-excellence/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.wellarchitectedlabs.com/security/"&gt;https://www.wellarchitectedlabs.com/security/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.wellarchitectedlabs.com/reliability/"&gt;https://www.wellarchitectedlabs.com/reliability/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.wellarchitectedlabs.com/performance-efficiency/"&gt;https://www.wellarchitectedlabs.com/performance-efficiency/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.wellarchitectedlabs.com/cost/"&gt;https://www.wellarchitectedlabs.com/cost/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.wellarchitectedlabs.com/sustainability/"&gt;https://www.wellarchitectedlabs.com/sustainability/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.wellarchitectedlabs.com/well-architectedtool/"&gt;https://www.wellarchitectedlabs.com/well-architectedtool/&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Social Footprints :&lt;/strong&gt;
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.linkedin.com/in/sraddepalli/"&gt;My LinkedIn&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://github.com/sraddepalli"&gt;My GitHub&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Happy Learning 📚&lt;/p&gt;

&lt;p&gt;Thank you!&lt;/p&gt;

</description>
      <category>aws</category>
      <category>it</category>
      <category>cloud</category>
    </item>
  </channel>
</rss>
