Journal Petite histoire d'une virtualisation d'un Proliant G3

Posté par  .
Étiquettes :
11
13
août
2009
Cher journal,
Je viens de passer 4 jours pour installer un Linux sur ce serveur Compaq-HP Proliant G3 avec un carte Raid Smart Array 642.

Tout d'abord petite présentation du projet qui m'amène à rompre la première règle de l'administrateur malin "Quand çà marche (1), on ne touche pas !".

L'objectif de ma démarche est de virtualiser le contrôleur primaire de domaine Active Directory de mon réseau qui tourne sur un serveur Windows 2000 server vieillissant de manière à ce que le jour où il claque que je ne sois pas complètement perdu et que je puisse tester des scénarios de migration tranquillement et sans risque.
Il est utile de préciser que mon système cible pour la machine hôte sera un couple Ubuntu Serveur/VirtualBox

La première épreuve fut la virtualisation d'une machine existante. J'avais essayé à froid avec un ntfs-clone sans succès. La VM planté au démarrage, j'ai mis du temps à régler l' handicape qu'à Windows avec la gestion de la couche ACPI qui empêche de passer simplement un Windows d'une architecture à une autre.
J'ai réussi à m'en sortir en modifiant les DLL comme spécifié ici:
- http://www.virtualbox.org/wiki/Migrate_Windows
- http://support.microsoft.com/kb/309283
Entre temps, J'ai aussi découvert l'outil VMWare Converter qui fonctionne très bien avec VirtualBox et qui permets de cloner/virtualiser une machine en production très rapidement.
Seul problème est que Windows 2000 serveur , seul la version 3.0.3 a fonctionné. La dernière version plantait à l'installation.

Ayant virtualisé le CDP, je commence à réinstaller un Linux sur le Proliant G3. Confiant, j'avais déjà réussi à faire un ntfs-clone avec Fedora 10 qui trainait mais çà sera une série de problème que je vais rencontrer:
1er jour:
Je tente une installe d'un Ubuntu Server 8.04.
Erreur de lecture du CD, je vérifie le md5sum, je change le lecteur CD sans succès. Je décide de regraver en 8x et là çà marche. Mais l'installeur ne trouve pas mon RAID en /dev/cciss/c0d0.
Je télécharge la dernière 9.04 même problème.
Je tente charger/décharger les modules cpqarray, cciss sans succès.
Ne trouvant plus ma Fedora 10 ,je télécharge une 11.

2ème jour:
Je teste la 11 même problème. Je bidouille les modules. Rien y fait, impossible de monter mon RAID.
Je commence à bidouiller dans le bios virant les trucs inutile un autre contrôleur SCSI, Hyperthreading, ...
Sur Internet, je ne trouve rien qui pourrait indiquer un problème avec cette carte.
Il me reste plus qu'une solution patcher le firmware. Un truc que je redoute depuis que j'avais grillé le bios d'une Matrox Mystique, il y a quelques années.
Je trouve rapidement le nouveau Firmware pour ma carte Raid Smart Array 642.
Je teste l'executable sur la Fedora 11 problème, il bloque sur une erreur.

Après plusieurs recherches , je trouve CD HP Firmware Update. C'est un Linux qui permet de mettre rapidement à jour les différents firmware.

3ème jour:
mais il plante lamentablement sur "la détection des drivers".
Je commence à rager. Je supprime dans le bios le contrôleur RAID en désattribuant l'IRQ.
Le HP Firmware Update démarre mais il me permet de mettre à jour tous les firmwares sauf celui de ma carte RAID.
J'écume à nouveau les forums. (PS: Pendant ,c'est 3 jours , je ne fais pas que çà...)
Au final, je tente en dernier ressort une Fedora 10. Et là, tout démarre sans problème, les disques sont bien détecté.
J'installe la Fedora 10, je la mets à jour. N'étant pas habitué avec cette distribution, je reste sur ma faim et il n'y a pas de Virtual Box dans les packages.

