Voici mon premier billet sur solaris. J’ai Ă©cris ceci pour dans le cadre du laboratoire linux de SUPINFO. C’est une explication de l’utilisation des zones dans le pour l’entreprise.

1. La virtualisation
La virtualisation serveur nâa rien de nouveau IBM le pratique depuis longtemps en mainframes avec VM/370 (1972). Mais ce nâest que plus rĂ©cemment avec lâexpansion de la Virtualisation pour serveur Intel x86 (Xen, OpenVZ, etc) que Sun Ă commencer avec Solaris 10 Ă mettre en avant ses solutions de Virtualisation. Dans ce document nous allons Ă©tudier la virtualisation nâont pas pour mettre en avant le principe de mettre plusieurs OS diffĂ©rent sur une OS hĂŽte comme ce que le grand publique a lâhabitude de faire mais plutĂŽt la consolidation.
2. Consolidation kesako ?
2.1. La consolidation : Faire plus avec moins.
Le principe de la consolidation est simple. Cela consiste Ă fusionner plusieurs processus hĂ©bergĂ© sur des serveurs diffĂ©rents sur un mĂȘme serveur tout en conservant la sĂ©curitĂ© et la rĂ©partition de charge des processus.

Un exemple :
Vous ĂȘtes lâadministrateur systĂšme dâun parc de 8 serveurs sous Solaris qui travail pour le mĂȘme projet en load balancing. Il y 4 serveurs web, 3 serveur de BDD et 1 serveur mail. Tous ces serveurs ne sont pas exploiter aux mieux de leurs performance du fait de lâimpossibilitĂ© de rĂ©partir la charge CPU entre eux selon le besoin. De surcroit la quantitĂ© de travail pour administrer les 8 serveurs lors des mises Ă jour ou du contrĂŽle des logs est longue et fastidieuse.
Solution : La consolidation, vous regrouper ces processus sur le mĂȘme serveur et vous partager aussi bien le CPU, la RAM et lâespace disque entre les serveurs, vous amĂ©liorer ainsi les performances, rĂ©duisez le temps de maintenance et les couts. Conteneur Solaris : Les Zones
Alors pour ceux qui ne lisent pas entre les lignes voici les 3 principaux intĂ©rĂȘts de la consolidation :
- La Continuité de service avec la migration des zones. Reprise en cas de panne en relançant la zone préalablement sauvegardé sur un autre serveur Solaris sans avoir besoin de la réinstaller.
- Performance. Optimisation de la ressource des serveurs. En permettant de pouvoir utiliser un plus grand nombre dâapplication sur le mĂȘme serveur les ressources ne soient pas gaspillĂ©es.
- Cout. En rĂ©duisant le nombre de serveur, cela rĂ©duit par la mĂȘme lâespace physique occupĂ© dans le datacenter, les frais de gestion, lâĂ©nergie consommĂ© par le serveur et par le systĂšme de refroidissement (50% du cout dâun serveur).
2.3. Les autres produits de consolidation



Alors comme je lâĂ©crivais plus haut Sun nâa pas inventĂ© le principe de consolidation. Voici les autres
principales solutions de consolidation.
- Xen pour plateforme x86, x64, IA-64, PowerPC et SPARC. Les OS supporté sont : Linux, FreeBSD, NetBSD, Plan 9, Gnu Hurd.
- Les solutions de IBM z/VM.
- Virtuozzo (OpenVZ) qui sâinspire des Conteneurs solaris
3. La virtualisation chez Solaris : les Zones et les Containers
Maintenant que lâintĂ©rĂȘt de la consolidation est clarifiĂ© attaquons nous Ă sa mise en place pour Solaris 10. Une machine virtuelle chez Solaris sâappel une Zone (elle peut aussi etre appeler Container).

