Como migrar un servidor plesk

Hola a todos, acá les dejo una lista de scripts que le ayudará a migrar un servidor plesk, a mi me funcionó de 10, espero que a ustedes también.

Este es el main script, donde ponemos las dos ips de ambos servidores, el servidor source y el de destino. Tienen que reemplazar IP1 y IP2 con las ips de sus servers, geo-stop y geo-start migra nuestro geoserver, si no lo tienen lo pueden comentar. Importante es que antes de correr el script instalen todos los módulos de plesk en el servidor de destino, y agreguen la public key de ssh en el servidor SOUR del servidor DST, sin más parloteo van los scrtips.
=============psa-migrate===============
#!/bin/bash
host=$1
ssh -c blowfish -ax root@$host "service psa stopall"
/etc/init.d/psa stopall
ssh -c blowfish -ax root@$host 'geo-stop'
ssh -c blowfish -ax root@$host 'chmod -x /usr/sbin/proftpd && for i in $(ps aux | grep proftpd | awk \{print\ \$2\}); do kill $i; done;'
./mysqlmigrate IP1
./pgsqlmigrate IP1
./httpmigrate IP1
./qmailmigrate IP1
./namedmigrate IP1
./folders IP1
./fixip IP1 IP2
ssh -c blowfish -ax root@$host "service psa startall"
ssh -c blowfish -ax root@$host 'chmod 777 /usr/sbin/proftpd'
ssh -c blowfish -ax root@$host 'geo-start'
/etc/init.d/psa startall
geo-start

<==============qmailmigrate==============>

#!/bin/bash
host=$1
ssh -c blowfish -ax root@$host 'service qmail stop'
/etc/inid.d/qmail stop
rsync -avze 'ssh -c blowfish -ax' --delete --partial --progress root@$host:/var/qmail/ /var/qmail/
ssh -c blowfish -ax root@$host 'service qmail start'
/etc/inid.d/qmail start

<==============replace_ip==============>

#!/bin/bash
ip1=$1
ip2=$2
file=$3
cat $file | sed s/$ip1/$ip2/ > /tmp/$file && cp /tmp/$file ./ && rm /tmp/$file

<==============syncfolder==============>

#!/bin/bash
host=$1
folder=$2
destfld=$3
rsync -avze 'ssh -c blowfish -ax' --delete --partial --progress root@$host:$folder $destfld

<==============pgsqlmigrate==============>

#!/bin/bash
/etc/init.d/postgresql-8.3 start
ssh -c blowfish -ax root@$host 'service postgresql start'
pg_dumpall -U postgres -h 216.75.2.109 -c -d > /home/sqls/pgsql/dump.sql
psql -U postgres -f /home/sqls/pgsql/dump.sql &> /home/sqls/pgsql/import.log

<==============fixip==============>

#!/bin/bash
ip1=$1
ip2=$2
cat /etc/named.conf | sed s/$ip1/$ip2/ > /tmp/named.conf && cp /tmp/named.conf /etc/named.conf
rm /tmp/named.conf
cd /var/named/run-root/var/
for i in $(ls); do
    cat $i | sed s/$ip1/$ip2/ > /tmp/$i && cp /tmp/$i ./ && rm /tmp/$i
done;
find /home/www/vhosts/ -iname httpd.include -type f -execdir /root/scripts/replace_ip $ip1 $ip2 \{\} \;
cd /etc/apache2/conf.d/;
/root/scripts/replace_ip $ip1 $ip2 /etc/apache2/conf.d/zz010_psa_httpd.conf;
/etc/init.d/bind9 restart
/etc/init.d/apache2 restart
echo "update IP_Addresses set ip_address = '209.126.186.84' where ip_address = '216.75.2.109';" | mysql -u admin --password=sanboromb0n psa

<==============folders==============>

#!/bin/bash
host=$1;
./syncfolder $1 /root/ /mnt/root/
rsync -avze 'ssh -c blowfish -ax' --exclude www --delete --partial --progress root@$1 /home/ /mnt/home/
./syncfolder $1 /usr/lib/red5/ /mnt/usr/lib/red5/
./syncfolder $1 /opt/ /mnt/opt/

<==============httpmigrate==============>

#!/bin/bash
host=$1
ssh -c blowfish -ax root@$host 'geo-stop'
ssh -c blowfish -ax root@$host 'chmod -x /usr/sbin/proftpd && for i in $(ps aux | grep proftpd | awk \{print\ \$2\}); do kill $i; done;'
rsync -avze 'ssh -c blowfish -ax' --delete --partial --progress root@$host:/home/www/ /home/www/
ssh -c blowfish -ax root@$host 'chmod 777 /usr/sbin/proftpd'
ssh -c blowfish -ax root@$host 'geo-start'

<==============mysqlmigrate==============>

#!/bin/bash
host=$1
ssh -c blowfish -ax root@$host 'service mysqld stop'
/etc/init.d/mysql stop
rsync -avze 'ssh -c blowfish -ax' --delete --partial --progress root@$host:/var/lib/mysql/ /var/lib/mysql/
ssh -c blowfish -ax root@$host 'service mysqld start'
/etc/init.d/mysql start

<==============namedmigrate==============>

#!/bin/bash
host=$1
scp root@$host:/etc/named.conf /etc/named.conf
rsync -avze 'ssh -c blowfish -ax' --delete --partial --progress root@$host:/var/named/run-root/var/ /var/named/run-root/var/
chmod 777 /var/named/run-root/var/run/named
chown -R bind:bind /var/named/run-root/var
rm /var/named/run-root/var/run/named/named.pid

Espero lo disfruten.

Tags: , , , ,

2 Responses to “Como migrar un servidor plesk”

  1. Hola

    Debes indicar que funcionará sólo en el caso de que las versiones de sistema y paquetes sean las mismas en el origen y el destino