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: migracion script, plesk, plesk migracion, plesk script, qmail migrate
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
Muchas gracias por tu aclaración, es válida. Muy buena tu página tambien.
Saludos.
MN