Окружение BitrixEnv обновляется через пакетный менеджер yum: сам пакет bitrix-env, а также компоненты стека — PHP, MySQL, Nginx — распространяются через официальные репозитории Битрикс. Разберём, как устроены репозитории, как безопасно обновить окружение и переключить версии PHP/MySQL, и что проверить после апдейта.
Как распространяются обновления
BitrixEnv — это набор пакетов для RHEL-совместимых дистрибутивов (CentOS, AlmaLinux, Rocky), управляемых через yum/dnf. Центральный пакет — bitrix-env: он тянет за собой меню, скрипты управления и зависимости стека.
Репозитории подключены через файл /etc/yum.repos.d/bitrix.repo и делятся на два канала:
| Канал | Назначение |
|---|---|
bitrix | стабильные, протестированные обновления — для прода |
bitrix-testing | предрелизные версии — только для тестовых стендов |
Посмотреть текущую версию окружения и доступные обновления:
rpm -qa | grep bitrix-envyum check-update bitrix-env
bitrix-testing предназначен для проверки предстоящих изменений на копии проекта. На продакшене держите только стабильный репозиторий, иначе рискуете поймать сырое обновление.Подготовка к обновлению
Любое обновление окружения потенциально затрагивает конфигурацию Nginx, PHP и MySQL. Поэтому до апдейта — обязательный чек-лист.
- Полный бэкап: дамп всех баз пула и архив файлов, чтобы был путь отката.
- Снимок ВМ (если это виртуальная машина) — самый быстрый способ вернуть состояние сервера целиком.
- Зафиксировать текущие версии:
php -v,mysql --version,nginx -v, версиюbitrix-env. - Проверить свободное место:
df -h— обновлениям и временным файлам нужен запас на диске. - Выбрать окно низкого трафика: часть операций перезапускает сервисы.
Обновление пакета bitrix-env
Сначала обновите метаданные и сам управляющий пакет:
yum clean allyum update bitrix-env
После обновления пакета перезапустите меню окружения командой /opt/webdir/bin/bitrix_env_menu.sh — новая версия меню и скриптов подхватится автоматически. Меню само сообщает, когда доступна свежая версия окружения, и предлагает обновиться.
Если нужно обновить весь стек целиком (с осторожностью, вне пиков):
yum update
- Обновление затрагивает пакеты
nginx,php,mysql/mariadb,push-serverи служебные утилиты. - После апдейта окружение обычно перезапускает изменённые сервисы; проверьте их статус вручную.
/etc/nginx/bx/ или конфиги PHP, yum может предложить .rpmnew/.rpmsave. Сверьте изменения, чтобы не потерять кастомизацию и не откатить нужную новую настройку.Переключение версий PHP и MySQL
BitrixEnv позволяет менять версии ключевых компонентов через меню, а не пересобирая сервер. Это удобно, когда новая редакция 1С-Битрикс требует более свежего PHP или вы переходите на актуальную ветку СУБД.
- PHP — в меню есть пункт управления версией PHP; окружение устанавливает нужную ветку и переключает PHP-FPM пула на неё. После смены версии проверьте набор расширений (
php -m): нужныmbstring,mysqli,opcache,zip,gdи другие, требуемые Bitrix. - MySQL/MariaDB — смена мажорной версии СУБД сложнее: это апгрейд формата данных. Обязательно снимите дамп, а после перехода прогоните
mysql_upgradeи проверьте, что таблицы читаются.
| Компонент | Проверка после смены версии |
|---|---|
| PHP | php -v, php -m, «Проверка системы» в админке |
| MySQL | mysql_upgrade, целостность таблиц, slow-log |
| Nginx | nginx -t, отдача статики и HTTPS |
Порядок действий и откат
Безопасное обновление — это последовательность с точками контроля, а не одна команда. Рекомендуемый порядок:
- Бэкап + снимок ВМ.
- Обновление
bitrix-envи перезапуск меню. - Обновление стека (при необходимости) в окно низкого трафика.
- Проверка сервисов и сайта.
- Только при явной необходимости — смена мажорных версий PHP/MySQL, каждая отдельным шагом с проверкой.
Если что-то пошло не так, у вас есть три уровня отката:
| Уровень | Как откатить |
|---|---|
| Виртуальная машина | восстановление из снимка — быстрее всего |
| Пакет | yum history undo <id> по журналу транзакций |
| Данные | восстановление БД и файлов из бэкапа |
Журнал операций yum смотрите так: yum history — он покажет транзакции с ID, которые можно откатить через undo.
Проверка после обновления
После апдейта не полагайтесь на «сайт открылся». Пройдите проверку по слоям:
- Сервисы:
systemctl status nginx php-fpm mysqld(имена сервисов зависят от версии стека) — все должны бытьactive (running). - Конфиг Nginx:
nginx -t— синтаксис в порядке. - Логи ошибок: просмотрите свежие записи в
/var/log/nginx/error.log, логах PHP-FPM и MySQL сразу после запуска. - Bitrix: «Проверка системы» (Настройки → Инструменты) и «Монитор производительности» — они покажут соответствие версий и явные проблемы конфигурации.
- Функционал: каталог, корзина, оформление заказа, авторизация, отправка почты — прогоните ключевые сценарии магазина.
Итог
Обновление BitrixEnv — это управляемая процедура через yum: пакет bitrix-env и стек тянутся из стабильного репозитория, версии PHP и MySQL переключаются из меню. Ключ к безопасности — бэкап и снимок ВМ до старта, обновление сначала на тестовом стенде, пошаговый переход мажорных версий и проверка по слоям после апдейта. Всегда держите наготове план отката на уровне ВМ, пакетов и данных.
Мы сопровождаем окружения 1С-Битрикс и проводим обновления без простоя в рамках DevOps и технической поддержки: планируем окно, прогоняем апдейт на копии, обновляем прод и контролируем результат по логам и метрикам. Так переход на новые версии PHP и СУБД проходит предсказуемо, а не превращается в ночной аврал.
Частые вопросы
Как узнать текущую версию окружения BitrixEnv?
Выполните rpm -qa | grep bitrix-env — команда покажет установленную версию управляющего пакета. Доступность обновления проверяется через yum check-update bitrix-env.
Чем отличаются репозитории bitrix и bitrix-testing?
Канал bitrix содержит стабильные протестированные обновления и предназначен для продакшена. Канал bitrix-testing — предрелизные версии для проверки на тестовых стендах. На боевом сервере используйте только стабильный репозиторий.
Как обновить только окружение, не трогая весь стек?
Выполните yum clean all, затем yum update bitrix-env и перезапустите меню командой /opt/webdir/bin/bitrix_env_menu.sh. Полное обновление стека делается отдельной командой yum update в окно низкого трафика.
Можно ли сменить версию PHP через BitrixEnv?
Да, в меню окружения есть управление версией PHP: оно устанавливает нужную ветку и переключает на неё PHP-FPM пула. После смены проверьте набор расширений через php -m и требования вашей редакции 1С-Битрикс в разделе Проверка системы.
Что делать перед сменой мажорной версии MySQL?
Обязательно снять полный дамп всех баз. После перехода прогнать mysql_upgrade и убедиться, что таблицы читаются корректно. Мажорный апгрейд СУБД меняет формат данных, поэтому путь отката через бэкап должен быть готов.
Как откатить неудачное обновление?
Есть три уровня: восстановить снимок виртуальной машины, откатить пакетную транзакцию через yum history undo <id> или восстановить БД и файлы из бэкапа. Быстрее всего откат из снимка ВМ, если он был сделан до апдейта.
Что проверить сразу после обновления?
Статус сервисов nginx, php-fpm и mysqld, синтаксис конфигов через nginx -t, свежие ошибки в логах, а также Проверку системы и Монитор производительности в админке Bitrix. Отдельно проверьте push-сервер и композитный кеш.
Поможем с настройкой и поддержкой Для разработчиков
Поможем с настройкой, доработкой и поддержкой Для разработчиков.