Пошаговый план как перенести веб-проект с 2.5 Тб данных на новый сервер с простоем до 30 минут (Битрикс 24 и не только)
Недавно мы в Инитлаб закончили переезд со старого сервера на CentOS 7 на новый сервер на CentOS 9 одного из самых крупных внедрений Битрикс 24 в России. В системе одновременно работает до 500 пользователей, размер базы данных превышает 1 Тб, а объем файлов в хранилище документов -- 1,5 Тб. Рассказываю как мы сделали миграцию с простоем всего не более 30 минут.
Заказчик обратился с просьбой ускорить работу CRM Битрикс 24, сотрудники жаловались на медленную работу. Мы провели профилировку на боевом сервере, аудит кода узких мест, поставили сервер на мониторинг и собрали данные о нагрузке. Почти все найденные способы оптимизации включали в себя или переписывание стандартного функционала, или уменьшение объема БД за счет архивирования старых документов. Ни то ни другое не давало быстрого прогнозируемого результата и не подходило заказчику. Рассматривали также варианты выноса базы данных на отдельный сервер, построения кластера веб-серверов из имеющихся у заказчика серверов. В итоге после анализа затрат было решено обновить железо переехав на один новый более мощной сервер с удвоенным количеством ядер и NVME RAID вместо SSD RAID. Последний переезд на новый сервер заказчика силами его собственного ИТ-отдела вызвал простой в работе компании более суток. Так как у нас большой опыт переездов больших проектов, то получилось успешно переехать с простоем не более 30 минут. Чтобы минимизировать простой мы используем следующие технологии и шаги работы:
1. Настраиваем временный прокси сервер и переключаем DNS на него. Прокси позволяет быстро переключить трафик на новый сервер, не дожидаясь обновления DNS у пользователей. А также, что немало важно, быстро переключить трафик обратно на старый сервер если что-то пойдет не так )
2. Настраиваем и оптимизируем новый сервер под нужный стек технологий на основе наших шаблонов конфигураций Ansible. В данном случае был CentOS 9 с Nginx, PHPFPM, MariaDB, Битрикс 24. Для тюнинга параметров базы данных используем Releem.
3. Заливаем последнюю резервную копию базы данных и копируем файлы на новый сервер. В данном случае это заняло более суток.
4. Тестируем работу на новом сервере, исправляем проблемы, возвращаем базу данных и файлы в исходное до тестов состояние.
5. Настраиваем репликацию Master / Slave между БД старого сервера и нового соответственно. Новый сервер начинает подкачивать изменения с боевой базы так как пользователи продолжают все это время работать на старом сервере. Синхронизируем файлы с помощью rsync.
6. В оговоренное время останавливаем работу старого сервера. Дожидаемся синхронизации БД и файлов. Меняем местами базы данных Master и Slave в настройках репликации. Переключаем трафик на прокси на новый сервер.
7. С помощью прокси мониторим, что весь трафик пошел на новый сервер. Если все ок, то отключаем старый сервер. Переключаем DNS на новый сервер. Когда видим что через временный прокси трафик уже не идет, отключаем его.
По такой схеме большинство веб-проектов мы переносим вообще практически без простоя. А в случаях особо сложных архитектур или большого объема данных простой минимальный. Схожий подход используем при миграции проектов в кластер Kubernetes, при переезде в облако и т.д.
Одним из наших ноухау, позволяющих быстро мигрировать, являются собственные скрипты бекапов для резервного копирования и восстановления базы данных из копии. Работают они на больших базах данных в ~10 раз быстрее штатных механизмов бекапов Битрикс 24. Поэтому используем не только при миграциях, но и для ежедневных бекапов.
Отвечу на вопрос, который задают наверно чаще всего: что взять из CRM?
В современном бизнесе планирование и управление проектами играют ключевую роль в достижении успеха. Эффективная организация работы команды и своевременное выполнение задач позволяют компаниям оставаться конкурентоспособными и достигать поставленных целей. Битрикс24 предлагает мощные инструменты для управления проектами, которые помогают в этом проц…
Делимся кейсом, как один из крупнейших российских брендов молочной продукции «Простоквашино» менее чем за месяц смог привлечь новых покупателей и увеличить продажи кефира на 31% с помощью рекламной платформы Т-Банка
Облачные решения дают компаниям серьезные преимущества. С их помощью можно гибко управлять IT-ресурсами, оперативно меняя вычислительную мощность, объем памяти и дискового пространства в зависимости от текущих потребностей бизнеса. Это особенно актуально в периоды пиковых нагрузок или при быстром росте компании.
Последнее время на практике участились обращения, связанные с ИТ-аудитом систем. Чаще всего клиенты обращаются по вопросам рефакторинга, отладки обменов с внешними системами, новых функций и составления дорожных карт по развитию проектов. Но особенно часто встречаются запросы на оптимизацию производительности.
Животные часто являются персонажами идиом, даже если речь совсем не о них. В этом списке вы найдете 50 английских идиом с животными, примеры использования фраз в разговорной речи и их эквиваленты на русском. Это поможет вам расширить словарный запас и узнать много нового!
Сегодня буду писать о новой методике внедрения системы Битрикс и кратко взвесим все за и против.
Всем привет, на связи Антон Рендел — руководитель агентства ARS CREATIVE. Лично мне всегда интересно читать кулуарные истории про бизнес, который вырос из небольшого подряда в крупную акулу рынка. Сегодня же хочу сам поделиться такой историей —
Выбор CMS — это не просто вопрос «какая лучше?». Это стратегическое решение, которое может либо ускорить развитие бизнеса, либо загнать его в дорогостоящий долгострой.