Object storage requirements
General requirements are listed in General requirements.
Note the additional requirements for object storage:
- To be able to deploy and work with object storage, run Virtuozzo Hybrid Infrastructure on physical servers.
- Keep in mind that object storage uses more space than is occupied by all S3 objects. This happens because the S3 service also stores internal metadata about objects and their distribution across object servers. This metadata usually requires 0.5–11 percent of the space used by S3 data. Moreover, since version 4.6, Virtuozzo Hybrid Infrastructure provides backups for object metadata, which increase the metadata size by additional 0.5 percent. The backups have automatic retention and do not require any assistance from a system administrator. The metadata and backups use the same redundancy scheme that is configured for the S3 cluster.
-
Object storage reserves RAM and CPU cores depending on the number of S3 nodes and taking into account a possible node failure. Each S3 node runs four S3 gateways, up to 10 object services (OS), and up to 10 name services (NS). However, the entire S3 cluster cannot host more than 24 OS and 16 NS services. Also, the first five nodes in the S3 cluster run the
configd
daemon, and all S3 nodes run thehostd
daemon, which have their additional RAM reservations.The reserved RAM size on an S3 node is calculated by using the following formula:
[CONFIGD * 256 MB] + HOSTD * 256 MB + 4 S3GW * 512 MB + (total_OS * 256 MB + total_NS * 512 MB) / (S3_nodes_number - nodes_that_can_fail_number)
The reserved CPU cores on an S3 node are calculated by using the following formula:
4 S3GW * 0.5 cores + (total_OS * 0.1 cores + total_NS * 0.2 cores) / (S3_nodes_number - nodes_that_can_fail_number)
For example, the S3 cluster of three nodes runs 3
hostd
and 3configd
instances, 12 gateways, 24 object services, 16 name services, and may lose one node without data loss. In this case:- The reserved RAM size on each S3 node will be calculated as 256 MB + 256 MB + 4 * 512 MB + (24 * 256 MB + 16 * 512 MB) / (3 - 1), that is 9728 MB or 9.7 GB.
- The reserved CPU cores on each S3 node will be calculated as 4 * 0.5 cores + (24 * 0.1 cores + 16 * 0.2 cores) / (3 - 1), that is 4.8 cores.
- The total reserved RAM and CPU in the S3 cluster will be 29.2 GB and 14.4 cores.
To better understand how to calculate the hardware configuration for object storage, consider the following examples with RAM and CPU reservations.
Example 1. If you have 3 nodes (1 system+metadata disk and 5 storage disks) and want to use them for the S3 cluster with the 3 replicas redundancy mode and the host failure domain, refer to the table below for the calculations. Note that three nodes are used for the management node high availability, and each of them meets the requirements for the management node.
Service | Management nodes | |
---|---|---|
System | 4.5 GB, 1 core | |
Storage services |
5 storage disks, 1 metadata on system disk (each takes 0.5 GB and 0.2 cores), that is 3 GB and 1.2 cores in total |
|
S3 | 9.7 GB, 4.8 cores | |
Service reservations | 17.2 GB of RAM and 7 cores | |
Minimum hardware configuration | 24 GB of RAM and 8 cores | |
Recommended hardware configuration | 32 GB of RAM and 16 cores |
Example 2. If you have 5 nodes (1 system+metadata disk, 1 SSD cache disk, 10 storage disks) and want to use them for the S3 cluster with the Encoding 3+2 redundancy mode and the host failure domain, refer to the table below for the calculations. Note that three nodes are used for the management node high availability, and each of them meets the requirements for the management node.
Service | Management nodes (nodes 1-3) | Secondary nodes (4-5) | |
---|---|---|---|
System | 4.5 GB, 1 core | 1.5 GB, 1 core | |
Storage services | 10 storage disks, 1 metadata on system disk, 1 cache disk (each takes 0.5 GB and 0.2 cores), that is 6 GB and 2.4 cores in total | 10 storage disks, 1 metadata on system disk, 1 cache disk (each takes 0.5 GB and 0.2 cores), that is 6 GB and 2.4 cores in total | |
S3 | 6.2 GB, 3.4 cores | 6.2 GB, 3.4 cores | |
Service reservations | 16.7 GB of RAM and 6.8 cores | 13.7 GB of RAM and 6.8 cores | |
Minimum hardware configuration | 24 GB of RAM and 8 cores | 16 GB of RAM and 8 cores | |
Recommended hardware configuration | 48 GB of RAM and 16 cores | 48 GB of RAM and 16 cores |