Я экспериментировал с Pacemaker & Corosync для настройки высокой доступности. Я установил его на два Ubuntu 14.04 Linode, и после долгих обсуждений устаревших примеров конфигурации и руководств мне удалось запустить его. В основном это связано с тем, что мне пришлось настроить его для использования UDP Unicast, чтобы он работал (Multicast и Broadcast не будут работать в сети Linode)
Оба узла могут видеть друг друга и определять, когда другой выходит из строя. Большой!
Теперь я хочу попробовать добавить третий узел во время работы кластера, поэтому я ищу какую-нибудь команду, чтобы сделать это ... Нет ... Нет ... Это, казалось бы, важное и простое действие, насколько я могу сказать, невозможно с помощью простой команды.
Чтобы добавить узел, вы должны добавить его в конфигурацию каждого отдельного узла, а затем выключить кластер, перезагрузить и запустить его обратно. Из окна выходит High-Availability.
Единственный способ динамически добавить узел, который я смог найти, - это cmap_keys (8).
Мне нужно сначала запустить команду, чтобы найти следующий свободный идентификатор узла. Затем для каждого узла в кластере вручную добавьте его в nodelist.node.x.ringy_addr и так далее. Даже после всего, что он не выдержит перезапуска, мне также приходится обновлять каждый файл конфигурации вручную. ЗАТЕМ мне нужно скопировать новый файл конфигурации на новый узел и запустить его.
Можно подключиться к любому из узлов в кластере, дать команду на изменение существующих узлов и добавить ресурсы, и они будут синхронизированы между всеми узлами. Но я не могу просто так же добавить новый узел?
Пожалуйста, кто-нибудь скажет мне, что я просто плохо разбираюсь в поиске информации, и есть простая команда для добавления новых узлов в работающий HA кластер. Есть ли какой-нибудь инструмент или метод, который я упустил?
Спасибо за уделенное время!
Если вы используете многоадресную рассылку, вы можете быстро и легко добавлять новые узлы в кластер. Из-за этого я подозреваю, что разработчики, возможно, никогда не видели необходимости разрешать динамическое добавление узлов через одноадресную рассылку UDP. По крайней мере, не существует «чистого» способа, о котором я сам знаю.
Однако вы должны иметь возможность перезагрузить Corosync и применить недавно отредактированные файлы конфигурации, не прерывая работу служб, предварительно переведя Pacemaker в режим обслуживания. В режиме обслуживания ни одна из запущенных в данный момент служб не будет остановлена при остановке и перезапуске Corosync и Pacemaker.