Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Info

This topic is for a deployment in a Data Center, not on a rented Cloud infrastructure, like AWS.

Deployment over Kubernetes requires an assessment of the data center and existing services. Below are the main services: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)

...

Examples of Kubernetes used in previous deployments: KubeSphere, EKS, OpenShift, K3S, and MiniCube (for testing).

Usual requirements

...

Kubernetes - preferred Opinshift 1.28

...

Object storage - S3 compatible, like MINIO

...

Database - preferred MySQL 5.7, minimum 2 cores, 16GB

...

Jump host (a separate VM) - 2 cores, 16GB

...

Configured DNS.

...

A pull of public IP addresses.

...

Mapping of public IP addresses/ports to local nodes IP addresses/ports,

...

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:

  1. Storage server, like DELL ECS EX500 series.

  2. NAS storage, like QNAP.

  3. 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