Fully Customized Installation
The FindFace Multi developer-friendly installer provides you with a few installation options, including the fully customized installation. This option is mostly used when deploying FindFace Multi in a highly distributed environment and requires a high level of knowledge and experience.
To initiate the fully customized installation, do the following:
Download the installer file
findface-*.run
.Put the
.run
file into some directory on the designated host (for example,/home/username
).From this directory, make the
.run
file executable.Note
Be sure to specify the actual file name instead of
findface-*
.chmod +x findface-*.run
Execute the
.run
file.sudo ./findface-*.run
The installer will ask you a few questions and perform several automated checks to ensure that the host meets the system requirements. After filling out each prompt, press Enter. The questions and answers are the following:
Q:
Which product should be installed?
A:
1
Which product should be installed? 1. [multi ] FindFace Multi 2. [server ] FindFace Server 3. [video-worker] FindFace Video Worker (default: multi) product> 1
Q:
Please choose installation type:
A:
4
Please choose installation type: - 1 [stand-alone ] Single Server - 2 [multi-worker] Single Server, Multiple video workers - 3 [images ] Don't configure or start anything, just load the images and copy the models - 4 [custom ] Fully customized installation (default: stand-alone) type> 4
Q:
Directory to install into:
A: Specify the FindFace Multi installation directory. The default suggestion is
/opt/findface-multi
. Press Enter to confirm it. Otherwise, specify the directory of your choice and press Enter.Directory to install into: (default: /opt/findface-multi) dest_dir>
Q:
Please enter path to docker-compose binary:
A: Specify the actual path to the
docker-compose
binary. The default suggestion is/usr/local/bin/docker-compose
and it is the path you get when you installdocker-compose
as described in this section. Press Enter to confirm it. Otherwise, specify another path and press Enter.Please enter path to docker-compose binary (default: /usr/local/bin/docker-compose) docker_compose>
Q:
Found X interface(s). Which one should we announce as our external address?
A: Choose the interface that you are going to use as the instance IP address.
Found 3 interface(s). Which one should we announce as our external address? - 1 [lo ] 127.0.0.1 - 2 [ens3 ] 192.168.112.254 - 3 [docker0 ] 10.44.132.1 (default: 192.168.112.254) ext_ip.advertised> 2
Q:
Found X interface(s). Which one should we announce as our inter-service communication address?
A: Choose the interface for inter-service communication.
Found 3 interface(s). Which one should we announce as our inter-service communication address? - 1 [lo ] 127.0.0.1 - 2 [ens3 ] 192.168.112.254 - 3 [docker0 ] 10.44.132.1 (default: 192.168.112.254) inter_ip.advertised> 2
Q:
Please select FindFace Multi components to install:
A: Choose FindFace components to install. By default, all components are subject to installation. You can leave it as is by entering
done
, or select specific components. Whenever you have to make a selection, first, deselect all the listed components by entering-*
in the command line, then select required components by entering their sequence number (keyword), for example:1 7 13
, etc. Enterdone
to save your selection and proceed to another step.Warning
We do not recommend excluding the
pause
component from installation, as this will leave the remaining components without a network namespace to attach to.If you exclude the
pause
component intentionally, make sure to edit the/opt/findface-multi/docker-compose.yaml
file and provide a host name for each service in thenetwork_mode
parameter.Please select FindFace Multi components to install: - 1 [v] findface-data - Recognition models ... ... Enter keyword to select matching choices or -keyword to clear selection. Enter "done" to save your selection and proceed to another step. components> done
Find the full list of components and their descriptions in the Components to Install section.
Specific questions related to the selected components: acceleration type, the required number of component instances, neural network models, etc. If you are experiencing a difficulty answering them, refer to the section Components to Install or try to find an answer in this documentation.
Q:
Please set findface-multi admin password
A: Set the Super Administrator (
superuser
) password.Please set findface-multi admin password findface-multi-admin-password> admin
The installer will pull the FindFace Multi images from the Ntechlab registry and start the associated services in Docker containers.
Perform the post-deployment procedures.
Tip
To install the same configuration of FindFace Multi on a different host, use the automatic deployment from the installation file. In this case, you won’t have to answer the installation questions again. The exact path to the installation file is displayed right after the last question, before the installer starts active progress:
[I 2023-02-09 11:13:37,187 main:142] Your answers were saved to /tmp/findface-installer-p01n9sn3.json
Be sure to remove fields *.config
, exp_ip
, and int_ip
before installing FindFace Multi on a host with a different IP address.
To launch the automatic deployment from the /tmp/<findface-installer-*>.json
file, execute:
sudo ./<findface-*>.run -f /tmp/<findface-installer-*>.json
Components to Install
Explore the full list of components during custom installation, as well as their descriptions.
Please select FindFace Multi components to install:
- 1 [v] findface-data - Recognition models
- 2 [v] pause - Pause container that hosts network namespace
- 3 [v] memcached - (third-party) Memcached server
- 4 [v] etcd - (third-party) etcd server
- 5 [v] postgresql - (third-party) PostgreSQL server
- 6 [v] redis - (third-party) Redis server
- 7 [v] pgbouncer - (third-party) Connection pooler for PostgreSQL
- 8 [v] nats - (third-party) NATS Server
- 9 [v] nats-jetstream - (third-party) NATS Server with JetStream enabled
- 10 [v] timescaledb - (third-party) TimescaleDB server
- 11 [v] findface-ntls - FindFace License Server - one instance of this service needs to be installed
- 12 [v] findface-extraction-api - FindFace Extraction API - detection and recognition API
- 13 [v] findface-sf-api - Simple Face API - main HTTP API of FindFace Server
- 14 [v] findface-deduplicator - Deduplicator - simple deduplicator HTTP API
- 15 [v] findface-liveness-api - Face Liveness API - video liveness detection service.
- 16 [v] findface-upload - FindFace Upload - WebDAV configuration for NginX
- 17 [v] findface-video-manager - FindFace Video Manager - Jobs scheduler and management API for video processing
- 18 [v] findface-video-worker - FindFace Video Worker - Realtime detector for video files and streams
- 19 [v] findface-multi-line-crossing-analytics - FindFace Multi line crossing analytics service
- 20 [v] findface-multi-identity-provider - FindFace Multi identity provider service
- 21 [v] findface-multi-audit - FindFace Multi audit service
- 22 [v] findface-multi-legacy - FindFace Multi
- 23 [v] findface-multi-ui - FindFace Multi ui service
- 24 [v] findface-tarantool-server - FindFace TNT API - storage and search service
- 25 [v] mongodb - (third-party) MongoDB database
- 26 [v] findface-video-storage - FindFace Video Storage - a service for storing video chunks
- 27 [v] findface-video-streamer - FindFace Video Streamer - service for streaming archived videos
- 28 [v] superset - (third party) superset BI with our init
- 29 [v] rabbitmq - (third-party) RabbitMQ server
- 30 [v] findface-annex - FindFace Annex
- 31 [v] alarm-app - Alarm App
- 32 [v] findface-multi-file-mover - FindFace Multi file mover service
- 33 [v] healthcheck - Container that waits until multi is ready
- 34 [v] findface-multi-alerts - FindFace Multi alerts service
Enter keyword to select matching choices or -keyword to clear selection.
Enter "done" to save your selection and proceed to another step.
components> done
Component |
Description |
---|---|
|
The component installs neural network models. Select the required models from the list. You will also need to edit the |
|
An internal service. The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
An internal service. The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
An internal service. The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
An internal service. The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |
|
The component installs the |