You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: pages/public_cloud/public_cloud_cross_functional/iaas-migration-steps/guide.en-gb.md
+49-45Lines changed: 49 additions & 45 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,32 +1,36 @@
1
1
---
2
2
title: "Public Cloud IaaS Migration - Steps and Best Practices"
3
3
excerpt: "Learn how to migrate your infrastructure to OVHcloud Public Cloud using IaaS services, Terraform automation, and resilient network design."
4
-
updated: 2025-05-23
4
+
updated: 2025-06-16
5
5
---
6
6
7
-
## Objectives
7
+
## Objective
8
8
9
-
This guide aims to educate and support customers in migrating their infrastructure to the OVHcloud Public Cloud using Infrastructure as a Service (IaaS). It provides a step-by-step methodology for inventorying existing workloads, preparing a secure and scalable landing zone, and leveraging tools like Terraform/OpenTofu, Ansible, rclone, and rsync to automate deployment and data transfer. The guide also outlines best practices for selecting compatible OVHcloud instance flavours, configuring networks, and ensuring service continuity during migration. By following this guide, users can build a robust, cost-optimised, and cloud-native infrastructure aligned with OVHcloud’s IaaS ecosystem.
9
+
This guide aims to educate and support customers in migrating their infrastructure to the OVHcloud Public Cloud using Infrastructure as a Service (IaaS).
10
+
11
+
It provides a step-by-step methodology for inventorying existing workloads, preparing a secure and scalable landing zone, and leveraging tools like Terraform/OpenTofu, Ansible, rclone, and rsync to automate deployment and data transfer.
12
+
13
+
The guide also outlines best practices for selecting compatible OVHcloud instance flavours, configuring networks, and ensuring service continuity during migration. By following this guide, users can build a robust, cost-optimised, and cloud-native infrastructure aligned with OVHcloud’s IaaS ecosystem.
10
14
11
15
## Requirements
12
16
13
-
- Access to the [OVHcloud Control Panel](/links/manager)
- Being familiar with [Terraform](/pages/public_cloud/public_cloud_cross_functional/how_to_use_terraform), if you intend using it.
16
20
17
21
## Instructions
18
22
19
-
Before detailing the specific steps I recommend, the diagram below offers a general perspective on the main phases of a migration to OVHcloud Public Cloud.
23
+
Before going into detail on the major steps, the diagram below provides an overview of the main phases of a migration to OVHcloud Public Cloud.
### 1. Inventory your source VMs, storage, and network configuration
27
+
### 1. Inventory your source VMs, storage and network configuration
24
28
25
29
Before starting your cloud migration, it’s crucial to create a detailed inventory of all your current resources:
26
30
27
-
-**Virtual Machines (VMs):** List all your VMs, grouping those that belong to the same application (for example, a web server, application server, and database). This approach helps you migrate applications one at a time, minimizing service disruptions.
28
-
-**Storage:** Identify your block storage volumes as well as your object storage buckets.
29
-
-**Network resources:** Map out your entire network topology, including Layer 2 (L2) and Layer 3 (L3) network layouts, routers, load balancers, and firewalls.
31
+
-**Virtual Machines (VMs)**: List all your VMs, grouping those that belong to the same application (for example: a web server, an application server, and a database). This approach helps you migrate applications one at a time, minimizing service disruptions.
32
+
-**Storage**: Identify your block storage volumes as well as your object storage buckets.
33
+
-**Network resources**: Map out your entire network topology, including Layer 2 (L2) and Layer 3 (L3) network layouts, routers, load balancers, and firewalls.
30
34
31
35
Also, list your subnets and associated VLAN IDs. This information will be essential to correctly set up your target network within the OVHcloud Public Cloud environment.
32
36
@@ -41,33 +45,33 @@ A Landing Zone is your foundational cloud environment where all your resources w
41
45
42
46
This check involves reviewing key components such as:
43
47
44
-
-**Identity and Access Management (IAM)** – ensure proper user roles and permissions are set up.
45
-
-**Network architecture** – verify your network segmentation, subnets, VPNs, and load balancers are configured correctly.
46
-
-**Compliance and governance** – confirm that policies are in place to meet your regulatory and organizational requirements.
47
-
-**Resource organization** – design a clear structure with multiple accounts or projects to separate workloads effectively.
48
+
-**Identity and Access Management (IAM)**: Ensure proper user roles and permissions are set up.
49
+
-**Network architecture**: Verify your network segmentation, subnets, VPNs, and load balancers are configured correctly.
50
+
-**Compliance and governance**: Confirm that policies are in place to meet your regulatory and organizational requirements.
51
+
-**Resource organization**: Design a clear structure with multiple accounts or projects to separate workloads effectively.
48
52
49
-
Use the inventory data from your VMs, storage, networks, and security devices to fine-tune your cloud zoning and segmentation. Fixing any issues at this stage results in a Landing Zone that is secure, compliant, easy to manage, and cost-efficient.
53
+
Use the inventory data from your VMs, storage, networks and security devices to fine-tune your cloud zoning and segmentation. Fixing any issues at this stage results in a Landing Zone that is secure, compliant, easy to manage and cost-efficient.
50
54
51
-
Finally, integrate monitoring, logging, and security tools right from the start to build agile and future-proof operations.
55
+
Finally, integrate monitoring, logging and security tools right from the start to build agile and future-proof operations.
52
56
53
57
For more detailed guidance on building an OVHcloud Landing Zone, please refer to this link: (LINK-TO-LZ-ArchRef).
54
58
55
59
### 3. Adapt your Terraform/OpenTofu configuration
56
60
57
61
Although OVHcloud’s Public Cloud is based on OpenStack, it also offers proprietary services like Managed Kubernetes and Managed Databases. Because of this, you will need to use specific OpenTofu or Terraform providers tailored for OVHcloud’s infrastructure.
58
62
59
-
You can build your Terraform/OpenTofu stacks using providers for [OpenStack](https://registry.terraform.io/providers/terraform-provider-openstack/openstack/latest/docs){.external}., OVHcloud, or S3-compatible services, depending on the resources you want to manage.
63
+
You can build your Terraform/OpenTofu stacks using providers for [OpenStack](https://registry.terraform.io/providers/terraform-provider-openstack/openstack/latest/docs){.external}, OVHcloud, or S3-compatible services, depending on the resources you want to manage.
60
64
61
-
[Here’s a link](/pages/manage_and_operate/terraform/terraform-at-ovhcloud) with examples to help you get started with creating your Terraform/OpenTofu configurations for your landing zone and cloud infrastructure.
65
+
You will find our guide "[Using Terraform with OVHcloud](/pages/manage_and_operate/terraform/terraform-at-ovhcloud)" some examples to help you get started with creating your Terraform/OpenTofu configurations for your landing zone and cloud infrastructure.
62
66
63
67
### 4. Configure cloud network architecture in your Terraform stacks
64
68
65
69
Once your Terraform/OpenTofu setup is ready, you should script the core network components needed for your cloud environment. This includes defining:
66
70
67
-
- Networks and subnets
68
-
- DHCP settings
69
-
- Routers
70
-
- Load balancers
71
+
- Networks and subnets.
72
+
- DHCP settings.
73
+
- Routers.
74
+
- Load balancers.
71
75
72
76
These components will connect and organize all your OVHcloud instances efficiently and securely. Proper network configuration is essential to ensure that your cloud resources communicate correctly and perform optimally.
73
77
@@ -77,16 +81,16 @@ Before deploying your workloads in the OVHcloud Public Cloud, you need to choose
77
81
78
82
To do this:
79
83
80
-
- Review your source VM configurations (CPU, RAM, storage, etc.)
81
-
- Choose the corresponding OVHcloud Public Cloud instances that meet those requirements
82
-
- Select the availability type that suits your needs—1-AZ, 3-AZ, or Local Zone—depending on your desired level of resilience and latency
84
+
- Review your source VM configurations (CPU, RAM, storage, etc.).
85
+
- Choose the corresponding OVHcloud Public Cloud instances that meet those requirements.
86
+
- Select the availability type that suits your needs (1-AZ, 3-AZ, or Local Zone) depending on your desired level of resilience and latency
83
87
84
-
Once selected, note the technical identifiers of the instances (e.g., b3-64, c3-128) so you can use them directly in your Terraform/OpenTofu configuration.
88
+
Once selected, note the technical identifiers of the instances (for example: b3-64, c3-128) so you can use them directly in your Terraform/OpenTofu configuration.
85
89
86
90
Don’t forget to do the same for:
87
91
88
-
- Gateways (e.g. size M, L, XL)
89
-
- Load balancers, based on expected traffic and redundancy requirements
92
+
- Gateways (for example: size M, L, XL).
93
+
- Load balancers, based on expected traffic and redundancy requirements.
90
94
91
95
This step ensures consistency between your existing environment and your future OVHcloud infrastructure.
92
96
@@ -98,40 +102,40 @@ The Lift and Shift method allows you to migrate your existing virtual machines (
98
102
99
103
To begin, export your source VMs from your current infrastructure. OVHcloud supports several image formats, including: ami, ari, aki, vhd, vmdk, raw, qcow2, vhdx, vdi, iso, and ploop.
100
104
101
-
Once exported, you need to upload the VM image to your OVHcloud project. To do this, make sure you have a local Python environment ready and install the OpenStack CLI ([see installation guide](https://docs.openstack.org/newton/user-guide/common/cli-install-openstack-command-line-clients.html){.external}). You’ll also need your API credentials to authenticate.
105
+
Once exported, you need to upload the VM image to your OVHcloud project. To do this, make sure you have a local Python environment ready and install the OpenStack CLI (to do this, follow this [installation guide](https://docs.openstack.org/newton/user-guide/common/cli-install-openstack-command-line-clients.html){.external}). You’ll also need your API credentials to authenticate.
102
106
103
-
After uploading the image, you can deploy a new instance from it using the OVHcloud Control Panel, OpenStack CLI, or via Terraform/OpenTofu. You’ll find step-by-step instructions on how to import a VM image in [this guide](/pages/public_cloud/compute/upload_own_image).
107
+
After uploading the image, you can deploy a new instance from it using the OVHcloud Control Panel, OpenStack CLI, or via Terraform/OpenTofu. You’ll find step-by-step instructions on how to import a VM image in our guide "[Uploading your own image](/pages/public_cloud/compute/upload_own_image)".
104
108
105
109
You can then connect the instance to your defined private network, attach block storage, and configure any required load balancers.
106
110
107
-
If you’re migrating several VMs, consider automating the process using scripts or infrastructure-as-code tools. You can also contact our [Professional Services team](https://www.ovhcloud.com/en/professional-services/){.external} to get support or delegate the migration process entirely.
111
+
If you’re migrating several VMs, consider automating the process using scripts or infrastructure-as-code tools. You can also contact our [Professional Services team](/links/professional-services) to get support or delegate the migration process entirely.
108
112
109
-
#### 6b. Perform a Replatforming with clean deployments
113
+
#### 6b. Perform a replatforming with clean deployments
110
114
111
-
The Replatform method involves creating new virtual machines in your OVHcloud Public Cloud environment and reinstalling your applications from scratch. This is ideal if you want a cleaner setup, or to take advantage of modern automation and infrastructure tools.
115
+
The replatform method involves creating new virtual machines in your OVHcloud Public Cloud environment and reinstalling your applications from scratch. This is ideal if you want a cleaner setup, or to take advantage of modern automation and infrastructure tools.
112
116
113
-
You can provision new instances using your Terraform/OpenTofu stacks or directly through the OVHcloud Control Panel, selecting the appropriate regions, availability zones, and instance flavours.
117
+
You can provision new instances using your Terraform/OpenTofu stacks or directly through the OVHcloud Control Panel, selecting the appropriate regions, availability zones and instance flavours.
114
118
115
119
Once your infrastructure is deployed, two possibilities:
116
120
117
-
- Use Ansible playbooks to automatically install and configure your applications
121
+
- Use Ansible playbooks to automatically install and configure your applications.
118
122
- Set up your services manually on each instance.
119
123
120
-
Be sure to use the same application versions as in your source environment to ensure compatibility with your existing data.
124
+
Be sure to use the same applications versions as in your source environment to ensure compatibility with your existing data.
121
125
122
126
Once configuration is complete, migrate your data using tools like rsync, scp, or database utilities, and validate that everything is working as expected.
123
127
124
-
### 7. Migrate block storage using rsync (or similar tool)
128
+
### 7. Migrate block storage using rsync (or similar tool)
125
129
126
130
To move your block storage to OVHcloud, start by configuring your target storage volumes. You can do this either [manually on the instance](/pages/public_cloud/compute/create_and_configure_an_additional_disk_on_an_instance) or automatically using tools like Ansible.
127
131
128
132
Once your volumes are ready, use a tool such as [rsync](/pages/bare_metal_cloud/dedicated_servers/how-to-copy-data-from-one-dedicated-server-to-another-using-rsync) to copy data from your source infrastructure to the new OVHcloud environment. rsync ensures that files are transferred efficiently and can resume if interrupted.
129
133
130
134
This method allows you to migrate data progressively and validate it as you go.
131
135
132
-
If you need help setting up this process or automating it across multiple instances, you can contact the OVHcloud [Professional Services team](https://www.ovhcloud.com/en/professional-services/){.external}.
136
+
If you need help setting up this process or automating it across multiple instances, you can contact the OVHcloud [Professional Services](/links/professional-services) team.
133
137
134
-
### 8. Migrate object storage using rclone (or similar tool)
138
+
### 8. Migrate object storage using rclone (or similar tool)
135
139
136
140
To transfer your object storage to OVHcloud, use a tool like rclone, which supports most S3-compatible services.
137
141
@@ -141,17 +145,17 @@ Start by ensuring you have the correct permissions to access both the source and
141
145
- Configure access credentials for both environments (source and OVHcloud).
142
146
- Use rclone sync or rclone copy to migrate your data.
143
147
144
-
This method ensures reliable and resumable transfers for large datasets. Follow [this guide](/pages/storage_and_backup/object_storage/s3_rclone) for the necessary steps.
148
+
This method ensures reliable and resumable transfers for large datasets. Follow our guide[Object Storage - Use Object Storage with Rclone](/pages/storage_and_backup/object_storage/s3_rclone) for the necessary steps.
145
149
146
-
If your setup includes versioning, lifecycle rules, or other advanced features, or if you require automation, the OVHcloud [Professional Services team](https://www.ovhcloud.com/en/professional-services/){.external} can help you design a tailored migration process.
150
+
If your setup includes versioning, lifecycle rules, or other advanced features, or if you require automation, the OVHcloud [Professional Services](/links/professional-services) team can help you design a tailored migration process.
147
151
148
152
### 9. Re-link endpoints and validate applications
149
153
150
154
After migrating, update all your applications to use the new endpoints, including those for S3-compatible object storage.
151
155
152
156
Make sure every connection points to the correct OVHcloud resources.
153
157
154
-
Then, thoroughly test your entire workflow and run all integration tests to verify that your applications function correctly in the new environment.
158
+
Then, thoroughly test your entire workflow and run all integration tests to verify that your applications works correctly in the new environment.
155
159
156
160
### 10. Update DNS records
157
161
@@ -167,9 +171,9 @@ Ensure all data and services have been successfully migrated and backed up befor
167
171
168
172
### 12. Optimise with Saving Plans
169
173
170
-
To manage and reduce your cloud expenses, leverage FinOps best practices. OVHcloud offers various cost optimization solutions and [Saving Plans](https://www.ovhcloud.com/en/public-cloud/savings-plan){.external} tailored to your usage patterns.
174
+
To manage and reduce your cloud expenses, leverage FinOps best practices. OVHcloud offers various cost optimization solutions and [Savings Plans](/links/public-cloud/savings-plan) tailored to your usage patterns.
171
175
172
-
Explore [this link](/pages/public_cloud/public_cloud_cross_functional/savings_plans) for detailed guidance on how to control and optimize your cloud spending effectively.
176
+
Explore our guide "[How do Savings Plans work?](/pages/public_cloud/public_cloud_cross_functional/savings_plans)" for detailed guidance on how to control and optimize your cloud spending effectively.
0 commit comments