1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-ArangoDBStarter

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Запуск кластера или базы данных ArangoDB простым способом

Docker Pulls GoDoc

Загрузка релизов

Вы можете загрузить предварительно скомпилированные arangodb бинарники через страницу релизов на GitHub.

Примечание: arangodb также входит во все текущие дистрибутивы ArangoDB.

Сборка

Если вы хотите собрать arangodb самостоятельно, выполните:

go install github.com/arangodb-helper/arangodb@latest

Это приведет к созданию бинарника в $GOPATH/bin/arangodb.

Для более продвинутых опций сборки клонируйте этот репозиторий и выполните:

make local

и исполняемый файл будет в ./bin с названием, соответствующим текущей ОС и архитектуре (например, linux/amd64/arangodb). Вы можете скопировать бинарник в любое место в вашем PATH. Ссылка на бинарник для текущей ОС и архитектуры будет создана в ./arangodb. Этот программный код будет работать на Linux, macOS или Windows.

Примечание: Стандартная сборка использует контейнер Docker для выполнения сборки. Если Docker недоступен, make local запускает компилятор Go напрямую и помещает бинарник непосредственно в проектную директорию. В этом случае вам нужно установить пакет golang на вашей системе (версия 1.7 или выше).## Сборка образа Docker

Если вы хотите создать образ arangodb/arangodb-starter Docker самостоятельно, вы можете собрать его с помощью:

make docker

Запуск кластера

Установите ArangoDB обычным образом как бинарный пакет. Затем:

На узле A:

arangodb

Это будет использовать порт 8528 для ожидания коллег (необходимо 3 для устойчивого агента). На узле B: (может быть тем же, что и A):

arangodb --starter.join A

Это будет связываться с A на порту 8528 и регистрироваться. На узле C: (может быть тем же, что и A или B):

arangodb --starter.join A

Это будет связываться с A на порту 8528 и регистрироваться.

С момента, когда 3 узла присоединятся, каждый из них запустит Агента, Координатора и Сервер базы данных, и кластер будет запущен. Порты показываются на консоли, стартовый порт используется для следующих нескольких портов. То есть, если используется порт 8528 для стартового порта, Координатор будет использовать 8529 (=8528+1), Сервер базы данных 8530 (=8528+2), и Агент 8531 (=8528+3). Смотрите ниже под --starter.port для того, как изменить стартовый порт по умолчанию. Дополнительные серверы могут быть добавлены аналогичным образом.

Использование конфигурационного файла для предоставления опций CLI

Starter по умолчанию ищет arangodb-starter.conf в рабочей директории. Вы можете указать путь к конфигурационному файлу с помощью опции CLI --configuration (-c):

arangodb --configuration=/etc/arangodb-starter.conf
```Файлы конфигурации для ArangoDB Starter имеют простую форму ключ-значение.
Каждое значение опции указывается на отдельной строке в формате:

ключ = значение


Пример конфигурационного файла может выглядеть так:

starter.id = my-starter-1 starter.endpoint = http://127.0.0.1:8528


Альтернативно, можно указать секцию заголовков и опции, относящиеся к этой секции, в более сжатом формате:

[starter] id = my-starter-1 endpoint = http://127.0.0.1:8528 sync = true

[sync] start-master = true start-worker = true monitoring.token = 8cd07f3a5ff98f2a78cfc366c13fb123eb8d29c1ca37c79df190425d5b9e424d


Таким образом, опция командной строки `--section.param value` легко переводится
в опцию в конфигурационном файле:

[секция] param = значение


Вы также можете использовать конфигурационный файл для предоставления прокси-опций:

starter.mode = cluster

[args] all.default-language = es_419 dbservers.rocksdb.enable-statistics = true


## Дополнительная информация по использованию

См. [руководство по ArangoDB Starter](https://www.arangodb.com/docs/stable/tutorials-starter.html).

## HTTP API

См. [HTTP API](./docs/http_api.md).

## Будущие планы

- Разрешить удаление Starter с Agent из кластера
- Включить обновление кластера в контролируемом режиме.

## Техническое объяснение происходящегоПроцесс заключается в том, что первый экземпляр `arangodb` (также известный как
"мастер") предлагает HTTP-сервис на порту 8528 для регистрации peers.
Каждый экземпляр, который регистрируется, становится рабочим. Как только количество
peers достигает `cluster-agency-size`, каждый экземпляр `arangodb` запускает Agent (если он один из первых трёх),
DB-Server и Coordinator. Необходимые опции командной строки для связывания экземпляров `arangod` генерируются
автоматически. Кластер запускается и может быть использован.Каждый раз, когда экземпляр `arangodb` завершает работу, он также завершает работу всех экземпляров `arangod` под его контролем. Когда `arangodb` запускается снова, он восстанавливает старую конфигурацию из файла `setup.json` в своей директории данных, запускает свои экземпляры `arangod` (с их данными) и они присоединяются к кластеру. Все сетевые адреса обнаруживаются из HTTP-коммуникации между экземплярами `arangodb`. Используемые порты 8529 (/8539/8549) для Координатора, 8530 (/8540/8550) для DB-Server, 8531 (/8541/8551) для Агента должны быть свободны. Если более одного экземпляра `arangodb` запускается на одном компьютере, второй увеличит все эти номера портов на 10 и так далее.

В случае, если исполняемый файл работает в Docker, он будет использовать API Docker для получения номера порта Docker-хоста, на который отображается порт 8528. Контейнеры, запущенные исполняемым файлом, будут все отображать используемые ими порты на точно такой же порт хоста.

## Обратная связь

Обратная связь очень приветствуется в виде задач GitHub, pull requests или электронной почты на `hackers@arangodb.com`.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

ArangoDBStarter — это инструмент, который позволяет легко запускать кластеры и отдельные службы ArangoDB. Развернуть Свернуть
Go и 3 других языков
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/mirrors-ArangoDBStarter.git
git@api.gitlife.ru:oschina-mirror/mirrors-ArangoDBStarter.git
oschina-mirror
mirrors-ArangoDBStarter
mirrors-ArangoDBStarter
master