Rechercher
Connexion
Avec Facebook Connect
 Login Facebook
Ou avec vos identifiants
Enregistrer. Mot de passe perdu

linuxClones de serveurs virtuels 

samedi 23 août 2014 par Stéphane
Cet article fait suite au titre précédent "Créer une vm ubuntu-server" et détaile la manière dont on peut utiliser le clone d'une machine virtuelle (un serveur "master" en quelque sorte) pour dupliquer celle-ci en autant de serveurs pré-configurés quasi prêts à l'emploi. On a donc notre clone "machine2" chaudement realisé, que l'on va maintenant préparer pour sa mise en ligne.

Sur le serveur on ouvre le port 8889 avec iptables (port de la vm précédente +1) et on crée un nouveau site "exemple" dans la config d'Apache (notez qu'on modifie la redirection de port de la vm en conséquence: 8889 au lieu de 8888).
vim /etc/apache2/sites-availables/exemple

<VirtualHost *:80>
    ServerAdmin contact@exemple.fr
    ServerName  exemple.fr
    ServerAlias www.exemple.fr *.exemple.fr

    ProxyRequests Off
    ProxyVia Block

    ProxyPass / http://localhost:8889/
    ProxyPassReverse / http://localhost:8889/
    ProxyPreserveHost On
</VirtualHost>

Aprés avoir activé le site et redémarré le serveur
a2ensite exemple
service apache2 reload

la machine est bien accessible à http://exemple.fr , qui est bien entendu un nom de domaine en notre possession dont les redirections DNS sont deja en place.

L’Intérêt bien sur c'est de pourvoir lancer autant de VMs que de sites hébergés et ainsi constituer une ferme de serveurs virtualisés: le paramétrage du serveur est minimal à chaque opération puisqu'on utilise des clones et qu'ainsi on a pas à refaire toute son installation à zéro !

Pour l'instant tout est donc identique sur les deux VMs: utilisateurs, comptes FTP, SSH, etc... Il va falloir mettre à jour la configuration de notre clone avant toute autre chose.

Pour cela on a un SSH fonctionnel d'emblée, et ça c'est bien pratique, alors autant s'en servir tout de suite
ssh -p 10023 user@exemple.fr

Changer le nom de la machine

Ici on remplacera machine1 par machine2 dans les fichiers hostname et hosts après avoir utilisé la commande hostname.
sudo hostname machine2
sudo vim /etc/hostname
sudo vim /etc/hosts

Créer un nouveau compte utilisateur 

qui nous servira pour l’hébergement du site et sera le dossier FTP du client
sudo useradd -m exemple -s /usr/sbin/nologin
sudo passwd exemple (password)

A ce stade on peut lancer un client FTP sur le port 2121 avec l'identifiant exempleet le mot de passe password

Créer le site client

On crée l'arborescence de notre site dans le dossier utilisateur dont on aura changé le propriétaire
sudo mkdir /home/exemple/logs
sudo mkdir /home/exemple/www
sudo chown -R exemple /home/exemple/logs
sudo chown -R exemple /home/exemple/www

et on modifie la config d'apache en conséquence
sudo vim /etc/apache2/apache2.conf

<Directory /home/exemple/www>
    Options Indexes FollowSymLinks
    AllowOverride all
    Require all granted
</Directory>

puis on édite la configuration de notre site
sudo vim /etc/apache2/sites-available/000-default.conf

<VirtualHost *:80>
    ServerAdmin contact@exemple.fr
    ServerName exemple.fr
    ServerAlias www.exemple.fr *.exemple.fr

    DocumentRoot /home/exemple/www
    <Directory />
        Options FollowSymLinks
        AllowOverride all
    </Directory>

    <Directory /home/exemple/www>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride all
        Order allow,deny
        allow from all
    </Directory>

    ErrorLog /home/exemple/logs/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /home/exemple/logs/access.log combined
</VirtualHost>

Et voila pour ce qui est de l'hébergement et du serveur ftp de notre nouveau site, on peut recommencer l’opération autant de fois qu'on veut, tant que le serveur tient la charge ...
Répondre
Contact | Plan du site | Mentions légales | Réalisation : Nomadweb
1 visiteur et 0 membre en ligne • v170318 • timer:0.334sec