Cloner un serveur

Bonjour,

Je souhaite mettre en place une copie d’un serveur de production pour pouvoir développer une application et pouvoir la tester avant de la mettre sur le serveur de production.

En gros je veux dupliquer mon serveur de production en un autre serveur que je vais appeler par exemple serveur de test.

Le serveur en question tourne sur le système debian wheezy.

Quelqu’un saurait-il comment le faire? comment faut il procéder?

Je vous saurai gré.

L’idéal dans ce cas de figure est de fonctionner avec des machines virtuelles. Je travaille sur Xen, et je balade mes serveurs virtuels d’un serveur physique à l’autre sans problème.

Au pire du peut toujours cloner ta partition/ton disque avec clonezilla…

Si tu as une machine matériellement identique et un disque de même capacité ou supérieur un simple dd est suffisant.

Sinon avoir des machines virtuelles est vraiment plus souple pour ce genre d’opération.

Un bémol : la copie brute avec dd n’est pas toujours suffisante car le matériel n’est jamais totalement identique. Les numéros de série des disques, les adresses MAC des interfaces réseau notamment sont différents, ce qui peu poser problème lorsqu’ils sont utilisés pour le nommage persistant.

Je plussoie j’ai à plusieurs reprises effectuée des mise en production de gros site pour des clients possédant un environnement de production et de préproduction (en générale sur deux machines distinctes, mais pas nécessairement).

Le plus simple étant de partir avec un environnement identique de travail permettant de pouvoir évaluer l’impact de mises à jour ou d’éventuels optimisation du code du site et du software.

Pour ce faire commence par installer un serveur Debian avec le strict nécessaire pour ta machine.
Tu récupère la liste des paquets nécessaires pour ton environnement de travail (apache, nginx, php, perl, rubis, mysql, mariadb, postgresql, en bref ce que tu as besoin pour ton serveur).

Ensuite sur la production :

  • un rsync de tes fichiers de configuration (seulement ceux que tu as optimisés)
  • un rsync de tes données
  • un dump puis un transfert de tes bases SQL

Pour finir sur la préproduction :

  • tu injecte ton dump SQL
  • tu prépare ta zone DNS avec ton espace de préproduction
  • tu modifie ton vhost de préproduction et tu tests ton site

Pour moi il y a pas de secret tu va devoir installer de zéro un nouveau serveur à la ‘mano’ où copier ton environnement de production pour en faire une préproduction.

Il y a d’autre solution mais comme le précise Pascal tout dépend de ton hardware, il est rare d’être sur un hardware totalement identique.
De plus il parait logique que la préproduction sera bien moins véloce dans le traitement (en générale on réserve les gros billet pour la production).

Si tu veux tu peux aussi te documenter sur docker et la virtualisation, mais la copie de site se fera toujours de façon manuelle.