10 serveurs airtime sur 1 serveur 64 bits ?

Bonjour à tous,

je souhaite installer sur un serveur debian 64 bits,
10 serveurs Airtime indépendants les uns des autres.
J’ai posté ceci :
https://www.debian-fr.org/comment-monter-une-webradio-avec-icecast2-t44401.html

Je souhaite donc installer 10 serveurs airtime, pour avoir 10 radios.

J’ai vu dans la rubrique “truc et astuces”, qu’il y a la solution des 10 chroot
qui chacun, hébergeront 10 systèmes wheezy 64 bits + 10airtime + les paquets dépendants.
:118
Je trouve ça horriblement lourd.

est ce vraiment la seule solution, pour avoir 10 instances de airtime ?

Merci d’avance
Guillaume

A première vue je ne pense pas que ce soit possible sans soit chrooter soit utiliser des container/machine virtuelle.

Le principe d’aufs consiste à surcharger u système de fichier extstant par d’autres.

  1. Tu fais un chroot (si c’est un 64 bits, tu dois être sur un système 64 bits). Dans ce chroot tu mets ce qu’il faut pour faire tous tes airtime.
    Appelons ce répertoire /BASE
  2. Pour i allant de 1 à 10 ;
    faire un répertoire /airtime_${i} (par exemple /airtime_3 ) et un autre /parametre/a_${i} (par exemple /parametre/a_3)
    taper

par exemple

faire

terminer le i ème airtime
Fin du pour

Le démontage des aufs se fait par umount /airtime_${i}
Eventuellement n’oublies pas les bind de /dev et de monter /proc sur chacun des chroot faits.

Cela te permet de faire dix serveurs avec une utilisation de disque minimale et surtout une gestion des caches très efficaces (même cache pour tous les serveurs). Ton système sera moins gourmand.

C’est très intéressant fran.b,
ce que tu m’expliques. :slightly_smiling:

mais à quoi sert le dossier /parametre ?
et le dossier /BASE ?

Donc, en résumé, je monte 10 fois, chaque instance d’airtime ( que je rajoutes donc dans /etc/fstab )
avec :
mount -t aufs aufs /airtime_3 -o dirs=/parametre/a_3=rw:/BASE=ro

Je crée donc 10 chroot.
je mets dan /etc/fstab, les 10 mount bind de /dev et /proc ??

Merci beaucoup
guillaume


Je dois bien évidemment créer 10 systèmes avec debootstrap.
En quoi l'utilisation du disque est minimal ? 
en écriture ??

gui

Je dois bien évidemment créer 10 systèmes avec debootstrap.
En quoi l’utilisation du disque est minimal ?
en écriture ??

gui

Non. relis ce que j’ai mis, tu fais sous /BASE un premier chroot commun à tous dans lequel tu mets ce qui est commun à tous tes serveurs SANS les individualiser. C’est le /BASE qui ne bouge plus.

PUIS pour chaque serveur, tu monte un répertoire /parametre/a_${i} (en rw) par dessus le /BASE (en ro) le tout sur /airtime_${i}. Là tu finis le chroot pour chacun. Les fichiers modifiés ou supplementaire seront dans /parametre/a_${i}.

Les bind de /dev sont à faire sur chaque /parametre/a_${i}.

Ce montage doit se faire dans un script (mis dans /etc/rc.local par exemple) car trop complexe pour fstab.

merci

C’est d’une évidence pour toi … :laughing:

Même chose pour /proc ??

peux tu m’aider pour le script final, pour tout monter ?

Ça m’aide, ce que tu lâches, mais je déchiffre ! :083
dur dur.

guillaume

tu as pensé à openVz ?

je connais pas.
je vais regarder.
tu as un lien sympa ?

J’ai plus pensé à de l’aspirine, là, présentement. :smiley:

J’ai des soucis avec /proc …

il me dit qu’il n’est pas présent/monté…

je ne sais plus quel est l’ordre de ce que je dois faire.

