Tech World with Murali Moole Muralidhara Reddy
LI
TECH WORLD WITH MURALI
A
Courses Offered:
R
● DevOps
● AWS
U
● Kubernetes
● Terraform
● Helm
M
● Logging and Monitoring, etc. MOOLE MURALIDHARA REDDY
DevOps Consultant and a Solution Architect
Mail: [email protected]
Website: techworldwithmurali.com
H
IT
W
LD
R
O
W
H
C
TE
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
● This plan outlines a comprehensive enterprise cloud migration strategy led by
cross-functional collaboration across Dev, QA, DevOps, and Architecture teams.
LI
● The objective is to migrate a mix of microservices, monolithic applications, and databases
from on-premises infrastructure to the AWS cloud using industry best practices, automation
tools, and a phased execution approach.
A
R
Example Scenario:
U
Your organization has multiple environments in an on-premises setup, and now, we are planning
M
to migrate some applications and databases from on-premises to AWS.
H
Existing On-Premises Environments:
● Dev
IT
W
● Test
LD
● QA
● UAT
R
O
● Pre-PROD
W
● Prod
H
Applications & Databases to be Migrated:
C
● 10 microservices
TE
● 4 monolithic applications
● 5 MySQL databases
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
Phase 1: Planning & Preparation
LI
Step 1: Initial Discussion
A
R
● The Development (Dev) team, DevOps team, and QA VP/Director discuss the migration
U
strategy.
M
Step 2: Informing Managers
H
● The respective VP/Director informs managers about the new project to migrate from
on-premises to AWS.
IT
W
Step 3: Manager/Architect Level Planning
LD
● Managers and Architects discuss and plan the necessary actions required for the migration.
R
Step 4: Communicating the Plan to Teams
O
W
● The respective managers inform their teams about the migration project.
● Managers determine which team members will be involved in the migration.
H
C
Step 5: Scrum Master’s Role
TE
● The Scrum Master is responsible for:
○ Scheduling migration meetings
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
○ Tracking status updates
○ Managing migration-related activities
LI
○ Coordinating with other teams by reaching out or scheduling meetings when
A
additional information is needed.
R
U
Step 6: Dev, DevOps & QA Collaboration
M
● The Development, DevOps, and QA teams meet to discuss the migration process in detail.
H
Step 7: Application Inventory Preparation
IT
● Prepare an Excel sheet listing all applications and databases that need to be migrated, along
W
with any dependencies.
LD
Example:
● 10 microservices
R
● 4 monolithic applications
O
W
● 5 MySQL databases
● Other dependencies, if applicable
H
C
Step 8: Review & Task Assignment
TE
● The Excel sheet is reviewed step by step.
● Tasks are assigned to teams/engineers responsible for different components.
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
Step 9: JIRA/Rally Ticket Creation
● The DevOps manager or Scrum Master creates JIRA/Rally tickets based on assigned tasks
LI
from the Excel sheet.
A
● Daily internal meetings for the DevOps, QA, and Development teams will be conducted
R
U
separately to track progress.
M
● The Scrum Master will set up daily or bi-weekly migration meetings to monitor progress.
📦 Cloud Migration Strategies: The 6 R's
H
IT
W
When migrating workloads to the cloud, organizations typically follow one or more of the
following six strategies, commonly known as the 6 R’s of Cloud Migration:
LD
R
🚚 Lift and Shift (Rehost)
O
1.
W
● Definition: Move applications to the cloud without modifying them.
● When to Use:
H
○ Quick migrations
C
TE
○ Legacy systems
○ When minimal change is required
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
● Example: Migrating a virtual machine from on-premises to AWS EC2 without altering the
application.
LI
A
2. 🔧 Replatform (Lift, Tinker, and Shift)
R
U
● Definition: Move to the cloud with minor optimizations to take advantage of cloud-native
M
capabilities.
H
● When to Use:
○ To improve performance or cost
IT
W
○ When small changes are feasible
● Example: Migrating an app to AWS EC2 and replacing a local database with Amazon
LD
RDS.
R
O
3. 🧬 Refactor / Rearchitect
W
● Definition: Redesign the application to be cloud-native, often involving significant
H
changes.
C
● When to Use:
TE
○ For scalability, agility, or long-term cost savings
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
○ To adopt microservices, containers, or serverless architectures
● Example: Refactoring a monolithic application into a microservices-based architecture
LI
using AWS Lambda for compute, API Gateway for routing, and DynamoDB as a scalable
A
NoSQL database.
R
U
🗑️ Retire
M
4.
H
● Definition: Decommission applications that are no longer useful.
● When to Use:
IT
W
○ During assessment, when apps are identified as obsolete or redundant
● Example: Shutting down an old internal reporting tool that is no longer used.
LD
R
5. 🛑 Retain
O
W
● Definition: Keep certain applications on-premises or delay migration.
● When to Use:
H
○ Compliance or regulatory concerns
C
○ Low priority applications
TE
○ Systems not yet ready for migration
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
● Example: Retaining an ERP system that requires on-prem hosting due to licensing
constraints.
LI
A
6. 🛒 Repurchase
R
U
● Definition: Move to a SaaS-based solution, effectively replacing the existing system.
M
● When to Use:
H
○ When a better SaaS alternative exists
IT
○ For faster time to value and reduced management overhead
W
● Example: Moving from a self-hosted CRM to Salesforce or Microsoft 365.
LD
Phase 2: Infrastructure Setup
R
Step 10: Architecture Design
O
W
● Respective Architects will design the implementation architecture for this migration.
H
Step 11: Task Execution Begins
C
● Based on assigned tasks in JIRA, DevOps engineers and the Development team start
TE
executing tasks based on priority.
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
Step 12: AWS Account Creation
● If AWS accounts are not already available, create AWS accounts as per the migration plan.
LI
● Either set up environment-specific accounts (e.g., separate accounts for Dev, Test, QA) or
A
R
consolidate all lower environments into a single AWS account.
U
● Production, Pre-Prod, and Infrastructure accounts should be separate for security and
M
compliance.
H
Step 13: AWS Networking Setup via Terraform
IT
● The DevOps engineer sets up AWS networking components, including:
W
○ VPC, Subnets, Route Tables, NAT Gateways, Internet Gateways, Security Groups,
LD
NACLs
○ Setting up the Transit Gateway (TGW) if required for multi-environment networking
R
O
Example: VPC CIDR Blocks
W
● DEV CIDR - 10.20.0.0/16
H
● TEST CIDR - 10.30.0.0/16
C
● UAT CIDR - 10.40.0.0/16
TE
● PRE-PROD CIDR - 10.50.0.0/16
● PROD CIDR - 10.60.0.0/16
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
10
● INFRA CIDR - 10.70.0.0/16
Note: Wherever applicable, we will use Terraform to automate infrastructure provisioning.
LI
Step 14: Site-to-Site VPN Setup
A
● Work with the on-premises network team to establish a Site-to-Site VPN between
R
U
on-premises and AWS.
M
● Test connectivity to ensure smooth integration with AWS resources.
H
Note: Wherever applicable, we will use Terraform to automate infrastructure provisioning.
Step 15: AWS Client VPN / Cisco VPN Setup IT
W
● Set up AWS Client VPN or Cisco VPN to allow secure access to private AWS resources.
LD
● Example use case: Accessing internal application URLs (e.g.,
https://user-registration-dev.techworldwithmurali.in).
R
Prerequisites for AWS Client VPN Setup:
O
W
1. AWS Directory Service configuration
2. Amazon Certificate Manager (ACM) for SSL/TLS certificates
H
Note: Wherever applicable, we will use Terraform to automate infrastructure provisioning.
C
TE
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
11
Step 16: DevOps Tools Installation in Infra VPC
● Deploy essential DevOps tools in the Infra VPC for automation and CI/CD processes.
LI
Tools to be installed:
A
● Jenkins - for CI/CD pipeline automation
R
U
● JFrog Artifactory - for artifact storage
M
● SonarQube - for code quality analysis
H
Example URLs:
IT
● Jenkins - https://jenkins.techworldwithmurali.in
W
● JFrog Artifactory - https://artifactory.techworldwithmurali.in
LD
● SonarQube - https://sonarqube.techworldwithmurali.in
Note: These tools can either be deployed on individual EC2 instances or hosted in an EKS
R
(Kubernetes) cluster for better scalability.
O
W
Step 17: ECS or EKS setup for a microservice application via Terraform.
H
● Deploy microservices in either:
C
○ ECS (Elastic Container Service)
TE
○ EKS (Elastic Kubernetes Service)
● The choice depends on application architecture and team discussions.
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
12
Note: Wherever applicable, we will use Terraform to automate infrastructure provisioning.
Step 18: Monolithic Applications Setup via Terraform
LI
● For monolithic applications, set up:
A
○ Auto Scaling Groups (ASG)
R
U
○ Application Load Balancer (ALB) (internal/external) for traffic distribution
M
○ Create/update the records in Route 53 hosted zone etc.
H
Note: Wherever applicable, we will use Terraform to automate infrastructure provisioning.
Step 19: Route 53 DNS Configuration IT
W
● Create a Hosted Zone in Route 53. Example:
LD
○ techworldwithmurali.in
● Migrate DNS records to the Route 53 hosted zone, if applicable.
R
O
Step 20: Database Setup
W
● Set up Amazon RDS MySQL Cluster as per the database requirements.
H
● Inform the DBA team once provisioning is complete.
C
Note: Wherever applicable, we will use Terraform to automate infrastructure provisioning.
TE
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
13
Step 21: Database Migration
● Migrate databases from on-premises to AWS using the appropriate strategy:
LI
○ AWS DMS (Database Migration Service)
A
○ Log Shipping
R
U
○ Other database replication techniques
M
Responsibility: The DBA team will handle this migration process.
H
Step 21: Infrastructure Setup Completion Notification
● Once the infrastructure setup is complete:
IT
W
○ The DevOps team will notify the Scrum Master, Development team, and QA team.
LD
○ All corresponding JIRA/Rally tickets will be updated accordingly.
○ A final infrastructure validation checklist will be completed to ensure:
R
■ Networking components (VPC, subnets, security groups) are correctly
O
W
configured.
■ VPN connectivity is established and tested.
H
■ DevOps tools are accessible and functional.
C
■ Databases are provisioned, and accessible.
TE
■ Route 53 DNS records are correctly set up.
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
14
○ Documentation, including architecture diagrams, and access credentials, will be
shared in the designated **Confluence/JIRA **.
LI
Phase 3: Build, Deployment & Testing
A
R
U
Step 22: Development Team Preparation
M
● Developers implement any necessary changes to their applications for deployment.
H
Step 23: Application Build
IT
● Developers build the application using Jenkins jobs.
W
Step 24: Deployment of Microservices/Monolithic Applications
LD
● Developers deploy microservices in the DEV environment using Jenkins jobs. After
R
deployment:
O
○ Load Balancers (LB), listeners, and Route 53 records are automatically created using
W
the Ingress Controller and ExternalDNS.
H
● Developers deploy monolithic applications in the DEV environment using Jenkins jobs.
C
After deployment:
TE
○ Load Balancers, listeners, and Route 53 records are automatically created via
Terraform.
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
15
Step 25: Testing the Application
● Validate the application whether the functionality is working as expected.
LI
Note: Once testing is complete, we will shut down the application on the AWS side. During the
A
cutover, we will bring the application back up.
R
U
Phase 4: Final Cutover to AWS: Cutover Plan & Go-Live Checklist
M
H
Step 26: Schedule the Cutover Meeting
IT
● Based on the final discussion, a cutover date will be finalized.
W
● The Scrum Master will schedule the meeting.
LD
● The cutover process typically takes 3 to 4 hours, but depending on the complexity of the
applications, it may take longer.
R
O
Step 27: Send Notification to Clients
W
● Notify Clients: Send a formal notification to all relevant clients/stakeholders regarding
H
today's scheduled cutover plan.
C
● Include Key Details:
TE
○ Cutover Date & Time
○ Expected Downtime (if any)
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
16
○ New AWS endpoint or DNS URL (if it’s changing)
○ What actions (if any) are required from the client side
LI
○ Point of Contact in case of any issues or queries
A
● Purpose of the Notification:
R
○ Ensure clients are aware of the migration
U
○ Minimize surprises and set expectations regarding any temporary inaccessibility
M
○ Help clients validate functionality post-cutover
✅ Example email subject:
H
IT
“[INFO] Scheduled Cutover to AWS – [Application Name] on [Date]”
W
✅ Example content snippet:
LD
Dear Client,
As part of our cloud modernization initiative, we are migrating [Application Name] from our
R
on-premises infrastructure to AWS today, [Date].
O
The expected cutover time is from [Start Time] to [End Time].
W
During this time, the application may be briefly inaccessible.
H
Post-migration, the application will be accessible via: [New URL].
C
Please contact [Support Contact Info] for any assistance.
TE
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
17
Step 27.1: Stop the Application in On-Premises
● Stop the on-premises application after the final data sync.
LI
● Ensure that no new transactions are being processed in the on-premises system.
A
R
Step 28: DNS Cutover & Go-Live
U
● Update DNS Records: Modify Route 53 records to point to the AWS Load Balancer
M
endpoints.
H
● Enable AWS Application: Make the AWS-hosted application live.
IT
● Monitor Traffic Flow: Ensure users are now connecting to AWS instead of the on-premises
W
system.
LD
Step 29: Application Validation & QA Testing
R
● Developers and QA teams validate that the application functions as expected.
O
● Ensure all integrations, services, and APIs are working correctly.
W
● The QA team performs regression testing and notifies all relevant teams of any issues.
H
Step 30: Monitoring & Stabilization
C
TE
● Monitor the environment for a few days to detect any issues.
● Address and resolve issues as needed with the Development or DevOps teams.
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
18
Step 31: Rollback Plan (If Needed)
● If issues occur, attempt to fix them on demand.
LI
● If unresolved, roll back the DNS endpoint to the on-premises infrastructure.
A
R
Step 32: Migration to Other Environments
U
● If everything is stable, replicate the same process for:
M
○ TEST
H
○ QA
○ UAT
IT
W
○ Pre-Prod
LD
○ PROD
R
O
W
H
C
TE
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036
Tech World with Murali Moole Muralidhara Reddy
19
About the Author:
LI
A
R
U
M
H
IT
MOOLE MURALIDHARA REDDY
Solution Architect / DevOps Consultant
W
● I am having rich experience in DevOps and Cloud technologies and have done many projects on all
varieties of tools which are hot cake in the market.
LD
● I am passionate about learning new technology and teaching.
● My courses focus on providing students with an interactive and hands-on experience in learning new
technology that makes learning really interesting.
R
● I have a wide range of experience in Telecom, Banking, Healthcare, Retail domains.
O
● I have been training people in newer technologies, like DevOps, AWS, Kubernetes, Terraform,
Rancher, etc. and they have settled in MNC’s and drawing respectable salaries.
W
● I have undergone many challenges and changed the entire phase of the projects and mastered in
DevOps implementation and many more to go.
● Certified in AWS, Kubernetes , Terraform, Linux and many to go.
H
Please check out my courses and join me with thousands of others who are learning the latest
C
DevOps and Cloud tools!
Youtube : https://www.youtube.com/@TechWorldwithMural
TE
Website : https://techworldwithmurali.com/
https://www.linkedin.com/in/moole-muralidhara-reddy/ Mobile: +91 7893121036