Local Server
SmartPlayer Local Platform Operation Scheme

Option 1. Deployment on the Customer's Server, Without Using a Virtualization System
Minimum requirements for the local server:
OS Requirements
You can choose any of the listed ones. Operating systems are arranged by priority from recommended (first position) to possible (last position):
- Ubuntu Server 24.04. LTS (installation without access to an external network is possible)
- Astra Linux Orel (ver. 1.7) - Russian linux operating system (installation without access to an external network is possible)
- Astra Linux Orel (ver. 1.8) - Russian linux operating system (installation without access to an external network is possible)
CPU and RAM Parameters Depending on the Number of Screens
- Up to 200 screens: CPU: 1xXeon (4 cores), RAM: From 8 GB
- 200 - 500 screens: CPU: 1xXeon (6 cores), RAM: From 12 GB
- 500 - 2000 screens: CPU: 1xXeon (8 cores), RAM: From 24 GB
- 2000 - 5000 screens: CPU: 1xXeon (12 cores), RAM: From 52 GB, storage about 1 TB
- 5000 and more: depends on the platform requirements for specific project tasks
Hard Disk Size
- Up to 200 screens: From 100 GB (ensures storage of all content, playback statistics). Depends on the amount of content.
- 200 - 500 screens: From 250 GB (ensures storage of all content, playback statistics). Depends on the amount of content.
- 500 - 2000 screens: From 500 GB (ensures storage of all content, playback statistics). Depends on the amount of content.
- 2000 - 5000 screens: From 1 TB (ensures storage of all content, playback statistics). Depends on the amount of content.
- 5000 and more: depends on the platform requirements for specific project tasks
Network Settings
- IP: static IP address
- Internet channel: 3 - 50 Mbps. Depends on the content size.
At the time of installation of the local server:
- remote ssh access for user with root rights - used for configuration
- remote sftp access for a user with root rights - used to upload files to the server
- Internet access - used to install dependencies for the server application
- [Optional] first account (e-mail address) is the main account on the local server, if not provided by default root@smartplayer.org
Option 2. Deployment on the customer's server, using the vmWare virtualization system.
The disc is ejected with the platform fully installed. The network administrator imports the virtual machine into his virtualization environment, after starting the server, a fully operational platform is ready.
Delivery contents:
- UbuntuServer-disk1.vmdk - disk with the installed platform. Approximately 3-4 GB.
- UbuntuServer.mf - manifest file
- UbuntuServer.ovf - template with settings for the virtual machine
To prepare the image, you need:
- Static IP address (domain name) on which the server will be deployed, personal account, configured paths to client applications.
- [Not necessary]. Full network settings, when preparing the image, a completely ready-made working network interface is created.
Full network settings include:
- Static IP address
- Gateway address
- Network mask
- Primary DNS
- Secondary DNS
- DNS suffix
Option 3. Deployment on the Customer's Server, Using Hyper-V Virtualization
A disk with the fully installed platform is exported. The next step is for the network administrator to import the virtual machine into their virtualization environment; after starting the server, a fully functional platform is ready.
Delivery contents:
- Archive with Ubuntu-server, exported from Hyper-V.
Required for image preparation:
- A static IP address (domain name) where the Ubuntu server, personal account, and configured paths to client applications will be deployed;
- Optionalcomplete network settings. During image preparation, a fully ready and functional network interface is created.
Complete network settings include:
- Static IP address
- Gateway address
- Network mask
- Primary DNS
- Secondary DNS
- DNS suffix
(Installation of this solution is carried out for an additional fee, please check with your manager)
Hardware Requirements for Installing the Server Application in Clustering Mode
Clustering is a method that allows combining several servers into a single system so they can work together and perform common tasks. In this case, these servers are called cluster nodes. The main idea of clustering is to increase the reliability, performance, and availability of the application.
For the correct operation of the server application in clustering mode, the requirements for each element are specified below:
Master Node is the control center of the entire cluster. It manages all processes and coordinates the work of the remaining nodes, called worker nodes.
| CPU | RAM |
|---|---|
| 1xXeon (12 cores) | From 32 GB |
Worker Node is the working capacity of the cluster, which directly performs all the tasks and processes necessary for the applications to run. Each Worker Node handles the execution of the container and service on which the application runs.
| CPU | RAM |
|---|---|
| 1xXeon (8 cores) | From 24 GB |
It is recommended to use/add one "worker node" per 1500-2000 devices. S3 storage is a type of cloud storage created for storing large volumes of data. "S3" stands for Simple Storage Service. S3 is a unified storage to which servers connect during clustering.
| CPU | RAM |
|---|---|
| 1xXeon (12 cores) | From 24 GB |
Answers to Frequent Questions on Working with the Customer's Internal Network
- Question: Which ports need to be opened?
- Answer: For the local server (deployed on the customer's infrastructure) to work, port 80 (HTTP server) and port 443 (HTTPS server). For the operation of the SmartPlayer cloud server within network restrictions, request the document from the integrator or SmartPlayer representative.
- Question: The direction of port opening on the client application side (it can be IN or OUT)?
- Answer: It is necessary to open in both directions, IN and OUT.
- Question: Description of data exchange between the cloud server and the client application?
- Answer: The server can work using two protocols: HTTP or HTTPS. When implementing the server using the HTTPS protocol, the customer provides the certificate and independently monitors its renewal after the certificate's expiration date. Communication between the server and client applications is carried out via port 80 (HTTP server) or port 443 (HTTPS server). For interaction, the WebSocket (WS) or WebSocketSecure (WSS) protocol is used, depending on the server configuration. Required ports in the local network: port 80 or port 443, depending on the server configuration. If there is a proxy in the network, packets transmitted between the server and the personal account, client applications must not be modified. The connection opening initialization comes from the client application side.
- Question: What is the traffic volume?
- Answer: Depends on the content played on the devices. In ping-pong mode, traffic consumption is minimal, calculated in kilobytes.
- Question: When will traffic exchange occur?
- Answer: Let's divide traffic into two categories:
- ping-pong traffic exchange occurs around the clock
- traffic for receiving content on client applications occurs at the moment it is loaded onto the device. Content loading can be scheduled, for example, set at night when the communication channel is less loaded.