Maniatux's Blog

Welcome to the internet

Linux

Proxmox Virtual Environment 2.0

Rédigé par Xavier - - Aucun commentaire

Proxmox VE - Virtual Environment - est une solution de virtualisation bare metal orientée entreprise prête à l'emploi, basée sur l'hyperviseur Linux-KVM et les containers OpenVZ. Sa particularité est de proposer une console graphique en web pour administrer le tout. La version 2 est actuellement en beta, mais sa sortie finale est prévue d'ici le mois de Mars (2012 Q1 d'après la roadmap).

Caractéristiques

L'entreprise Proxmox qui développe Proxmox VE met son produit à disposition gratuitement sous licence libre. Parallèlement à cela ils proposent du support payant (forums, assistance, requêtes aux développeurs...) et une solution de sécurisation de messagerie (mail gateway) payante, même si il existe une version free avec moins de fonctionnalités.

Proxmox VE permet de faire simplement un cluster avec plusieurs serveurs physiques, et depuis la version 2.0 la HA, High Availability (haute disponibilité) est possible. Il est donc envisageable d'assurer la continuité de service même en cas de panne matérielle. L'entreprise Proxmox dispose de certifications avec plusieurs constructeurs (la liste est visible dans leurs brochures commerciales).

Proxmox VE se base sur Debian 6.0 Squeeze amd64, avec un kernel "based on RHEL6x" et lui ajoute un dépôt permettant d'avoir l'interface web de configuration mais aussi une version de qemu à jour. Le fonctionnement en cluster fait appel au système de fichiers pmxcfs (Proxmox Cluster file system).

Installation

Vous devez commencer par télécharger l'ISO d'installation à cette adresse. Le processus est simple et ne demande que d'entrer un mot de passe root et de spécifier une adresse IP fixe. Le disque dur entier est automatiquement utilisé et formaté pour recevoir Proxmox. Après avoir démarré le système, vous pouvez lancer une mise à jour pour être certain d'avoir les dernières versions des composants. Vous pouvez le faire sur la machine même, ou par accès SSH de la manière suivante :

# apt-get update
# apt-get dist-upgrade

Découverte de l'interface

L'adresse IP de votre serveur Proxmox s'affiche lorsque celui-ci a fini de booter. Il y a également l'adresse de l'interface d'administration, elle est de la forme https et contient le FQDN ou l'adresse IP suivie du port 8006. Par exemple : https://10.40.1.17:8006

Cette vue affiche les principales informations de votre infrastructure : serveurs, authentification, configuration. Tout comme sur vSphere, le cadre du bas affiche les logs à la volée ce qui vous permet de connaître précisément les résultats de vos opérations sur l'hyperviseur. Dans le menu "storage" (stockage) vous pouvez voir vos différents périphériques : disque local, partage NFS, iSCSI. Stocker ses VM sur un support réseau permet de mettre en place la High Availability. La liste des serveurs à gauche permet d'accéder à une configuration individuelle : paramètres IP, nom d'hôte, etc.

Pour découvrir l'interface plus en détail et apprendre à mettre en place une machine virtuelle, Proxmox a créé une chaîne Youtube avec des tutoriels video. Voir les vidéos.

Virtualisation KVM vs container OpenVZ

Pour connaître le fonctionnement théorique de la virtualisation et des containers, je vous renvoie à cet ancien article dans lequel j'explique les différences entre les deux à l'aide de schémas.

OpenVZ est la solution la plus performante, puisqu'il n'y a aucune couche d'émulation et un seul kernel pour tous les systèmes invités. Il n'y a en pratique aucune perte de performance ou elle s'élève à seulement 2 ou 3%. Il faut cependant que le système invité soit de type Linux, puisqu'il sera dépourvu de kernel et utilisera celui de l'hôte. Pour cela, Proxmox VE utilise des templates (modèles). Il y a par exemple un template pour Debian Squeeze, qui va juste demander à l'utilisateur d'entrer un mot de passe root, les paramètres IP et l'installation se fera ensuite automatiquement. Le boot est presque instantané.

