NebulaBootstrap: основанный на Nebula распределённый кластер
NebulaBootstrap — это решение для разработчиков, которое позволяет быстро создавать распределённые системы (включая управление конфигурацией, обнаружение служб, маршрутизацию, балансировку нагрузки, выборы лидера, распределённую сессию и состояние кластера и т. д.).
Copyright (c) 2018 Bwar
Настоящим бесплатно предоставляется любому лицу копия данного программного обеспечения и связанных с ним файлов документации («Программное обеспечение») без ограничений на использование, копирование, изменение и объединение, публикацию, распространение, повторное лицензирование и/или продажу копий данного программного обеспечения, а также разрешение лицам, которым предоставляется данное программное обеспечение, соблюдать следующие условия:
Вышеупомянутые заявления об авторских правах и настоящие разрешения должны быть включены во все копии или основные части данного программного обеспечения.
Данное программное обеспечение предоставляется «как есть», без каких-либо явных или подразумеваемых гарантий, включая, но не ограничиваясь, пригодностью для продажи, применимостью для конкретной цели и отсутствием нарушений прав интеллектуальной собственности. В любом случае автор или владелец авторских прав не несёт никакой ответственности за любые претензии, ущерб или другие обязательства, будь то в результате контракта, нарушения прав интеллектуальной собственности или других действий, независимо от того, связаны ли они с программным обеспечением или его использованием или другими сделками.
Для Nebula требуется компилятор gcc версии 4.8 или выше.
Шаги автоматической сборки и развёртывания:
После выполнения сценария deploy компиляция и развёртывание распределённых сервисов Nebula и NebulaBootstrap завершены. Зависимость Nebula также автоматически загружается из Интернета и компилируется перед развёртыванием. Хотя это не так хорошо известно, как autoconf и automake, сценарий deploy выполняет больше работы, чем эти инструменты. После выполнения сценария структура каталогов выглядит следующим образом:
После завершения сборки можно начать запускать кластеры служб:
./configure.sh
./startup.sh
Сервер должен быть успешно запущен, и startup.sh выведет список запущенных серверов. Если запуск не удался, проверьте причину в журнале. Выполните grep "ERROR" log/* и grep "FATAL" log/*, чтобы сначала проверить наличие ошибок, а затем перейдите к конкретному файлу журнала для получения подробной информации об ошибке. Обратите внимание, что файл конфигурации по умолчанию для Nebula ограничивает IP-соединения в течение определённого периода времени. Если при большом объёме тестирования возникают странные проблемы, вы можете изменить ограничения конфигурации. Просмотр предупреждающих сообщений в журналах обычно помогает определить такие ошибки, которые не являются ошибками. Если сервер успешно запущен, вы можете использовать postman, curl и другие инструменты для тестирования и проверки результатов.
# Запустить только NebulaInterface для завершения теста hello http
curl -H "Content-Type:application/json" -X POST -d '{"name": "Nebula", "address":"https://github.com/Bwar/Nebula"}' http://${your_ip}:16003/hello
# Запустите NebulaInterface, NebulaLogic и NebulaBeacon для завершения распределённого сервиса hello test http.
curl -H "Content-Тип:application/json" -X POST -d '{"имя": "Nebula", "адрес":"https://github.com/Bwar/Nebula"}' http://${ваш_ip}:16003/hello_nebula
Этот простой тест может быть выполнен только путём запуска одного NebulaInterface или запуска распределённой службы. NebulaBootstrap предоставляет HelloWorld на основе кластера и отдельного сервера. HelloWorld на основе кластера запускает NebulaBeacon, NebulaInterface и NebulaLogic три сервера. Ниже представлена диаграмма архитектуры кластера:
Документация по завершённому Nebula находится на странице документации Nebula, которая постоянно обновляется.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )