Конфигурация кластера в YAML (Cartridge)¶
Документ рассматривает параметры YAML-конфигурации кластеров Tarantool Cartridge,
необходимые для взаимодействия с TCF.
Например, вы можете задать TCF-специфичные настройки кластера, отправив HTTP-запрос
с необходимой YAML-конфигурацией на адрес /admin/config
.
Для работы кластера Tarantool Cartridge с TCF используется блок конфигурации cluster_federation.
cluster_federation¶
Блок конфигурации cluster_federation
содержит следующие параметры:
cluster_1¶
Имя кластера, для которого применяется конфигурация. Имя используется в качестве префикса etcd для хранения информации о состоянии кластера.
Тип: string
Пример:
cluster_federation:
cluster_1: cluster_a
cluster_2: cluster_b
# ...
cluster_2¶
Имя соседнего кластера. Имя используется в качестве префикса etcd для хранения информации о состоянии кластера.
Тип: string
initial_status¶
Состояние, в которое кластер переходит при первом запуске с использованием TCF.
Возможные значения: active
, passive
Пример:
cluster_federation:
initial_status: active
# ...
dml_users¶
Список пользователей, доступ которым заблокирован на пассивном кластере.
После смены состояния балансировщик может не сразу получить информацию об изменении состояния и какое-то время продолжит направлять трафик на пассивный кластер.
dml_users
необходима, чтобы заблокировать пользователя, от имени которого приложение отправляет запросы на пассивный кластер.
Тип: array
Пример:
cluster_federation:
# ...
dml_users:
- db_user
replication_user¶
Имя пользователя для подключения репликаторов TCF.
Тип: string
Пример:
cluster_federation:
# ...
replication_user: replicator
replication_password: foobar
storage¶
Attention
Параметры storage
и storage_params
в конфигурации кластера Cartridge используются в случае,
если второй кластер работает на Tarantool 3.x.
Тип хранилища конфигурации, которое используется для хранения состояния кластеров.
Возможные значения: config_storage
, etcd_v3
, etcd_v2
.
storage_params¶
Attention
Параметры storage
и storage_params
в конфигурации кластера Cartridge используются в случае,
если второй кластер работает на Tarantool 3.x.
Параметры хранилища конфигурации.
Набор параметров зависит от выбранного типа хранилища конфигурации –
config_storage
, etcd_v3
или etcd_v2
.
Для типа config_storage
доступны следующие параметры:
endpoints
– массив узлов хранилищаconfig_storage
с возможностью указания нескольких подключений. Параметр доступен начиная с версии 0.6.0. Тип:array
. Возможные параметры:uri
– адрес master-узла хранилища конфигурации для типаconfig_storage
, указанный внутри каждого объекта в массивеendpoints
. Тип:string
;login
– имя пользователя для доступа к хранилищу конфигурации. Тип:string
;password
– пароль для доступа к хранилищу конфигурации. Тип:string
;params
– дополнительные параметры подключения к хранилищу. Возможные параметры:ssl_key_file
– путь к закрытому ключу. Тип:string
;ssl_cert_file
– путь к сертификату. Тип:string
;ssl_ca_file
– путь к корневому сертификату. Тип:string
;ssl_ciphers
– список наборов шифров TLS, разделенных двоеточиями. Тип:string
;ssl_password
– пароль для зашифрованного закрытого ключа SSL. Тип:string
;ssl_password_file
– текстовый файл, содержащий пароли для зашифрованных ключей SSL. Тип:string
;
uri
– адрес master-узла хранилища конфигурации для типаconfig_storage
. Параметр удален начиная с версии 0.6.0. Тип:string
,key-value
;login
– имя пользователя для доступа к хранилищу конфигурации. Параметр удален начиная с версии 0.6.0. Тип:string
;password
– пароль для доступа к хранилищу конфигурации. Параметр удален начиная с версии 0.6.0. Тип:string
;timeout
– время ожидания выполнения запроса в секундах. Тип:number
. Значение по умолчанию: 1. В версии 0.7.0 параметр переименован изrequest_timeout
вtimeout
;prefix
– префикс, под которым хранится конфигурация. Параметр доступен начиная с версии 0.4.0. Тип:string
;params
– дополнительные параметры подключения к хранилищу. Набор параметров совпадает со списком опций функции Tarantool net_box.connect(). Параметр удален начиная с версии 0.6.0;uri.params
- настройки SSL. Параметр удален начиная с версии 0.6.0. Возможные параметры:ssl_key_file
– путь к закрытому ключу. Тип:string
;ssl_cert_file
– путь к сертификату. Тип:string
;ssl_ca_file
– путь к корневому сертификату. Тип:string
;ssl_ciphers
– список наборов шифров TLS, разделенных двоеточиями. Тип:string
;ssl_password
– пароль для зашифрованного закрытого ключа SSL. Тип:string
;ssl_password_file
– текстовый файл, содержащий пароли для зашифрованных ключей SSL. Тип:string
.
Для типа etcd_v3
доступны следующие параметры:
endpoints
– URI экземпляров хранилища конфигурации. Тип:array
;login
– имя пользователя для доступа к хранилищу конфигурации. Тип:string
;password
– пароль для доступа к хранилищу конфигурации. Тип:string
;prefix
– префикс, под которым хранится конфигурация. Значение по умолчанию:/tcf
. Параметр доступен начиная с версии 0.4.0. Тип:string
;lock_delay
– время в секундах, в течение которого блокировка остается активной после разрыва соединения. После этого она автоматически снимается. Тип:number
;request_timeout
– время в секундах, в течение которого должен выполниться запрос к etcd. Если за это время ответа нет, запрос считается неудачным. Тип:number
;http.request.timeout
– время ожидания выполнения запроса в секундах. Тип:number
. Значение по умолчанию: 1;http.request.unix_socket
– Unix-сокет для подключения к хранилищу конфигурации. Тип:string
;ssl.ca_file
– путь к корневому сертификату. Тип:string
;ssl.ca_path
– путь к директории, содержащей сертификаты. Тип:string
;ssl.ssl_cert
– путь к сертификату. Тип:string
;ssl.ssl_key
– путь к закрытому ключу. Тип:string
;ssl.verify_host
– верифицировать имя сертификата (CN) с указанным хостом. Тип:boolean
;ssl.verify_peer
– верифицировать SSL-сертификаты. Тип:boolean
;watchers.reconnect_max_attempts
– максимальное число попыток подключения к хранилищу в случае ошибок подключения. Тип:integer
;watchers.reconnect_timeout
– время ожидания в секундах между попытками подключения к хранилищу в случае ошибок подключения. Тип:number
.
Для типа etcd_v2
доступны следующие параметры:
endpoints
– URI экземпляров хранилища конфигурации. Тип:array
;username
– имя пользователя для доступа к хранилищу конфигурации. Тип:string
;password
– пароль для доступа к хранилищу конфигурации. Тип:string
;prefix
– префикс, под которым хранится конфигурация. Значение по умолчанию:/tcf
. Параметр доступен начиная с версии 0.4.0. Тип:string
;lock_delay
– длительность блокировки в секундах. Тип:number
. Значение по умолчанию: 10.
status_ttl¶
Время (в секундах), через которое может произойти автоматическое переключение состояния кластеров.
Тип: number
Значение по умолчанию: 4
enable_system_check¶
Включить сервис проверки доступности файловой системы.
Тип: boolean
Значение по умолчанию: true
failover_timeout¶
Время (в секундах) захвата флага активным координатором. Если активный координатор вышел из строя и в активном кластере не осталось доступных координаторов, будет произведено переключение статусов кластеров.
Тип: number
Значение по умолчанию: 20
health_check_delay¶
Периодичность (в секундах) опроса проверки состояния кластера координатором.
Каждая последующая неудачная проверка увеличивает счетчик suspect_counts
на 1.
См. также max_suspect_count.
Тип: number
Значение по умолчанию: 3
max_suspect_counts¶
Максимальное значение счетчика suspects_counts
, после которого координатор складывает полномочия и производится переключение состояния кластеров.
См. также health_check_delay.
Тип: number
Значение по умолчанию: 3