|
|
|
@ -1,12 +1,12 @@ |
|
|
|
|
- name: etcd_report_interval |
|
|
|
|
type: sec |
|
|
|
|
default: 5 |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Interval at which OSDs report their state to etcd. Affects OSD lease time |
|
|
|
|
and thus the failover speed. Lease time is equal to this parameter value |
|
|
|
|
plus max_etcd_attempts*etcd_quick_timeout because it should be guaranteed |
|
|
|
|
that every OSD always refreshes its lease in time. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Интервал, с которым OSD обновляет своё состояние в etcd. Значение параметра |
|
|
|
|
влияет на время резервации (lease) OSD и поэтому на скорость переключения |
|
|
|
|
при падении OSD. Время lease равняется значению этого параметра плюс |
|
|
|
@ -14,12 +14,12 @@ |
|
|
|
|
- name: run_primary |
|
|
|
|
type: bool |
|
|
|
|
default: true |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Start primary OSD logic on this OSD. As of now, can be turned off only for |
|
|
|
|
debugging purposes. It's possible to implement additional feature for the |
|
|
|
|
monitor which may allow to separate primary and secondary OSDs, but it's |
|
|
|
|
unclear why anyone could need it, so it's not implemented. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Запускать логику первичного OSD на данном OSD. На данный момент отключать |
|
|
|
|
эту опцию может иметь смысл только в целях отладки. В теории, можно |
|
|
|
|
реализовать дополнительный режим для монитора, который позволит отделять |
|
|
|
@ -28,14 +28,14 @@ |
|
|
|
|
- name: osd_network |
|
|
|
|
type: string or array of strings |
|
|
|
|
type_ru: строка или массив строк |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Network mask of the network (IPv4 or IPv6) to use for OSDs. Note that |
|
|
|
|
although it's possible to specify multiple networks here, this does not |
|
|
|
|
mean that OSDs will create multiple listening sockets - they'll only |
|
|
|
|
pick the first matching address of an UP + RUNNING interface. Separate |
|
|
|
|
networks for cluster and client connections are also not implemented, but |
|
|
|
|
they are mostly useless anyway, so it's not a big deal. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Маска подсети (IPv4 или IPv6) для использования для соединений с OSD. |
|
|
|
|
Имейте в виду, что хотя сейчас и можно передать в этот параметр несколько |
|
|
|
|
подсетей, это не означает, что OSD будут создавать несколько слушающих |
|
|
|
@ -46,34 +46,34 @@ |
|
|
|
|
- name: bind_address |
|
|
|
|
type: string |
|
|
|
|
default: "0.0.0.0" |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Instead of the network mask, you can also set OSD listen address explicitly |
|
|
|
|
using this parameter. May be useful if you want to start OSDs on interfaces |
|
|
|
|
that are not UP + RUNNING. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Этим параметром можно явным образом задать адрес, на котором будет ожидать |
|
|
|
|
соединений OSD (вместо использования маски подсети). Может быть полезно, |
|
|
|
|
например, чтобы запускать OSD на неподнятых интерфейсах (не UP + RUNNING). |
|
|
|
|
- name: bind_port |
|
|
|
|
type: int |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
By default, OSDs pick random ports to use for incoming connections |
|
|
|
|
automatically. With this option you can set a specific port for a specific |
|
|
|
|
OSD by hand. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
По умолчанию OSD сами выбирают случайные порты для входящих подключений. |
|
|
|
|
С помощью данной опции вы можете задать порт для отдельного OSD вручную. |
|
|
|
|
- name: autosync_interval |
|
|
|
|
type: sec |
|
|
|
|
default: 5 |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Time interval at which automatic fsyncs/flushes are issued by each OSD when |
|
|
|
|
the immediate_commit mode if disabled. fsyncs are required because without |
|
|
|
|
them OSDs quickly fill their journals, become unable to clear them and |
|
|
|
|
stall. Also this option limits the amount of recent uncommitted changes |
|
|
|
|
which OSDs may lose in case of a power outage in case when clients don't |
|
|
|
|
issue fsyncs at all. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Временной интервал отправки автоматических fsync-ов (операций очистки кэша) |
|
|
|
|
каждым OSD для случая, когда режим immediate_commit отключён. fsync-и нужны |
|
|
|
|
OSD, чтобы успевать очищать журнал - без них OSD быстро заполняют журналы и |
|
|
|
@ -83,21 +83,21 @@ |
|
|
|
|
- name: autosync_writes |
|
|
|
|
type: int |
|
|
|
|
default: 128 |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Same as autosync_interval, but sets the maximum number of uncommitted write |
|
|
|
|
operations before issuing an fsync operation internally. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Аналогично autosync_interval, но задаёт не временной интервал, а |
|
|
|
|
максимальное количество незафиксированных операций записи перед |
|
|
|
|
принудительной отправкой fsync-а. |
|
|
|
|
- name: recovery_queue_depth |
|
|
|
|
type: int |
|
|
|
|
default: 4 |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Maximum recovery operations per one primary OSD at any given moment of time. |
|
|
|
|
Currently it's the only parameter available to tune the speed or recovery |
|
|
|
|
and rebalancing, but it's planned to implement more. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Максимальное число операций восстановления на одном первичном OSD в любой |
|
|
|
|
момент времени. На данный момент единственный параметр, который можно менять |
|
|
|
|
для ускорения или замедления восстановления и перебалансировки данных, но |
|
|
|
@ -110,20 +110,20 @@ |
|
|
|
|
- name: readonly |
|
|
|
|
type: bool |
|
|
|
|
default: false |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Read-only mode. If this is enabled, an OSD will never issue any writes to |
|
|
|
|
the underlying device. This may be useful for recovery purposes. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Режим "только чтение". Если включить этот режим, OSD не будет писать ничего |
|
|
|
|
на диск. Может быть полезно в целях восстановления. |
|
|
|
|
- name: no_recovery |
|
|
|
|
type: bool |
|
|
|
|
default: false |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Disable automatic background recovery of objects. Note that it doesn't |
|
|
|
|
affect implicit recovery of objects happening during writes - a write is |
|
|
|
|
always made to a full set of at least pg_minsize OSDs. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Отключить автоматическое фоновое восстановление объектов. Обратите внимание, |
|
|
|
|
что эта опция не отключает восстановление объектов, происходящее при |
|
|
|
|
записи - запись всегда производится в полный набор из как минимум pg_minsize |
|
|
|
@ -131,66 +131,66 @@ |
|
|
|
|
- name: no_rebalance |
|
|
|
|
type: bool |
|
|
|
|
default: false |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Disable background movement of data between different OSDs. Disabling it |
|
|
|
|
means that PGs in the `has_misplaced` state will be left in it indefinitely. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Отключить фоновое перемещение объектов между разными OSD. Отключение |
|
|
|
|
означает, что PG, находящиеся в состоянии `has_misplaced`, будут оставлены |
|
|
|
|
в нём на неопределённый срок. |
|
|
|
|
- name: print_stats_interval |
|
|
|
|
type: sec |
|
|
|
|
default: 3 |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Time interval at which OSDs print simple human-readable operation |
|
|
|
|
statistics on stdout. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Временной интервал, с которым OSD печатают простую человекочитаемую |
|
|
|
|
статистику выполнения операций в стандартный вывод. |
|
|
|
|
- name: slow_log_interval |
|
|
|
|
type: sec |
|
|
|
|
default: 10 |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Time interval at which OSDs dump slow or stuck operations on stdout, if |
|
|
|
|
they're any. Also it's the time after which an operation is considered |
|
|
|
|
"slow". |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Временной интервал, с которым OSD выводят в стандартный вывод список |
|
|
|
|
медленных или зависших операций, если таковые имеются. Также время, при |
|
|
|
|
превышении которого операция считается "медленной". |
|
|
|
|
- name: max_write_iodepth |
|
|
|
|
type: int |
|
|
|
|
default: 128 |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Parallel client write operation limit per one OSD. Operations that exceed |
|
|
|
|
this limit are pushed to a temporary queue instead of being executed |
|
|
|
|
immediately. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Максимальное число одновременных клиентских операций записи на один OSD. |
|
|
|
|
Операции, превышающие этот лимит, не исполняются сразу, а сохраняются во |
|
|
|
|
временной очереди. |
|
|
|
|
- name: min_flusher_count |
|
|
|
|
type: int |
|
|
|
|
default: 1 |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Flusher is a micro-thread that moves data from the journal to the data |
|
|
|
|
area of the device. Their number is auto-tuned between minimum and maximum. |
|
|
|
|
Minimum number is set by this parameter. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Flusher - это микро-поток (корутина), которая копирует данные из журнала в |
|
|
|
|
основную область устройства данных. Их число настраивается динамически между |
|
|
|
|
минимальным и максимальным значением. Этот параметр задаёт минимальное число. |
|
|
|
|
- name: max_flusher_count |
|
|
|
|
type: int |
|
|
|
|
default: 256 |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Maximum number of journal flushers (see above min_flusher_count). |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Максимальное число микро-потоков очистки журнала (см. выше min_flusher_count). |
|
|
|
|
- name: inmemory_metadata |
|
|
|
|
type: bool |
|
|
|
|
default: true |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
This parameter makes Vitastor always keep metadata area of the block device |
|
|
|
|
in memory. It's required for good performance because it allows to avoid |
|
|
|
|
additional read-modify-write cycles during metadata modifications. Metadata |
|
|
|
@ -198,7 +198,7 @@ |
|
|
|
|
to reduce memory usage by this value, but it will hurt performance. This |
|
|
|
|
restriction is likely to be removed in the future along with the upgrade |
|
|
|
|
of the metadata storage scheme. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Данный параметр заставляет Vitastor всегда держать область метаданных диска |
|
|
|
|
в памяти. Это нужно, чтобы избегать дополнительных операций чтения с диска |
|
|
|
|
при записи. Размер области метаданных на данный момент составляет примерно |
|
|
|
@ -209,7 +209,7 @@ |
|
|
|
|
- name: inmemory_journal |
|
|
|
|
type: bool |
|
|
|
|
default: true |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
This parameter make Vitastor always keep journal area of the block |
|
|
|
|
device in memory. Turning it off will, again, reduce memory usage, but |
|
|
|
|
hurt performance because flusher coroutines will have to read data from |
|
|
|
@ -217,7 +217,7 @@ |
|
|
|
|
is typically very small because it's sufficient to have 16-32 MB journal |
|
|
|
|
for SSD OSDs. However, in theory it's possible that you'll want to turn it |
|
|
|
|
off for hybrid (HDD+SSD) OSDs with large journals on quick devices. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Данный параметр заставляет Vitastor всегда держать в памяти журналы OSD. |
|
|
|
|
Отключение параметра, опять же, снижает потребление памяти, но ухудшает |
|
|
|
|
производительность, так как для копирования данных из журнала в основную |
|
|
|
@ -229,12 +229,12 @@ |
|
|
|
|
- name: journal_sector_buffer_count |
|
|
|
|
type: int |
|
|
|
|
default: 32 |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Maximum number of buffers that can be used for writing journal metadata |
|
|
|
|
blocks. The only situation when you should increase it to a larger value |
|
|
|
|
is when you enable journal_no_same_sector_overwrites. In this case set |
|
|
|
|
it to, for example, 1024. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Максимальное число буферов, разрешённых для использования под записываемые |
|
|
|
|
в журнал блоки метаданных. Единственная ситуация, в которой этот параметр |
|
|
|
|
нужно менять - это если вы включаете journal_no_same_sector_overwrites. В |
|
|
|
@ -242,13 +242,13 @@ |
|
|
|
|
- name: journal_no_same_sector_overwrites |
|
|
|
|
type: bool |
|
|
|
|
default: false |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Enable this option for SSDs like Intel D3-S4510 and D3-S4610 which REALLY |
|
|
|
|
don't like when a program overwrites the same sector multiple times in a |
|
|
|
|
row and slow down significantly (from 20000+ iops to ~3000 iops). When |
|
|
|
|
this option is set, Vitastor will always move to the next sector of the |
|
|
|
|
journal after writing it instead of possibly overwriting it the second time. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Включайте данную опцию для SSD вроде Intel D3-S4510 и D3-4610, которые ОЧЕНЬ |
|
|
|
|
не любят, когда ПО перезаписывает один и тот же сектор несколько раз подряд |
|
|
|
|
и сильно замедляются (с 20000 и более iops до 3000). Когда данная опция |
|
|
|
@ -257,7 +257,7 @@ |
|
|
|
|
- name: throttle_small_writes |
|
|
|
|
type: bool |
|
|
|
|
default: false |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Enable soft throttling of small journaled writes. Useful for hybrid OSDs |
|
|
|
|
with fast journal/metadata devices and slow data devices. The idea is that |
|
|
|
|
small writes complete very quickly because they're first written to the |
|
|
|
@ -269,7 +269,7 @@ |
|
|
|
|
the journal. When throttling is used, the performance of small writes will |
|
|
|
|
decrease smoothly instead of abrupt drop at the moment when the journal |
|
|
|
|
fills up. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Разрешить мягкое ограничение скорости журналируемой записи. Полезно для |
|
|
|
|
гибридных OSD с быстрыми устройствами метаданных и медленными устройствами |
|
|
|
|
данных. Идея заключается в том, что мелкие записи в этой ситуации могут |
|
|
|
@ -285,11 +285,11 @@ |
|
|
|
|
- name: throttle_target_iops |
|
|
|
|
type: int |
|
|
|
|
default: 100 |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Target maximum number of throttled operations per second under the condition |
|
|
|
|
of full journal. Set it to approximate random write iops of your data devices |
|
|
|
|
(HDDs). |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Расчётное максимальное число ограничиваемых операций в секунду при условии |
|
|
|
|
отсутствия свободного места в журнале. Устанавливайте приблизительно равным |
|
|
|
|
максимальной производительности случайной записи ваших устройств данных |
|
|
|
@ -297,11 +297,11 @@ |
|
|
|
|
- name: throttle_target_mbs |
|
|
|
|
type: int |
|
|
|
|
default: 100 |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Target maximum bandwidth in MB/s of throttled operations per second under |
|
|
|
|
the condition of full journal. Set it to approximate linear write |
|
|
|
|
performance of your data devices (HDDs). |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Расчётный максимальный размер в МБ/с ограничиваемых операций в секунду при |
|
|
|
|
условии отсутствия свободного места в журнале. Устанавливайте приблизительно |
|
|
|
|
равным максимальной производительности линейной записи ваших устройств |
|
|
|
@ -309,11 +309,11 @@ |
|
|
|
|
- name: throttle_target_parallelism |
|
|
|
|
type: int |
|
|
|
|
default: 1 |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Target maximum parallelism of throttled operations under the condition of |
|
|
|
|
full journal. Set it to approximate internal parallelism of your data |
|
|
|
|
devices (1 for HDDs, 4-8 for SSDs). |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Расчётный максимальный параллелизм ограничиваемых операций в секунду при |
|
|
|
|
условии отсутствия свободного места в журнале. Устанавливайте приблизительно |
|
|
|
|
равным внутреннему параллелизму ваших устройств данных (1 для HDD, 4-8 |
|
|
|
@ -321,9 +321,9 @@ |
|
|
|
|
- name: throttle_threshold_us |
|
|
|
|
type: usec |
|
|
|
|
default: 50 |
|
|
|
|
info: > |
|
|
|
|
info: | |
|
|
|
|
Minimal computed delay to be applied to throttled operations. Usually |
|
|
|
|
doesn't need to be changed. |
|
|
|
|
info_ru: > |
|
|
|
|
info_ru: | |
|
|
|
|
Минимальная применимая к ограничиваемым операциям задержка. Обычно не |
|
|
|
|
требует изменений. |
|
|
|
|