Миграция с версии 2 на версию 3
Миграция GMONIT с версии 2 на версию 3
Заголовок раздела «Миграция GMONIT с версии 2 на версию 3»Переход с версии 2 на версию 3 является подготовительным этапом для запуска новой системы работы с конфигурациями в GMONIT.
Инструкция по миграции:
Заголовок раздела «Инструкция по миграции:»- Cоздать в Postgres базу данных
datomic - Cоздать в ней пользователя
datomicи владельца БДdatomicили назначить права существующему пользователю PG для Grafana для доступа к БДdatomic. - В базе данных
datomicсоздать таблицуdatomic_kvs
CREATE TABLE datomic_kvs( id text NOT NULL, rev integer, map text, val bytea, CONSTRAINT pk_id PRIMARY KEY (id))WITH ( OIDS=FALSE);- Добавить сервис
transactorвdocker-compose.ymlили запустить его в виде отдельного docker-контейнера
transactor: restart: unless-stopped image: cr.yandex/crpih7d63vpcj5dfn8jj/transactor:1.0.6735 environment: # `collector` должен иметь доступ по этому имени к `transactor`. # Если `collector` и `transactor` развернуты не в одном docker-compose, # то укажите доменное имя или ip адрес. # Раскомментируйте секцию `ports` чтобы пробросить порт на хост. HOST: transactor PORT: 4334
# Замените $PG_HOST, $PG_USER, $PG_PASS на реальные значения сервера с БД `datomic` # с шага №1. SQL_URL: "jdbc:postgresql://$PG_HOST:5432/datomic?user=$PG_USER&password=$PG_PASS"
NEW_RELIC_LICENSE_KEY: 0123456789-123456789-123456789-123456789 # Замените на адрес коллектора NEW_RELIC_HOST: ${COLLECTOR_DOMAIN} # Замените на путь до самоподписанного сертификата # или закомментируйте, если используете Let's encrypt или аналоги. NEW_RELIC_CA_BUNDLE_PATH: ${CA_FILE} NEW_RELIC_LOG: stdout NEW_RELIC_APP_NAME: "[GMONIT] Transactor" logging: driver: json-file options: max-size: 100m max-file: 5 healthcheck: test: curl -f localhost:9999/health interval: 10s timeout: 5s retries: 10 volumes: - ./ssl:/gmonit/ssl # ports: # - "4334:4334" depends_on: postgres: condition: service_healthy- Заменить образ для
grafana
image: cr.yandex/crpih7d63vpcj5dfn8jj/grafana:v3- Заменить образ для
collector
image: cr.yandex/crpih7d63vpcj5dfn8jj/collector:v3- Если GMONIT развернут через
docker-compose.yml, добавить сервисуcollectorзависимость от сервисаtransactor
collector: depends_on: # ... transactor: condition: service_healthy- Установить коллектору переменную окружения
DATOMIC_URI
# Замените $PG_HOST, $PG_USER, $PG_PASS на реальные значения сервера с БД `datomic`# с шага №1.DATOMIC_URI: "datomic:sql://base?jdbc:postgresql://$PG_HOST:5432/datomic?user=$PG_USER&password=$PG_USER"- Увеличить на 1 значение переменой коллектора
AGENT_ID_VERSION. Если переменная не задана, то установитьAGENT_ID_VERSION: 1.