KVM va au contraire émuler un ordinateur complet afin de rendre le système indépendant de l'hôte. Cette virtualisation est assurée par le processeur de l'hôte (grâce aux instructions Intel VT-x ou AMD-V) et par Qemu pour la création des périphériques complémentaires. Il est ainsi possible d'installer des systèmes non modifiés tels que Windows, et d'utiliser des périphériques VirtIO (qui ne sont pas réellement émulés mais partagés avec l'hôte). Par contre SPICE, solution de virtualisation desktop développée par RedHat, ne semble pas encore disponible mais prévu.

Installation d'un Windows Server 2008 virtualisé

Je dispose d'un exemplaire de Windows Server 2008 en image iso (msdnaa). La première chose à faire est de l'envoyer sur le serveur. Pour cela, cliquez sur l'espace de stockage de votre choix dans la colonne de gauche. Dans l'onglet "content" vous verrez un bouton upload vous permettant d'envoyer votre iso. Il est aussi possible de le faire par SSH. Voir le tutoriel vidéo.

L'étape suivante consiste à créer une nouvelle machine virtuelle et à entrer les paramètres adéquats. Il est judicieux de sélectionner VirtIO pour le stockage et la carte réseau. Vous aurez cependant besoin de récupérer le CDROM de pilotes pour Windows. Vous pouvez suivre le tutoriel vidéo à cette adresse.

Attention, pour que la console fonctionne, vous devez avoir le plugin Java installé dans votre navigateur.

Une fois Windows 2008 installé, vous devrez aller dans le gestionnaire de périphérique pour installer les pilotes de la carte réseau (ils sont sur le CDROM VirtIO). Votre serveur virtualisé est maintenant prêt à l'emploi !

Conclusion

KVM, Linux, OpenVZ, sont des produits libres très puissants que l'on apprécie de voir fonctionner ensemble une fois leur configuration réalisée. Proxmox VE fournit un système où tout est déjà intégré, prêt à l'emploi. L'interface de configuration rend accessible à tous les administrateurs la mise en place de cluster de virtualisation, et rend ainsi cette solution compétitive avec celles du monde propriétaire.

Alors que Virt-Manager, développé par RedHat, est limité à Linux et tend à crasher très souvent, l'interface Web de Proxmox est universelle, stable, et bien plus complète.

Proxmox VE 2.0 est très bon !

Mettre Fedora en français proprement

Rédigé par Xavier - - Aucun commentaire

Encore un article pense-bête pour moi, qui décrit une méthode rapide et propre pour passer Fedora en français. En effet, à l'époque de la version Gnome 2 il suffisait de sélectionner la langue sur l'écran de login GDM. Mais sur la version KDE cette option n'y est pas et je n'ai pas trouvé comment faire.

# system-config-language

Cela va afficher un assistant graphique vous permettant de sélectionner la langue à utiliser pour le système. Le téléchargement des paquets manquants est automatique. C'est effectif sur tout le système, de KDE à nano en passant par Firefox. C'est donc la solution propre à utiliser.

Pilotes VirtIO Windows (CDROM et Floppydisk)

Rédigé par Xavier - - Aucun commentaire

Un petit lien vers un serveur du projet Fedora proposant des pilotes VirtIO pour Windows (réseau et stockage). Ils sont disponibles en 32 et 64 bits, pour XP / 2003 / Vista / 2008 / Seven et ils sont signés. Cliquez sur le dossier ci-dessous :

Le fichier vfd peut être monté sur un lecteur de disquette (émulé) dans la VM, afin de charger les pilotes du périphérique de stockage VirtIO et de pouvoir ainsi installer Windows. Pour XP/2003 il faut faire F6 dès le début, tandis que Vista/2008/Seven il y a une option "charger un pilote" dans l'outil de partitionnement. Le fichier iso contient les pilotes réseau (netkvm), stockage (viostor), balloon, vioser, qui peuvent être installés bien plus tard.

Cet article me sert de marque-page car j'ai souvent besoin de ces pilotes et je ne les retrouve plus. Il semble que la disquette et l'iso permettent aussi d'automatiser l'installation de guest Windows, chose sur laquelle je reviendrais plus tard.

Debian 6 et CentOS 6 en utilisation Desktop

Rédigé par Xavier - - Aucun commentaire

Il y a quelques temps je me faisais la réflexion suivante : quelle distribution Linux installer à un client ? J'avais exclu ubuntu pour plusieurs raisons qui sont loin d'avoir un rapport avec Unity mais plutôt avec la stabilité et les changements d'interface à chaque version. J'avais retenu Debian et CentOS. Je me suis donc plongé dedans quelques jours afin de valider ou non ces solutions.

Debian 6

Je ne me suis pas cassé la tête et ait demandé à l'installeur un environnement graphique. C'est donc un bureau Gnome 2 avec la décoration Squeeze qui est fourni, assez réactif et léger par défaut. Les logiciels fournis sont très stables quoi qu'un peu anciens, par exemple Iceweasel bloqué en version 3.5.x (heureusement il existe une astuce).

Mais le gros point noir, celui qui m'a totalement rebuté de ce système, c'est la gestion des dépendances par apt-get. Tout d'abord, la suppression de la suite openoffice.org requiert l'installation d'abiword et gnumeric. Pourquoi ? Aucune idée. Ensuite la suppression de transmission (client bittorrent) provoque la désinstallation du méta-paquet Gnome. Jusque là rien d'anormal, sauf qu'en conséquence toutes les dépendances de Gnome sont alors marquées en auto-remove. Cette fonction est donc inutilisable sinon on fait sauter son environnement graphique. Quant à la version KDE ce n'est pas mieux, je ne comprends toujours pas pourquoi les Google Gadgets sont installés même si on demande la version core (minimale).

On m'a souvent dit en réponse à ce problème qu'il fallait installer l'environnement en mode texte puis ajouter à la main tous les paquets. Pourquoi pas, surtout que sur Debian c'est bien plus rapide et facile que Archlinux, notamment parce qu'il n'y a pas besoin de mettre les mains dans les fichiers de configuration. Donc dans une optique de déploiement auprès du grand public, on peut imaginer réaliser une installation pas à pas puis créer un master avec PING ou CloneZilla. Mais dans l'absolu apt-get et sa gestion des dépendances m'a paru être un véritable enfer.

CentOS 6

Ce qui m'a supris dans CentOS 6, ce sont les versions très anciennes des logiciels. Gnome 2.28 par exemple, ce qui nous ramène quand même à l'époque de Ubuntu 9.10 et KDE4.3. Et oui, plus vieux encore que Debian, ce n'est pas rien. Firefox 3.5.x également.

Les dépôts logiciels sont vraiment vides, il n'y a rien, pas le moindre codec, pas de vlc, même pas htop. Une solution consiste à ajouter le dépôt RPMForge. Il contient même le flashplayer officiel. N'essayez pas les RPMFusion, ils sont pour Fedora, et bien qu'ils soient marqués compatibles RHEL/CentOS6, il n'y a rien.

A l'utilisation, CentOS 6 se révèle assez plaisante, performante, et je n'ai pas eu de soucis majeurs. Encore une fois c'est la solution que je valide pour l'installation chez des utilisateurs novices.

Classé dans : Linux - Mots clés : aucun

Bug souris Saitek R.A.T.7 sur Linux

Rédigé par Xavier - - Aucun commentaire

Il y a quelques temps j'ai acheté une souris Saitek R.A.T.7, celle qui est entièrement modulable et ressemble à un avion de chasse. Je l'ai utilisé exclusivement sur Windows jusqu'ici, pour jouer, mais il se trouve que depuis peu je l'essaie sur Linux.

Ça a commencé sur openSUSE, où j'ai eu d'énormes bugs avec. Impossible de saisir les fenêtres pour les déplacer, impossible d'en sélectionner une en arrière plan, clics qui ne marchent pas 9 fois sur 10, un vrai calvaire. J'ai tout d'abord cru à un problème avec openSUSE, ou avec ma carte graphique AMD HD5850 (peut être pas encore correctement supportée par le pilote libre radeon). Finalement c'est en ayant le même problème sur une autre machine, mon laptop, que j'ai commencé à faire le rapprochement. En cherchant un peu sur le web j'ai eu confirmation qu'il y a bien des soucis avec cette souris.

Bref voici donc la manipulation à faire pour le corriger. Il faut éditer ou créer le fichier xorg.conf de la façon suivante :

Section "InputClass"
        Identifier "Mouse Remap"
        MatchProduct "Saitek Cyborg R.A.T.7 Mouse"
        MatchDevicePath "/dev/input/event*"
        Option "ButtonMapping" "1 2 3 4 5 6 7 2 9 10 11 12 0 0 0"
EndSection

Relancez Xorg ou le système, cela devrait corriger le problème.