Unit 4 – Porting Application and Virtual Machine Provisioning
• Porting Applications in Cloud
• Virtual Machine Provisioning
• Manageability Virtual Machine Migration Services
What is Porting Applications in the Cloud?
Porting an application to the cloud means moving a software program
from your local computer or data center to a cloud environment (like AWS,
Azure, or Google Cloud).
This lets the app run on the internet instead of just on your company’s own
servers.
Why Port Applications to the Cloud?
Save money – no need to buy or maintain hardware
Scales easily – can handle more users without slowing down
Access from anywhere – not tied to one physical location
Better security and backups – cloud providers offer strong protection
Steps to Port an Application to the Cloud (Simple Version)
1. Check the Application
o Is it ready for the cloud?
o Does it need any changes?
2. Choose a Cloud Provider
o Pick a service like AWS, Azure, or Google Cloud
3. Decide How to Move It
You can:
o Rehost (lift and shift) – move it as-is
o Refactor – change parts of it to work better in the cloud
o Rebuild – rewrite the whole app for cloud use
4. Move the Data
o Transfer your databases and files to the cloud
5. Test Everything
o Make sure the app works correctly in the cloud
6. Launch and Monitor
o Go live and keep an eye on performance.
CC-Unit-4 Notes by Naina Sonar Page 1
Types of Cloud Porting
Method What It Means Difficulty
Rehosting Move app without changing it Easy
Replatforming Make small changes for the cloud Medium
Refactoring Change a lot of code to fit the cloud Hard
Rebuilding Start over and build cloud-native app Hard
Example
A company has HR software that runs on a local server. They decide to port it
to AWS, so their remote employees can access it online. They first move the
database, then upload the app, test it, and go live—all in the cloud!
Example (In Real Life)
Let’s say a school uses an attendance tracking app that only works on computers
at the school. To help teachers and students work remotely, the school ports the
app to the cloud:
They move the app to Google Cloud
They change a few things so it works on mobile too
Now, teachers can mark attendance from home, and students can check it
online
Challenges of Porting Apps
Some apps are hard to move (especially older ones)
You might need to change parts of the code
You must train your team to use new tools
Data privacy and security must be managed carefully
Porting to the cloud helps apps become more flexible, scalable, and cost-
effective, but it needs careful planning and testing. You can move apps quickly
(rehost) or make them work even better (refactor or rebuild) depending on your
needs.
Virtual Machine Provisioning:
Virtual Machine (VM) Provisioning in Cloud Computing refers to the
process of creating and configuring virtual machines on cloud infrastructure to
meet specific resource and application needs. It is a key component of
Infrastructure as a Service (IaaS) in cloud computing.
What is a Virtual Machine (VM)?
A Virtual Machine is an emulated computer system that runs on physical
hardware (host machine) but behaves like a separate physical computer. Each
VM includes its own operating system, CPU, memory, storage, and network
interface.
VM provisioning is the process of creating, configuring, and deploying a virtual
machine (VM) on a physical host or cloud infrastructure, with specified resources
like CPU, memory, storage, and operating system, to make it ready for use.
CC-Unit-4 Notes by Naina Sonar Page 2
What is VM Provisioning?
VM Provisioning is the act of setting up a virtual machine with specific
configurations such as:
CPU cores
RAM
Disk space
Operating system (Windows, Linux, etc.)
Networking and security settings
VM provisioning is the setup of a virtual machine so that it can run applications
or services, typically done through cloud platforms like AWS, Azure, or Google
Cloud.
Types of VM Provisioning
Type Description
Manual Provisioning Admin sets up VMs manually using cloud provider
portals or CLI tools.
Automated Uses scripts, templates (e.g., Terraform,
Provisioning CloudFormation), or orchestration tools to auto-
create VMs.
Dynamic (On- Automatically creates or scales VMs based on current
Demand) Provisioning workload or usage patterns.
Scheduled VMs are created or shut down at specific times to
Provisioning save cost.
VM Provisioning Workflow (Typical Steps)
1. Request Initialization: A user requests a VM via a portal or API.
2. Resource Allocation: Cloud platform allocates the necessary CPU,
memory, disk, etc.
3. VM Image Selection: A base OS image or a custom VM image is
selected.
4. Network Configuration: IP addresses, subnets, and security groups are
assigned.
5. VM Creation: The cloud orchestrator spins up the VM on a hypervisor.
6. Post-Provisioning: Software installation, patching, and configuration are
performed.
7. Monitoring & Management: The VM is monitored for performance and
health.
CC-Unit-4 Notes by Naina Sonar Page 3
☁Cloud Providers Supporting VM Provisioning
Cloud Provider VM Service Name
AWS Amazon EC2
Microsoft Azure Azure Virtual Machines
Google Cloud Compute Engine
IBM Cloud Virtual Servers
Oracle Cloud Oracle Cloud Infrastructure VM
✅ Benefits of VM Provisioning in the Cloud
Scalability: Quickly scale up/down based on needs.
Cost Efficiency: Pay only for what you use.
Flexibility: Deploy any OS or application stack.
Speed: VMs can be provisioned in minutes.
Automation: Infrastructure as Code (IaC) enables rapid, repeatable
setups.
Creating a VM instance
Allocating resources (CPU, RAM, Disk)
Installing an OS or software stack
Configuring network and security settings
Can be manual or automated
Manageability of Virtual Machine Migration Services in Cloud Computing
What is Virtual Machine (VM) Migration?
VM migration is the process of moving a virtual machine from one physical
server or cloud environment to another with minimal or no downtime.
Manageability of Virtual Machine (VM) Migration Services in cloud
computing refers to the ability to efficiently control, monitor, automate, and
optimize the process of moving virtual machines across physical servers, data
centers, or cloud environments with minimal disruption, using tools and policies
provided by cloud platforms.
Purpose of VM Migration in the Cloud
Load balancing: Distribute workloads efficiently
Maintenance: Migrate VMs off servers for hardware/software updates
Disaster recovery: Move VMs to safe regions or zones
CC-Unit-4 Notes by Naina Sonar Page 4
Cost optimization: Shift VMs to cheaper regions or instances
Scaling: Move VMs to larger instances for performance
Manageability Aspects of VM Migration Services
1. Automation & Orchestration
o Cloud providers offer tools and APIs to automate VM migration.
o Examples: AWS Application Migration Service, Azure Migrate,
Google Migrate for Compute Engine.
2. Monitoring & Logging
o Real-time dashboards and logs to monitor migration progress,
performance, and errors.
o Helps in early detection of migration issues.
3. Policy-Based Migration
o Migrations can follow policies based on CPU usage, memory
pressure, time windows, etc.
4. Security & Compliance
o Ensures data encryption during transfer
o Maintains security configurations and access controls
5. Interoperability
o Migration services support various VM formats (VMDK, VHD, etc.)
o Capable of cross-platform and cross-region operations
6. Downtime Minimization
o Live migration helps maintain service availability.
o Scheduled migrations can avoid business-hour disruptions.
7. Error Handling and Rollback
o Migration tools often include failure recovery and rollback features
in case of issues.
✅ Benefits of Managed VM Migration Services
Reduces manual effort
Ensures business continuity
Simplifies complex migration projects
Enhances performance and scalability
Supports multi-cloud and hybrid strategies
CC-Unit-4 Notes by Naina Sonar Page 5