Appendix A. Using an NFS Share for Content Storage

Your environment requires adequate hard disk space to fulfill content storage. In some situations, it is useful to use an NFS share to store this content. This appendix shows how to mount the NFS share on your Satellite Server’s content management component.

Important

Use high-bandwidth, low-latency storage for the /var/lib/pulp file system. Red Hat Satellite has many I/O-intensive operations; therefore, high-latency, low-bandwidth storage might have issues with performance degradation.

Procedure

  1. Create the NFS share. This example uses a share at nfs.example.com:/Satellite/pulp. Ensure this share provides the appropriate permissions to Satellite Server and its apache user.
  2. Stop Satellite services on your Satellite Server:

    # satellite-maintain service stop
  3. Ensure Satellite Server has the nfs-utils package installed:

    # satellite-maintain packages install nfs-utils
  4. You need to copy the existing contents of /var/lib/pulp to the NFS share. First, mount the NFS share to a temporary location:

    # mkdir /mnt/temp
    # mount -o rw nfs.example.com:/Satellite/pulp /mnt/temp

    Copy the existing contents of /var/lib/pulp to the temporary location:

    # cp -r /var/lib/pulp/* /mnt/temp/.
  5. Set the permissions for all files on the share to use the pulp user.
  6. Unmount the temporary storage location:

    # umount /mnt/temp
  7. Remove the existing contents of /var/lib/pulp:

    # rm -rf /var/lib/pulp/*
  8. Edit the /etc/fstab file and add the following line:

    nfs.example.com:/Satellite/pulp    /var/lib/pulp   nfs    rw,hard,intr,context="system_u:object_r:pulpcore_var_lib_t:s0"

    This makes the mount persistent across system reboots. Ensure to include the SELinux context.

  9. Enable the mount:

    # mount -a
  10. Confirm the NFS share mounts to var/lib/pulp:

    # df
    Filesystem                         1K-blocks     Used Available Use% Mounted on
    ...
    nfs.example.com:/Satellite/pulp 309506048 58632800 235128224  20% /var/lib/pulp
    ...

    Also confirm that the existing content exists at the mount on var/lib/pulp:

    # ls /var/lib/pulp
  11. Start Satellite services on your Satellite Server:

    # satellite-maintain service start

Satellite Server now uses the NFS share to store content. Run a content synchronization to ensure the NFS share works as expected. For more information, see Section 4.6, “Synchronizing Repositories”.