Skip to content

Experimental

Cluster Mode

WARNING

Cluster Mode currently requires the beta server image and the beta NVR plugin.

Cluster Mode enables distributed computing. Plugin, detection, decode, and encode will automatically be assigned to the best suitable machine in a cluster.

A machine can operate in either server or client mode. There can only be one server machine but there may be multiple client machines. The server machine will ingest the camera streams, while client machines will perform detection. Machines in a cluster can be a mix of operating systems and architectures. For example, you can use a NAS saving video Unraid (server) with a Mac Mini performing detection (client).

Cluster Server Setup

The Cluster server will ingest the camera streams and save them to the NVR storage.

Create and edit Scrypted .env configuration file:

nano ~/.scrypted/volume/.env
nano ~/.scrypted/volume/.env
nano ~/.scrypted/volume/.env
nano ~/.scrypted/volume/.env
notepad %USERPROFILE%\.scrypted\volume\.env
sh
SCRYPTED_CLUSTER_MODE=server
# this is the IP of this machine.
SCRYPTED_CLUSTER_ADDRESS=192.168.2.130
SCRYPTED_CLUSTER_SECRET=swordfish

Restart the server.

WARNING

Compute plugins like OpenVINO will fail to load until a Cluster Client is set up and connected in the next section.

Cluster Client Setup

A Cluster client will perform video decoding and detection.

When adding a client, install Scrypted as usual (and switch to the beta tag). Account creation is not necessary. Once the server is running, create and edit Scrypted .env configuration file:

Create and edit Scrypted .env configuration file:

nano ~/.scrypted/volume/.env
nano ~/.scrypted/volume/.env
nano ~/.scrypted/volume/.env
nano ~/.scrypted/volume/.env
notepad %USERPROFILE%\.scrypted\volume\.env
sh
SCRYPTED_CLUSTER_MODE=client
# this is the IP of the server machine,
# matching the SCRYPTED_CLUSTER_ADDRESS in the prior section.
SCRYPTED_CLUSTER_SERVER=192.168.2.130
SCRYPTED_CLUSTER_SECRET=swordfish
# designate this server as available for decode and detection workloads
SCRYPTED_CLUSTER_LABELS=compute

Restart the client.