NFS on XCP-ng - Quick Start Guide (Xen Orchestra)

Linux

Audience
Public
Product
FlashBlade
FlashArray
Technology Integrations
Linux
Source Type
Documentation
Note:

For iSCSI storage: See iSCSI Quick Start or iSCSI GUI Guide

Important:

Vendor Documentation Priority: This guide is for reference only. Always consult official vendor documentation for your distribution. Test thoroughly in a lab environment before production use.

Prerequisites:

  • XCP-ng 8.3 with Xen Orchestra installed

  • Everpure FlashArray with:

    • NFS file interface configured

    • NFS export policy created with NFSv4.1 enabled (recommended) and no root squash enabled

    • Export path created (e.g., /xcp/VMs)

    • NFS export quota policy created

    • Network connectivity between XCP-ng hosts and Everpure FlashArray NFS interface

  1. Verify Network Connectivity: Before adding NFS storage, verify connectivity from each XCP-ng host.

    Via SSH to Each Host:

    # Test connectivity to NFS server
    ping -c 3 <NFS_SERVER_IP>
    
    # Test NFS port (2049)
    nc -zv <NFS_SERVER_IP> 2049
    
    # List available exports
    showmount -e <NFS_SERVER_IP>

    Expected output from showmount:

    Export list for 10.10.3.15:
    /xcp/VMs 10.10.3.0/24
  2. Add Everpure FlashArray NFS:

    Via Xen Orchestra

    Important:

    Your NFS server or appliance must be set to allow sub-directory mounts, or adding the SR will fail.

    1. Click New > Storage in the top menu:

    2. Fill in the initial SR details:

      Field Value Description
      Host Select pool master Initial host for connection
      Name PureNFS Descriptive name for the SR
      Description Pure NFS Storage Optional description

    3. Select NFS from the storage type dropdown:

    4. Enter the NFS connection details:

      Field

      Value
      Description
      Server 10.10.3.15 Pure FlashArray NFS file interface IP
      NFS Version 4.1 NFSv4.1 recommended for Pure

    5. Select the NFS export path:

    6. Click Create:

    7. Wait for the SR to be created - XO will automatically show the SR summary page:

    8. Verify host connections in the Hosts tab:

  3. Create a Test VM

    Via Xen Orchestra

    1. Click New > VM.

    2. Select your template (e.g., Ubuntu, CentOS, Windows).

    3. In the Disks section, select your new NFS SR (in this example "PureNFS" is the SR):

    4. Complete the VM creation wizard.

    5. Start the VM and verify it runs correctly:

      1. Select the VM in XO.

      2. Go to the Disks tab.

      3. Verify the disk shows the NFS SR as its location.

      (Optional) Verify via CLI:

      Connect to a host via SSH to verify the NFS mount:

      # List SRs
      xe sr-list type=nfs
      
      # Check mount status
      mount | grep nfs
      
      # View SR directory
      ls -la /var/run/sr-mount/<SR_UUID>/

Troubleshooting

SR Not Connecting

  1. Check network connectivity:

    ping <NFS_SERVER_IP> nc -zv <NFS_SERVER_IP> 2049
  2. Check NFS exports:

    showmount -e <NFS_SERVER_IP>
  3. Check firewall on NFS server: Ensure ports 111 (rpcbind) and 2049 (NFS) are open.

  4. Check export permissions: Verify XCP-ng host IPs are in the allowed list.

Mount Failures

  1. Check NFS version compatibility:

    # Try mounting manually with specific version 
    mount -t nfs -o vers=3 <NFS_SERVER_IP>:/path /mnt/test
  2. Check for stale mounts:

    # On XCP-ng host 
    mount | grep nfs

Performance Issues

  1. Check NFS options:

    • Use tcp instead of udp

    • Adjust rsize and wsize if needed

  2. Check network:

    # Test throughput 
    dd if=/dev/zero of=/var/run/sr-mount/<SR_UUID>/testfile bs=1M count=1024
Note:

Quick Reference:

# List NFS SRs
xe sr-list type=nfs

# Get SR details
xe sr-param-list uuid=<SR_UUID>

# Check PBD status
xe pbd-list sr-uuid=<SR_UUID>

# Reconnect SR
xe pbd-plug uuid=<PBD_UUID>

# Check mounts
mount | grep nfs

Additional Resources: