Duplication manuelle d'un serveur BlueOnyx : Différence entre versions
De wikiGite
(→Synchronisation des données) |
|||
Ligne 21 : | Ligne 21 : | ||
= Synchronisation des données = | = Synchronisation des données = | ||
− | Ici, on exclue mysql car les bases ne seraient pas cohérentes si elles | + | Ici, on exclue mysql car les bases ne seraient pas cohérentes si elles sont ouvertes pendant la copie (à la source comme à la destination). On préférera donc les recréés par export/import.<br/> |
Le répertoire "backup" est un exemple de ce qu'on peut également vouloir exclure au moment du transfert. | Le répertoire "backup" est un exemple de ce qu'on peut également vouloir exclure au moment du transfert. | ||
rsync -avHz --delete --exclude=/mysql --exclude=/backup root@host1:/home/ /home | rsync -avHz --delete --exclude=/mysql --exclude=/backup root@host1:/home/ /home |
Version du 4 janvier 2012 à 11:34
Note 1 : cmuImport ne SAIT PAS recréer les vhosts et les utilisateurs avec les mêmes IDs. Donc si les chemins vers les sites (DocumentRoot) sont codés en dur dans les pages PHP, on peut être amené à réaliser une duplication manuelle pour conserver les IDs des vhosts et des utilisateurs.
NOTE 2 pour Rsync : lancé en root avec "-a" il garde les permissions et les propriétaires, mais pas s'il est lancé avec un autre utilisateur !
Sommaire
synchronisation de la base CODB BlueOnyx
Actions à réaliser SUR LE SERVEUR DE DESTINATION
rsync -avHz --delete root@host1:/usr/sausalito/ /usr/sausalito
Synchronisation du reste de la configuration
rsync -avHz --delete root@host1:/etc/httpd/ /etc/httpd rsync -avHz --delete root@host1:/etc/mail/ /etc/mail rsync -avHz root@host1:/etc/passwd /etc rsync -avHz root@host1:/etc/group /etc rsync -avHz root@host1:/etc/shadow /etc rsync -avHz root@host1:/etc/my.cnf /etc rsync -avHz root@host1:/etc/php.ini /etc rsync -avHz root@host1:/etc/php.d/ /etc/php.d # Recréer la base BlueOnyx pour que les quotas se mettent à jour ensuite en chargeant /home /etc/init.d/cced.init restart # recrée la config., entre autres /etc/hosts, /etc/init.d/admserv restart
Synchronisation des données
Ici, on exclue mysql car les bases ne seraient pas cohérentes si elles sont ouvertes pendant la copie (à la source comme à la destination). On préférera donc les recréés par export/import.
Le répertoire "backup" est un exemple de ce qu'on peut également vouloir exclure au moment du transfert.
rsync -avHz --delete --exclude=/mysql --exclude=/backup root@host1:/home/ /home
Synchronisation MySQL
Faire un dump des bases à la source
mysqldump --all-databases -p > all_db.sql
Transférer le fichier sql, et le recharger à la destination
mysql -p < all_db.sql
Modification de la configuration, si nécessaire
Changer IP du serveur dans la base BlueOnyx (qui a été écrasée lors de la copie de codb) :
echo SET $(echo FIND Network | /usr/sausalito/bin/cceclient | grep OBJECT | awk '{print $3}') ipaddr = \"10.0.0.54\" | /usr/sausalito/bin/cceclient
Attention : perte de connexion probable à ce moment si on est en SSH !
Puis changer les IP des vhosts :
for site in $(clistvsite | awk '{ print $1 }'); do cmodvsite --ipaddr=10.0.0.54 --fqdn=$site; done cd /etc/httpd/conf.d/subdomains for i in *; do sed -i 's/10.0.0.12/10.0.0.54/g' $i; done
Redémarrage des services
/etc/init.d/admserv restart /etc/init.d/httpd restart /etc/init.d/mysqld restart /etc/init.d/sendmail restart /etc/init.d/dovecot restart