📜 ⬆️ ⬇️

We design storage for video surveillance



In the previous article, we talked about the features of the organization of the IT infrastructure and the storage subsystem for video surveillance and concluded that in large projects it is advisable to use storage systems (data storage systems) for organizing the storage of the video archive.

This publication will discuss the problem of choosing storage for video surveillance, the advantages of RAIDIX-based storage and examples of their actual implementations.

The choice of storage for video surveillance


Storage Types


Storage systems can be used for a wide range of data storage tasks: file storage, video surveillance, business applications, databases, virtualization, archives and backups, etc.
')
For slow tasks with large volumes, less productive solutions with large arrays on the HDD (file and backup storage) are usually chosen. Hybrid solutions (flash + HDD) are used for virtualization and general-purpose tasks in order to meet the needs in both speed and volume. For sensitive to delays, the attachments and databases choose very fast and expensive storage - as a rule, today it is all-flash, where speed comes to the fore, the volumes there are generally small.

For video surveillance tasks, of these three categories, the primary choice is primarily the first one, which is volume oriented, in order to get a low price for a terabyte. They can also choose more expensive hybrid solutions, but there will be little confusion from them, the flash cache (or shooting range) will become clogged with streaming (sequential) storage traffic and everything will rest on slow HDDs. Fast random access all-flash storage in successive operations, of course, will also be very good, but for video surveillance that requires large amounts, this is an unreasonably expensive and inefficient solution.

Features I / O for video surveillance


In the context of data storage, video surveillance is characterized by multi-threaded sequential I / O operations:


From the point of view of the load on the storage, it is optimal when the project does not involve constant viewing of video from the archive by a multitude of operators from several workplaces. Real-time monitoring does not require reading data, and viewing from the archive takes place on a single video recording - occasionally or even permanently. In this case, the main load - 90% or more - will fall on the record, the storage system will not be exposed to a significant reading load.

Otherwise, when constant parallel viewing of multiple videos from different cameras from the archive is required (for example, a casino, a stadium, a shopping center), we will get a lot of competitive read streams and the load on the storage system will increase dramatically. Consequently, the same number of cameras will have to put a steeper store, at least twice as productive, or reduce the number of cameras per array (controller).

Problem of choice


Today on the market there are many models of storage systems from various manufacturers:


Conventionally, all storage models can be divided into two classes:


Ideally, for a serious video surveillance project, I would like to receive a storage solution that combines only the strengths of both storage categories on the market — due quality for reasonable money. In this segment, this solution is based on RAIDIX products. Immodest, but perhaps it is a fact. Below we reveal the truth of this statement.

RAIDIX Storage Features


Architecture


RAIDIX - software storage or SDS (Software Defined Storage), which allows you to build on the basis of standard server hardware reliable, productive and fault-tolerant data storage. In principle, any x64-servers are suitable for this, including:


To connect a large number of disks it is supposed to use external disk shelves (baskets) connected via SAS. It is recommended to use internal and external disk baskets with support for hot-swappable disks.

Of course, there is a compatibility sheet, a list of recommended and tested equipment.

Deployment options


RAIDIX offers two deployment options: single- and dual-controller. In the first version, the RAIDIX software is installed on one physical server acting as a storage controller. The disks are combined into a fail-safe RAID, but the server itself and some of its components form single points of failure. This may be acceptable for non-critical tasks.

Dual-controller configuration involves installing RAIDIX software on two identical physical servers, each of which becomes a storage controller. These can be separate server platforms, or a single platform with two server nodes (nodes, blades). Both controllers are physically connected to a single disk pool hosted on internal and external disk baskets. RAIDIX integrates two servers into a fail-safe active-active cluster, the controller cache is synchronized across dedicated interfaces.

In normal mode, the load is evenly distributed to two controllers - half of the volumes created on the disk array are served by one controller, the other half - by the second controllers. If for some reason one of the controller nodes fails, the entire load automatically switches to the "surviving" controller without interruption and data loss. This solution eliminates the presence of single points of failure and is suitable for critical projects that are sensitive to downtime.

