Skip to main content

Backup proxies

A Xen Orchestra proxy is a small appliance you deploy in your infrastructure to handle the data streams of your backup jobs locally, while your main Xen Orchestra appliance (XOA) keeps orchestrating everything. The two most common reasons to use a proxy are:

  • Large infrastructure: spread the backup workload across several appliances and avoid saturating the main XOA
  • Remote sites: keep backup data inside the remote site and avoid a useless round trip across the WAN to the main XOA

Architecture

Without a proxy, the main XOA handles every data stream itself. For a remote site, that means the VM export travels all the way to the main XOA, only to be sent right back to a backup repository (BR) sitting next to the pool it came from. With a proxy deployed on the remote site, the data never leaves the site: the proxy exports the VMs and writes to the local BR, and only lightweight control traffic crosses the WAN.

Without a proxyMain siteXOAmain applianceWANRemote siteXCP-ng poolBRbackup repository1. VM export2. backup datathe same backup data crosses the WAN twiceWith a proxyMain siteXOAmain applianceWANcontrol traffic onlyRemote siteXCP-ng poolXO ProxyBRbackup data stays on the remote site
Without a proxy, backup data from a remote pool crosses the WAN twice to reach a BR located on the same remote site; with a proxy deployed there, the data stays local and only control traffic crosses the WANXOA / XO ProxyXCP-ng poolbackup databackup repository (BR)

Deployment

Prerequisites

Each deployed proxy needs its own proxy license: see Pricing and available add-ons in the Vates docs. If you have an unused license on your account, it will be bound automatically to the proxy at deployment time.

Minimum Requirements

XO proxies require the following resources:

  • 2 vCPUs
  • 2 GiB RAM
  • 20 GiB disk (2 GiB on a thin provisioned SR)

Installation

  1. Go to the Proxies section of your appliance:
zoomed detailThe Proxies entry in the XOA main menu
The Proxies entry in the XOA main menu
  1. Click Deploy a proxy:
zoomed detailThe Deploy a proxy button in the Proxies view, with no proxies deployed yet
The Deploy a proxy button in the Proxies view, with no proxies deployed yet
  1. Choose where the proxy VM will live: destination SR, destination network and network configuration (DHCP or static):
zoomed detailThe Deploy a proxy modal asking for a destination SR, a destination network and the network configuration
The Deploy a proxy modal asking for a destination SR, a destination network and the network configuration
  1. If you have an available license, it will be automatically bound to your newly deployed proxy.

Backup repository through a proxy

Once a proxy is deployed in your infrastructure, you can create a backup repository (BR) handled by that proxy, using the usual form (still labeled Remotes in XO 5). Simply pick the proxy in the Proxy selector: the proxy will mount the BR itself and handle all data streams to it.

zoomed detailThe New file system remote form with an NFS type and Proxy 1 selected in the proxy field
The New file system remote form with an NFS type and Proxy 1 selected in the proxy field

The proxy handling each BR is then visible in the Remotes list:

zoomed detailThe Remotes list showing an enabled BR with Proxy 1 displayed in its Proxy column
The Remotes list showing an enabled BR with Proxy 1 displayed in its Proxy column

Backup job with Proxies

While creating a standard backup job from your main Xen Orchestra appliance, you can select a proxy in the job settings: the proxy will then execute the job and handle its data streams instead of the main appliance.

zoomed detailThe backup job Settings panel with Proxy 1 selected in the Proxy field
The backup job Settings panel with Proxy 1 selected in the Proxy field
tip

If you see this error: The backup will not be run on this remote because it's not compatible with the selected proxy, it means the selected BR is not handled by the proxy chosen for the job. A proxy can only write to BRs that are bound to it, so either bind that BR to the same proxy, or pick a BR that already is.

zoomed detailA backup job form showing the error tooltip: the backup will not be run on this remote because it's not compatible with the selected proxy
A backup job form showing the error tooltip: the backup will not be run on this remote because it's not compatible with the selected proxy

Enabling login to a proxy appliance

Login is disabled by default on proxy appliances. If you need to login for some reason, you need to set a password for the xoa user via the XenStore of the VM. Run the following on your XCP-ng host, where UUID is the UUID of your proxy VM:

XCP-ng host: set a password for the xoa user
# xe vm-param-set uuid=<UUID> xenstore-data:vm-data/system-account-xoa-password=<password>

Then restart the proxy VM. You can now login through SSH with the xoa username and the password you defined in the previous command.

Adding a network card to a Proxy

First you will need to add a second VIF to your proxy VM. This can be done in the Network tab of the VM in XOA.

After adding the VIF, you will need to set an IP address for the new NIC. To do so, SSH to the VM as described before.

If you want a static address:

proxy VM: set a static IP on eth1
# xoa network static eth1
? Static IP for this machine 192.168.100.120
? Network mask (eg 255.255.255.0) 255.255.255.0

If you prefer using DHCP:

proxy VM: configure eth1 through DHCP
# xoa network dhcp eth1
tip

As XOA uses the first IP address reported by XAPI to contact the proxy appliance, you may have to switch the network card order if you want your proxy to be connected through a specific IP address.