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:
-
Open an SSH session as a root user.
-
Enter the following command:
# mkdir -p /opt/mediakind/mount/Storage # chown -R daemon:daemon /opt/mediakind/mount/Storage # id daemon
-
Enter the following command to create the directory where the remote server location is to be mounted.
# mkdir -p /opt/mediakind/mount/Storage
-
Set the following user rights:
# chown -R daemon:daemon /opt/mediakind/mount/Storage
-
Retrieve the [uid_value] and [gid_value] of the daemon user with the following commands:
# id daemon
-
Retrieve the [uid_value] and [gid_value] returned by the last command.
-
- Configure the mounted remote server:
# vi /etc/fstab
-
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 commands Description //RemoteServer/Storage
Remote server to mount to a local directory /opt/mediakind/mount/Storage
Local location where access to the remote server is mounted defaults
a common option including the auto mount at boot time rw
gives read write access ro
gives read only access uid
specifies that this mount point is owned by daemon user gid
specifies that this mount point is owned by daemon group user
specifies the user credential user needed to access the Remote Server password
specifies the password credentials needed for the user to access the Remote Server -
Manually mount the Remote Server to the local directory:
# mount -a
-
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
-
Check the remote storage is correctly mounted (just type “
mount
”). -
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://)
-
Input:
file://RemoteServer/Storage/CustomInputFileName.ts
-
Output:
file://RemoteServer/Storage
Option 2: Using local directory (URL beginning with file:///)
-
Input:
file:///opt/mediakind/mount/Storage/CustomInputFileName.ts
-
Output:
file:///opt/mediakind/mount/Storage
-