4ème jour:
Au final , j'essaie de patcher le firmware de la carte. A part quelques problème avec la Libstdc++ que je dois télécharger, le patch s'exécute sans problème ! un Ouf de soulagement , je décide de reprendre ma Unbuntu Serveur 9.04 est de tenter une installe.
Je préfère cette dernière par soucis d'homogénéité et le fait que Virtual Box soit bien intégré et supporté par défaut.
L'installation se passe presque sans problème. Sauf pour Grub qui s'est mal installé car j'avais laissé ma clé USB de branché.

Moralité de cette histoire:
- Il ne faut pas ce limiter à une distribution
- La dernière version qui marche bien ailleurs n'est pas forcement celle qui va marcher sur votre configuration.
- Beaucoup de patience.
- Quand il n'y a plus d'espoir, il y en a toujours encore un peu.

(1) il faudrait aussi ajouter " et qu'il n'y a pas de risque de sécurité".
  • # Je suis scié ...

    Posté par  (site web personnel) . Évalué à 2.

    Alors moi quand j'installe un serveur, je mets un CD de Debian dans le lecteur, je réponds à trois questions (ou plus) et des fois je mets un clé usb avec des firmwares de non-free pour certains périphériques.
    Enfin je sais pas, mais c'est un serveur tout neuf avec plein de nouveaux trucs dedans qui sont pas supportés par Linux ?
    Ou alors c'est l'utilisation de distributions bas de gamme ?

    "It was a bright cold day in April, and the clocks were striking thirteen" - Georges Orwell

    • [^] # Re: Je suis scié ...

      Posté par  . Évalué à 3.

      En fait, c est loin d etre un serveur tout neuf.
      Il a 6 ans.
      Honnetement, je me suis acharné dessus car j avais du temps libre car il va encore vivre un an ou deux maximum
      • [^] # Re: Je suis scié ...

        Posté par  (site web personnel) . Évalué à 4.

        Ben justement, c'est ça que je capte pas, les vieux trucs tournent bien avec linux. J'ai une station sun, j'ai encore la facture : 1996, ben hormis le lecteur disquette qui est naze, elle fonctionne nikel (comme serveur ldap privé). Heureusement quelle pouvait démarrer par le réseau.
        Et j'ai mis une debian stable dessus, ça marche du tonnerre !

        "It was a bright cold day in April, and the clocks were striking thirteen" - Georges Orwell

        • [^] # Re: Je suis scié ...

          Posté par  . Évalué à 2.

          Justement,c est une vielle distribution qui fonctionne avec le vieux firmware du Raid (2002)
          Une fois , la maj du Firmware reussit, je n ai plus aucun soucis avec les distributions recentes.

          çà m etonne à moitié. Il est difficile de garantir une compatibilité avec tous les firmwares d un materiel.
          • [^] # Re: Je suis scié ...

            Posté par  (site web personnel) . Évalué à 2.

            Et sinon virtualisé avec Xen tu as essayé ? Ça donne quelque chose ?

            "It was a bright cold day in April, and the clocks were striking thirteen" - Georges Orwell

            • [^] # Re: Je suis scié ...

              Posté par  . Évalué à 2.

              Non, je n ai pas essayé Xen.
              J etais resté sur le fait que çà ne supportait que Linux en guest.
              Il faut dire aussi que je n ai pas de probleme de perf ou de memoire pour les serveurs que j envisage de virtualiser
              Donc je priviligie dans l ordre la stabilité, la facilité d utilisation et le cout.
              vbox m incite pas à aller voir ailleurs dans ce cas là.
              Tant que 'çà marche, on ne touche pas'
              • [^] # Re: Je suis scié ...

                Posté par  (site web personnel) . Évalué à 2.

                En para-virtualisé il faut avoir un noyau spécifique pour xen, mais en virtualisé tu fais tourner n'importe quoi dedans. Où je bossais avant, on faisait tourner des Windows 2003 Server virtualisé dans Xen, ça fonctionnait vraiment bien.
                Par contre migrer un serveur déjà existant ça doit pas être trop dur, un simple dd du disque dans un fichier et ça devrait fonctionner, mais j'ai jamais eu l'occasion d'essayer ça.
                Par contre pour virtualisé avec Xen, il faut que le processeur ait la technologie vt (pour intel), mais ça existait pas sur les Pentium4, donc ça aurait pas joué pour toi.
                Mais c'est vrai que virtualbox fonctionne bien. Je l'utilise sur ma machine de travail.

                "It was a bright cold day in April, and the clocks were striking thirteen" - Georges Orwell

                • [^] # Re: Je suis scié ...

                  Posté par  . Évalué à 3.

                  Un simple de dd du disque ne suffit pas pour Windows.

                  Si tu as le malheur de changer un des paramètres suivant:
                  - Mono ou SMP
                  - Acpi ou non.


                  Il faut que tu modifies le WINNT/System32 à la main avec un Live CD et extrayant les dll d'un CAB du CD d'installation.

                  Si les disques changent un peu. Le boot est restauré et il faut aller modifier le boot.ini à la main.

                  Avant de lancer la migration, il faut penser à désinstaller les outils de monitoring propre à Compaq/HP.

                  En bon feignant, j'ai testé la réparation du système de l'installe Windows. çà ne suffit pas

                  Le mieux que j'ai trouvé pour les 2003 server ou XP , c'est VMWare Converter 4.0.x , çà effectue les changements de manières automatique. La machine virtuel démarre sans problème.

                  D'ailleurs, je suis bien content d'avoir vu toutes ses conneries en teste car si j'étais dans une phase de reprise après incident. Je crois que je serais un poil stressé :).
                  • [^] # Re: Je suis scié ...

                    Posté par  . Évalué à 2.

                    Je croyais que ce poste avait été perdu.

                    J'ai du avoir un problème de cache ou LFR a eu un bug.
                • [^] # Re: Je suis scié ...

                  Posté par  . Évalué à 2.

                  dd ne suffit pas pour migrer un serveur existant.

                  D'ailleurs ceux qui pensent qu'ils n'auront aucun soucis à remonter un windows car ils ont fait un dd du disque (ou ntfs-clone ) , ils se plantent littéralement.

                  Windows est très casanier. Si tu as le malheur de le changer de machine et il ne démarre plus, si tu changes:
                  - la couche ACPI
                  - Monoprocesseur ou SMP
                  - L'ordre des contrôleurs de disques.
                  - La carte graphique AGP et compagnie.

                  Tu devras modifier des DLL dans WINNT/System32, boot.ini , ... et il ne faut pas compter sur
                  une réparation.
                  D'ailleurs, le CD de l'OS peut être obsoléte si il est propre à l'éditeur. Par exemple, CD Windows 2000 serveur installe des drivers RAID Compaq par défaut et les services qui vont bien.

                  C'est pour çà qu'il faut désactiver pour un Windows de chez Compaq-Hp:
                  - Le outil spécifique a HP pour le monitoring.
                  - Les services pour la gestion du RAID

                  Bref , c'est bien connu Windows , c'est de la ...

                  Le mieux que j'ai trouvé pour y palier , c'est VMWare Converter 4 qui marche bien sous 2003 Server. Il fait le backup à chaud et la VM démarre au quart de tour.

                  Je compte bien m'en servir pour sauvegarder même les serveurs que je ne veux pas virtualiser.
  • # Je suis choqué !

    Posté par  (site web personnel) . Évalué à 3.

    Donc en gros tu as monté un serveur de virtualisation sans accélération matériel, avec un X et au moins qt. Ne me dit pas qu'en plus tu as mis un gnome ou je ne sais quel autre cochonnerie dessus histoire de plomber encore plus les performance.

    Le dernier serveur de virtualisation que j'ai monté sans support matériel, j'ai foutu un qemu/kqemu et j'ai déporté l'affichage sur vnc et le tout sans rien d'autre que le système de base qui fonctionnait sur la machine hôte. La même chose est possible avec vmware serveur qui est gratuit d'ailleurs. Pour moi virtual box va bien pour monter une machine virtuel sur un desktop pour faire mumuse avec des vm mais sur du serveur de production c'est juste pas fait pour.

    Bon sinon histoire d'alimenter le troll, avec une redhat tu met le cd hp tu clique sur installer une redhat et 1h plus tard tu as ta redhat 100% fonctionnel avec tout les firmware dont tu as besoin. Et si tu tiens vraiment à apt, comme dit plus haut, il te suffit de mettre les firmware sur une clef usb et de lancer l'installation et tu auras une installation fonctionnel (mais oui debian c'est plus compliquer il te pose 5 questions à l'installation pour savoir ce que tu veux faire).

    Et pour info j'ai quelques prolian G3 et c'est vraiment supporté par tout le monde tellement c'est des machine super courante en entreprise. Et puis t'imagine le plus gros fabricant au monde d'ordinateur dire : Linux ??? non je ne connais pas j'ai pas envie de faire du support pour mon matériel.
    • [^] # Re: Je suis choqué !

      Posté par  (site web personnel) . Évalué à 2.

      Pour l'instant j'ai eu plus de succès avec des Debian qu'avec des RedHat, mais c'est vrai qu'avec Debian il y a plus de questions et parfois il faut un .deb de non-free. (Remarque c'est depuis Lenny qu'il demande les firmware, avant il fallait le découvrir).
      La dernière fois que j'ai utilisé RedHat c'était sur un BladeCenter IBM, impossible de faire fonctionner le multipath (il y avait des RPM fournis, mais il fallait recompiler le noyau pour qu'ils fonctionnent). Avec Debian il fallait manuellement installer le paquet multipath-tools et multipath-tools-initramfs, mais au moins ça fonctionnait. Je crois qu'avec Squeeze, le multipath est supporté dans l'installeur.
      Par contre je sais pas où en est RedHat, quand on avait téléphoner au support il nous avait dit que ce serait supporté dans la prochaine version. Du coups on a arrêté d'utiliser RedHat.

      "It was a bright cold day in April, and the clocks were striking thirteen" - Georges Orwell

    • [^] # Re: Je suis choqué !

      Posté par  . Évalué à 2.

      Lol, en fait, je n'ai pas de problème de performance.

      Depuis une semaine, la VM tourne sur mon poste de travail qui a 1 Go RAM et qui est un pauvre pentium D ralentit pour faire baisser la température du bureau.

      La VM répond quand même:
      - à toutes les demandes authentification sur le domaine (environ 100 machines)
      - serveur wins.
      - aux requêtes DNS d'environs 200 machines.
      - déploiement des stratégies de sécurités.

      Elle occupent 15% de mon CPU et 30% de la mémoire, je n'ai qu'un 1 Go ^^.

      Sur cette machine, il y a quand même : Compiz, Gnome, X ,MySql Server, Apache HTTPd, Samba, ...
    • [^] # Re: Je suis choqué !

      Posté par  . Évalué à 2.

      avec un X et au moins qt. Ne me dit pas qu'en plus tu as mis un gnome ou je ne sais quel autre cochonnerie dessus histoire de plomber encore plus les performance.

      pour info: tu peux lancer un application X à distance (X a été conçu pour ça dès le départ), tu n'as pas besoin de lancer un serveur X sur la machine distante: les applis X fonctionnent en tant que client de *ton* serveur X, c.à.d celui de ton desktop (avec ssh qui fait proprement le tunneling). Ça ne plombe strictement rien en performance sur le serveur (du moins: pas plus que tout ce que tu peux lancer pendant que tu es loggé sur le serveur), c'est un mythe d'admin intégriste de la console.

      Il fut une époque où avoir rien qu'une appli graphique (même pas un bureau) à travers internet était limite inutilisable, et de plus pour l'admin des serveurs unix il n'y avait aucun outil graphique sérieux ou stable.

      Mais de nos jours avec une ligne ADSL il est envisageable d'avoir synaptics (par exemple) si tu le souhaites, ça n'ouvre aucun port en écoute ni n'ajoute aucun process qui tourne en permanence que si tu avais installé "ssh-client", "less" ou n'importe quel truc juste en console. Au pire tu vas te retrouver avec 1 ou 2 libs dont tu n'as pas forcément besoin, comme pour les autres programmes d'ailleurs; et c'est pas pour la place que ça occupe que c'est gênant.

      Enfin pour le cas spécifique de Virtualbox tes VMs peuvent tourner sans l'appli graphique (fais le test de la fermer alors qu'une console de VM est ouverte), il y a des outils en ligne de commande pour les gérer.
      • [^] # Re: Je suis choqué !

        Posté par  . Évalué à 2.

        Pour ceux qui ne connaitrait pas , il suffit de faire:

        ssh -X {utilisateur}@{hôte} à partir d'un serveur X pour récupérer sur celui-ci toutes les applications qu'ont lance sur le serveur distant

        et je crois même qu'on peut rajouter -c pour les radins de la bande passante :o).
      • [^] # Re: Je suis choqué !

        Posté par  (site web personnel) . Évalué à 1.

        Je connais très bien ce mode mais là n'est pas le problème (sauf pour le fait que du coup tu as une faille via pulseaudio comme le dit le journal d'à côté). Le vrai problème c'est que si tu lance synaptic, tu l'utiliser 1h max puis tu l'arrêtes et tu peux ainsi éteindre ton poste client. Si tu lance un virtualbox pour émuler un serveur, ton poste client devra rester allumer autant que le serveur mais surtout tu multiplie par 100 au moins le risque que ta vm plante misérablement parce que par exemple tu aurais eut un bug sur compiz qui aurait nécéssiter de redémarrer le serveur X de ta machine cliente.

        Dans ce cas tu es obliger de faire tourner la VM sur le serveur complètement parce que tu ne peux pas la mettre en tache de fond ! Du coup tu peux envisager les joie d'un beau serveur X sur ton serveur.
        • [^] # Re: Je suis choqué !

          Posté par  . Évalué à 2.

          Regarde la dernière ligne de mon commentaire, qui dit précisément que tu peux fermer l'appli graphique, la ou les VMs tournent dans un process à part, il y a des outils en ligne de commande pour gérer VirtualBox.

          D'ailleur tu peux le lire sur le site de Virtual box, c'est à la première ligne sur la première page:

          "VirtualBox has an extremely modular design with well-defined internal programming interfaces and a client/server design. This makes it easy to control it from several interfaces at once: for example, you can start a virtual machine in a typical virtual machine GUI and then control that machine from the command line, or possibly remotely."

          http://www.virtualbox.org/wiki/VirtualBox

          Bref, c'est fait pour ça. Et au passage ça n'implique pas non plus de d'installer pulseaudio, ou gnome (gimp tant qu'on y est?).
  • # Pas de chance

    Posté par  . Évalué à 2.

    J'ai installé du CentOS (clone redhat) et du DEBIAN sur ce genre de machine (DL380 G4) : aucun problème.
    En plus, je suis pas sur le même site que le serveur, je passe par une carte d'accès distant et j'ai pas d'accès internet à partir du serveur (dépôt de paquets local...). Mais ça ne pose pas de problème.

    Personnelement, UBUNTU serveur, je fait pas confiance, je préfère utilisé directement DEBIAN.Je trouve que cette distribution est beaucoup plus efficace pour faire un serveur...Bon, Ok, moi j'installe jamais d'interface graphique sur mes serveurs Linux, sauf si je veut bacler le travail!

    Pour ton problème de lecteur CD, t'as essayé d'utiliser la carte ILO? Tu connait SmartStart? Tu devrai essayer, y'a les drivers pour RedHat Server, pour DEBIAN dessus...

    T'as pas de RPM pour virtual Box? Sans blague?
    • [^] # Re: Pas de chance

      Posté par  . Évalué à 1.

      > T'as pas de RPM pour virtual Box? Sans blague?

      En même temps, je n'ai pas cherché. Ayant réussit à faire la maj du Firmware, je voulais retourner sur Ubuntu pour voir si le problème venait du Firmware.
      et :
      yum search VirtualBox m'a rien donné.
      yum search VMWare idem

      C'est con à dire mais tu installes une Ubuntu Serveur, tu l'as directement ta VirtualBox.
    • [^] # Re: Pas de chance

      Posté par  . Évalué à 3.

      >Pour ton problème de lecteur CD, t'as essayé d'utiliser la carte ILO? Tu connait SmartStart?
      >Tu devrai essayer, y'a les drivers pour RedHat Server, pour DEBIAN dessus...

      Je crois qu'il n'y a même pas d'extension propriétaire à télécharger la carte est supporté en natif dans les modules classiques du noyau via cciss.

      $ sudo lsmod
      Module Size Used by
      video 25360 0
      output 11008 1 video
      input_polldev 11784 0
      joydev 18368 0
      lp 17156 0
      ppdev 15492 0
      psmouse 61972 0
      serio_raw 13316 0
      pcspkr 10496 0
      scb2_flash 11532 0
      mtd 23048 1 scb2_flash
      chipreg 11012 1 scb2_flash
      map_funcs 9984 1 scb2_flash
      parport_pc 40356 1
      parport 42220 3 lp,ppdev,parport_pc
      sworks_agp 15520 0
      i2c_piix4 18576 0
      hpilo 16268 0
      agpgart 42696 1 sworks_agp
      cciss 92292 3
      tg3 131460 0
      floppy 64196 0
      fbcon 45856 0
      tileblit 10752 1 fbcon
      font 16384 1 fbcon
      bitblit 13696 1 fbcon
      softcursor 9984 1 bitblit
      • [^] # Re: Pas de chance

        Posté par  . Évalué à 2.

        Mouai, moi j'installe quand même les drivers HP, parce qu'on utilise le système de surveillance matériel (je ne me rappel plus le nom...) qui nécessite des drivers modifiés. En plus, si mes souvenirs sont exacte, le chipset graphique est un ATI/AMD.

        De plus, tu te prive de pas mal de fonctionnalité auxquelles tu as le droit vu que c'est compris dans l'achat du serveur... Je sais, c'est pas du 100% libre, mais bon, le but c'est que ça fonctionne.

        Sinon, pour ton paquet manquant, cherche un autre dépôts et ajoute le.
        • [^] # Re: Pas de chance

          Posté par  . Évalué à 3.

          Au sujet du drivers HP, je verrais si je les installe mais ce qui est sur et que çà ne corrigeait pas le problème que je rencontrais.
          La preuve, j'ai essayé le Linux spécialement fait par HP pour upgrader les firmwares et il plantait si j'activais la carte Smart Array.

          > Sinon, pour ton paquet manquant, cherche un autre dépôts et ajoute .
          Justement, c'est une volonté de ne pas installer de dépôts tiers.

          Sur Ubuntu, VirtualBox est dans universe. Si je souscris à une maintenance, VirtualBox en fera partie.
          Ce qui est aussi un gage de bonne maintenance des paquets même si je ne souscris pas à la maintenance.

          Si je prends une RedHat Enterprise un jour. çà ne sera pas pour faire du Virtual Box téléchargé de je ne sais où ou compilé par mes soins.

          Sinon autant prendre n'importe qu'elle distribution et tu recompiles tout où tu fais du LFS ou du Gentoo.

          Tu auras de meilleur performance et tu assumeras toutes les mises à jours à la main.

          Après c'est un choix. Personnellement, j'ai rien à prouver sur Linux, j'ai eu ma passe je fais tout moi même il y a prêt 10 ans maintenant.
          • [^] # Re: Pas de chance

            Posté par  . Évalué à 1.

            ...Je comprend ta réticence pour les sources, mais pour les dépôt de paquet debian, j'ai un peut plus de mal, surtout que les paquet VirtualBox y sont présent! Voir mieu, le dépot de sun (voir le lien en bas de page) pour les distributions basés sur debianJe ne me souvient pas avoir écrit quelque chose à propos de compilation...

            Je maintien qu'Ubuntu c'est bien (voir fabuleux :) ) pour faire des postes perso (ou même des postes bureautique pro), mais pas pour du serveur!

            De plus, si tu veux du support, RedHat ou Suse. Ces deux distributions professionnels sont reconnu dans le monde professionnel et le support des drivers linux HP est particulièrement bon.

            http://www.virtualbox.org/wiki/Linux_Downloads

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.