Завершить настройку сервера на выход в production
Нужно будет закончить настройку сервера на production на данный момент есть следующая архитектура.
Архитектура инфраструктурной части проекта:
На входе трафика используется load balancer Hetzner (внешний IP - Выдам лично исполнителю, локальный IP - 10.0.0.7). Он принимает трафик на порты 80 и 443 и предает их на 3 сервера мастер нод кластера docker swarm. На каждой мастер ноде установлен Traefik, который принимает эти запросы через ingress overlay сеть и далее перенаправляет в нужный контейнер микросервиса.
Микросервисы настроены на автоматический деплой по коммиту в репозиторий.
Сборка идет на сервере с тегом build, а выкатка на кластер через сервер мастер ноды 1 (тег prod).
Деплой настроен с репликацией в значении 2, то есть все микросервисы запущены в 2х экземплярах и трафик на них балансируется Traefik.
Мониторинг организован через Prometheus с визуализацией данных в Grafana. На всех серверах установлены prometheus-exporter-ы, для Traefik включен встроенный экспортер. В Grafana настроены панели с метриками ОС Linux и метриками Traefik.
Получением SSL занимается Traefik, сертификаты запрашиваются и продлеваются автоматически для каждого доменного имени микросервиса.
Требования к исполнителю:
должен знать docker swarm очень хорошо
elactic search, gitlab-ci очень хорошо
traefik прям вообще отлично, так как много тюнинга будет именно на нем, это и тюнинг типа http/2 и балансировки и привязка сессий к контейнерам (скорее всего это нужно будет, я заготовки есть)
prometheus, grafana чтобы смог добавить экспортер и панель для него сделать, но экспорте как и говорили нужно чтобы сделали разработчики
было бы хорошо знание js фреймверков для отладки сборки микросервисов, у нас бэкенд написан н Nest.js и Laravel, фронтенд Vue3.
так же нужно хорошо значть postgresql, так как под нагрузкой нужно будет оперативно тюнинговать сервер,
без нагрузки там все идеально, но это без нагрузки
Просьба если ознакомились с проектом пройдите АНТИ бот 1 + 1 =