OVH Cloud OVH Cloud

Création de clone

11 réponses
Avatar
Kirioss
Bonjour,

Je suis à la recherche d'une doc expliquant comment créer un clone linux
(sur un poste master) en vue d'un déploiement sur plusieurs postes.
Avez-vous une piste à me fournir.

Je le fais actuellement en environnement Windows et je souhaite vérifier la
faisabilité sous linux (actuellement, pour windows, 1 image sert a déployer
plusieurs milliers de machines, certaines très différentes : IDE/SCSI/SATA,
monoproc/multiproc, cartes réseau différentes...)

Merci pour vos pistes

--
________________________________
Nicolas
enlever (remove) stoplapub

"This behavior is by design" (Microsoft)
________________________________

10 réponses

1 2
Avatar
Chaurin Olivier
Bonjour,


Salut,

Je suis à la recherche d'une doc expliquant comment créer un clone linux
(sur un poste master) en vue d'un déploiement sur plusieurs postes.
Avez-vous une piste à me fournir.


Tu veux parler d'une image de ton installation ? Si oui, partimage est
fait pour toi (disponible sur le LiveCd Knoppix 3.4 par exemple).

--
Chaurin Olivier
Attention : adresse antispam
1ers pas sous Linux (Knoppix 3.4 sur DD en mode "Debian")
Sous Mozilla Thunderbird 0.5

Avatar
Kirioss
Dans le message ,
Chaurin Olivier [] s'exprima en ces
termes :

Bonjour,


Salut,

Je suis à la recherche d'une doc expliquant comment créer un clone
linux (sur un poste master) en vue d'un déploiement sur plusieurs
postes. Avez-vous une piste à me fournir.


Tu veux parler d'une image de ton installation ? Si oui, partimage est
fait pour toi (disponible sur le LiveCd Knoppix 3.4 par exemple).


L'esprit, c'est le clonage oui. Mais je parlais plutot de la préparation du
master et non de l'outil de clonage.
Je voudrais savoir s'il y a des choses a savoir pour faire un clone
(concernant les paramètres de configuration par exemple, comme le nom de
machine, la prise en charge de matériels différents...)

Merci
--
________________________________
Nicolas
enlever (remove) stoplapub

"This behavior is by design" (Microsoft)
________________________________


Avatar
beebee
bonjour!

L'esprit, c'est le clonage oui. Mais je parlais plutot de la préparation
du master et non de l'outil de clonage.



Ben, en fait, je me souviens de cette possibilité avec
la distribution mandrake:)
Celle-ci offre la possibilité de préparer une disquette clône
et de reproduire à l'identique une installation automatisée
et optimisée:)
La disquette mémorise les choix, et les cd s'installent a vitesse grand
V:)
J'm'étais intéressé à la chose dans le cadre de déploiement de
cluster:)

Oua un millier de machine, un cluster sympa:)

Sinon,il y a aussi l'installation réseau d'un linux via nfs:)
Cela existe depuis ......!
Il y a même une distribution basé sur red hat dernier noyau
qui ne s'installe que comme cela:)

mais bon, je ne suis pas sûr
que cela répond directement à la question:)

Par contre, une réponse qui répond de façon logique:
c'est : embauche des personnes supplémentaires:
1000 machines pour une personne c'est gourmand:)

Mon métier, c'est gestionnaire de parc informatique:
retirer "nospam" pour écrire:)


Je voudrais savoir s'il y a des choses a savoir pour faire un clone
(concernant les paramètres de configuration par exemple, comme le nom de
machine, la prise en charge de matériels différents...)

Merci


A+
jpierre

Avatar
Kirioss
Dans le message ,
beebee [] s'exprima en ces termes :

Par contre, une réponse qui répond de façon logique:
c'est : embauche des personnes supplémentaires:
1000 machines pour une personne c'est gourmand:)


Dans ce cas, je ne suis pas sur que le gain sur les licenses soit
interressant... ;)

