Конфигурация кластера артефактов JFrog - PullRequest
0 голосов
/ 13 апреля 2020

Я настраиваю 2 сервера Artifactory (операционная система WinServer).

после настройки все хорошо, но проблема в файловом хранилище. Файловое хранилище - это место, где каждый сервер ART хранит свои пакеты (Nugets, NPM, JAR et c ..).

Базовая c конфигурация для одного сервера:

<config version="1">
    <chain template="file-system"/>
</config>

Конфигурация кластера, в соответствии с Gudielines:

<config version="2">
    <chain template="cluster-file-system"/>
</config>

Что, предположительно, дает мне избыточность, если один сервер не работает. Но, снимая NODE1 (который был главным единственным сервером Artifactory), я заставляю NODE2 работать и разрешение хорошее.

Тем не менее, при запуске сборки, которая использует артефакт, я получаю «Внутренняя ошибка сервера 500». Внимательно изучая ошибку, он утверждает, что какой-то пакет не найден в NODE2.

Я проверил, что в локальном «data \ filestore» ничего нет, хотя в NODE1 он содержит много пакетов.

TY ребята!

Ответы [ 2 ]

0 голосов
/ 23 апреля 2020

Ну, после обсуждения с поддержкой JFrog. Кажется, что для того, чтобы Node1 и Node2 реплицировали FILESTORE (где находятся все пакеты). флаг должен быть поднят.

Это можно сделать, вызвав команду POST:

curl -u имя пользователя: пароль -X POST "https://servername: 8443 / Артефакт / api / system / storage / optimize"

После этого, и это самое главное, сборка мусора должна быть запущена 20 раз (по умолчанию), чтобы начать Синхронизация. Поэтому мы должны выполнить эту команду 20 раз:

curl -u имя пользователя: пароль -X POST "https://servername: 8443 / артефакт / api / system / storage / g c "

Кроме того, существует конфигурация, которая может переопределить это значение по умолчанию. go для вашего сервера Artifactory, $ artifactory_home / etc / artifactory.system.property и измените этот файл так, чтобы иметь следующую строку: artifactory.g c .skipFullGcBetweenMonitorIterations = 1

Это должно применяться ко всем узлам. Перезапуск службы является обязательным для всех узлов кластера

После этого произойдет синхронизация между узлами.

0 голосов
/ 14 апреля 2020

Артефактория ГА? Конфигурации должны совпадать. My config binarystore. xml:

<config version="2">
    <chain template="cluster-file-system"/>
</config>

Балансировка нагрузки выполняется с помощью nginx или другого обратного прокси-сервера. Дополнительно: Системная архитектура - https://www.jfrog.com/confluence/display/JFROG/System+Architecture

...