DevOps для переноса существующих проектов на новые сервера

1 200 руб.за час
26 февраля 2020, 10:34 • 3 отклика • 50 просмотров
Добрый день. Ищется DevOps для переноса проектов православного сайта azbyka.ru
Что мы хотим получить.
Все проекты Азбуки обрабатываются на одном домене: https://azbyka.ru/PROJECT,
распределение трафика идёт через один nginx на главном сервере. Каждый проект (обычно это WordPress, обрабатываемый в php-fpm) выполняется в своём docker-контейнере, расположенном на том или ином сервере. На каждом сервере имеется свой mysql, redis, memcached, к которым есть доступ у любого проекта на сервере. Отдачей статитки и кэшированием динамики занимается nginx. Имеется проект redirector, позволяющий вести файлы наподобие .htaccess, обрабатываемые nginx — чтобы была возможность задавать редиректы на уровне проекта, без доступа к конфигам nginx.
Для управления docker-контейнерами желательно задействовать не очень сложную систему оркестрации. Главный nginx (обрабатывающий azbyka.ru) и некоторые важные проекты должны быть продублированы на другом сервере (датацентре), чтобы обеспечить основной сервис в случае отказа сервера.

Нужно проработать использование WP совместно с кэшированием на уровне nginx.
Существуют плагины, сбрасывающие соответствующий кэш в nginx при изменении страниц через админку (например, https://wordpress.org/plugins/nginx-cache/).
Также нужно ориентироваться на куки, чтобы определять работу залогиненного пользователя и общего.

Обращение к php-скриптам должно быть ограничено закрытым списком (то есть в nginx явно указываем, к каким php-скриптам в WP разрешено обращаться),
чтобы не было произвольно обрабатываемых скриптов.
Возможно, использование готового docker-контейнера для WP не подходит (ограничивает отладку и расширение — php-модули)
Процесс настройки нужно отражать в git-репозитории, поскольку результат работы это всё равно конфиги. Пушить в git-репозиторий нужно каждый день, не дожидаясь окончательного варианта.

Ещё было пожелание , чтобы была отдельная dev-система, повторяющая в точности прод. Чтобы можно было там разворачивать и тестировать в полностью идентичном окружении перед выкладыванием на прод. В том числе и сценарии обновления. Ну и видимо CI где-то тут же от gitlab.

Оплата почасовая. Вы оцениваете конкретную задачу и по итогам ее выполнения получаете оплату.
Также необходимо работать днем, а не по ночам, чтобы иметь возможность поддерживать связь с нашим админом.