Переключение мастера
В отказоустойчивом кластере Managed Service for Redis из нескольких хостов вы можете переключить роль мастера с текущего хоста-мастера на хост-реплику. После этой операции текущий хост-мастер станет хостом-репликой для нового мастера.
Переключение в среднем занимает несколько минут, кластер в это время доступен.
Шардированный кластер содержит один или несколько хостов-мастеров — по одному на каждый шард. Переключение мастера для шардированного кластера осуществляется поочередно для каждого шарда.
Чтобы переключить мастер в нешардированном кластере:
- В консоли управления
перейдите в каталог с нешардированным кластером. - Выберите сервис Managed Service for Redis.
- Нажмите на имя нужного кластера, затем выберите вкладку Хосты.
- В строке хоста с ролью
MASTER
нажмите значок и выберите Переключение мастера. - В открывшемся окне выберите опцию Я хочу переключить мастер и нажмите кнопку Переключить.
Чтобы переключить мастер в шардированном кластере:
- В консоли управления
перейдите в каталог с шардированным кластером. - Выберите сервис Managed Service for Redis.
- Нажмите на имя нужного кластера, затем выберите вкладку Хосты.
- В строке хоста с ролью
MASTER
нажмите значок и выберите Переключение мастера. - В открывшемся окне нажмите кнопку Переключить.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Чтобы переключить мастер в нешардированном кластере, выполните команду:
yc managed-redis cluster start-failover \
--name <имя_кластера>
Чтобы переключить мастер в шардированном кластере, выполните команду:
yc managed-redis cluster start-failover \
--name <имя_кластера> \
--hostnames <имя_текущего_мастера>
Имя кластера можно запросить со списком кластеров в каталоге, имя мастера для нужного вам шарда — со списком хостов в кластере.
Чтобы переключить мастер, воспользуйтесь методом REST API startFailover для ресурса Cluster или вызовом gRPC API ClusterService/StartFailover и передайте в запросе:
- Идентификатор кластера, в котором нужно переключить мастер, в параметре
clusterId
. Чтобы узнать идентификатор, получите список кластеров в каталоге. - Только для шардированного кластера: имя текущего мастера нужного вам шарда в параметре
hostNames
. Чтобы узнать имя, получите список хостов в кластере.