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/bare_metal_cloud/dedicated_servers/opennebula-deployment/guide.en-gb.md
+71-58Lines changed: 71 additions & 58 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,14 +1,14 @@
1
1
---
2
2
title: How to deploy and verify an OpenNebula Hosted Cloud on Bare Metal servers
3
-
excerpt: Deploy a certified OpenNebula Hosted Cloud using OVHcloud bare metal servers and Ansible playbooks.
4
-
updated: 2025-11-18
3
+
excerpt: Deploy a certified OpenNebula Hosted Cloud using OVHcloud Bare Metal servers and Ansible playbooks.
4
+
updated: 2025-12-09
5
5
---
6
6
7
7
## Introduction
8
8
9
9
OpenNebula is a powerful, open-source **Cloud Management Platform** (CMP) designed to manage and provision virtualized infrastructure.
10
10
11
-
Acting as an orchestrator, it turns physical infrastructure into a managed **Infrastructure as a Service** (IaaS) cloud, accessible via a unified control interface. It supports major hypervisors and allows for hybrid deployments by integrating with public cloud providers, such as OVHcloud.
11
+
Acting as an orchestrator, it turns a physical infrastructure into a managed **Infrastructure as a Service** (IaaS) cloud, accessible via a unified control interface. It supports major hypervisors and allows for hybrid deployments by integrating with Public Cloud providers, such as OVHcloud.
12
12
13
13
The deployment of OpenNebula on OVHcloud infrastructure is validated as part of the **OpenNebula Cloud-Ready Certification Program**.
14
14
@@ -27,12 +27,12 @@ Following this guide, you will be able to:
27
27
28
28
## Requirements
29
29
30
-
-**Two**[dedicated servers](/links/bare-metal/bare-metal) from the Scale or High Grade ranges,
31
-
- An active [vRack](/links/network/vrack) service,
32
-
- A public block of [Additional IP](/links/network/additional-ip) addresses, sized according to your needs,
30
+
-**Two**[dedicated servers](/links/bare-metal/bare-metal) from the Scale or High Grade ranges.
31
+
- An active [vRack](/links/network/vrack) service.
32
+
- A public block of [Additional IP](/links/network/additional-ip) addresses, sized according to your needs.
33
33
- Access to the [OVHcloud Control Panel](/links/manager).
34
34
35
-
> [!Primary]
35
+
> [!primary]
36
36
>
37
37
> The reference OpenNebula deployment uses the following configuration:
38
38
>
@@ -60,46 +60,46 @@ Following this guide, you will be able to:
60
60
61
61
## Instructions
62
62
63
-
### Step 1 - Setting up your OVHcloud infrastructure <aname="Infrastructure_Provisioning"></a>
63
+
### Step 1 - Setting up your OVHcloud infrastructure <aname="infrastructure_provisioning"></a>
64
64
65
65
First, you need to install Ubuntu 24.04 LTS on both of your dedicated servers, by following the instructions in [this guide](/pages/bare_metal_cloud/dedicated_servers/getting-started-with-dedicated-server).
66
66
67
-
Subsequently, add both servers to your vRack service by following step 2 of [this vRack configuration guide](/pages/bare_metal_cloud/dedicated_servers/vrack_configuring_on_dedicated_server).
67
+
Subsequently, add both servers to your vRack service by following step 2 of [this vRack configuration guide](/pages/bare_metal_cloud/dedicated_servers/vrack_configuring_on_dedicated_server).
68
68
69
69
Finally, from the OVHcloud Control Panel, open the `Network`{.action} section, then select `Public IP Addresses`{.action} under **Public Network**. Once you have reached the IP management interface, click on the `Order IPs`{.action} button near the top of the page. Choose the IP version, then **select the vRack your servers are attached to**, and the region where those servers are hosted.
70
70
71
71
> [!warning]
72
72
>
73
73
> **Important:** To ensure functionality, please make sure that the IP block you ordered is **routed to the vRack** attached to the servers, and not used as a classic failover configuration.
74
74
>
75
-
> If you are unsure or need more information, please consult the following guide: [Configuring an Additional IP block in a vRack](/pages/bare_metal_cloud/dedicated_servers/configuring-an-ip-block-in-a-vrack/).
75
+
> If you are unsure or need more information, please consult the following guide: [Configuring an Additional IP block in a vRack](/pages/bare_metal_cloud/dedicated_servers/configuring-an-ip-block-in-a-vrack/).
76
76
>
77
77
78
78
### Step 2 - Collecting the Bare Metal & Network settings
79
79
80
-
Before starting the OpenNebula deployment, gather all parameters required for the automation process. **Update the inventory values** in the [Hosted Cloud OVHcloud repository](https://github.com/OpenNebula/hosted-cloud-ovhcloud) with these settings to match the provisioned infrastructure.
80
+
Before starting the OpenNebula deployment, gather all parameters required for the automation process. **Update the inventory values** in the [Hosted Cloud OVHcloud repository](https://github.com/OpenNebula/hosted-cloud-ovhcloud) with these settings to match the provisioned infrastructure.
81
81
82
-
For further details on the automated deployment procedure, refer to the following section: [Configure and deploy the Hosted Cloud OVHcloud repository](#Initial_setup)
82
+
For further details on the automated deployment procedure, refer to the following section: [Configure and deploy the Hosted Cloud OVHcloud repository](#initial_setup).
83
83
84
84
Each server is equipped with two network adapters dedicated to public connectivity and two adapters for private connectivity. The two interfaces within each segment will be **bonded** using the **default LACP parameters for Scale and High Grade servers**.
85
85
86
86
The **Public network bond** is exclusively for OpenNebula service management, including cluster deployment, administration via the Sunstone Web UI or OpenNebula CLI, and connectivity between the Front-end and Virtualization hosts.
87
87
88
88
The **Private network bond** provides network to virtual servers, leveraging the OVHcloud vRack. This bond supports private networking, which is segmented using 802.1Q VLANs, and enables public IP addressing for virtual servers. To assign public addresses to virtual servers, a dedicated IP range must be purchased and routed via the vRack. This setup ensures cluster management traffic is isolated from virtual machine networking.
> This guide assumes the default bonding setup. If you change the network mode (e.g. OLA), please double check that your interface names and bonds are correct before running the playbooks.
94
94
>
95
95
> For more information about the link aggregation settings, please consult the following guide : [Improving Network Resilience on Bare Metal servers](/pages/bare_metal_cloud/dedicated_servers/lacp-resilience-scale-hg/).
96
96
>
97
97
98
-
#### Bare Metal network settings <aname="Bare_metal_network_settings"></a>
98
+
#### Bare Metal network settings <aname="bare_metal_network_settings"></a>
99
99
100
-
From your OVHcloud Control Panel, navigate to `Bare Metal Cloud`{.action}, then select `Dedicated servers`{.action}. Open both management pages for your dedicated servers, and collect the highlighted parameters :
100
+
From your OVHcloud Control Panel, navigate to `Bare Metal Cloud`{.action} section, then select `Dedicated servers`{.action}. Open both management pages for your dedicated servers, and collect the highlighted parameters :
@@ -120,10 +120,11 @@ To collect the network adapter names, connect to your dedicated server and execu
120
120
121
121
**Public IP addresses**
122
122
123
-
The public IP block ordered in the previous steps allows to attach direct public connectivity to virtual servers. For a public IP range deployed on vRack, the first, penultimate, and last addresses in any given IP block are always reserved for the network address, network gateway, and network broadcast respectively.
123
+
The public IP block ordered in the previous steps allows to attach direct public connectivity to virtual servers. For a public IP range deployed on vRack, the first, penultimate, and last addresses in any given IP block are always reserved for the network address, network gateway, and network broadcast respectively.
124
124
125
-
This means that the first usable address is the second address in the block, as shown below :
126
-
```
125
+
This means that the first usable address is the second address in the block, as shown below:
126
+
127
+
```bash
127
128
46.105.135.96 Reserved : Network address
128
129
46.105.135.97 First usable IP
129
130
46.105.135.98
@@ -152,7 +153,6 @@ Declare a bridge network for public IP addresses using all usable addresses of y
152
153
| VMs Public NETWORK MASK |`vn.vm_public.template.NETWORK_MASK`| IP range netmask: 255.255.255.240 for example for a /28 network |
153
154
| VMs Public GATEWAY |`vn.vm_public.template.GATEWAY`| Penultimate IP address in the range, Network gateway: 46.105.135.110 in the example |
154
155
155
-
156
156
**Private IP addresses**
157
157
158
158
On the private network bond, deploy one 802.1Q virtual network per private network. For each virtual network, create a section in the Ansible inventory file, and declare the VLAN ID, IP range and netmask.
@@ -164,91 +164,104 @@ On the private network bond, deploy one 802.1Q virtual network per private netwo
164
164
| VMs Private IP Range, number of usable addresses |`vn.vm_vlan*.template.AR.SIZE`| Number of usable addresses, for example 50 fo IP range 10.1.10.100-10.1.10.149 |
165
165
| VMs Private NETWORK MASK |`vn.vm_vlan*.template.NETWORK_MASK`| IP range netmask: 255.255.255.0 for example for a /24 network |
166
166
167
-
### Step 3 - Configure and deploy the Hosted Cloud OVHcloud repository <aname="Initial_setup"></a>
167
+
### Step 3 - Configure and deploy the Hosted Cloud OVHcloud repository <aname="initial_setup"></a>
168
168
169
169
The deployment uses the **OpenNebula Hosted Cloud OVHcloud repository**.
170
170
171
171
The high-level deployment steps are:
172
172
173
-
1.**Clone** the deployment repository,
174
-
2.**Install** the dependencies listed in the [Requirements section](https://github.com/OpenNebula/hosted-cloud-ovhcloud?tab=readme-ov-file#requirements),
175
-
3.**Update** the inventory parameters in the repository with the configuration gathered above,
176
-
4.**Launch deployment commands**:
177
-
*`make pre-tasks-ovhcloud`: Patch Ubuntu kernel and perform networking setup.
178
-
*`make deployment`: Deploy OpenNebula.
179
-
*`make validation`: Validate the automated deployment.
173
+
1.**Clone** the deployment repository,
174
+
2.**Install** the dependencies listed in the [Requirements section](https://github.com/OpenNebula/hosted-cloud-ovhcloud?tab=readme-ov-file#requirements),
175
+
3.**Update** the inventory parameters in the repository with the configuration gathered above,
176
+
4.**Launch deployment commands**:
177
+
-`make pre-tasks-ovhcloud`: Patch Ubuntu kernel and perform networking setup.
178
+
-`make deployment`: Deploy OpenNebula.
179
+
-`make validation`: Validate the automated deployment.
180
180
181
181
### Step 4 - Adding dedicated servers to an active OpenNebula infrastructure
182
182
183
183
To extend the cloud with new servers:
184
184
185
-
1.**Provision** the new host as detailed in the [Setting up your OVHcloud infrastructure](#Infrastructure_Provisioning) section ;
186
-
2.**Collect** the necessary configuration parameters, especially the bare-metal network settings ;
187
-
3.**Re-execute** the deployment and verification commands from the [Configure and deploy the Hosted Cloud OVHcloud repository](#Initial_setup) section.
185
+
1.**Provision** the new host as detailed in the [Setting up your OVHcloud infrastructure](#infrastructure_Provisioning) section.
186
+
2.**Collect** the necessary configuration parameters, especially the bare-metal network settings.
187
+
3.**Re-execute** the deployment and verification commands from the [Configure and deploy the Hosted Cloud OVHcloud repository](#initial_setup) section.
188
188
189
189
### Step 5 - Operate your cloud infrastructure
190
190
191
191
The following section explains how to access a Hosted OpenNebula Cloud Deployment via the web UI, and instantiate and access a virtual machine.
192
192
193
-
This guide provides the basic steps. If you need a more detailed guide, please refer to [OpenNebula public documentation](https://docs.opennebula.io/7.0/product/virtual_machines_operation/virtual_machines/)
193
+
This guide provides the basic steps. If you need a more detailed guide, please refer to [OpenNebula public documentation](https://docs.opennebula.io/7.0/product/virtual_machines_operation/virtual_machines/).
194
194
195
195
### Create a template from OpenNebula Public marketplace
196
196
197
-
From the OpenNebula Public marketplace, search and import virtual server templates needed for your infrastructure. The example below imports the Debian 13 "Trixie" template.
197
+
From the OpenNebula Public marketplace, search and import virtual server templates needed for your infrastructure. The example below imports the Debian 13 "Trixie" template:
Based on the imported template, create a new virtual server instance.
205
206
206
-

207
-

208
-

207
+
{.thumbnail}
208
+
209
+
{.thumbnail}
210
+
211
+
{.thumbnail}
209
212
210
213
You can adjust disk storage capacity, CPU and RAM allocation during this setup phase.
211
214
212
-

213
-

214
-

215
+
{.thumbnail}
216
+
217
+
{.thumbnail}
218
+
219
+
{.thumbnail}
215
220
216
-
Finally, attach network adapters. In this example, we provide a public IP to this server, based on the public IP range we created during the OpenNebula automated deployment. Without any override, an available IP address form the public range will be picked for this interface.
221
+
Finally, attach network adapters. In this example, we provide a public IP to this server, based on the public IP range we created during the OpenNebula automated deployment. Without any override, an available IP address from the public range will be picked for this interface.
217
222
218
-

219
-

223
+
{.thumbnail}
224
+
225
+
{.thumbnail}
220
226
221
227
### Check connectivity
222
228
223
-
You can use the virtual server console to check the deployment and the server connectivity. Setup the root password using virtual machine context variables.
229
+
You can use the virtual server console to check the deployment and the server connectivity. Set up the root password using virtual machine context variables.
230
+
231
+
{.thumbnail}
224
232
225
-

226
-

233
+
{.thumbnail}
227
234
228
235
Run your virtual server console to validate the deployment.
229
236
230
-

231
-

237
+
{.thumbnail}
238
+
239
+
{.thumbnail}
232
240
233
241
### Update virtual servers settings
234
242
235
243
Use virtual server settings to update the server configuration. This example shows the hot-plugging of a private network adapter to the virtual server.
- If you need more information about OpenNebula, you may consult the [OpenNebula Website](https://opennebula.io/) or the [official OpenNebula documentation](https://docs.opennebula.io/).
253
266
- If you need more information about Ansible, you may consult the [Ansible page on the RedHat website](https://www.redhat.com/en/ansible-collaborative?) or the [official Ansible documentation](https://docs.ansible.com/).
254
267
- The OpenNebula deployment repository used and referenced in this guide is [Hosted Cloud OVHcloud](https://github.com/OpenNebula/hosted-cloud-ovhcloud).
0 commit comments