Pour info, l'idée n'est pas déployer un cluster mais des postes de travail
(et de démontrer la faisabilité sur beaucoup plus que 1000). Il est
évidemment hors de question de les installer à la main, ni même d'avoir une
quelconque action manuelle. La seule façon envisageable est l'installation
entierement automatique (OS, matériel, paramètres et applications) et à
distance.

Et non ce n'est pas une utopie, je fais déjà cela avec Windows. Le but étant
de montrer que l'on peut faire la même chose avec Linux (et je sais que
c'est possible)

La meilleure façon sous Windows (pour postes) est le clonage. Peut-être
est-ce l'installation automatisée sous Linux (comme windows pour les
serveurs). J'ai peur que ce soit tout de même plus long que le clonage et
que les actions post install (paramétrage) soient lourdes (obligation de les
automatiser pour les jouer à chaque fois). Un clone a l'avantage d'etre déjà
paramétré. Il n'y a que le nom de machine à changer et la prise en charge du
matériel à gérer.

Merci encore
--
________________________________
Nicolas
enlever (remove) stoplapub

"This behavior is by design" (Microsoft)
________________________________

Avatar
beebee
bonjour:)

Par contre, une réponse qui répond de façon logique: c'est : embauche
des personnes supplémentaires: 1000 machines pour une personne c'est
gourmand:)


Dans ce cas, je ne suis pas sur que le gain sur les licenses soit
interressant... ;)


Ah, bon une personne compétente coûte autant que 1000 licences
krosoft:)
Génial, j'aimerais bien avoir ton salaire de 1000 licences:)

Pour info, l'idée n'est pas déployer un cluster


Oui, merci, le neuneu que je suis avais compris:-0)
et vive guignol:-0)
mais des postes de
travail (et de démontrer la faisabilité sur beaucoup plus que 1000). Il
est évidemment hors de question de les installer à la main, ni même
d'avoir une quelconque action manuelle. La seule façon envisageable est
l'installation entierement automatique (OS, matériel, paramètres et
applications) et à distance.


Oui, on parle de lamême chose:)
et même quand on te donne la réponse tu comprend pas:)
Gratuit, c'est encore trop cher?????

Et non ce n'est pas une utopie, je fais déjà cela avec Windows. Le but
étant de montrer que l'on peut faire la même chose avec Linux (et je
sais que c'est possible)


Oui, c'est ce que le monsieur essaye de te dire:)
La vache, j'ai mille game boy à installer comme poste de travail:)

La meilleure façon sous Windows (pour postes) est le clonage. Peut-être
est-ce l'installation automatisée sous Linux (comme windows pour les
serveurs). J'ai peur que ce soit tout de même plus long que le clonage et
que les actions post install (paramétrage) soient lourdes (obligation de
les automatiser pour les jouer à chaque fois). Un clone a l'avantage
d'etre déjà paramétré. Il n'y a que le nom de machine à changer et la
prise en charge du matériel à gérer.


Donc j'ai des solutions viables:)

Merci encore
Merci, encore et + si affinité pécuniaire:)



Avatar
Kirioss
Dans le message ,
beebee [] s'exprima en ces termes :

(snip)

