In this article

A practical guide to joining bare metal servers and a hosted private cloud on one private network: why teams do it, how OpenMetal’s VLANs make it possible, how to set it up in OpenMetal Central, and how to plan addressing and security so the combined network stays clean.


Bare metal and virtual machines are good at different things. Dedicated servers give a database or storage system every core, every gigabyte of RAM, and every NVMe drive with no hypervisor in between. VMs give an application tier fast provisioning and easy scaling. Many architectures want both, and the hard part has usually been the network in between. On OpenMetal, bare metal servers and hosted private cloud VMs can share the same customer-dedicated VLAN, so they talk to each other privately, directly, and without metered traffic charges.

Here’s the problem this solves. A team runs its application in VMs and wants its database on dedicated hardware for consistent I/O. If the bare metal and the cloud come from separate products on separate networks, the two sides end up talking over public IPs or a VPN. That adds latency, exposes traffic that should be internal, and can put every query result on a metered bill.

When both sit on the same private network, the database is just another host on the application’s subnet. Traffic stays on the private fabric, and there’s nothing extra to route, encrypt, or pay for.

Why Put Bare Metal and Private Cloud on the Same Network

Most workloads that combine the two follow one idea: run the parts that need dedicated hardware on bare metal, and run everything else in VMs.

  • Databases on bare metal, applications in VMs. The database gets dedicated CPUs and local NVMe. The application tier scales up and down in the private cloud.
  • High-performance workloads on bare metal, management in VMs. Monitoring, logging, and management tools run as VMs while the heavy work runs on dedicated servers.
  • Proxmox VE alongside OpenStack. Teams running Proxmox on bare metal can connect those hosts to an OpenMetal private cloud on a shared network. Our article on running Proxmox VE on OpenMetal bare metal covers that setup.
  • Kubernetes across both. Worker nodes that need full hardware can run on bare metal while other cluster components run in VMs, with pod and service traffic on the shared private network.
  • Storage and backup servers. Dedicated storage or backup hosts sit on the same network as the VMs they serve.

In each case, the shared network is what makes the split practical. Without it, every interaction between the two sides crosses a boundary.

How It Works on OpenMetal

OpenMetal assigns dedicated VLANs to each customer at the infrastructure level, for both bare metal and private cloud deployments. Those VLANs aren’t shared with other customers, so traffic on them is isolated by the physical network fabric.

Every switchport connected to a bare metal server is configured as a trunk port, so additional VLANs can be layered on top of the server’s bonded network interface without physical changes. Only VLANs assigned to your cluster pass through. Our infrastructure guide explains the bare metal side in detail.

When you assign the same private VLAN to a bare metal cluster and a hosted private cloud, both sit on the same Layer 2 segment. A few properties follow from that:

  • Direct communication. Bare metal servers and VMs reach each other without routing through the public internet or adding extra network hops.
  • Unmetered traffic. Private traffic between your servers doesn’t count toward egress billing, whatever the volume.
  • Bandwidth. Each server has 20 Gbps of private bandwidth by default, through two 10 Gbps interfaces bonded with LACP.
  • Overlays on top. VXLAN overlay networks managed through OpenStack can still be layered on top of your VLANs for additional segmentation inside the private cloud.

Setting It Up in OpenMetal Central

Self-service VLAN and IP block management has been part of Central since our advanced networking release. The full walkthrough with screenshots is in our guide to creating a private network between multiple clusters. Here’s the flow.

Step 1: Create a Private IP Block

In Central, open the IP Addresses page from the Networking menu and select Add IP Addresses. Choose the datacenter location, select the private network type, and enter a network address from the standard private ranges (10.0.0.0/8, 172.16.0.0/12, or 192.168.0.0/16). Block sizes range from /21, with 2,048 addresses, down to /32.

Blocks created in Central have managed addressing turned off by default, so addresses aren’t automatically assigned to your hosts. You decide which host gets which address.

Network IP Address Blocks OpenMetal Central

Step 2: Create a Private VLAN

On the VLANs page, select Create VLAN. Give it a label, choose the same location as your IP block, select the private network type, attach the IP block you just created, and choose the first cluster to connect it to.

Create VLAN OpenMetal Central

Step 3: Assign the VLAN to Your Second Cluster

From the VLAN’s page, select Assign VLAN to Resource and choose the other cluster. If you started with your bare metal cluster, now add your Hosted Private Cloud, or the other way around. Both clusters must be in the same location as the VLAN.

Assign VLAN to Cloud

