Перенос DNSmanager между серверами
Перенос панели и лицензии DNSmanager на новый сервер может потребоваться при переезде на новое оборудование.
Для этого вам нужно:
- Импортировать данные пользователей со старого сервера на новый.
- Привязать лицензию на панель управления к новому серверу.
Шаг 1. Импорт данных пользователя
На момент переноса на каждом сервере должна быть активная лицензия. На новом сервере установите и активируйте триальную версию продукта, следуя инструкции по установке.
Перенесите данные на новый сервер.
Перенос файлов DNSmanager
- Установите DNSmanager на новом сервере. В качестве сервера доменных имён выберите тот же, что был выбран для DNSmanager на старом сервере.
- Перенесите нужные настройки из конфигурационного файла DNSmanager (по умолчанию /usr/local/mgr5/etc/dnsmgr.conf) на новый сервер. Не рекомендуем копировать полностью конфигурационный файл, т. к. в нём могут быть указаны пути, которых нет на новом сервере. Например, если на серверах установлены разные операционные системы.
Скопируйте на новый сервер базы данных DNSmanager. Для этого выполните на нём команды:
scp root@<IP-адрес старого сервера>:/usr/local/mgr5/etc/dnsmgr.db* /usr/local/mgr5/etc/ scp root@<IP-адрес старого сервера>:/usr/local/mgr5/etc/dnsmgr_ipdb.db* /usr/local/mgr5/etc/
BASH- В базах данных замените IP-адрес старого сервера на IP-адрес нового сервера:
- в базе данных dnsmgr_ipdb.db → таблица ips. Соответствует разделу панели управления Настройки → База IP-адресов → Адреса;
- в базе данных dnsmgr_ipdb.db → таблица ranges. Соответствует разделу панели управления Настройки → База IP-адресов;
- в базе данных dnsmgr.db → таблица namespace.
Перенос файлов DNS-сервера
Если на серверах установлен BIND
- Скопируйте на новый сервер файл конфигурации DNS-сервера:
- CentOS: /etc/named.conf
- Debian: /etc/bind/named.conf и /etc/bind/named.conf.options
Замените в скопированных файлах IP-адрес старого сервера на IP-адрес нового сервера:
sed -i 's/\<<IP-адрес старого сервера>\>/<IP-адрес нового сервера>/g' <путь к конфигурационному файлу>
BASHОбратите внимание!
\<<IP-адрес старого сервера>\> означает IP-адрес, заключённый в угловые скобки. При этом скобки экранируются. Например, "\<192.168.0.1\>".
- Скопируйте на новый сервер файлы доменных зон:
- CentOS: /var/named/*
- Debian: /etc/bind/ domains
Очистите кэш базы данных DNSmanager на новом сервере:
rm -f /usr/local/mgr5/var/.db.cache.*
BASH
Если на серверах установлен PowerDNS
- Перенесите нужные настройки из конфигурационного файла PowerDNS на новый сервер.
- CentOS: /etc/pdns/pdns.conf
- Debian: /etc/powerdns/pdns.conf
- Перенесите конфигурационные файлы пространств доменных имён на новый сервер.
- CentOS: /etc/pdns/pdns-*.conf
- Debian : /etc/powerdns/pdns-*.conf
Обратите внимание!
В конфигурационных файлах пространств доменных имён указываются параметры подключения к MySQL: gmysql-user — имя пользователя, gmysql-password — пароль. Измените эти значения на актуальные для нового сервера.
- Перенесите базу данных PowerDNS на новый сервер:
Создайте дамп базы на старом сервере.
mysqldump --databases <пространство имён по умолчанию> <пользовательские пространства имён> > <путь к файлу, в который будет записан дамп>
BASHПояснения<пространство имён по умолчанию> — powerdns для CentOS, pdns для Debian
<пользовательские пространства имён> — PowerDNS создаёт отдельную базу данных для каждого пространства, укажите их все через пробелСкопируйте дамп на новый сервер. Для этого выполните на нём команду:
scp root@<IP-адрес старого сервера>:<путь к файлу, в который записан дамп> <путь к файлу на новом сервере, в который будет скопирован дамп>
BASHРазверните базу данных из дампа на новом сервере:
mysql <имя базы данных> < <путь к файлу на новом сервере, в который скопирован дамп>
BASHПояснения<имя базы данных> — powerdns для CentOS, pdns для Debian
Проверка
Перезапустите DNSmanager на новом сервере:
/usr/local/mgr5/sbin/mgrctl -m dnsmgr exit
BASH- Перезапустите DNS-сервер:
Если на сервере установлен BIND:
CentOS
systemctl restart named
BASHDebian
systemctl restart bind9
BASHЕсли на сервере установлен PowerDNS, выполните:
systemctl restart pdns
BASH
- Убедитесь, что DNSmanager функционирует корректно.
Настройка вторичных серверов имён (slave)
Замените в конфигурационных файлах IP-адрес старого сервера на IP-адрес нового сервера:
- Определите нужный файл:
Если на сервере установлен BIND:
Конфигурационный файл в CentOS: /etc/named.conf
Конфигурационные файлы в Debian: /etc/bind/named.conf и /etc/bind/named.conf.options
Если на сервере установлен PowerDNS:
Конфигурационный файл в CentOS: /etc/pdns/pdns.conf
Конфигурационный файл в Debian: /etc/powerdns/pdns.conf
Выполните для него команду:
sed -i 's/\<<IP-адрес старого сервера>\>/<IP-адрес нового сервера>/g' <путь к конфигурационному файлу>
BASHОбратите внимание!
\<<IP-адрес старого сервера>\> означает IP-адрес, заключённый в угловые скобки. При этом скобки экранируются. Например, "\<192.168.0.1\>".
Отключение DNS-сервера на старом сервере
Отключите DNS-сервер на старом сервере и уберите его из автозагрузки:
Если на сервере установлен BIND:
CentOS
systemctl stop named systemctl disable named
BASHDebian
systemctl stop bind9 systemctl disable bind9
BASHЕсли на сервере установлен PowerDNS, выполните:
systemctl stop pdns systemctl disable pdns
BASH
Шаг 2. Привязка лицензии к новому серверу
- После переноса данных пользователя на новый сервер перейдите в личный кабинет, где у вас заказана лицензия.
- Удалите триальную лицензию из личного кабинета.
- В настройках платной лицензии введите IP-адрес нового сервера.
- При повышении или смене версии продукта смените тарифный план лицензии в личном кабинете. Условия и стоимость перехода на новый тариф уточняйте у вашего продавца.
Обновите файл лицензии. Для этого перейдите в панель, откройте раздел Помощь → О программе и нажмите кнопку Обновить лицензию. Либо загрузите лицензию вручную командой:
/usr/local/mgr5/sbin/licctl fetch mgrName
BASHПояснениеmgrName — сокращённое название панели управления:
- ispmgr — ISPmanager;
- billmgr — BILLmanager;
- vmmgr — VMmanager KVM или Cloud;
- vemgr — VMmanager OVZ;
- dcimgr — DCImanager;
- ipmgr — IPmanager;
- dnsmgr — DNSmanager.