3.1. Définition des Zones et des Containers
Un « Solaris Containers » est une application de Virtualisation intĂ©grĂ© directement au systĂšme dâexploitation qui est apparut pour la premiĂšres fois dans Solaris 10 en 2007.Il permet de contrĂŽler et dâallouer les ressources aux diffĂ©rente Zones Ă partir du systĂšme hĂŽte.
Une « Solaris Zones » permet de virtualiser un SystĂšme dâexploitation en lâisolant et le sĂ©curisant du
reste du systÚme. Une application fonctionnant dans une zone est donc isolé des autres applications
ce qui la protĂšges de failles ou de crash dâune application sur une autres. Une zone fournis un niveau dâabstraction pour lâOS virtualisĂ© ce qui permet de sĂ©parer de lâaccĂšs direct a la couche matĂ©riel de la machine.
La limite thĂ©orique du nombre maximum de Zone est de 8192 mais en pratique elle dĂ©pend de la quantitĂ© de ressource hardware requise par les applications comparativement Ă la quantitĂ© hardware disponible. C’est-Ă -dire le nombre de processeur, mĂ©moire vive, carte rĂ©seau, disque dur etc.
Mais est ce que cela consomme plus de ressource ?
OpenSolaris fournis un exemple dâun cas dâutilisation dâun environnement en production web. Sur un vieux Sun Entreprise 250 Server (2 CPU 300Mhz, 512 MB RAM, 3 HDD en RAID de 40 GB) il y a 40 zones dâinstallĂ©e et chacune des zones contient 5 service web Apache. En exĂ©cutant des requĂȘtes http sur les serveurs apache les couts en ressource systĂšme de la gestion des zones est si faible quâils ne sont pas mesurable (moins de 5%).
4. Les différents types de Zones
Il existe 2 type de Zone : La Zone Globale qui est lâinstance de Solaris 10 de la machine hĂŽte qui se lance lors du boot et les Zones non-globale qui sont les machine virtualisĂ© hĂ©berger dans la Zone Globale.
4.1. La zone Globale
Pour alléger la quantité de ressources nécessaire les applications coexistent dans la Zone Globale. Les Zones non-globale pourront donc faire appel directement à ses applications sans avoir forcement besoin de les installer (nous y reviendront).
Tous systĂšmes Solaris 10 contiennent donc une Zone Globale. Cette zone globale a 2 fonctions : une pour le crĂ©er la couche dâinteraction dâabstraction systĂšme et lâautre pour le contrĂŽler et lâautre pour gĂ©rer les zones non-globale. Les processus et application fonctionnent donc dans la zone globale si aucune zone non-globale nâa Ă©tĂ© créée.
La zone globale est la seule zone oĂč les zones non-globale peuvent ĂȘtre configurĂ©es, installĂ©es, gĂ©rĂ©es et dĂ©sinstallĂ©es. Seul la zone globale est dĂ©marrable Ă partir du hardware du serveur.
Lâadministration de lâarchitecture systĂšme tel que la gestion pĂ©riphĂ©rique, du routage des IP partagĂ©,
de la reconfiguration dynamique est possible seulement dans la zone globale.
Il y a 2 façons de configurer les adresses IP, soit en allouant une IP exclusive pour une zone soit en IP
partager entre plusieurs zones.
4.2. Les zones Non-Globale
Si les paramĂštres par dĂ©faut sont sĂ©lectionnĂ©s, chaque Zone non-globale aura besoin dâau minimum 85MB dâespace disque libre pour sâinstaller si la zone globale a Ă©tĂ© installĂ©e avec tout les Metacluster des paquets Solaris. Tout nouveau paquet installer dans la zone globale demandera de lâespace disque pour les zones non-global. La quantitĂ© de mĂ©moire vive minimum par zone est quand a elle de 40MB.
Il existe deux types de model de fichier systÚme de zone non-globale: Les « wholes root » et les « sparse ». Le modÚle « whole root » permet une configuration avec plus de paramÚtre alors que le modÚle « wholes root » donne de meilleure performance.
Une zone installer avec le model « full-root » demandera dans les 500MB dâespace disque libre. Chaque zone, en incluant la zone globale se voit attribuer un nom de zone. La zone globale Ă toujours le nom globale. Chaque zone a un numĂ©ro dâidentification unique attribuĂ© par le systĂšme quand la zone est dĂ©marrĂ©e. La zone globale a toujours le numĂ©ro dâidentification 0. Le nom de la zone ainsi que son id sont configurable avec la commande « zonecfg ». Chaque zone a un nom de nĆud qui est indĂ©pendant du nom de zone. Le nom de nĆud est attribuĂ© par lâadministrateur de la zone. Chaque zone dispose dâun chemin dâaccĂšs a son rĂ©pertoire racine qui est relatif au rĂ©pertoire racine de la zone globale.
4.3. Les différents types de zone Non-Globale
4.3.1. Les Zones Native
Par dĂ©faut une Zone non-globales et une Zone Native. Une Zone Native est une zone ayant les mĂȘmes propriĂ©tĂ©s que le systĂšme dâexploitation (Solaris 10) en cours dâexĂ©cution sur la zone Globale.
Si le systĂšme dâexploitation hĂŽte est configurĂ© avec les Solaris Trusted Extensions chaque Zone non-globales sera associĂ©e avec le mĂȘme niveau de sĂ©curitĂ© ou label.
4.3.2. Les Branded Zones
Dans une Zone non-globales il est Ă©galement possible de lancer un autre environnement dâexploitation que Solaris 10. Les Zones marquĂ© (Branded Zones) permettent dâĂ©largir la possibilitĂ© de crĂ©ation dâarchitecture de Zones diffĂ©rente Ă travers des framework ou des OS diffĂ©rente.
Il existe pour lâinstant 2 types de Zone Branded supportĂ© :
- Lx branded (une Zone linux) est une Zone Non-globale qui permet dâutilisĂ© les applications dĂ©veloppĂ©s pour Linux dans un environnement linux complet. Lx branded nâest toutefois pas une distribution Linux Ă part entiĂšre.
- Solaris 8 Branded permet de migrer un environnement sous Solaris 8 dans une Zone Solaris 8 fonctionnant sur un serveur hĂŽte (Zone Globale) en Solaris 10.
4.4. Droit et privilĂšges
Un administrateur global a les droits super utilisateur ou rĂŽle dâadministrateur Primaire. Lorsque lâadministrateur global est connectĂ© Ă la zone globale il peut surveiller et contrĂŽler lâensemble du systĂšme.
Une zone non-globale peut ĂȘtre administrĂ©e par un « administrateur de zone ». Lâadministrateur global assigne le profil « dâadministrateur de zone » dans lâinterface de Management de Profile de zone. Les privilĂšges dâadministrateur de zone sont confinĂ© a une zone non-globale.
4.5. Récapitulatif
Zone Globale :
- ID 0 attribué par le systÚme.
- Fournit la seule instance du noyau Solaris qui est bootable et fonctionnant sur le systĂšme.
- Contiens une installation complĂšte du SystĂšme dâexploitation Solaris.
- Peut contenir d’autres logiciels, des rĂ©pertoires, des fichiers et d’autres donnĂ©es qui ne sont pas installĂ©s par le biais de paquets.
- Fournit une base de données produit complÚte sur tous composants logiciels installés dans la zone globale.
- Contient les informations de configuration uniquement de la zone globale, comme le nom dâhĂŽte de la zone globale, ou le systĂšme de fichier.
- Est la seule zone qui connait tous composants ou systĂšme de fichier.
- Est la seule zone qui connait lâexistence des zones non-globales et leur configuration.
- Est la seule a partir de laquelle une zone non-globale peut ĂȘtre configurĂ©, installĂ©, gĂ©rĂ© ou dĂ©sinstallĂ©.
Zone Non-Globale :
- ID attribué par le systÚme lors du démarrage de la zone.
- Opération partagé sous le kernel démarré dans la zone globale.
- Contient un sous-ensemble de lâinstallation complĂšte des paquets de lâOS Solaris.
- Contient des paquets partagés avec la zone globale.
- Peut contenir des paquets logiciels non partagĂ© depuis la zone globale. âą Peut contenir d’autres logiciels, des rĂ©pertoires, des fichiers et d’autres donnĂ©es qui ne sont pas installĂ©s par le biais de paquets ou partager depuis de la zone globale.
- Fournit une base de donnĂ©es produit complĂšte sur tous composants logiciels installĂ©s dans la zone, quâils soient prĂ©sent dans la zone non-globale ou partager en lecture seule depuis la zone globale.
- Nâest pas conscient de lâexiste dâautre zone.
- Ne peux pas configurer, installĂ©, gĂ©rĂ© ou dĂ©sinstallĂ© dâautres zone, mĂȘme elle-mĂȘme.
- Contient les uniquement les informations de configuration de la zone non-globale, comme le nom dâhĂŽte de la zone non-globale, ou le systĂšme de fichier.
- Peut avoir sa propre configuration du fuseau horaire.
Jâaime ça :
Jâaime chargement…