Step 4: Confirm the Assignment

Check each side. Your bare metal cluster’s Networking page and your private cloud’s Networking Assets page both list every VLAN assigned to them, along with their IP blocks.

Confirm VLAN Assignment

Step 5: Configure the Bare Metal Servers

On each bare metal server, create a subinterface on the bonded interface for the new VLAN. With standard Linux tools:

ip link add link bond0 name bond0.1993 type vlan id 1993
ip addr add 192.168.10.5/24 dev bond0.1993
ip link set bond0.1993 up

Use your own VLAN ID and an address from your block. Those commands don’t survive a reboot, so make the change permanent through whatever your servers use for network configuration. Our infrastructure guide includes NetworkManager and Netplan examples.

Step 6: Attach Your VMs

On the private cloud side, newly created, unrouted VLANs can be used as private networks by your OpenStack projects, which is what allows direct communication between cloud and bare metal resources. Attach VMs to that network when you launch them, or add a port on it to an existing VM.

If you’d rather automate all of this, the same steps are available through the OpenMetal API. Our article on managing bare metal VLANs and IP blocks as code walks through the API version.

Planning Your Addressing

A shared network works best when both sides agree on who uses which addresses.

Split the Block Between Bare Metal and VMs

Reserve a clear range for bare metal servers and a separate range for VMs. For example, in a /24, you might give bare metal servers .10 through .49 and leave .100 through .250 for VMs. Write the plan down before anyone assigns an address, so a VM never picks up an address a server already uses.

Avoid Overlaps With Your Other Networks

If your private cloud already runs VPC networks, or you connect to another environment over a VPN, choose a shared range that doesn’t overlap any of them. Overlapping ranges make routing between networks difficult to untangle later.

Leave Room to Grow

Pick a block size that covers the servers and VMs you expect to add, not just today’s count. A /24 is a comfortable starting point for many shared networks, and private blocks go up to a /21 if you need more.

Know the Limits

A cloud can have up to 10 assigned VLANs. If you plan to create a separate shared VLAN for each purpose, keep that limit in mind. Inside the private cloud, VXLAN-based VPC networks give you more segmentation without using infrastructure VLANs.

Securing the Shared Network

A shared VLAN is a flat network between the hosts on it, so plan access control on both sides.

  • On the VM side, OpenStack security groups control traffic to and from each VM. Only allow the ports the bare metal servers actually need to reach, and the reverse.
  • On the bare metal side, there are no OpenStack security groups. Use a host firewall on each server to limit which addresses and ports it accepts on the shared interface.
  • Separate by purpose. If different systems don’t need to talk, don’t put them on the same shared VLAN. A database network and a management network are usually better as two VLANs than one.

Our article on building zero-trust network security on OpenStack with microsegmentation goes deeper on designing security groups.

A Closer Look at Two Patterns

A Database on Bare Metal Serving a Private Cloud Application

A team runs its web application and API servers as VMs in a hosted private cloud and moves its primary database to a bare metal server with local NVMe. Both sit on a shared VLAN. The application connects to the database’s private address, and query traffic stays on the private fabric with no egress charges. The database gets dedicated hardware, and the application keeps the elasticity of VMs.

Proxmox Hosts Alongside OpenStack

A team runs some workloads on Proxmox VE on bare metal, because they’re already standardized on it, and others in an OpenStack private cloud. A shared VLAN lets VMs on both platforms reach each other directly, so services can live wherever they fit best without a gateway between the two.

Who This Fits

This setup fits teams that:

  • Want dedicated hardware for databases, storage, or performance-sensitive workloads alongside VMs
  • Run Proxmox VE on bare metal and OpenStack in a private cloud side by side
  • Need private, unmetered traffic between bare metal and VMs
  • Want both environments managed from one place

It may not fit if you:

  • Need bare metal and private cloud in different locations; VLANs and the clusters they connect must be in the same location
  • Want the two environments strictly isolated from each other; keep them on separate VLANs
  • Need per-port access control enforced by OpenStack on the bare metal side; use host firewalls there

The Short Version

Bare metal and private cloud don’t have to be separate islands. On OpenMetal, one private VLAN joins them into a single network with direct, unmetered traffic, so each workload can run on the hardware that suits it.

To try the setup with your own workloads, apply for a proof of concept. You can also compare options on our bare metal pricing page or talk with our team about your network design.

Frequently Asked Questions

Can OpenMetal bare metal servers and private cloud VMs share a network?

