Project Server Configuration (Linux)
A project server is a set of system services that provide Flame Family products access to projects. It simplifies project management and collaborative workflows by eliminating the need to create project data on the Flame, Flare, or Flame Assist workstations and providing a single access point to manage the projects.
In this topic, you learn about creating a project server that hosts Flame projects for connected Flame Family products running on Linux or macOS systems. For instructions on configuring client systems, refer to Import via NFS.
Hardware Specifications
Here are the minimal hardware specifications for a project server.
Components | Minimal Requirements |
---|---|
CPU | 8 physical cores |
RAM | 32 GB |
Network bandwidth | 1 Gbit/sec |
Metadata volume | 500 GB of SSD storage |
The project server does not require a GPU since it is not used to decode media.
Project Structure
A project consists of a set of managed media* files, a PostgreSQL database schema (also known as namespace) managing these media files, a set of catalog files managing clips and compositions, a set of custom presets, other module-specific files known as setups, and backups. The PostgreSQL schema of a project is stored in the PostgreSQL database located under /var/opt/Autodesk/pgsql. All the other files are accessible under the project home directory specified at project creation. You can customize the location of the setups and media storage. A symbolic link is then created under the project home for each of these custom locations.
Folder | Default Location | User-definable | Link to user-defined path |
---|---|---|---|
PostgreSQL database | /var/opt/Autodesk/pgsql | Yes | /var/opt/Autodesk/pgsql |
Project Home | /var/opt/Autodesk/flame/projects/<project name> | Yes | n/a |
Project Catalog | <project home>/catalog | No | n/a |
Project Backups | <project home>/catalog_AUTO_BACKUP | No | n/a |
Project Setups | <project home>/setups | Yes | <project home>/setups |
Project Media | <project home>/media | Yes | <project home>/media |
* Managed media: Renders, cached media and external source files descriptors are "managed" media files by opposition to external media files such as imported sources or exports. Flame and its services control the lifetime of managed files i.e. Flame will eliminate them when they are no longer used.
File System Constraints
User-defined paths do not need to reside on the Project Server. They can exist on network mounted storage devices with certain restrictions. The PostgreSQL database can be stored on a NFS mount point provided it is exported with the sync option and mounted with the hard option. The project home (and consequently the catalog files) have the same restrictions but, in addition, the host file system must support symbolic links, hard links and high-precision time stamps with sub-second accuracy**. The setups file system should also support symbolic and hard links. The media file system must support hard links. cifs / smbfs network file systems are not supported.
Keeping massive media files separate from project metadata is recommended. This configuration improves performance in a collaborative environment. Learn about attaching a SAN or NAS to the project server in section Configure the Project Server / Attach the Media Storage.
** Time stamp accuracy: Flame relies on time stamps to detect external updates. With lower accuracy time stamps, the application doing the update will wait to ensure other apps can see a change. This can affect performance and, in extreme cases, data integrity.
Number of Clients per Project Server
The hardware specifications are the minimal requirements for a project server to serve five clients while minimizing network congestion and issues with storage quality of service. Clients can be any combinations of Autodesk Flame Family products and Burn nodes, such as one Flame, two Flares, and two Burn nodes.
The larger the number and size of hosted projects and concurrent clients, the more powerful the system must be. Based on your system configuration, storage throughput, and other factors, this guideline can vary. Be prepared to scale the system capabilities to match your production requirements. For example, to serve up to 8 Flames and 8 Burns, your server may need 192 GB of RAM, 2 TB of NVMe storage, and a 50 Gb/s network.
Set Up a Project Server on Linux
Flame Family products installed on Linux contain the script
INSTALL_PROJECTSERVER
. This script installs and configures the software to run
as a project server.
This script is best used on a headless standalone system that will host projects for a small workgroup of Flame Family systems. No GPU is required on the system that runs the project server. It installs the minimum set of services required for sharing projects from a central location. During installation, you can redirect the storage of your project metadata to a different but persistent mount point.
Install a Project Server
Install the Autodesk Linux ISO on the workstation.
Install the DKU without the NVIDIA kernel modules:
INSTALL_DKU --nonvdriver
Once the DKU is installed, restart the workstation.
Copy the Flame distribution to the workstation and untar it.
cp autodesk_<Flame_family_product>_<version>_LINUX64.tar /var/tmp cd /var/tmp tar xvf autodesk_<Flame_family_product>_<version>_LINUX64.tar
Go to the location of the project server script.
cd autodesk_<Flame_family_product>_<version>_LINUX64
In a shell, run
./INSTALL_PROJECTSERVER --help
to see a list of available options. The locations of project homes, database, configuration files, and logs are customizable, offering flexibility in configuring the project server to suit your needs.Usage Examples:
Basic Installation: In this example, the project server stores its data on the server's system drive and also functions as the Backburner manager for the workgroup. It is assumed that the operating system was installed from an Autodesk Rocky Linux ISO and that the DKU was installed with the --nonvdriver option.
./INSTALL_PROJECTSERVER --backburner
Note: While the project server does not require the NVIDIA driver, it needs the NVIDIA graphics libraries. If the DKU is not installed, you can haveINSTALL_PROJECTSERVER
perform their installation by providing the NVIDIA installer:./INSTALL_PROJECTSERVER --backburner --nvinst /path/to/NVIDIA-Linux-x86_64-550.90.07.run
Dedicated Project Storage: In this example, the project database, metadata and media cache use dedicated local storage. The project server also acts as a media cache server.
/mnt/server1/flame
and/mnt/server1/media
are distinct mount points. This configuration is useful for cloud deployments with ephemeral project server instances, where the dedicated storage can be reattached to a new instance../INSTALL_PROJECTSERVER --dataroot /mnt/server1/flame --projectsroot /mnt/server1 \ --nfspaths /mnt/server1/flame/projects --nfsmediapaths /mnt/server1/media
- Project home folders will be stored under
/mnt/server1/flame/projects
. - The database, configuration, and log files will be stored under
/mnt/server1/flame
INSTALL_PROJECTSERVER
will automatically add the projects root to the NFS exports. Since theprojects
folder is explicitly exported, it is recommended to remove /mnt/server1 from/etc/exports
. Runsudo exportfs -va
after editing/etc/exports
.- After installation, you may want to adapt your
sysconfig.cfg
to these new paths. Refer to Centralised Components for more information.
- Project home folders will be stored under
After deploying a new Project Server, you may see the following message indicating the need to create a database:
No local database detected. You should create a database using /opt/Autodesk/bin/igniter.
Check for Installed Versions
To check which version of Project Server you have installed, use this command to list the installed packages:
rpm -qa 'autodesk.project.server*'
You can also use the following command that will print only the version down to the build number:
rpm -qia 'autodesk.project.server*' | awk -F: \
'$1 ~ /Version/ { v=$2 } $1 ~ /Release/ { r=$2 } END { printf("%s.%d\n", v, r) }'
Configure the Project Server
Once you have created the project server, configure it using the following steps.
Stop Autodesk Backburner and Autodesk Stone & Wire services
sudo systemctl stop adsk_backburner sudo systemctl stop adsk_sw
Set the host name of the project server
sudo hostnamectl set-hostname --static <Your-server-name>
Add the project server to the identity management system, if you have one.
Follow the instructions for your identity management system.
Configure Backburner Manager to run without servers
In a shell, enter the following.
cat << EOF | sudo /opt/Autodesk/backburner/backburnerConfig y n EOF
Restart Autodesk Backburner and Autodesk Stone & Wire services
sudo systemctl start adsk_backburner sudo systemctl start adsk_sw
Attach the Media Storage
In a workgroup configuration, your media is stored on shared storage such as a NAS or SAN. Follow these steps to mount it on the server to use it as your media storage. Note this is not strictly necessary unless you wish to use Flame Family tools that require access to the media from the project server, such as ice.
In a shell, run the following commands.
Install
autofs
.sudo dnf install autofs
Create the directory where the storage will be mounted and under which the projects will create their media folders. Note this path must be the same on all hosts participating in the workgroup. E.g.:
sudo mkdir -p /mnt/nas/media/projects
Setup the NAS mount point. Use the command
sudo vi /etc/auto.direct
and add the following line to the file/mnt/nas/media/projects -rw,noatime,nodiratime,bg nas:/Volumes/flame_media
Note: The above is an example of an NFS exported file system from servernas
. Different shared storage solutions will use slightly different syntax. Adapt this line to your setup.Set up the automount. Use the command
sudo vi /etc/auto.master
and add the following line at the end of the file./- auto.direct
Enable and restart
autofs
.sudo systemctl enable autofs sudo systemctl start autofs