AIC HA401-LB2 solution can be cited as a good example of a server platform for dual-controller RAIDIX storage configuration. This is a 4U platform for high-availability storage servers (cluster-in-a-box) with two identical server nodes, duplicated power supplies and a 24 HDD 3.5 ”internal disk cage with hot-swappable storage. Each server node supports two Xeon processors, up to 2TB of RAM and up to 6 PCIe expansion slots. This is enough to deploy a very productive and capacious storage on several hundred disks. This platform can be called one of the recommended, it is successfully used in many projects based on RAIDIX.

Such an approach makes it possible to create the optimal storage for any project, with the necessary volumes and performance. Volumes can vary from 12 (possible and less) to hundreds of disks per storage system. In this case, the required performance is determined by the selected Intel Xeon processors, the amount of RAM, the bandwidth of interfaces and adapters - you can lay them with a margin to increase the disk capacity. We choose what is needed and nothing superfluous - maximum flexibility and no overpayments.

Key features


Today, RAIDIX is a universal solution, suitable for file storage, and for virtualization, and for other tasks, with all copes quite well. However, initially the product was developed for media storage - post-production video, in particular in the film industry.

For these guys, the deciding factors were:


It was possible to satisfy these requirements only with the help of branded Hi-End storage systems that cost “blue” money. Therefore, we had to look for an alternative, and a product was developed, which later grew into an independent solution, became a RAIDIX, and now a lot of films are being mounted on studios around the world. Common storage tasks on RAIDIX are also successful. At the same time, its value is quite acceptable, one might say, folk.

RAIDIX for video surveillance


Main advantages


It is easy to draw parallels between media tasks and video surveillance and come to the conclusion that the requirements for storage infrastructure are the same: everything that is relevant for media storage is also important for video archives. Therefore, RAIDIX-based storage systems are optimal for video surveillance projects.

I / O processing to the disk subsystem and calculation of checksums for redundancy in RAIDIX is carried out by means of computing resources of Intel Xeon processors; SAS HBA adapters without RAID functions are used to connect the disks. The proprietary RAIDIX algorithms, using internal instructions from CPUs, perform these tasks much faster and more efficiently than hardware RAID controllers and ASIC devices. As a result, we get the capabilities necessary for a large infrastructure of video surveillance:


Additional features


In addition, in the arsenal of RAIDIX there are the following unique and useful for the field of video surveillance "buns":


The truth of the possibilities stated above can be seen by deploying RAIDIX on a test bench. To do this, you need to request a demo version from us and conduct testing. Of course, this assumes that the hardware necessary for installing the RAIDIX software is available.

Active projects on RAIDIX


For more convincing, I propose to move from theory to practice. In addition to many installations in the media sector and solving general-purpose storage tasks, storage infrastructures have been successfully built based on RAIDIX in several large video surveillance projects.

At the moment, at the implementation stage, there is a large project in the territory of the Russian Federation for video surveillance throughout the city, in which 4 dual-controller RAIDIX storage systems were used for storage organization, with 200 HDDs of 6TB each. Another serious RAIDIX-based video surveillance project is being developed for a European casino: a dual-controller storage system for 300 HDDs of 10TB each. We will be able to talk about them in subsequent publications, after the introduction of systems into commercial operation.

Today we have three large successful video surveillance projects in South Korea. All three projects concern road safety and the recording of violations, implemented within the whole city. The largest of these is presented in the next section.

Project for 2000 IP cameras in Korea


Initial data


Yongin is one of the fastest growing megacities in South Korea, equal in area to Seoul, the city’s population is about a million people. To fix traffic violations and ensure security, the authorities installed 2,000 surveillance cameras in the city. Equipment for recording and storing video was located in 5 server racks and occupied the whole room. At the same time, the cameras shot low-resolution videos, which made the work of the law enforcement bodies much more difficult, since it was not possible to distinguish the car number or person in the image of such quality. Video recordings were kept for less than a month, and the police were limited in resources when investigating offenses - after this period the cases were closed, no fines were reported to the budget.



