Network configurations
Configure mount points

Configure mount points

Depending on your environment, you will need to publish the DVR created to a specific content storage location. Configuring a mount point on your local server will allow you to send the DVR to the desired location.Configure mount points to create access to remote content storage locations. Mount points must be configured on each On-Demand Encoder processing server.

Mount points must comply to the following criteria:

  • They are available at boot time
  • MediaKind On-Demand Encoder access input files and output directories with userdaemon:daemon, this user must have at least rights for read rights for storage and read write execute rights for output mount points.
  • The default group ID is daemon:daemon.

When a mounted remote storage is used, mount points must be configured on each On-Demand Encoder server. The following requirements must be fulfilled:

  • The remote storage is available at encoders boot time.
  • Input files can be read by the daemon:daemon user group.
  • Output directories write access to the daemon:daemon user group is granted.
  • The default group ID is daemon:daemon.
  • Only two valid mount points path can be used: /opt/mediakind/mount/your_directory and /mnt/your_directory.

For SMB/CIFS, authentication is required to access the Remote Server. Use the credentials below:

  • user=RemoteServerUsername
  • password=RemoteServerPassword

For NFS, the user daemon must have rights to the share. This user must be added to the group owning the share. This applies with MediaKind CMS where nobody:nobody is used for the share. This can be done by typing the following commands on each On-Demand Encoder server:

# sudo usermod -aG nobody daemon

Mounting a remote storage configuration, to be done all servers:

  1. Open an SSH session as a root user.

  2. Enter the following command:

    # mkdir -p /opt/mediakind/mount/Storage
    # chown -R daemon:daemon /opt/mediakind/mount/Storage
    # id daemon
  3. Enter the following command to create the directory where the remote server location is to be mounted.

    # mkdir -p /opt/mediakind/mount/Storage
  4. Set the following user rights:

    # chown -R daemon:daemon /opt/mediakind/mount/Storage
  5. Retrieve the [uid_value] and [gid_value] of the daemon user with the following commands:

    # id daemon
  6. Retrieve the [uid_value] and [gid_value] returned by the last command.

    1. Configure the mounted remote server:
    # vi /etc/fstab
  7. Insert a new line to configure the mount. See NFS and SMB/CIFS examples below where:

    • //RemoteServer/Storage is the remote storage path.
    • /opt/mediakind/mount/Storage is the local server directory to mount. Example context using SMB/CIFS:
    //RemoteServer/Storage /opt/mediakind/mount/Storage cifs sec=ntlm, defaults,rw,uid=[uid_value],gid=[gid_value],user=RemoteServerUsername,password=RemoteServerPassword 0 0

    Tip: We use SMB/CIFS in this example. If you are using a different protocol see linux mount manuals (online resources) for fstab.

    To mount a smb/cifs directory located on //RemoteServer/Storage. RemoteServer can either be the IP address, or the name of the server used for the remote storage.

    Example context using NFS:

    RemoteServer:/Storage /opt/mediakind/mount/Storage nfs defaults,user,auto,intr 0 0
    Codes and commandsDescription
    //RemoteServer/StorageRemote server to mount to a local directory
    /opt/mediakind/mount/StorageLocal location where access to the remote server is mounted
    defaultsa common option including the auto mount at boot time
    rwgives read write access
    rogives read only access
    uidspecifies that this mount point is owned by daemon user
    gidspecifies that this mount point is owned by daemon group
    userspecifies the user credential user needed to access the Remote Server
    passwordspecifies the password credentials needed for the user to access the Remote Server
  8. Manually mount the Remote Server to the local directory:

    # mount -a
  9. Use the command lines (#) below to test the mount point by creating a mount.test file in /opt/mediakind/mount/Storage.

    # cd /opt/mediakind/mount/Storage
    # su -c 'touch mount.test' daemon
    # ls /opt/mediakind/mount/Storage
  10. Check the remote storage is correctly mounted (just type “mount”).

  11. Return to the application and create a job using settings for either option 1 or option 2.

    Option 1: using remote location (URL beginning with file://)

    1. Input: file://RemoteServer/Storage/CustomInputFileName.ts

    2. Output: file://RemoteServer/Storage

    Option 2: Using local directory (URL beginning with file:///)

    1. Input: file:///opt/mediakind/mount/Storage/CustomInputFileName.ts

    2. Output: file:///opt/mediakind/mount/Storage