Yes. OpenMetal bare metal servers and hosted private cloud deployments can share the same customer-dedicated VLAN, so bare metal servers and VMs communicate directly over the private network.

Is traffic between bare metal and private cloud billed?

No. Private traffic between your servers doesn’t count toward egress billing, regardless of volume.

How much bandwidth is available between bare metal and private cloud?

Each server has 20 Gbps of private bandwidth by default, through two 10 Gbps interfaces bonded with LACP. 40 Gbps is an optional paid upgrade.

Do the bare metal servers and private cloud need to be in the same location?

Yes. A VLAN is created in a specific datacenter location, and the clusters it connects must be in that same location.

How do I set up a shared network?

Create a private IP block and a private VLAN in OpenMetal Central, assign the VLAN to both your bare metal cluster and your private cloud, configure a VLAN subinterface on each bare metal server, and attach your VMs to the network. You can also do it through the OpenMetal API.

How do I control access between bare metal and VMs on a shared network?

Use OpenStack security groups for the VMs and a host firewall on each bare metal server. If two systems don’t need to talk, put them on separate VLANs.


Chat With Our Team

We’re available to answer questions and provide information.

Reach Out

Schedule a Consultation

Get a deeper assessment and discuss your unique requirements.

Schedule Consultation

Try It Out

Take a peek under the hood of our cloud platform or launch a trial.

Trial Options

 

 

 Read More on the OpenMetal Blog

How to Run Bare Metal and a Private Cloud on One Private Network

Oct 21, 2026

OpenMetal bare metal servers and Hosted Private Cloud VMs can share the same customer-dedicated VLAN, with unmetered private traffic between them. This covers how it works, a step-by-step setup in Central, addressing and security, and common patterns.

How to Calculate Cost Per VM and Cost Per Customer on Fixed-Cost Infrastructure

Oct 16, 2026

Fixed monthly pricing changes how unit costs work. This walks through calculating usable capacity, cost per VM at your real fill rate, and cost per customer, plus how to handle idle capacity and the step up when you add hardware.

How to Run the Same OpenStack Tests We Used to Validate Private Cloud Core v4

Oct 06, 2026

We validated Private Cloud Core v4 with OpenStack’s Tempest suite and published the run guide, configuration, and exclusion list. This walks through running it on your own cloud, reading the results, and understanding why each exclusion exists.

Provisioning Bare Metal Through an API Without Opening a Ticket

Oct 02, 2026

The OpenMetal Central public API covers the full bare metal lifecycle: inventory checks, orders with deployment configurations and saved SSH keys, provisioning status, scaling, power control, and decommissioning, with a sandbox for testing before you touch production.

Managing Bare Metal VLANs and IP Blocks as Code

Sep 29, 2026

OpenMetal Central lets you create, assign, and tear down VLANs and IP blocks through the public API. This walks through the object model, a scripted private network between an application cluster and a database cluster, and the rules that prevent accidental deletions.

How to Run Bare Metal Servers That Boot Entirely From Memory

Sep 28, 2026

OpenMetal bare metal can now boot an OS entirely into memory from a kernel and initramfs you host, then configure itself through cloud-init and a node-local metadata service. This covers how it works, image requirements, and where it fits.

How to Build Multi-Region Infrastructure Across Three Continents

Feb 05, 2026

Complete guide to multi-region infrastructure across three continents. OpenMetal’s Los Angeles, Ashburn, Amsterdam, and Singapore locations enable disaster recovery, global performance, and data sovereignty compliance for 70% less than hyperscaler costs.

How to Choose Between OpenMetal’s Six Hardware Generations for Hosted Private Cloud and Bare Metal Deployments

Dec 05, 2025

OpenMetal offers six hardware generations across hosted private cloud and bare metal deployments. This guide breaks down the specs, performance differences, and use cases for each generation from V1’s foundation infrastructure to V5’s latest enterprise hardware, helping you choose the right configuration for development, production, or hybrid workloads.

Building Multi-Site High Availability Infrastructure With OpenMetal

Oct 21, 2025

Discover how to architect multi-site high availability infrastructure that maintains continuous operation across geographic locations. This comprehensive guide covers OpenStack deployment patterns, Ceph storage replication, networking strategies, and cost-effective approaches to achieving five nines uptime.

Scaling Your OpenMetal Private Cloud from Proof of Concept to Production

Oct 15, 2025

Discover how to transition your OpenMetal private cloud from proof of concept to production. Learn expansion strategies using converged nodes, compute resources, storage clusters, and GPU acceleration for real-world workloads at scale.