Как восстановить конфигурацию кластера, содержащую статические области и динамические области без данных - PullRequest
0 голосов
/ 27 июня 2019

У меня есть кластер, который имеет 2 локатора 2 сервера с некоторыми статическими областями.

В аварийном режиме, когда весь кластер не работает, и я хочу, чтобы мои клиенты (JAVA и c ++) автоматически переподключались при работающем кластере. Учитывая тот факт, что мы используем непрерывные запросы и слушатели по регионам.

Симптомом является то, что при перезапуске кластера с той же конфигурацией кластера на тех же портах создается статическая область, но динамическая область не создается, и кластеру не удается воссоздать исправление кластера.

Клиент, использующий непрерывный запрос и прослушиватель, зависает бесконечно.

Я могу сделать клиентский код устойчивым, если по крайней мере все регионы созданы правильно без каких-либо данных.

P.S .: Мы используем этот код для создания динамических областей https://geode.apache.org/docs/guide/11/developing/region_options/dynamic_region_creation.html

1 Ответ

1 голос
/ 27 июня 2019

Служба конфигурации кластера содержит все элементы конфигурации, которые были сохранены в ней, либо вручную через API, либо с помощью команд GFSH.«Проблема» в примере, показанном в Динамическое создание регионов , заключается в том, что он не сохраняет изменений в службе конфигурации кластера, и, таким образом, регион не восстанавливается автоматически при повторном запуске кластера.

Чтобы сохранить изменения, вам необходимо использовать новую ConfigurationPersistenceService , помните, что функция в настоящее время помечена как экспериментальная, поэтому она может подвергаться изменениям.Для примера использования и подробного объяснения, пожалуйста, взгляните на Служба сохранения конфигурации .В качестве примечания: эта служба используется почти всеми командами GFSH, вам может потребоваться взглянуть на CommandExecutor для получения более подробной информации.

Надеюсь, это поможет.Приветствия.

...