Skip to content

Commit 831cae3

Browse files
author
bazeltsev
committed
Add system requirements tail
Add system requirements
1 parent a0e7ac0 commit 831cae3

File tree

12 files changed

+163
-62
lines changed

12 files changed

+163
-62
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# System requirements and recommendations
2+
3+
This section provides recommendations for deploying {{ ydb-short-name }}.
4+
5+
## Hardware configuration {#hardware}
6+
7+
* **CPU**
8+
9+
{{ ydb-short-name }} server can be run only on x86-64 CPU with AVX2 instructions support (Intel Haswell (4th generation) and later, AMD EPYC and later).
10+
11+
ARM processors are not supported now.
12+
13+
* **Memory**
14+
15+
It is recommended to use error-correcting code (ECC) memory for data consistency.
16+
17+
* **Storage**
18+
19+
{{ ydb-short-name }} server can be run on servers with any storage types (HDD/SSD/NVMe/RAM). It is recommended to use SSD/NVMe drives for better performance.
20+
21+
Minimal disk capacity must be at least 80GB. It is recommended to use such disks only for testing, proper functioning is not guaranteed. It is recommended to use disks as block devices with more than 800GB capacity for efficiency.
22+
23+
{{ ydb-short-name }} does not use any filesystems to store data and works directly with disk. Don't create or mount filesystems on disks which are used in {{ ydb-short-name }} . Also it is not recommended to share block devices with other processes as this can lead to a significant performance degradation.
24+
25+
## Software configuration {#software}
26+
27+
{{ ydb-short-name }} server can be run on OS Linux with kernel 4.4 or later. MacOS and Windows are not supported now.
28+
29+
## Topology {#topology}
30+
31+
When planning a deployment, it's important to choose the right [Blob Storage configuration](./configuration/config.md#domains-blob) based on the required fault tolerance:
32+
33+
* Mode None - This mode requires 1 server without fault tolerance. It is recommended only for functional testing.
34+
35+
* block-4-2: This mode requires at least 8 servers in one datacenter. To ensure maximum fault tolerance, servers must be located in 8 independent racks. In this mode cluster remains operational if 1 rack fails completely and 1 node in another rack fails.
36+
37+
* Mode mirror-3dc - This mode requires at least 9 servers. To ensure maximum fault tolerance, servers must be located in three independent data centers and different server racks in each of them. In this mode cluster remains operational if 1 datacenter fails completely and 1 node fails in another datacenter.
38+
39+
* Mode mirror-3dc - This mode requires at least 9 servers. To ensure maximum fault tolerance, servers must be located in three independent data centers and different server racks in each of them. In this mode cluster remains operational if 1 datacenter fails completely and 1 node fails in another datacenter.
40+
41+
* Mode mirror-3dc-3-nodes - The simple variant of mirror-3dc mode. This mode requires at least 3 servers with 3 disks in each. To ensure maximum fault tolerance, each server must be located in an independent datacenter. In this mode cluster keeps running if no more than 1 node fails. It is recommended only for testing.
42+
43+
The failure of the node means that the server is out of service completely or one of the disks in it fails.
44+
45+
Read more about storage groups in [Terms and definitions](../concepts/databases.md#storage-groups).

ydb/docs/en/core/deploy/production_checklist.md

-26
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# System requirements and recommendations
2+
3+
This section provides recommendations for deploying {{ ydb-short-name }}.
4+
5+
## Hardware configuration {#hardware}
6+
7+
* **CPU**
8+
9+
{{ ydb-short-name }} server can be run only on x86-64 CPU with AVX2 instructions support (Intel Haswell (4th generation) and later, AMD EPYC and later).
10+
ARM processors are not supported now.
11+
12+
* **Memory**
13+
14+
It is recommended to use error-correcting code (ECC) memory for data consistency.
15+
16+
* **Storage**
17+
18+
{{ ydb-short-name }} server can be run on servers with any storage types (HDD/SSD/NVMe/RAM). It is recommended to use SSD/NVMe drives for better performance.
19+
20+
Minimal disk capacity must be at least 80GB. It is recommended to use such disks only for testing, proper functioning is not guaranteed. It is recommended to use disks as block devices with more than 800GB capacity for efficiency.
21+
22+
{{ ydb-short-name }} does not use any filesystems to store data and works directly with disk. Don't create or mount filesystems on disks which are used in {{ ydb-short-name }} . Also it is not recommended to share block devices with other processes as this can lead to a significant performance degradation.
23+
24+
25+
## Software configuration {#software}
26+
27+
{{ ydb-short-name }} server can be run on OS Linux with kernel 4.4 or later. MacOS and Windows are not supported now.
28+
29+
## Topology {#topology}
30+
31+
When planning a deployment, it's important to choose the right [Blob Storage configuration](./configuration/config.md#domains-blob) based on the required fault tolerance:
32+
33+
* Mode None - This mode requires 1 server without fault tolerance. It is recommended only for functional testing.
34+
35+
* block-4-2: This mode requires at least 8 servers in one datacenter. To ensure maximum fault tolerance, servers must be located in 8 independent racks. In this mode cluster remains operational if 1 rack fails completely and 1 node in another rack fails.
36+
37+
* Mode mirror-3dc - This mode requires at least 9 servers. To ensure maximum fault tolerance, servers must be located in three independent data centers and different server racks in each of them. In this mode cluster remains operational if 1 datacenter fails completely and 1 node fails in another datacenter.
38+
39+
* Mode mirror-3dc - This mode requires at least 9 servers. To ensure maximum fault tolerance, servers must be located in three independent data centers and different server racks in each of them. In this mode cluster remains operational if 1 datacenter fails completely and 1 node fails in another datacenter.
40+
41+
* Mode mirror-3dc-3-nodes - The simple variant of mirror-3dc mode. This mode requires at least 3 servers with 3 disks in each. To ensure maximum fault tolerance, each server must be located in an independent datacenter. In this mode cluster keeps running if no more than 1 node fails. It is recommended only for testing.
42+
43+
The failure of the node means that the server is out of service completely or one of the disks in it fails.
44+
45+
Read more about storage groups in [Terms and definitions](../concepts/databases.md#storage-groups).

ydb/docs/en/core/deploy/toc_i.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
items:
2+
# - name: Requirements and recommendations
3+
# href: ../deploy/system-requirements.md
24
- name: Kubernetes
35
include: { mode: link, path: orchestrated/toc_p.yaml }
46
- name: VM / Baremetal
57
href: manual/deploy-ydb-on-premises.md
68
- name: Configuration
79
href: configuration/config.md
8-
# - name: Production checklist
9-
# href: ../deploy/production_checklist.md
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Системные требования и рекомендации
2+
3+
В данном разделе приводятся рекомендации для развертывания {{ ydb-short-name }}.
4+
5+
## Аппаратная конфигурация {#hardware}
6+
7+
Необходимое количество серверов и дисков определяется требованиями к отказоустойчивости. Подробнее читайте в разделе [{#T}](topology.md).
8+
9+
* **Процессор**
10+
11+
{{ ydb-short-name }} сервер может быть запущен только на процессорах с архитектурой x86-64 с поддержкой AVX2 инструкций (Intel Haswell (4 поколение) и более поздние, AMD EPYC и более поздние).
12+
13+
ARM архитектура в настоящее время не поддерживается.
14+
15+
* **Оперативная память**
16+
17+
Рекомендуется использовать оперативную память с поддержкой коррекции ошибок (ECC) для защиты от аппаратных сбоев.
18+
19+
* **Дисковая подсистема**
20+
21+
{{ ydb-short-name }} сервер может быть запущен на серверах с дисками любого типа (HDD/SSD/NVMe). Однако мы рекомендуем использовать диски SSD/NVMe для большей производительности.
22+
23+
Минимальный размер диска должен быть не менее 80 ГБ, при меньшем размере, узел не сможет использовать устройство. Корректная и бесперебойная работа с дисками минимального размера не гарантируется. Использовать такие диски рекомендуется исключительно в тестовых целях. Для эффективной работы YDB рекомендуется использовать диски размером более 800 ГБ как блочные устройства.
24+
25+
{{ ydb-short-name }} не использует файловую систему для хранения данных и работает с диском напрямую. Поэтому не следует монтировать файловую систему или выполнять другие операции с разделом, который использует {{ ydb-short-name }}. Так же не рекомендуется делить блочное устройство с другими процессами - это может приводить к существенному ухудшению производительности.
26+
27+
## Программная конфигурация {#software}
28+
29+
{{ ydb-short-name }} сервер может быть запущен на серверах с операционной системой Linux с ядром 4.4 и выше.
30+
31+
Операционные системы macOS и Windows в данный момент не поддерживаются.

ydb/docs/ru/core/cluster/topology.md

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Топология
2+
3+
Топология кластера определяется требованиями к отказоустойчивости. Доступны следующие режимы работы:
4+
5+
Режим | Множитель<br>объема хранения | Минимальное<br>количество<br>узлов | Описание
6+
--- | --- | --- | ---
7+
`none` | 1 | 1 | Избыточность отсутствует.<br>Любой сбой оборудования приводит к недоступности пула хранения.<br>Режим рекомендуется использовать только для функционального тестирования.
8+
`block-4-2` | 1,5 | 8 | Применяется [Erasure coding](https://ru.wikipedia.org/wiki/Стирающий_код) с двумя блоками избыточности, добавляемыми к четырем блокам исходных данных. Узлы хранилища размещаются в не менее чем 8 доменах отказа (обычно стойках).<br>Пул хранения доступен при потере любых двух доменов, продолжая запись всех 6 частей данных в оставшихся доменах.<br>Режим рекомендуется для пулов хранения в пределах одной зоны доступности (обычно центра обработки данных).
9+
`mirror-3-dc` | 3 | 9 | Данные реплицируются в 3 зоны доступности, использующие 3 домена отказа (обычно стойки) внутри каждой зоны.<br>Пул хранения доступен при сбое одной зоны доступности и одного домена отказа в оставшихся зонах.<br>Режим рекомендуется для мультидатацентровых инсталляций.
10+
`mirror-3dc-3-nodes` | 3 | 3 | Является упрощенным вариантом `mirror-3dc`. Для данного режима необходимо минимум 3 сервера по 3 диска в каждом. Для обеспечения наибольшей отказоустойчивости каждый сервер должен находиться в независимом датацентре.<br>Работоспособность в данном режиме сохраняется при выходе из строя не более 1 узла.<br>Режим рекомендуется использовать только для функционального тестирования.
11+
12+
{% note info %}
13+
14+
Под выходом из строя узла подразумевается как полная так и частичная его недоступность, например выход из строя одного диска на узле.
15+
16+
Приведенный выше множитель объема хранения относится только к фактору обеспечения отказоустойчивости. Для планирования размера хранилища необходимо учитывать другие влияющие факторы (например, фрагментацию и гранулярность слотов).
17+
18+
{% endnote %}
19+
20+
О том, как задать топологию кластера {{ ydb-short-name }} читайте в разделе [{#T}](../deploy/configuration/config.md#domains-blob).

ydb/docs/ru/core/deploy/_includes/index.md

+5-3
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,10 @@
22

33
В данном разделе представлена информация по развертыванию и конфигурации многоузловых кластеров YDB, обслуживающих множество баз данных.
44

5-
- [Развертывание в Kubernetes](../orchestrated/concepts.md)
6-
- [Развертывание на виртуальных и железных серверах](../manual/deploy-ydb-on-premises.md)
7-
- [Конфигурирование](../configuration/config.md)
5+
* [{#T}](../../cluster/system-requirements.md).
6+
* [{#T}](../../cluster/topology.md).
7+
* [Развертывание в Kubernetes](../orchestrated/concepts.md).
8+
* [Развертывание на виртуальных и железных серверах](../manual/deploy-ydb-on-premises.md).
9+
* [Конфигурирование](../configuration/config.md).
810

911
Пошаговые сценарии быстрого развертывания локального одноузлового кластера для целей разработки и тестирования функциональности приведены в разделе [Начало работы](../../getting_started/self_hosted/index.md).

ydb/docs/ru/core/deploy/configuration/config.md

+8-9
Original file line numberDiff line numberDiff line change
@@ -145,15 +145,14 @@ domains_config:
145145
- Шифрование данных (вкл/выкл)
146146
- Режим отказоустойчивости
147147

148-
В настоящее время поддерживаются три режима отказоустойчивости:
149-
150-
|Название режима|Множитель<br>объема хранения|Минимальное<br>количество<br>узлов|Описание|
151-
|---------|-|-----------|-|
152-
| none | 1 | 1 | Избыточность отсутствует, любой сбой оборудования приводит к недоступности пула хранения. Этот режим может быть полезен для функционального тестирования. |
153-
| block-4-2 | 1.5 | 8 | Применяется [Erasure coding](https://ru.wikipedia.org/wiki/Стирающий_код) с двумя блоками избыточности, добавляемыми к четырем блокам исходных данных. Узлы хранилища размещаются в не менее чем 8 доменах отказа (обычно стойках). Пул хранения доступен при потере любых двух доменов, продолжая запись всех 6 частей данных в оставшихся доменах. Этот режим применим для пулов хранения в пределах одной зоны доступности (обычно центра обработки данных). |
154-
| mirror-3-dc | 3 | 9 | Данные реплицируются в 3 зоны доступности, использующие 3 домена отказа (ообычно стойки) внутри каждой зоны. Пул хранения доступен при сбое одной зоны доступности и одного домена отказа в оставшихся зонах. |
155-
156-
Приведенный выше множитель объема хранения относится только к фактору обеспечения отказоустойчивости. Для планирования размера хранилища необходимо учитывать другие значительные факторы, в частности фрагментацию и гранулярность слотов.
148+
Доступны следующие [режимы отказоустойчивости](../../cluster/topology.md):
149+
150+
Режим | Описание
151+
--- | ---
152+
`none` | Избыточность отсутствует. Применяется для тестирования.
153+
`block-4-2` | Избыточность с коэффициентом 1,5, применяется для однодатацентровых кластеров.
154+
`mirror-3-dc` | Избыточность с коэффициентом 3, применяется для мультидатацентровых кластеров.
155+
`mirror-3dc-3-nodes` | Избыточность с коэффициентом 3. Применяется для тестирования.
157156

158157
**Синтаксис**
159158

0 commit comments

Comments
 (0)