To solve this problem, the city administration has planned to record and store video in HD / FullHD resolution. Camera recording mode - 24/7 (around the clock) with a frequency of 16-25 frames per second. The archive retention period is at least one month. Such an approach significantly increases the video stream speed and data volume, therefore, requires a significant increase in performance (throughput) and storage capacity, which stores the video archive.

TK requirements for storage


Initially installed storage equipment with the task clearly could not cope, so there was a need to replace or upgrade. As a result, the following requirements were made for the new storage infrastructure:


Solution structure


As potential solutions, various options for brand and budget storage were considered. The first turned out to be too expensive, the second did not meet the stated requirements. The optimal solution among all the considered options that satisfy all the requirements of the project was RAIDIX-based storage systems. Below are the composition and structure of the implemented repository and the project as a whole.

In addition to the storage system, the IT infrastructure of the project included:


To deploy the storage, a 4U rack-mount AIC HA401-CP2 server platform was used with two server nodes and an internal basket on a 24 ″ 3.5 ”disk — an analog of a newer platform AIC HA401-LB2. This platform is ideal for deploying a dual-controller RAIDIX fault-tolerant configuration, since each computing (server) node is a separate server, with its motherboard, processors, RAM, network interfaces and HBA adapters (for connecting disk baskets). Power supplies are duplicated and are common to all nodes. Thus, due to the duplication of all necessary components, single points of failure of the platform as a whole are eliminated.

Below is a block diagram of the solution.



Accessories


The hardware configuration of server storage controllers is identical, each controller includes:


In the project, 208 SAS HDD 3.5 '' 4TB 7200r / min corporate-class hard drives were used to achieve the capacity required for storing the video archive. In addition to the internal disk basket of the storage platform (on 24 HDD), 4 external disk shelves (JBOD) AIC XJ3000-4603S were used to accommodate such a number of disks:


All disk basket baskets (internal and external) supported hot-swappable disks. The inner and two outer baskets were packed with disks completely (24 + 2x60 = 144HDD), according to the structural diagram, each of them is independently connected to one HBA-adapter port on each controller. The remaining 64 disks were equally divided between the remaining two external shelves (32 disks per shelf), as shown in the diagram, the shelves are connected in cascade (sequentially) - the first shelf to the HBA adapters of the controllers, the second - two ways to the first.

Expandability


The solution supports further vertical scaling. Since the two disk baskets are not completely clogged, it is possible to install up to 56 additional disks in them. At the same time it is better to put on controllers for an additional HBA-adapter (Broadcom 9207-8e) and connect the cascaded disk shelf to them directly. On the remaining free ports of new adapters (as long as they took one of the two Mini-SAS ports), you can hang another shelf for 60 disks.

In case of a lack of computing power, you should add one processor per controller and increase the amount of RAM. Thus, it is possible to increase the storage capacity and performance by 1.5 times with minimal investment - the existing platform is expanding vertically without the need to purchase new servers.

Array configuration


When configuring a disk array, a simple and logical approach was chosen. Each of the 15 VMS servers was given one volume (LUN), each of which was located on a separate RAID group of 12-15 disks. To create each disk group, a RAID 7.3 level was chosen, ensuring data integrity with up to three any drives simultaneously failing.

As a result, the total useful storage capacity was about 600TB.

Placement density


All the equipment necessary for organizing the storage system was placed in one rack, as shown in the figure below.



It should be noted that while a significant part of the rack space remained empty, the usable space occupied by the iron storage system is 20U (5 nodes of 4U each), the density of placement is rather high.

Conclusion


This project was implemented in 2014, at that time the solution was quite modern and technological. The system has been successfully functioning for the fourth year already and is coping with the tasks set; no modernization or expansion has been carried out and is not yet required.

Today, the equipment used in this project is outdated: new generations and models of processors, HBA adapters are released, disk volumes have grown to 8-10TB. Therefore, the capacity of the project can be reached and exceeded on a new iron with a density of 8U instead of 20U.

Thus, on modern hardware and RAIDIX software storage systems, you can successfully build efficient data storage for large video surveillance systems that can provide high density and volumes up to several petabytes per storage system, while guaranteeing high performance and fault tolerance for reasonable money.

Source: https://habr.com/ru/post/332476/


All Articles