Перенос DNSmanager между серверами

Материал из ISPWiki
Перейти к: навигация, поиск

В данной статье описано как перенести DNSmanager с сервера на сервер.

На новый сервер устанавливаем DNSmanager. Инструкция по установке DNSmanager

При установке выберите тот же сервер имен, что и используется на старом сервере. Например, если на текущем сервере DNSmanager работает с named, то и при установке панели на новый сервер выберите named в качестве сервера имен.

Переносить полностью файл конфигурации со старого сервера на новый не следует. Если ОС на серверах разные, то пути, используемые в файле конфигурации будут различаться. В случае особых настроек панели просто добавьте недостающие директивы в файл конфигурации панели на новом сервере.

DNSmanager хранит информацию о доменах и пользователях в базе данных sqlite. Переносим базу данных DNSmanager на новый сервер.

Основная база данных:

scp -r root@10.10.10.10:/usr/local/mgr5/etc/dnsmgr.db* /usr/local/mgr5/etc/

База данных ip адресов:

scp -r root@10.10.10.10:/usr/local/mgr5/etc/dnsmgr_ipdb.db* /usr/local/mgr5/etc/

Если в качестве сервера имен используется Named

Переносим файл конфигурации named и файлы зон

scp -r root@10.10.10.10:/etc/bind/named.conf /etc/named.conf
scp -r root@10.10.10.10:/etc/bind/* /etc/named/

Обратите внимание, так как ОС на серверах разные, то расположение файлов отличается. В случае, когда расположение файлов зон на серверах отличается, следует изменить пути до файлов в named.conf

Очистите кэш БД и перезапустите DNSmanager

  rm -f /usr/local/mgr5/var/.db.cache.*
 /usr/local/mgr5/sbin/mgrctl -m dnsmgr exit

Если в качестве сервера имен используется NSD

Переносим файл конфигурации nsd и файлы зон.

Расположение файлов можно посмотреть в файле конфигурации DNSmanager

scp -r root@10.10.10.10://etc/nsd3/* /etc/nsd/

Обратите внимание, так как ОС на серверах разные, то расположение файлов отличается.

В случае, когда расположение файлов зон на серверах отличается, следует изменить пути до файлов зон в nsd.conf

Чтобы DNSmanager перечитал данные - перезапустите его

/usr/local/mgr5/sbin/mgrctl -m dnsmgr exit

Если в качестве сервера имен используется PowerDNS

Если выполнялись специализированные настройки pdns, то добавьте необходимые директивы в pdns.conf. Полностью файл конфигурации копировать не стоит, так как, если на серверах различные ОС, то пути и данные доступа к mysql будут различаться.

PowerDNS для каждого пространства имен создает отдельный конфигурационный файл. Копируем с удаленного сервера конфиги пространств имен.

scp -r root@10.10.10.10://etc/powerdns/pdns-ns_me.conf //etc/pdns/pdns-ns_me.conf

Обратите внимание, пути расположения файлов конфигурации могут различаться в зависимости от ОС.

Не забудьте изменить в конфигурационных файлах пароль подключения к mysql и, при необходимости, имя пользователя mysql (для массовой замены удобно использовать sed).

PowerDNS для каждого пространства имен создает отдельную базу данных. Делаем дамп баз данных.

mysqldump --databases dbname1 dbname2 dbname3 powerdns -u pdns -p > /root/dns.sql

Переносим дамп на новый сервер.

scp -r root@10.10.10.10:/root/dns.sql /root/dns.sql

Заливаем дамп на новом сервере. Имя пользователя и пароль к базе данных можно посмотреть в файле конфигурации DNSmanager.

mysql -u pdns -p powerdns < /root/dns.sql

Перезапускаем DNSmanager

/usr/local/mgr5/sbin/mgrctl -m dnsmgr exit

Отключаем старый DNSmanager

На старом сервере нужно остановить работу сервера имен и убрать его из автозагрузки. Отключить DNSmanager можно удалив приложение из интерфейса COREmanager