Ce que j’ai fait :

[code]- j’ai crée /BASE

  • debootstrap --arch amd64 wheezy /BASE/ http://ftp.fr.debian.org/debian/
  • J’ai créé /radio1 puis /parametre/radio1
  • mount -t aufs aufs /radio1 -o dirs=/parametre/radio1=rw:/BASE=ro
  • mount -t proc none /parametre/radio1
  • mount -o bind /dev /parametre/radio1
  • chroot /radio1
  • mise à jour de sources.list …[/code]

Puis je fais mes installations.
Est ce bien les bonnes étapes ?

fran.b, peux tu être plus précis ?
je suis débutant, dans ce domaine.

Merci
Guillaume

mount -t aufs aufs /radio1 -o dirs=/parametre/radio1=rw:/BASE=ro mount -t proc none /radio1/proc mount -o bind /dev /radio1/dev chroot /radio1 mise à jour de sources.list ...

pour démonter (après avoir fait exit)

umount /radio1/proc umount /radio1/dev umount /radio1

Tu verras dans /parametre/radio1 les fichiers suppllémentaires rajoutés sur BASE, la taille doit être sensiblement inférieure. Je te suggère de mettre le sources.list à jour dans BASE, en effet les bases apt prennent plus de 100M, c’est un peu bête de les répéter 10 fois.

Salut,

< Mon nanoneurone ayant un doute. >

Et, fran.b étant d’une modestie maladive, bien que saine, je me permets¹ … ^¿^

Rendons à François ce qui lui appartient. … >>> AUFS, Tester sans risque.

< Mon nanoneurone ayant un doute. />


¹ N’ayant nullement relevé le moindre lien² (allusion) pointant vers … Ce géni(e)al tuto.
² tes deux sujets de gillaume

Merci à tous les 2.

Ça se précise pour moi.
Je vois la lumière, maintenant.

pour info, mes aventures de ce mois d’août, commence ici :
http://www.debian-fr.org/comment-monter-une-webradio-avec-icecast2-t44401.html
http://www.debian-fr.org/installation-chroot-32-bits-transparent-t14673-75.html

Je vous tiens au jus.
Guillaume

Bonjour à tous,

Après avoir tout monté, quand je fais une installation, j’ai ce message :

Impossible d'écrire le journal, échec d'openpty() (/dev/pts est-il monté ?)

Une idée ? :slightly_smiling:

Oui, si tu es en chroot, il me semble qu’il y a ce message, pas gênant par ailleurs.

Ok fran.b

Ça avance
merci !

Guillaume

ya des choses que je comprends pas…

Quand je redémarre mon serveur physique, les services dans le chroot /BASE ne redémarre pas automatiquement …

Comment ça se passe ?
J’ai ajouté les mount de /proc et /dev pour /BASE dans rc.local du système hote.
ça se passe bien.

Mais pourquoi apache, et les autres services ne se lancent pas automatiquement dans ce chroot ?

Merci d’avance
Guillaume

Ça c’est normal et c’est heureux (tu aurais des services en concurrence). Pour démarrer un service dans le chroot il faut le faire un la main (quelle que soit la façon de faire le charoot). Si tu as besoin qu’un pgm du chroot utilise un service d’n autre chroot ou de la machine il te faut leur donner le même /var/run et souvent le même /tmp (en clair que ces 2 répertoires soient des bind du répertoire de la machine principale).

Ok
Peux tu être plus précis ?
Pour apache par exemple, qui est tourne dans /BASE …

peux tu me donner les commandes, et/ou un lien à lire.

De mon côté, je cherche.

Guillaume

Ton serveur apache, il fait tourner un site, où est ce site? Si j’ai bien compris tu as ta machine principale + 10 systèmes chrootés tous clone d’une installation définie dans /BASE.
A priori aucun service ne tourne dans /BASE. Soit un un service commun (il tourne dans la machine principale), soit c’est autant de service que de systèmes chrootés, donc chacun tourne dans /radio${i}…