Bien, on tombe vite dans le non constructif. Je souhaitais, dans mon dernier
post, préciser ta réponse pour aller plus loin. En effet, je cherche des
pistes techniques (et pas l'embauche de personnes)

J'avais pourtant des questions simples :
- Clonage ou installation automatique (en précisant ma préférence pour le
clonage)
- Que faut il modifier sur une installation pour un déploiement automatique
- Une pistesur la gestion des matériels

Bon bah je sens que je vais devoir me débrouiller autrement

Merci quand meme
--
________________________________
Nicolas
enlever (remove) stoplapub

"This behavior is by design" (Microsoft)
________________________________
Avatar
Nicolas George
"Kirioss" wrote in message <4103eb94$0$6066$:
- Clonage ou installation automatique (en précisant ma préférence pour le
clonage)


Si je devais faire une installation sur de nombreuses machines presque
identiques, je pense que je procéderais plus ou moins ainsi :

- installation initiale la plus complète possible sur une machine ;

- création d'un répertoire /etc/local, déplacement dans ce répertoire de
tout ce qui est spécifique à la machine (ce qui ne fait pas grand
chose : essentiellement la liste des modules noyau à charger, et le
nom d'hôte ; les clefs SSH, aussi), et création de liens symboliques
pour les remettre à leur place ;

- pendant que ça mouline à installer des packages, création d'un CD
bootable (ou une clef USB, si ça marche sur ces machines-là) avec un
noyau générique, les outils de base, et un script qui :

- partitionne le disque dur ;

- monte les partitions et crée les points de montage ;

- configure le réseau (avec un préfixe local et un suffixe dérivé de
l'adresse MAC, ou alors en DHCP) ;

- copie toute l'installation originale par rsync ;

- installe un bootloader ;

- crée un squelette de /etc/local ;

- quand c'est fini, test du CD sur une machine pour corriger les
derniers bugs du script ;

- lancement du CD sur toutes les machines.

Bref, aucun outil spécial. Il y a peut-être des outils qui font à peu
près la même chose, mais je doute qu'ils fassent gagner du temps à un
administrateur doué, car celui-ci peut optimiser ses scripts de
synchronisation pour les spécificités de son environnement.

Par exemple, s'il y a exactement trois modèles d'ordinateurs différents,
il est possible de prévoir sur la clef USB trois versions de /etc/local
avec les bons modules dans les trois cas, et de détecter (avec quelques
grep bien sentis dans /proc ou /sys) le quel installer. Ce genre de
choses n'est pas possible pour un outil générique.

Avatar
Kirioss
Dans le message <ce0rl6$1pfc$,
Nicolas George [nicolas$] s'exprima en ces termes :

"Kirioss" wrote in message <4103eb94$0$6066$:
- Clonage ou installation automatique (en précisant ma préférence
pour le clonage)


Si je devais faire une installation sur de nombreuses machines presque
identiques, je pense que je procéderais plus ou moins ainsi :

- installation initiale la plus complète possible sur une machine ;

- création d'un répertoire /etc/local, déplacement dans ce répertoire
de tout ce qui est spécifique à la machine (ce qui ne fait pas grand
chose : essentiellement la liste des modules noyau à charger, et le
nom d'hôte ; les clefs SSH, aussi), et création de liens symboliques
pour les remettre à leur place ;

- pendant que ça mouline à installer des packages, création d'un CD
bootable (ou une clef USB, si ça marche sur ces machines-là) avec un
noyau générique, les outils de base, et un script qui :

- partitionne le disque dur ;

- monte les partitions et crée les points de montage ;

- configure le réseau (avec un préfixe local et un suffixe dérivé de
l'adresse MAC, ou alors en DHCP) ;

- copie toute l'installation originale par rsync ;

- installe un bootloader ;

- crée un squelette de /etc/local ;

- quand c'est fini, test du CD sur une machine pour corriger les
derniers bugs du script ;

- lancement du CD sur toutes les machines.

Bref, aucun outil spécial. Il y a peut-être des outils qui font à peu
près la même chose, mais je doute qu'ils fassent gagner du temps à un
administrateur doué, car celui-ci peut optimiser ses scripts de
synchronisation pour les spécificités de son environnement.

Par exemple, s'il y a exactement trois modèles d'ordinateurs
différents, il est possible de prévoir sur la clef USB trois versions
de /etc/local avec les bons modules dans les trois cas, et de
détecter (avec quelques grep bien sentis dans /proc ou /sys) le quel
installer. Ce genre de choses n'est pas possible pour un outil
générique.


Merci pour ces infos, je dois pouvoir les adapter aux outils déjà en place
(PXE en particulier).
Question bonus, quel mode utiliser pour installer des applications en mode
automatique (sans les préinstaller dans l'image). suis-je dépendant de la
distribution choisie ? Y'a-t-il un format plus répendu (rpm ?) ?

Merci

--
________________________________
Nicolas
enlever (remove) stoplapub

"This behavior is by design" (Microsoft)
________________________________


Avatar
Nicolas George
"Kirioss" wrote in message <4103fb5d$0$6050$:
Question bonus, quel mode utiliser pour installer des applications en mode
automatique (sans les préinstaller dans l'image). suis-je dépendant de la
distribution choisie ? Y'a-t-il un format plus répendu (rpm ?) ?


Toutes les distributions ont un moyen d'installer des paquets
précompilés. Ça marche très bien pour les paquets qui sont fournis par
la distribution, et plus ou moins bien pour les paquets fournis par des
tiers, selon le soin mis par les tiers en question pour faire les
paquets. En revanche, pour un programme qui n'est pas fourni sous la
forme adaptée, il faut apprendre à faire ses propres paquets.

Cependant, ça ne me semble pas une solution très efficace pour gérer
beaucoup de machines.

Une chose qu'il faut bien comprendre, sous Linux, c'est qu'à part la
table des partitions du disque dur et le bootloader (qu'on fixe une fois
pour toutes à l'installation), absolument toutes les informations sont
stockées dans des fichiers parfaitement normaux, qu'on peut copier,
déplacer, etc.

Si on part de deux machines, A et B, avec une installation identique,
qu'on installe un logiciel sur A, puis qu'on copie de A à B tous les
fichiers créés ou modifiés par cette installation, alors on obtient sur
B exactement le même résultat que l'installation directement sur B. Il
n'y a pas de base de registres ou que sais-je qui réside on ne sait où
et qu'il n'est pas possible de copier.

Pour gérer un grand nombre de machines avec une installation identique,
le mieux à mon avis est d'avoir une machine maîtresse sur laquelle on
fait les installations, et un script exécuté la nuit par une crontab
pour recopier tous les changements (avec rsync par exemple).

En tout cas, c'est ce qu'on fait pour gérer les sept serveurs NFS des
salles info de l'ENS, et ça marche très bien.

<disgression>
À noter que s'il y a vraiment beaucoup de machines, faire les
synchronisation toutes en même temps depuis la machine maîtresse peut
faire râmer celle-ci, et même être mauvais pour le disque dur. Peut-être
qu'un schamé de ce style serait plus efficace :

machine0 -> machine1
machine0 -> machine2 et machine1 -> machine3 en parallèle
0 -> 4, 1 -> 5, 2 -> 6, 3 -> 7 en parallèle
...
</disgression>

Avatar
Kirioss
Dans le message <ce12ma$1t8i$,
Nicolas George [nicolas$] s'exprima en ces termes :

Si on part de deux machines, A et B, avec une installation identique,
qu'on installe un logiciel sur A, puis qu'on copie de A à B tous les
fichiers créés ou modifiés par cette installation, alors on obtient
sur B exactement le même résultat que l'installation directement sur
B. Il n'y a pas de base de registres ou que sais-je qui réside on ne
sait où et qu'il n'est pas possible de copier.


Juste pour info puisqu'on est dans la culture, c'est exactement la même
chose avec Windows.
Fichiers+clés de registre représentent tout de l'installation d'un
programme. C'est d'ailleurs comme ca qu'on industrialise des applications
sous Windows (et ca fonctionne très bien). Il y a bien quelques spécificités
(services NT par exemple), mais rien de caché, on peut packager (ou
repackager) une application sans problème. Il y a même des logiciels sur le
marché qui font ca très bien. Ils capturent l'installation originale pour la
transformer (en package MSI par exemple), cf InstallShield, Wise... par
exemple

Pour ma culture, si je veux créer des packages d'installation, sous Windows,
j'aurais tendance à produire des MSI. Sous Linux, je fais quoi (ce qui
parrait le plus "standard" ?). Si j'ai bien compris, je peux faire des
scripts qui copient les fichiers au bon endroit. Y'a-t-il plus évolué ? rpm
?

Merci encore

--
________________________________
Nicolas
enlever (remove) stoplapub

"This behavior is by design" (Microsoft)
________________________________

1 2