Как сменить IP-адрес сервера в окружении 1С-Битрикс: скрипт, сброс кэша и правка ansible

05.10.2026 ≈ 1 минута. 1 показ
В современных реалиях сервер с сайтом по определённым IP-адресам может стать недоступен, не открываться сайт, при том что сервер будет работать нормально. В таких случаях требуется смена IP-адреса. Но после изменения адреса в панели управления облаком, в битриксовском окружении по-прежнему используется старый адрес.  

2026-10-05_16-32.jpg

Делаем резервную копию ansible

tar -czf /root/ansible-before-ip-fix-$(date +%Y%m%d-%H%M%S).tar.gz /etc/ansible

Обновляем IP адрес

Чтобы битриксовское окружение использовало новый IP адрес, его необходимо сменить с помощью специального скрипта для этого случая.
/opt/webdir/bin/wrapper_ansible_conf -a change_ip --host tw.server.bxmaker.ru --ip 81.200.146.132

Сброс кэша

После этого сбрасываем кэш, который после запуска меняю сформируется заново
rm -f /opt/webdir/tmp/pool_servers.cache \
      /opt/webdir/tmp/web_servers_status.cache \
      /opt/webdir/tmp/push_servers_status.cache \
      /opt/webdir/tmp/mysql_servers_status.cache
 

Дополнительно

Обычно этого достаточно, но в нашем случае текущий IP  адрес вообще 127.0.0.1
Так бывает когда изначально что-то пошло не так и не определился текущий адрес и не попал в конфиг для ansible
cat /etc/ansible/ansible-roles
у host_netaddr  будет пустое значение
2026-10-05_17-23.jpg


Поэтому указываем реальное значение
sed -i 's/^host_netaddr[[:space:]]*=.*/host_netaddr        = 81.200.146.132/' /etc/ansible/ansible-roles
sed -i '/tw\.server\.bxmaker\.ru[[:space:]]\+ansible_connection=local[[:space:]]\+ansible_ssh_host=$/s/ansible_ssh_host=$/ansible_ssh_host=81.200.146.132/' /etc/ansible/hosts
Дальше опять обновляем IP адрес как указывалось ранее и получаем исправленный результат, все выводится верно

2026-10-05_17-09.jpg





Обратно к списку