- Benefits of pay as you go computing
- No need to rewrite application code to fit a cloud application pattern.
- On-premises monolithic architecture
- Lift and shift: No re-architect, no code changes
- Cloud infrastructure-ready monolithic architecture
- Cloud DevOps ready monolithic architecture
- Architected for the cloud, might require new code
- Cloud optimized full PaaS & cloud-native with monolithic and microservices architectures.
- Discovery and assessment tool
- Assesses suitability for migration and ensures that sizing is correct for the performance of the VM
- Estimates of the cost of running an VM in Azure
- Visualize dependencies of a specific VM or for all VMs in a group
- ❗ Limitations
- Provides assessment for only VMWare VMs
- If you want to assess Hyper-VMs and physical servers, use the Azure Site Recovery Deployment Planner for Hyper-V, and our partner tools for physical machines.
- Only supports managed disks for migration assessment.
- All regions are not supported
- Provides assessment for only VMWare VMs
- From Azure Service Manager (ASM) model to Azure Resource Manager (ARM) deployment.
- Supported services: • Virtual Machines • Availability Sets • Cloud Services • Storage Accounts • Virtual Networks • VPN Gateways • Express Route gateways • Network Security Groups • Route Tables • Reserved IPs
- From cloud services to a PaaS solution
- Necessary to consider the difference between VMs, workloads, and applications in each model.
- Platform as a service (PaaS) in Classic Model (not ARM)
- A cloud service deploys applications as VMs; code is connected to a VM instance which might be a Web role or a worker role
- Web role: Automatically deploys and hosts your app through IIS.
- Worker role: Does not use IIS, and runs your app standalone
- To scale the application, more VMs are deployed.
- You don't create virtual machines. Instead, you provide a XML configuration file that tells Azure how many of each you'd like, such as "three web role instances" and "two worker role instances."
- You still choose what size those backing VMs should be.
- Contains the web role and worker role definition
- Specifies the instance count for each role; an instance is a VM hosting that role.
- Cloud Services with Worker Roles can be migrated to Service Fabric Cluster with Stateless Service
- Migrating a cloud service to Service Fabric switches to deploying applications to VMs that are already running Service Fabric either on Windows or Linux.
- The applications or services that are deployed are entirely unrelated to the VM infrastructure.
- The service fabric application platform hides the VM layer from the application.
- A cloud service application will typically have external dependencies.
- E.g. services that manage the data and state of an application and the method of communicating between web and worker roles.
- Such as Azure Redis, Storage Queue, Service Bus.
- E.g. services that manage the data and state of an application and the method of communicating between web and worker roles.
- A Service fabric application can also rely on the same external service dependencies.
- The quickest and easiest way to migrate a Cloud Service application to service fabric:
- Convert the Web roles and worker roles to stateless services whilst keeping the architecture the same.
- If the aim is to remove the external dependencies and take full advantage of the ability to unify deployment, management and upgrade models, then state-full services would be required which will mean full code and application rewrites.