[go: up one dir, main page]

0% found this document useful (0 votes)
43 views20 pages

Azure Week7 Project

The document outlines the architecture for migrating an application from on-premises to Azure Cloud using the Strangler Fig Pattern, detailing components like Application Gateway, Traffic Manager, and Azure MySQL Database. It compares the monthly operational expenditures (OpEx) of Azure Cloud ($844.54) versus on-premises hosting ($1,986.42), highlighting Azure's cost efficiency, scalability, and reduced management overhead. A skilled team is required for successful migration and implementation, including roles such as Cloud Architect and System Administrators.

Uploaded by

jain.p.manoj
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
43 views20 pages

Azure Week7 Project

The document outlines the architecture for migrating an application from on-premises to Azure Cloud using the Strangler Fig Pattern, detailing components like Application Gateway, Traffic Manager, and Azure MySQL Database. It compares the monthly operational expenditures (OpEx) of Azure Cloud ($844.54) versus on-premises hosting ($1,986.42), highlighting Azure's cost efficiency, scalability, and reduced management overhead. A skilled team is required for successful migration and implementation, including roles such as Cloud Architect and System Administrators.

Uploaded by

jain.p.manoj
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

Contents

Introduction ........................................................................................................................... 1
Monthly OpEx for above architecture ...................................................................................... 4
Cost for On-Premises Hosting ................................................................................................ 7
Cost comparison of On-Prem vs Azure Cloud ........................................................................ 10
Team needed for complete migration and implementation. ................................................... 14
Project Plan for implementation of above solution ................................................................. 16

Introduction

The provided diagram depicts an Azure architecture for migrating an application from on-prem
to Azure Cloud using Strangler Fig Pattern. Here's a breakdown of each component and their
interactions:

1. User:

 Users access the system through port 80.

