Настройка кластера
Нужны дев и дев.
Прод - как кластер
Дева - как один сервер
У нас есть три сереры sandbox:
100 64.1* A1 - мастер
100 64.1b1 — рабство
100 64.1c1 - Общая база данных (mysql)
При входе на сайт клиент попадает на сервер master или slave.База данных там совместная, находится на третьем сервере.Синхронизация между серверами master и slave настроенная двустороннее (master slave), если изменить файл на сервере master, то он попадет на slave, и наоборот.Для синхронизации файлов кажется использовать программу rsync.- в чем проблема текущего настройки Проблема в текущем настройке веб-кластера заключается в синхронизации файлов между серверами master и slave.- первая проблема, заказчик вошел на сервер master и обновил ядро системы, которое находится в каталоге /bitrix.В результате этих действий, когда работала двусторонняя синхронизация файлов, из сервера slave на master записались старые файлы, которые должны были быть обновлены.В результате мы получили неправильно обновленное ядро системы, в котором была затеряна часть файлов.- вторая проблема, когда разработчики работают на сервере master (создают/редактируют файлы), то возникает проблема, из сервера slave работает синхронизация и затирает все изменения.Необходимо вводить в файл изменения несколько раз, чтобы они были на двух серверах.- Третья проблема, не работает автодеплой файлов на сервер.Когда загружаем обновленные файлы на сервер, они сразу затираются старыми файлами.Файлы из сервера slave затирают новые файлы на сервере master.- что нужно дополнительно настроить и какое решение мы видим (это может быть неправильным, того и обращаемся) Для решения проблемы с синхронизацией файлов, мы нашли следующее решение:
- Необходимо настроить одностороннюю синхронизацию файлов master -> slave (чтобы она работала только в одной стороне).Но из синхронизации нужно отключить каталоги /home/bitrix/www/bitrix/managed_cache, /home/bitrix/www/bitrix/cache, /home/bitrix/www/bitrix/backup.- Для файлового хранилища созданы новый отдельный сервер, на него нужно перенести каталог /home/bitrix/www/upload, там хранятся рабочие файлы портала (фотографии, документы и др.) )На серверах master и slave нужно сделать, чтобы каталог upload был подключен с данного сервера, но физически все файлы должны находиться на четвертом новом сервере.- сделать, чтобы из указанных IP-адреса пользователи входили только на сервер master.Или для сервера master сделать отдельный адрес, чтобы на него можно было войти.Это необходимо, например, для обновления системы.
- як зараз воно налаштоване
Описую як налаштований веб-кластер на sandbox(DEV). (Робочий кластер(PROD) налаштований таксамо, але там інші сервера)
У нас є три серери sandbox:
100.64.1.**a1 - master
100.64.1.** b1- slave
100.64.1.** c1- спільна база даних (mysql)
При вході на сайт клієнт попадає на сервер master або slave. База даних там спільна, знаходиться на третьому сервері.
Синхронізація між серверами master та slave налаштована двохстороння (master <-> slave), якщо змінити файл на сервері master, то він потрапить на slave, і навпаки.
Для синхронізації файлів здається використовують програму rsync.
- в чому проблема поточного налаштування
Проблема в поточному налаштуванні веб кластера полягає в синхронізації файлів між серверами master та slave.
- перша проблема, замовник зайшов на сервер master та оновив ядро системи яке знаходиться у каталозі /bitrix. В результаті цих дій коли відпрацювала двостороння синхронізація файлів, із сервера slave на master записались старі файли, які мали бути оновленні. В результаті ми отримали не правильно оновлене ядро системи, у якому була затерта частина файлів.
- друга проблема, коли розробники працюють на сервері master (створюють/редагують файли), то виникає проблема, із сервера slave спрацьовує синхронізація і затирає усі зміни. Доводиться вносити у файл зміни декілька разів, щоб вони були на двох серверах.
- Третя проблема, не працює автодеплой файлів на сервер. Коли завантажуємо оновлені файли на сервер, вони одразу затираються старими файлами. Файли із сервера slave затирають нові файли на сервері master.
- що треба додатково налаштувати і яке рішення ми бачимо(воно може бути не правильним, того і звертаємося)
Щоб вирішити проблему із синхронізацією файлів, ми знайшли таке рішення:
- Потрібно налаштувати односторонню синхронізацію файлів master -> slave (щоб вона працювала лише в одну сторону). Але із синхронізації потрібно відключити каталоги /home/bitrix/www/bitrix/managed_cache, /home/bitrix/www/bitrix/cache, /home/bitrix/www/bitrix/backup.
- Для файлового сховища створили новий окремий сервер, на нього потрібно перенести каталог /home/bitrix/www/upload, там зберігаються робочі файли порталу (картинки, документи та ін.). На серверах master та slave потрібно зробити, щоб каталог upload був під'єднаний з даного сервера, але фізично усі файли мають знаходитись на четвертому новому сервері.
- зробити, щоб із заданих ip адрес користувачі заходили лише на сервер master. Або для сервера master зробити окрему адресу, щоб на нього можна було заходити. Це потрібно, наприклад для оновлення системи.
Актуальные фриланс-проекты в категории DevOps
Развертывание Ruby on Rails проекта на VPS + Входящая маршрутизация электронной почтыНужна помощь в развертывании платформы для автоматизации запросов на публичную информацию (на базе open-source движка Alaveteli). Проект работает как почтовый маршрутизатор: генерирует уникальные email-адреса для каждого запроса, отправляет их в государственные органы, а ответы… DevOps, Linux и Unix ∙ 5 дней 22 часа назад ∙ 11 ставок |
Инженер по инфраструктуре резидентных проксиМы строим сеть резидентных прокси с нуля — полностью собственную, без сторонних поставщиков. Нам нужен один исключительный сетевой инженер для создания всей технической базы. Что вы будете строить: - Android SDK для фонового использования, который направляет прокси-трафик через… C и C++, DevOps ∙ 7 дней 23 часа назад ∙ 13 ставок |