|
| 1 | +--- |
| 2 | +title: Move2Cloud - Migrate VMware workloads to OVHcloud Hosted Private Cloud with Zerto |
| 3 | +excerpt: "Learn how to migrate your on-premises VMware workloads to an OVHcloud Hosted Private Cloud environment using Zerto Virtual Replication" |
| 4 | +updated: 2025-07-17 |
| 5 | +--- |
| 6 | + |
| 7 | +## Objective |
| 8 | + |
| 9 | +This guide explains how to migrate your on-premises VMware workloads to an **OVHcloud Hosted Private Cloud (HPC)** using **Zerto Virtual Replication**. |
| 10 | + |
| 11 | +> [!primary] |
| 12 | +> **This guide applies to standard Hosted Private Cloud environments that are NOT part of SecNumCloud (SNC), PCI-DSS, or HDS-qualified frameworks.** |
| 13 | +> If you are using an SNC, PCI-DSS, or HDS-qualified Hosted Private Cloud, some features described here, such as OVHcloud IAM or NSX-T advanced networking, may not be available in SNC environments. |
| 14 | +> For SecNumCloud environments, please refer to the dedicated guide: |
| 15 | +> [Move2Cloud - Migrating VMware Workloads to SecNumCloud Hosted Private Cloud with Zerto](/pages/hosted_private_cloud/hosted_private_cloud_powered_by_vmware/vmware_migration_zerto_secnumcloud) |
| 16 | +
|
| 17 | +## Requirements |
| 18 | + |
| 19 | +Before you begin, make sure you have: |
| 20 | + |
| 21 | +- A complete inventory of your VMs, including FQDN, IP address, OS version, and application dependencies. |
| 22 | +- A batch migration plan grouped by application stack. |
| 23 | +- A full list of VLANs, subnets, and segments for your target network. |
| 24 | +- An HPC environment properly sized (hosts, datastores, vSAN, NSX-T). |
| 25 | +- A working IPsec VPN tunnel between your on-premises infrastructure and OVHcloud. |
| 26 | +- Access to the Zerto console and vCenter interfaces on both sides. |
| 27 | + |
| 28 | +>[!warning] |
| 29 | +> As of May 2025, **Zerto does not support replication of virtual machines with VMEncrypt enabled**. |
| 30 | +> vSAN’s encryption at rest is supported. You can also encrypt your VMs after migration is complete. |
| 31 | +
|
| 32 | +## Instructions |
| 33 | + |
| 34 | +{.thumbnail} |
| 35 | + |
| 36 | +### Step 1: Define your migration scope |
| 37 | + |
| 38 | +At the end of this step, you will have a structured list of workloads to migrate and the associated network design. |
| 39 | + |
| 40 | +#### Step 1.1: Create an inventory of source VMs |
| 41 | + |
| 42 | +List all virtual machines to be migrated and collect the following data: |
| 43 | + |
| 44 | +- FQDN and static IP address |
| 45 | +- Operating system and version |
| 46 | +- Application or service associated with each VM |
| 47 | +- Technical dependencies (for example, frontend servers depending on a database VM) |
| 48 | + |
| 49 | +This inventory allows you to group VMs into consistent application stacks for batch migration. |
| 50 | + |
| 51 | +#### Step 1.2: Group VMs into migration batches |
| 52 | + |
| 53 | +Organize your VMs into logical groups according to application-level dependencies. |
| 54 | +Each batch should contain all virtual machines required to migrate and operate a single application, such as: |
| 55 | + |
| 56 | +- Web frontend VM |
| 57 | +- Application logic VM |
| 58 | +- Database backend VM |
| 59 | + |
| 60 | +#### Step 1.3: Document the current network configuration |
| 61 | + |
| 62 | +Record the full network configuration used by your source VMs: |
| 63 | + |
| 64 | +- VLAN IDs and associated subnets |
| 65 | +- IP address ranges to preserve |
| 66 | +- Inter-VM communication flows (source/destination, port, protocol) |
| 67 | + |
| 68 | +This network design will be recreated in your OVHcloud HPC tenant using `vRack` and NSX-T. |
| 69 | + |
| 70 | +You can find more about network planning in [NSX-T - First steps](/pages/hosted_private_cloud/hosted_private_cloud_powered_by_vmware/nsx-01-first-steps). |
| 71 | + |
| 72 | +For additional guidance from Zerto, refer to [Installing the Zerto Solution](https://help.zerto.com/bundle/Install.HV.HTML/page/Installing_the_Zerto_Solution.htm){.external}. |
| 73 | + |
| 74 | +### Step 2: Plan Hosted Private Cloud resources |
| 75 | + |
| 76 | +This step helps you determine the required compute, storage, and network resources for your HPC environment. |
| 77 | + |
| 78 | +#### Step 2.1: Estimate CPU and memory |
| 79 | + |
| 80 | +Review your current infrastructure to calculate how many vCPUs and how much RAM you will need in the target environment. |
| 81 | + |
| 82 | +Use your existing pCPU/vCPU consolidation ratio to size the number of `ESXi hosts` required. |
| 83 | + |
| 84 | +#### Step 2.2: Define storage capacity |
| 85 | + |
| 86 | +Based on your workloads, select the most appropriate storage type: |
| 87 | + |
| 88 | +- `NFS datastores` for general-purpose workloads |
| 89 | +- `vSAN` for performance-intensive applications |
| 90 | + |
| 91 | +Estimate total disk space needed, plus redundancy if applicable. |
| 92 | +If your workloads require high IOPS, vSAN is the preferred option. |
| 93 | + |
| 94 | +#### Step 2.3: Plan the target network |
| 95 | + |
| 96 | +Plan how your virtual network will be recreated using NSX-T: |
| 97 | + |
| 98 | +- Decide which segments will be VLAN-backed vs. overlay. |
| 99 | +- Identify gateway needs (Tier-0 and Tier-1). |
| 100 | +- Evaluate firewalling rules and north/south traffic. |
| 101 | + |
| 102 | +If you need to expose services on the internet, you can: |
| 103 | + |
| 104 | +- Request public IPs via your `Hosted Private Cloud`. |
| 105 | +- Migrate your existing IP ranges using the [Bring Your Own IP (BYOIP)](/links/network/byoip) feature. |
| 106 | + |
| 107 | +### Step 3: Enable access to the vCenter |
| 108 | + |
| 109 | +Access to vCenter is restricted by default in all OVHcloud HPC environments. |
| 110 | + |
| 111 | +You must explicitly allow your admin IPs to reach the `vCenter` endpoint. |
| 112 | + |
| 113 | +To do so: |
| 114 | + |
| 115 | +1. Log in to the [OVHcloud Control Panel](/links/manager). |
| 116 | +2. Select your `Hosted Private Cloud`{.action}. |
| 117 | +3. Navigate to the `Security`{.action} tab. |
| 118 | +4. Click `Add a new IP address range`{.action} to authorize your source infrastructure IPs and Zerto components. |
| 119 | + |
| 120 | +For step-by-step instructions, refer to [Authorise IPs to connect to vCenter](/pages/hosted_private_cloud/hosted_private_cloud_powered_by_vmware/autoriser_des_ip_a_se_connecter_au_vcenter). |
| 121 | + |
| 122 | +### Step 4: Configure roles and permissions |
| 123 | + |
| 124 | +This step ensures that administrators and tools like Zerto have the correct access to vSphere resources within your OVHcloud Hosted Private Cloud. |
| 125 | + |
| 126 | +#### Step 4.1: Use OVHcloud IAM |
| 127 | + |
| 128 | +Set up roles and permissions in your `Hosted Private Cloud` using `OVHcloud IAM`. |
| 129 | + |
| 130 | +> [!warning] |
| 131 | +> **OVHcloud IAM is not available in SecNumCloud (SNC), PCI-DSS, or HDS environments.** |
| 132 | +> If you are using one of these qualified environments, you must configure roles and permissions directly in vSphere or use an external IAM solution such as Microsoft Active Directory or Okta. |
| 133 | +
|
| 134 | +For instructions, refer to the [IAM setup guide](/pages/hosted_private_cloud/hosted_private_cloud_powered_by_vmware/vmware_iam_getting_started). |
| 135 | + |
| 136 | +#### Step 4.2: Connect your own IAM solution |
| 137 | + |
| 138 | +If you prefer to use your existing identity provider (e.g., Active Directory or Okta), deploy a directory service directly in your OVHcloud tenant. |
| 139 | + |
| 140 | +You can also link OVHcloud IAM with your existing ADFS server to enable SAML-based SSO. |
| 141 | + |
| 142 | +To do so, follow [Connect OVHcloud IAM to ADFS](/pages/account_and_service_management/account_information/ovhcloud-account-connect-saml-adfs). |
| 143 | + |
| 144 | +#### Step 4.3: Service accounts for Zerto |
| 145 | + |
| 146 | +Zerto components require specific vSphere roles and permissions to function. You can: |
| 147 | + |
| 148 | +- Create a dedicated `zerto-admin` account in vSphere. |
| 149 | +- Assign the necessary privileges to manage replication and recovery. |
| 150 | + |
| 151 | +Details on required permissions are available in Zerto’s documentation: |
| 152 | + |
| 153 | +[Roles and Permissions Within Zerto](https://help.zerto.com/bundle/Admin.VC.HTML.90/page/Roles_and_Permissions_Within_.htm){.external} |
| 154 | + |
| 155 | +### Step 5: Build the target network |
| 156 | + |
| 157 | +Before starting any VM replication or failover test, your Hosted Private Cloud network must be ready to receive the workloads. This includes replicating the source structure, creating the right segments, and preparing firewall rules. |
| 158 | + |
| 159 | +#### Step 5.1: Recreate your VLANs and segments |
| 160 | + |
| 161 | +When your HPC is delivered, it comes with a default distributed virtual switch and at least one VLAN. You can add your own VLANs via the `vRack`. |
| 162 | + |
| 163 | +If you are using NSX-T, plan your segmentation as follows: |
| 164 | + |
| 165 | +- Define your segments (VLAN-backed or overlay). |
| 166 | +- Assign each to a corresponding application batch or service zone. |
| 167 | +- Recreate IP addressing schemes as defined in your inventory. |
| 168 | + |
| 169 | +Refer to [NSX-T – First steps](/pages/hosted_private_cloud/hosted_private_cloud_powered_by_vmware/nsx-01-first-steps) for details on creating segments and assigning them to VMs. |
| 170 | + |
| 171 | +#### Step 5.2: Configure NSX-T routing and gateways |
| 172 | + |
| 173 | +If using NSX-T, you must define how traffic will route between segments and to the internet: |
| 174 | + |
| 175 | +- A **Tier-1 Gateway** handles internal routing. |
| 176 | +- A **Tier-0 Gateway** connects your environment to upstream services or external networks. |
| 177 | + |
| 178 | +These gateways are automatically deployed when NSX-T is enabled. You can review and modify them in the `NSX Manager` interface. |
| 179 | + |
| 180 | +Set up routing and services based on your flow matrix defined in Step 1. |
| 181 | + |
| 182 | +#### Step 5.3: Prepare firewall rules |
| 183 | + |
| 184 | +NSX-T provides a **distributed firewall (DFW)** that controls east-west traffic between VMs. You should define rules for: |
| 185 | + |
| 186 | +- Application-specific ports (e.g., web → app, app → db) |
| 187 | +- Management access to vCenter and Zerto components |
| 188 | +- Optional: quarantine or isolation zones for test VMs |
| 189 | + |
| 190 | +If you're not using NSX-T, implement similar rules using your preferred virtual appliance firewall (e.g., FortiVM, Stormshield, Palo Alto VM-Series). |
| 191 | + |
| 192 | +You can find an overview of how NSX handles these features in [NSX-T – First steps](/pages/hosted_private_cloud/hosted_private_cloud_powered_by_vmware/nsx-01-first-steps). |
| 193 | + |
| 194 | +### Step 6: Deploy core services in the target HPC |
| 195 | + |
| 196 | +Your migrated workloads will need basic infrastructure services to function properly once they are running in your Hosted Private Cloud. |
| 197 | + |
| 198 | +#### Step 6.1: Deploy NTP |
| 199 | + |
| 200 | +Ensure all VMs and services use a consistent time source. You can configure your HPC workloads to use `ntp.ovh.net` as a reliable time server. |
| 201 | + |
| 202 | +#### Step 6.2: Deploy DNS |
| 203 | + |
| 204 | +If your applications rely on internal DNS resolution, deploy a domain controller or dedicated DNS server inside your HPC environment. This can be a clone of your on-prem server or a new instance. |
| 205 | + |
| 206 | +#### Step 6.3: Set up authentication services |
| 207 | + |
| 208 | +If your authentication is based on Active Directory, deploy a replica domain controller in the HPC. |
| 209 | + |
| 210 | +You can also establish secure communication between the on-prem AD and the tenant to avoid duplicating identities. |
| 211 | + |
| 212 | +### Step 7: Install and activate Zerto in the OVHcloud tenant |
| 213 | + |
| 214 | +Zerto is installed and managed per site. On the OVHcloud side, the components are deployed automatically when you activate Zerto. |
| 215 | + |
| 216 | +In your `Hosted Private Cloud`{.action} interface: |
| 217 | + |
| 218 | +1. Go to `Disaster Recovery`{.action}. |
| 219 | +2. Select `Enable Zerto Virtual Replication`{.action}. |
| 220 | +3. Confirm and wait for deployment. |
| 221 | + |
| 222 | +OVHcloud will deploy the following: |
| 223 | + |
| 224 | +- A dedicated ZVM (Zerto Virtual Manager). |
| 225 | +- A ZVRA (Zerto Virtual Replication Appliance) on each ESXi host. |
| 226 | +- An OVH-managed NSX-T firewall with preconfigured rules for Zerto ports. |
| 227 | + |
| 228 | +Full details can be found in [Zerto Virtual Replication on OVHcloud](/pages/hosted_private_cloud/hosted_private_cloud_powered_by_vmware/zerto-virtual-replication-customer-to-ovhcloud). |
| 229 | + |
| 230 | +### Step 8: Install Zerto on the source site |
| 231 | + |
| 232 | +You must install Zerto components manually on your on-premises infrastructure. |
| 233 | + |
| 234 | +Follow the procedure in [Installing Zerto on source site](https://help.zerto.com/bundle/Install.VC.HTML/page/Performing_an_Express_Installation.htm){.external}. |
| 235 | + |
| 236 | +The main components are: |
| 237 | + |
| 238 | +- ZVM: Installed on a Windows Server with vSphere access |
| 239 | +- ZVRAs: Deployed on each ESXi host hosting protected VMs |
| 240 | + |
| 241 | +Ensure that: |
| 242 | + |
| 243 | +- TCP ports 9071, 9081 are open between ZVMs. |
| 244 | +- TCP ports 4007, 4008 are open between ZVRAs. |
| 245 | + |
| 246 | +### Step 9: Set up the IPsec VPN tunnel |
| 247 | + |
| 248 | +Zerto requires **direct communication** between ZVMs and ZVRAs. NAT is not supported. |
| 249 | + |
| 250 | +Set up a site-to-site IPsec tunnel between your on-prem firewall and the OVHcloud tenant. |
| 251 | + |
| 252 | +You can use any compatible device (e.g., Fortinet, Palo Alto, OPNsense). |
| 253 | + |
| 254 | +Details and parameters are available in [Zerto VPN Setup on OVHcloud](/pages/hosted_private_cloud/hosted_private_cloud_powered_by_vmware/vmware_zerto_virtual_replication_customer_to_ovh). |
| 255 | + |
| 256 | +### Step 10: Pair the sites and create VPGs |
| 257 | + |
| 258 | +Once ZVMs are online and communication is confirmed: |
| 259 | + |
| 260 | +1. Use the Zerto console to **pair both sites**. |
| 261 | +2. Create your first **Virtual Protection Group (VPG)**. |
| 262 | + |
| 263 | +A VPG groups all VMs that should be replicated and failed over together. |
| 264 | + |
| 265 | +More information in [Creating a VPG](https://help.zerto.com/bundle/Admin.ZSSP.HTML.10.0_U3/page/Creating_a_VPG.htm){.external} |
| 266 | + |
| 267 | +### Step 11: Monitor the replication status |
| 268 | + |
| 269 | +Monitor each VPG from the Zerto UI: |
| 270 | + |
| 271 | +- Confirm that replication is active. |
| 272 | +- Check the RPO (Recovery Point Objective). |
| 273 | +- Resolve any alerts before running a test or failover. |
| 274 | + |
| 275 | +Refer to [Monitoring Virtual Protection Groups](https://help.zerto.com/bundle/Admin.ZSSP.HTML.10.0_U3/page/Monitoring_Virtual_Protection_Groups.htm){.external} |
| 276 | + |
| 277 | +### Step 12: Run a test failover |
| 278 | + |
| 279 | +Before migrating production workloads, test the behavior of your VMs in the OVHcloud tenant. |
| 280 | + |
| 281 | +Use the `Failover Test` option in the Zerto UI. This powers on the replicated VMs without impacting production. |
| 282 | + |
| 283 | +Instructions: |
| 284 | + |
| 285 | +- [Starting and Stopping Failover Tests](https://help.zerto.com/bundle/Admin.VC.HTML.10.0_U3/page/StartingFailoverTest.htm){.external} |
| 286 | +- [What Happens After Starting a Test?](https://help.zerto.com/bundle/Admin.VC.HTML.10.0_U3/page/What_Happens_After_Starting_a_Test.htm){.external} |
| 287 | + |
| 288 | +### Step 13: Execute the planned migration |
| 289 | + |
| 290 | +When you are ready to migrate: |
| 291 | + |
| 292 | +1. Use the **Move** operation in Zerto to migrate each VPG. |
| 293 | +2. Choose the commit policy (manual, auto, rollback). |
| 294 | + |
| 295 | +See [The Move Process](https://help.zerto.com/bundle/Admin.ZSSP.HTML.10.0_U3/page/The_Move_Process.htm){.external} for full instructions. |
| 296 | + |
| 297 | +### Step 14: Validate application availability |
| 298 | + |
| 299 | +After the move: |
| 300 | + |
| 301 | +- Verify that all VMs are powered on. |
| 302 | +- Test connectivity (AD, DNS, Bastion, internet). |
| 303 | +- Validate each application and service. |
| 304 | + |
| 305 | +### Step 15: Commit or roll back the migration |
| 306 | + |
| 307 | +If all tests succeed, commit the operation in Zerto. |
| 308 | + |
| 309 | +If something is not working, you can cancel the move and roll back to your on-prem environment. |
| 310 | + |
| 311 | +More in [Moving Protected VMs to Remote Site](https://help.zerto.com/bundle/Admin.ZSSP.HTML.10.0_U3/page/Moving_Protected_Virtual_Machines_to_the_Remote_Site.htm){.external} |
| 312 | + |
| 313 | +### Step 16: Use Storage vMotion to place VMs on target storage |
| 314 | + |
| 315 | +After migration, you may want to move some VMs to another datastore or vSAN policy. |
| 316 | + |
| 317 | +Use `Storage vMotion`{.action} via the `vSphere Client`{.action}: |
| 318 | + |
| 319 | +1. Right-click on the VM > `Migrate`{.action}. |
| 320 | +2. Select `Change storage only`{.action}. |
| 321 | +3. Choose the destination datastore or vSAN policy. |
| 322 | + |
| 323 | +See [VMware Storage vMotion](/pages/hosted_private_cloud/hosted_private_cloud_powered_by_vmware/vmware_storage_vmotion) for full details. |
| 324 | + |
| 325 | +### Step 17: Back up your workloads |
| 326 | + |
| 327 | +Once your VMs are in production, secure them with a backup plan. |
| 328 | + |
| 329 | +You have 2 options: |
| 330 | + |
| 331 | +- **Option 1**: Use **Veeam Backup as a Service** if you want a managed backup solution integrated with your HPC. |
| 332 | +- **Option 2**: Deploy your own Veeam Backup server and use **Veeam Backup & Replication for Public Cloud**. |
| 333 | + |
| 334 | +## Go further |
| 335 | + |
| 336 | +If you need training or technical assistance to implement our solutions, contact your sales representative or click on [this link](/links/professional-services) to get a quote and ask our Professional Services experts for a custom analysis of your project. |
| 337 | + |
| 338 | +Ask questions, give your feedback and interact directly with the team building our Hosted Private Cloud services on the dedicated [Discord](https://discord.gg/ovhcloud) channel. |
| 339 | + |
| 340 | +Join our [community of users](/links/community). |
0 commit comments