2. Application Gateway:

 Acts as the entry point for user requests. It routes tra ic based on URL paths.

 For requests matching /employees/*, it forwards them to employees


application vi Tra ic Load Balancer

 Other requests are directed to the Webapp-sp pool via an Azure Load Balancer.

1|Pa ge Manoj Jain


3. Tra ic Manager Profiles:

 Manages tra ic distribution for /employees/* paths.

 Distributes 90% of the tra ic to the Employees-sp VM pool.

 Sends the remaining 10% to an Azure App Service.

4. Employees-sp Pool:

 Consists of Virtual Machines (VMs) located in East US and East US 2.

 These VMs are behind an Azure Load Balancer, which manages tra ic
distribution within this pool.

 These VMs connect to an Azure MySQL database.

5. Azure App Service:

 Receives 10% of the tra ic for /employees/* from Tra ic Manager Profiles.

 Also connects to the Azure MySQL database.

6. Webapp-sp Pool:

 Handles general web application tra ic routed from the Application Gateway.

 Consists of VMs located in East US and East US 2.

 These VMs are also behind an Azure Load Balancer with pool a inity, ensuring
that sessions are maintained with the same VM.

 This pool connects to an Azure MySQL database.

7. Azure Load Balancers:

 Used to distribute incoming network tra ic across multiple VMs to ensure high
availability and reliability.

 One load balancer is associated with the Employees-sp pool.

 Another load balancer is associated with the Webapp-sp pool.

8. Azure MySQL Database:

 Both the Employees-sp pool and Webapp-sp pool connect to this database for
data storage and retrieval.

Summary:

 The architecture uses Azure Application Gateway to route incoming tra ic based on URL
paths.

 Tra ic Manager Profiles distribute tra ic for the /employees/* path between an
Employees-sp pool (90%) and Azure App Service (10%). Eventually all the requests will
start flowing to Azure App Service and traditional VMs in the VM pool(VM Scale Set)
would be discontinued, adopting Strangler Fig Pattern.

2|Pa ge Manoj Jain


 Webapp-sp pool handles general web application tra ic, using load balancing and pool
a inity for session persistence.

 Both pools (Employees-sp and Webapp-sp) connect to an Azure MySQL database for
backend data operations.

This setup ensures migration of applications from on-premises to Azure Cloud and slowly
adopting the Azure Cloud Native service replacing the traditional VMs and on-premises services
also ensuring scalability, high availability and performance without any impact to end user and
minimal downtime.

3|Pa ge Manoj Jain


Monthly OpEx for above architecture
To calculate the monthly Operational Expenditure (OpEx) for the given Azure implementation
scenario, we'll break down the costs for each component used in the architecture. We will
consider the following components:

1. Azure Application Gateway

2. Tra ic Manager

3. Virtual Machines (VMs)

4. Azure Load Balancer

5. Azure App Service

6. Azure MySQL Database

Additionally, we will factor in the cost of data transfer and storage. The costs provided are
approximations and might vary based on the actual usage and Azure pricing at the time.

1. Azure Application Gateway

 Standard pricing tier: ~$0.025 per gateway hour

 Data processed: ~$0.008 per GB

Assuming 24/7 uptime:

 Gateway cost: 0.025×24×30=$18 per month

 Assume 1000 GB of data processed: 1000×0.008=$8

Total Application Gateway cost: $18+$8=$26

2. Tra ic Manager

 Standard DNS queries: $0.54 per million queries

 Assume 100 million queries per month: 100×0.54=$54

3. Virtual Machines (VMs)

Assume Standard D2s v3 (2 vCPUs, 8 GB RAM) in East US and East US 2 regions:

 Cost per VM: ~$86 per month

 Number of VMs: 4 (2 for Employees-sp, 2 for Webapp-sp)

Total VM cost: 4×86=$344

4. Azure Load Balancer

 Basic Load Balancer: Free

 Standard Load Balancer: ~$0.025 per rule per hour

 Assume 2 rules per Load Balancer: 2×0.025×24×30=$36

Total Load Balancer cost: $36

4|Pa ge Manoj Jain


5. Azure App Service

Assume Standard Plan (S1): ~$73.40 per instance per month

 Assume 2 instances: 2×73.40=$146.80

6. Azure MySQL Database

Assume Basic tier, 1 vCore, 50 GB storage:

 Compute cost: ~$50 per month

 Storage cost: ~$0.10 per GB per month

 Additional backup storage: ~$0.10 per GB per month

Total MySQL cost: 50+(50×0.10)+(50×0.10)=$60

7. Data Transfer

Assume 2 TB data transfer out per month:

 Data transfer cost: ~$0.087 per GB (first 5 GB free)

 Cost: 2048−5=2043 GB

 2043×0.087=$177.74

Total Monthly OpEx Calculation

1. Application Gateway: $26

2. Tra ic Manager: $54

3. Virtual Machines: $344

4. Load Balancer: $36

5. Azure App Service: $146.80

6. Azure MySQL Database: $60

7. Data Transfer: $177.74

Total Monthly OpEx: 26+54+344+36+146.80+60+177.74=$844.54

Yearly Growth Factor

With 20% YoY growth, the number of users and the associated costs will increase. For
simplicity, let's assume a linear increase in cost:

1. First Year: $844.54 per month

2. Second Year: $844.54×1.2=$1013.45

3. Third Year: $1013.45×1.2=$1216.14

Given the rapid growth in the number of employees, the infrastructure will need to scale
proportionally to handle the increased load. Therefore, you should plan for a scalable solution
and consider additional costs for monitoring, security, and other operational overheads.

5|Pa ge Manoj Jain


Conclusion

The initial monthly OpEx for the given Azure architecture is approximately $844.54, and it is
expected to increase with a 20% YoY growth. Therefore, periodic reassessment and optimization
of the architecture are crucial to maintain cost e iciency.

6|Pa ge Manoj Jain


Cost for On-Premises Hosting
To calculate the monthly Operational Expenditure (OpEx) for implementing the same solution
on-premises, we'll consider the following components and costs:

1. Servers (for VMs)

2. Load Balancers

3. Network Infrastructure

4. Storage (for database)

5. Power and Cooling

6. Maintenance and Support

7. Data Center Space

Assumptions

1. Servers: Assume we need similar VM specifications to the Azure scenario.

2. Load Balancers: Cost for equivalent on-prem load balancing hardware.

3. Network Infrastructure: Cost for network switches, routers, and other infrastructure.

4. Storage: Cost for setting up and maintaining MySQL databases on-prem.

5. Power and Cooling: Energy cost for running and cooling the data center.

6. Maintenance and Support: Regular maintenance and support contracts.

7. Data Center Space: Rental cost for the physical space.

1. Servers

For the equivalent of 4 VMs with specs similar to Standard D2s v3 (2 vCPUs, 8 GB RAM), we
would need 2 physical servers (assuming virtualization):

 Cost per server: $5,000

 Lifespan: 3 years (36 months)

Total server cost: 2×138.89=$277.78

2. Load Balancers

Equivalent on-prem load balancing hardware:

 Cost per load balancer: $2,000

 Lifespan: 3 years (36 months)

Total load balancer cost: 2×55.56=$111.12

3. Network Infrastructure

Includes switches, routers, and cabling:

7|Pa ge Manoj Jain


 Cost: $10,000

 Lifespan: 3 years (36 months)

4. Storage (for MySQL database)

Storage array for databases and backups:

 Cost: $15,000 (includes disks and controllers)

 Lifespan: 3 years (36 months)

5. Power and Cooling

Energy cost for running and cooling the servers:

 Power consumption per server: 500 watts

 Cost per kWh: $0.12

 Monthly hours: 720 (24 hours * 30 days)

Power cost per server: 500×0.12×720/1000=$43.20

Total power cost: 2×43.20=$86.40

6. Maintenance and Support

Regular maintenance contracts for hardware and software:

 Annual cost: $5,000

 Monthly cost: 5000/12=$416.67

7. Data Center Space

Cost for renting space in a data center:

 Cost per rack unit (RU) per month: $50

 Assuming 4U per server: 4×2=8𝑈4×2=8U

Total space cost: 8×50=$400

Total Monthly OpEx Calculation

1. Servers: $277.78

2. Load Balancers: $111.12

3. Network Infrastructure: $277.78

4. Storage: $416.67

5. Power and Cooling: $86.40

6. Maintenance and Support: $416.67

7. Data Center Space: $400

Total Monthly OpEx: 277.78+111.12+277.78+416.67+86.40+416.67+400=$1,986.42

8|Pa ge Manoj Jain


Yearly Growth Factor

With 20% YoY growth, the infrastructure will need to expand. Assuming linear scaling for
simplicity:

1. First Year: $1,986.42 per month

2. Second Year: $1,986.42×1.2=$2,383.70

3. Third Year: $2,383.70×1.2=$2,860.44

Conclusion

The initial monthly OpEx for the given on-premises implementation is approximately $1,986.42,
and it is expected to increase with a 20% YoY growth. This comparison shows that on-premises
infrastructure might be more costly initially and requires substantial upfront investment in
hardware, which might not be the case with a cloud-based approach.

9|Pa ge Manoj Jain


Cost comparison of On-Prem vs Azure Cloud
On-Premises Costs

Component Monthly Cost ($)

Servers 277.78

Load Balancers 111.12

Network Infrastructure 277.78

Storage (Database) 416.67

Power and Cooling 86.40

Maintenance and
Support 416.67

Data Center Space 400

Total 1,986.42

Azure Cloud Costs

Component Monthly Cost ($)

Azure Application Gateway 26

Tra ic Manager 54

Virtual Machines (VMs) 344

Azure Load Balancer 36

Azure App Service 146.80

Azure MySQL Database 60

Data Transfer 177.74

Total 844.54

10 | P a g e Manoj Jain
Summary

Category On-Premises ($) Azure Cloud ($)

Initial Infrastructure High (CapEx) Low (OpEx)

Monthly OpEx 1,986.42 844.54

Scaling Costs High Moderate

Maintenance High Included

Flexibility Low High

Disaster Recovery Costly Built-in

Security Custom Integrated

Detailed Comparison

1. Initial Investment (CapEx) vs. Ongoing Costs (OpEx):

 On-Premises: High initial capital expenditure for purchasing servers, load


balancers, networking equipment, storage, etc. Depreciation costs are factored
into the monthly costs.

 Azure Cloud: Low initial investment as most costs are operational, paid monthly
based on usage.

2. Monthly Operational Costs:

 On-Premises: $1,986.42 per month

 Azure Cloud: $844.54 per month

3. Scaling:

 On-Premises: Scaling up requires additional hardware purchases and setup,


which involves significant time and cost.

 Azure Cloud: Scaling is easier and more flexible, often just requiring a few clicks
or automated scaling rules.

4. Maintenance and Support:

 On-Premises: High costs for maintaining hardware, software updates, and


support contracts.

11 | P a g e Manoj Jain
 Azure Cloud: Maintenance and support are generally included in the service,
reducing the need for a large in-house support team.

5. Flexibility:

 On-Premises: Lower flexibility due to physical hardware constraints.

 Azure Cloud: High flexibility, with easy provisioning and de-provisioning of


resources.

6. Disaster Recovery:

 On-Premises: Implementing disaster recovery solutions can be costly and


complex.

 Azure Cloud: Built-in disaster recovery and high availability options are
available.

7. Security:

 On-Premises: Custom security measures need to be implemented, maintained,


and updated by the organization.

 Azure Cloud: Security features and compliance certifications are integrated and
continuously updated by Microsoft.

Conclusion

 Cost E iciency: The Azure cloud deployment is significantly more cost-e icient on a
monthly basis compared to an on-premises setup, primarily due to lower ongoing
operational expenses.

 Scalability and Flexibility: Azure o ers superior scalability and flexibility, allowing the
organization to adjust resources dynamically based on demand.

 Management Overhead: Azure reduces the management overhead associated with


maintaining physical hardware, updates, and security.

Based on the cost analysis and additional benefits of flexibility, scalability, and lower
management overhead, deploying on Azure cloud is the more economical and practical
solution for most organizations, especially those experiencing rapid growth or requiring scalable
and resilient infrastructure.

12 | P a g e Manoj Jain
13 | P a g e Manoj Jain
Team needed for complete migration and
implementation.
To deploy and manage the described architecture, both in the cloud and on-premises, a skilled
and diverse team is necessary. This team should have expertise in various areas including cloud
infrastructure, networking, security, database management, and application development.
Here’s a composition of the team:

1. Cloud Architect / Solutions Architect

 Responsibilities: Design the overall architecture, ensure integration of all components,


optimize for performance and cost, and provide strategic guidance.

 Skills: Deep understanding of cloud services (Azure), experience in designing scalable


and resilient systems, knowledge of best practices.

2. System Administrators / DevOps Engineers

 Responsibilities: Manage and automate the deployment, scaling, and monitoring of the
infrastructure. Implement CI/CD pipelines.

 Skills: Proficient with infrastructure as code (e.g., Terraform, Azure Resource Manager
templates), CI/CD tools (e.g., Jenkins, Azure DevOps), container orchestration (e.g.,
Kubernetes), and scripting (e.g., PowerShell, Bash).

3. Network Engineer

 Responsibilities: Design and manage the network infrastructure, including load


balancers, VNETs, and VPNs.

 Skills: Expertise in network architecture, load balancing, routing, and security.


Familiarity with Azure networking components (e.g., Azure Load Balancer, Application
Gateway).

4. Database Administrator (DBA)

 Responsibilities: Set up, manage, and optimize the Azure MySQL database, ensure
data security, backup, and recovery.

 Skills: In-depth knowledge of MySQL, database optimization, backup and disaster


recovery solutions, and experience with Azure Database for MySQL.

5. Security Engineer

 Responsibilities: Ensure the security of the infrastructure, applications, and data.


Implement and monitor security policies.

 Skills: Proficient in security best practices, identity and access management (IAM),
encryption, and compliance standards (e.g., GDPR, HIPAA).

6. Application Developers

 Responsibilities: Develop and maintain the web applications and services running on
the architecture.

14 | P a g e Manoj Jain
 Skills: Strong programming skills in relevant languages (e.g., C#, JavaScript, Python),
experience with frameworks (e.g., .NET, Node.js), and knowledge of front-end and back-
end development.

7. Support Engineers / Help Desk

 Responsibilities: Provide technical support, handle incidents, and manage user


queries and issues.

 Skills: Strong troubleshooting skills, customer service orientation, and familiarity with
the deployed systems and applications.

8. Project Manager

 Responsibilities: Oversee the project, coordinate between di erent teams, manage


timelines and deliverables.

 Skills: Excellent organizational and communication skills, experience in managing IT


projects, familiarity with agile methodologies.

9. QA/Test Engineer

 Responsibilities: Ensure the quality and functionality of the applications through


rigorous testing.

Skills: Expertise in testing methodologies, tools (e.g., Selenium, JMeter), and scripting.
Familiarity with automated testing frameworks

Typical Team Size and Composition

For a medium-sized implementation as described, a team might look like this:

 1 Cloud Architect / Solutions Architect

 2-3 System Administrators / DevOps Engineers

 1-2 Network Engineers

 1-2 Database Administrators

 1-2 Security Engineers

 2-4 Application Developers

 1-2 Support Engineers

 1 Project Manager

 1 QA/Test Engineer

Conclusion

Deploying and managing the described architecture requires a multidisciplinary team with a mix
of technical skills and experience. The exact size and composition of the team might vary
depending on the complexity of the deployment, the specific requirements of the organization,
and whether the infrastructure is cloud-based or on-premises. Regular training and skill
updates are essential to keep the team adept with evolving technologies and best practices.

15 | P a g e Manoj Jain
Project Plan for implementation of above solution
Creating a high-level project deployment plan involves outlining the key phases and steps
required to deploy the architecture. This plan will include the major tasks, deliverables, and
milestones. Here's a structured deployment plan for the described architecture:

Phase 1: Project Initiation

1.1 Define Project Scope and Objectives

 Identify key stakeholders

 Define project goals and deliverables

 Establish success criteria

1.2 Assemble the Project Team

 Assign roles and responsibilities

 Establish communication channels

1.3 Develop Project Plan

 Create a detailed project schedule

 Define milestones and timelines

 Identify risks and mitigation strategies

Phase 2: Requirements Gathering and Analysis

2.1 Gather Business Requirements

 Conduct meetings with stakeholders

 Document functional and non-functional requirements

2.2 Technical Requirements Analysis

 Determine infrastructure requirements (compute, storage, network)

 Define security and compliance requirements

 Assess integration points and dependencies

Phase 3: Design and Planning

3.1 Architecture Design

 Design overall system architecture

 Create detailed diagrams (network, data flow, component interaction)

3.2 Capacity Planning

 Estimate resource requirements (CPU, memory, storage)

16 | P a g e Manoj Jain
 Plan for scalability and redundancy

3.3 Security Planning

 Define security policies and controls

 Plan for identity and access management

Phase 4: Infrastructure Setup

4.1 Cloud Infrastructure Setup (if applicable)

 Provision Azure resources (VMs, Load Balancers, Application Gateway, Tra ic Manager,
Azure App Service, Azure MySQL Database)

 Configure virtual networks and subnets

4.2 On-Premises Infrastructure Setup (if applicable)

 Procure and set up physical servers and networking equipment

 Install and configure virtualization software

4.3 Network Configuration

 Configure load balancers and tra ic management

 Set up VPNs and secure connections

4.4 Storage Configuration

 Set up database instances

 Configure backup and recovery solutions

Phase 5: Application Deployment

5.1 Development and Testing

 Develop application code

 Conduct unit and integration testing

5.2 Deployment Pipeline Setup

 Implement CI/CD pipelines

 Automate build and deployment processes

5.3 Application Deployment

 Deploy applications to the test environment

 Conduct user acceptance testing (UAT)

Phase 6: Security Implementation

6.1 Security Configuration

 Implement identity and access management (IAM)

17 | P a g e Manoj Jain
 Configure network security groups (NSGs) and firewalls

6.2 Security Testing

 Conduct vulnerability assessments and penetration testing

 Implement security monitoring and logging

Phase 7: Monitoring and Optimization

7.1 Monitoring Setup

 Set up monitoring tools and dashboards (e.g., Azure Monitor)

 Configure alerts and notifications

7.2 Performance Optimization

 Conduct performance testing

 Optimize resource usage and scaling policies

Phase 8: Data Migration and Validation

8.1 Data Migration Planning

 Define data migration strategy and tools

 Prepare data migration scripts

8.2 Data Migration Execution

 Migrate data from existing systems

 Validate data integrity and consistency

Phase 9: Go-Live Preparation

9.1 Final Testing and Validation

 Conduct end-to-end testing

 Validate system against requirements

9.2 User Training and Documentation

 Provide training sessions for end-users

 Create and distribute user manuals and documentation

9.3 Go/No-Go Decision

 Conduct go-live readiness assessment

 Obtain final approval from stakeholders

Phase 10: Go-Live and Post-Deployment Support

10.1 Go-Live

 Execute the go-live plan

18 | P a g e Manoj Jain
 Monitor the system closely for issues

10.2 Post-Deployment Support

 Provide hypercare support for initial period

 Address any issues and stabilize the system

10.3 Project Closure

 Conduct project review and retrospective

 Document lessons learned and best practices

 Transition to operations and support teams

High-Level Timeline and Milestones

1. Project Initiation (Week 1-2)

 Project kicko

 Team formation

 Project planning

2. Requirements Gathering and Analysis (Week 3-4)

 Business and technical requirements documentation

3. Design and Planning (Week 5-6)

 Architecture design

 Capacity and security planning

4. Infrastructure Setup (Week 7-10)

 Cloud/on-premises infrastructure setup

 Network and storage configuration

5. Application Deployment (Week 11-14)

 Development and testing

 CI/CD pipeline setup

 Application deployment

6. Security Implementation (Week 15-16)

 Security configuration and testing

7. Monitoring and Optimization (Week 17-18)

 Monitoring setup

 Performance optimization

8. Data Migration and Validation (Week 19-20)

19 | P a g e Manoj Jain
 Data migration planning and execution

9. Go-Live Preparation (Week 21-22)

 Final testing and validation

 User training and documentation

 Go/No-Go decision

10. Go-Live and Post-Deployment Support (Week 23-24)

 Go-live

 Post-deployment support

 Project closure

Conclusion

This high-level project deployment plan outlines the key phases and tasks required to deploy
the architecture. Each phase has specific deliverables and milestones to ensure a structured
and e icient deployment process. Regular reviews and stakeholder engagements are crucial to
ensure the project stays on track and meets the defined objectives.

20 | P a g e Manoj Jain

You might also like