Запуск трехузлового кластера riak с использованием домашней установки - PullRequest
6 голосов
/ 28 марта 2012

Я установил Riak на свой Mac с помощью homebrew и хотел бы установить локальный кластер из трех узлов.

Учебное пособие по быстрому движению , однако, основано на исходной сборке,Насколько я знаю, эти инструкции не будут применяться к моей установке homebrew (например, make devrel сгенерирует 3 узла, но моя установка не содержит make-файл).

Я попытался сделать 3 копии /usr/local/Cellar/riak с именами dev1, dev2 и dev3.Затем я скорректировал настройки http, handoff_port и pb_port в devN/1.1.1x86_64/libexec/etc/app.config, а также настройку -name в devN/1.1.1x86_64/libexec/etc/vm.args (я использовал 81XX для портов, используемых узлом dev1, 82XX для портов, используемых узломdev2 и т. д. Для настройки -name я использовал riak1@127.0.0.1, riak2@127.0.0.1 и т. д.).

Узел dev1 можно успешно запустить с помощью ./dev1/1.1.1x86_64/bin/riak start.Но после запуска узла dev2 с использованием ./dev2/1.1.1x86_64/bin/riak start, riak жалуется, что узел уже запущен.

Как мне заставить riak распознать три установки как отдельные узлы?

1 Ответ

8 голосов
/ 30 марта 2012

Проблема заключается в переменной RUNNER_SCRIPT_DIR в сценариях ./devN/1.1.1x86_64/bin/riak - она ​​установлена ​​на /usr/local/Cellar/riak/1.1.1x86_64/libexec/bin в исходной версии домашнего варенья, которую вы скопировали.

Это используется позже в скрипте в функции ping_node (и фактически во всем остальном).-name и -setcookie и все остальные настройки извлекаются из каталога vm.args в /usr/local/Cellar/riak/1.1.1x86_64/libexec/etc вместо сделанных вами копий.

Измените это в каждой из ваших копий riak сценарий, и вы должны быть в порядке.

...