This topic is for a deployment in a Data Center, not on a rented Cloud infrastructure, like AWS.
The VMS and the Storage will be deployed in a Data Center over a computing cluster to make all operations fully scalable and highly available. The following services should be supported by the Data Center.
Mandatory:
-
Kubernetes
-
Object storage (S3 compatible)
Optional:
-
Managed Database (MySQL or Postgres)
-
DNS zone controller
-
ELK or EFK (logging)
-
Prometheus and Grafana (monitoring)
The deployment is performed using Helm Charts.
Examples of Kubernetes used in previous deployments: KubeSphere, EKS, OpenShift, K3S, and MiniCube (for testing).
VMS
The VMS is a set of micro-services deployed over Kubernetes. Kubernetes must be installed before the deployment of the VMS. Below are the micro-services and required resources.
Main micro-services and resources
|
Service |
Cameras |
VCPU |
Memory |
HDD (Gb) |
|
Hosting |
160 |
2 |
12 |
10 |
|
Web |
2000 |
2 |
6 |
10 |
|
Control |
4000 |
2 |
8 |
10 |
|
Media |
300 |
2 |
8 |
24 |
|
CM |
500 |
2 |
4 |
10 |
|
WebRTC |
2000 |
2 |
8 |
10 |
Vertically scaling services
|
Service |
Cameras |
VCPU |
Memory |
HDD (Gb) |
|
SQL DB Cluster |
2500 |
2 |
8 |
250 |
|
ELK Cluster |
2500 |
1 |
8 |
500 |
|
Turn Server |
5000 |
2 |
8 |
10 |
|
Backend/Postgres DB |
10000 |
2 |
8 |
10 |
Resources for 1,000 cameras
The estimate includes a 30% overhead on virtualization:
-
51 VCPU
-
232 GB RAM
-
1282 GB HDD
Example of a server: Xeon Skylake with 28 cores, 56 threads, and 256 GB RAM
Storage
The storage requires S3 compatible Object Storage.
Object storage
Below are some object storage options:
-
Storage server, like DELL ECS EX500 series.
-
NAS storage, like QNAP.
-
General-purpose storage servers like Supermicro, Dell, or HP with object storage software such as minio, Ceph, or others.
Another source of hardware examples https://www.45drives.com/products/storinator-model-details.php
Resources for 1,000 cameras
One camera with 1Mbps and 30 days of retention will use approximately 350 GB of object storage. For 1,000 cameras we’ll need a storage with 350 TB capacity.
Add label