Ce chapitre décrit la configuration d'une zone marquée lx sur un système x64 ou x86. Le processus est similaire à la procédure de configuration d'une zone Solaris. Certaines propriétés sont inutiles pour configurer une zone marquée.
Avant de paramétrer le système en vue de l'utilisation de zones, vous devez recueillir des informations et prendre des décisions sur la manière dont vous allez les configurer. Vous trouverez, dans la liste ci-dessous, un résumé des tâches de planification et de configuration d'une zone lx.
Tâche |
Description |
Voir |
---|---|---|
Planifier la stratégie de la zone |
|
Reportez-vous aux sections Configuration système requise et espace requis et Pools de ressources utilisés dans les zones. |
Déterminer le nom et le chemin de la zone. |
Choisissez un nom de zone conforme aux conventions de dénomination. Il est recommandé d'utiliser un chemin correspondant à un emplacement d'un système de fichiers ZFS (Zetabyte File System). Lorsque l'emplacement zonepath source et l'emplacement zonepath cible résident sur ZFS et se trouvent dans le même pool, la commande zoneadm clone utilise automatiquement ZFS pour cloner la zone. |
Reportez-vous à la section Types de ressources et de propriétés et au Guide d’administration Oracle Solaris ZFS. |
Obtenir ou configurer les adresses IP de la zone |
Selon votre configuration, vous devez obtenir au moins une adresse IP pour chaque zone non globale que vous souhaitez doter d'un accès réseau. |
Reportez-vous à la section Détermination du nom d'hôte d'une zone et obtention de son adresse réseau et au Guide d’administration système : services IP. |
Déterminer si les systèmes de fichiers doivent être montés dans la zone |
Examinez les exigences applicatives. |
Pour plus d'informations, reportez-vous à la section Systèmes de fichiers montés dans une zone. |
Répertorier les interfaces réseau devant être disponibles dans la zone |
Examinez les exigences applicatives. |
Pour plus d'informations, reportez-vous à la section Interfaces réseau en mode IP partagé. |
Déterminer si le jeu de droits d'accès de la zone non globale par défaut doit être modifié |
Vérifiez le jeu de privilèges : jeu par défaut, privilèges pouvant être ajoutés et supprimés, et privilèges ne pouvant pas encore être utilisés. |
Reportez-vous aux sections Types de ressources et de propriétés et Privilèges dans une zone non globale. |
Configurer la zone |
Utilisez zonecfg pour créer une configuration pour la zone. |
Reportez-vous à la section Configuration, vérification et validation de la zone marquée lx. |
Vérifier et valider la zone configurée |
Déterminez si les ressources et les propriétés spécifiées sont valides sur un système hypothétique. |
Reportez-vous à la section Configuration, vérification et validation de la zone marquée lx. |
Utilisez la commande zonecfg, décrite dans la page de manuel zonecfg(1M), pour exécuter les actions suivantes :
créer la configuration de la zone concernée ;
vérifier que toutes les informations requises sont présentes ;
valider la configuration de la zone non globale.
Si vous savez que vous installerez des applications à l'aide de CD ou de DVD dans une zone marquée lx, utilisez add fs pour permettre d'accéder en lecture seule au CD ou DVD dans la zone globale lors de la configuration initiale de la zone marquée. Un CD ou DVD permet alors d'installer un produit dans la zone marquée.
Pour annuler le paramétrage d'une ressource pendant la configuration d'une zone à l'aide de l'utilitaire zonecfg, exécutez la commande revert. Reportez-vous à la section Rétablissement de la configuration d'une zone.
Pour savoir comment configurer plusieurs zones sur votre système à l'aide d'un script, consultez la section Script de configuration de plusieurs zones marquées lx.
Pour plus d'informations sur l'affichage de la configuration des zones marquées, reportez-vous à la section Affichage de la configuration d'une zone marquée.
Une fois la zone marquée configurée, il est conseillé de réaliser une copie de la configuration de la zone. Cette sauvegarde permet de restaurer la zone à l'avenir. En tant que superutilisateur ou administrateur principal, imprimez la configuration pour la zone lx-zone dans un fichier. Cet exemple utilise un fichier nommé lx-zone.config.
global# zonecfg -z lx-zone export > lx-zone.config |
Reportez-vous à la section Restauration d'une zone non globale pour de plus amples informations.
Vous ne pouvez pas utiliser les zones marquées lx sur un système Solaris de confiance pour lequel les étiquettes ne sont pas activées. La commande zoneadm ne vérifie pas la configuration.
Pour exécuter la procédure ci-dessous, vous devez être administrateur global.
Devenez superutilisateur ou assumez le rôle d'administrateur principal.
Pour savoir comment créer le rôle et l'assigner à un utilisateur, reportez-vous à la section Using the Solaris Management Tools With RBAC (Task Map) du System Administration Guide: Basic Administration.
Attribuez à la zone le nom que vous avez choisi.
Dans cet exemple, la zone est nommée lx-zone.
global# zonecfg -z lx-zone |
Si c'est la première fois que vous configurez cette zone, le message suivant s'affiche :
lx-zone: No such zone configured Use 'create' to begin configuring a new zone. |
Créez la nouvelle configuration de zone lx à l'aide du modèle SUNWlx.
zonecfg:lx-zone> create -t SUNWlx |
Vous pouvez également créer une zone vide et définir explicitement la marque :
zonecfg:lx-zone> create -b zonecfg:lx-zone> set brand=lx |
Définissez le chemin de la zone, ici /export/home/lx-zone.
zonecfg:lx-zone> set zonepath=/export/home/lx-zone |
Définissez la valeur d'initialisation automatique.
Si cette propriété est définie sur true, l'initialisation de la zone globale entraîne automatiquement celle de cette zone. Notez que les zones ne s'initialisent automatiquement que si le service svc:/system/zones:default est activé. La valeur par défaut est false.
zonecfg:lx-zone> set autoboot=true |
Définissez des arguments d'initialisation permanents pour la zone.
zonecfg:lx-zone> set bootargs="-i=altinit" |
Si les pools de ressources sont activés sur le système, associez un pool à une zone.
Cet exemple utilise le pool par défaut, soit pool_default.
zonecfg:lx-zone> set pool=pool_default |
Comme un pool de ressources peut présenter une assignation de classe de programmation facultative, il est possible d'utiliser les utilitaires de pools pour définir un ordonnanceur par défaut autre que celui qui est défini par défaut pour le système, pour une zone non globale. Pour obtenir les instructions applicables, reportez-vous aux sections Association d'un pool avec une classe de programmation et Création de la configuration.
Révisez le jeu de privilèges par défaut.
zonecfg:lx-zone> set limitpriv="default,proc_priocntl" |
Le privilège proc_priocntl permet d'exécuter des processus dans la classe temps réel.
Définissez cinq parts de CPU.
zonecfg:lx-zone> set cpu-shares=5 |
Ajoutez une limite de mémoire.
zonecfg:lx-zone> add capped-memory |
Définissez la limite de mémoire.
zonecfg:lx-zone:capped-memory> set physical=50m |
Définissez la limite de mémoire swap.
zonecfg:lx-zone:capped-memory> set swap=100m |
Définissez la limite de mémoire verrouillée.
zonecfg:lx-zone:capped-memory> set locked=30m |
Clôturez la spécification.
zonecfg:lx-zone:capped-memory> end |
Ajoutez un système de fichiers.
zonecfg:lx-zone> add fs |
Définissez le point de montage du système de fichiers, ici >/export/linux/local.
zonecfg:lx-zone:fs> set dir=/export/linux/local |
Spécifiez que /opt/local de la zone globale doit être monté comme /export/linux/local dans la zone en cours de configuration.
zonecfg:lx-zone:fs> set special=/opt/local |
Dans la zone non globale, le système de fichiers /export/linux/local sera accessible en lecture et en écriture.
Spécifiez le type de système de fichiers, ici lofs.
zonecfg:lx-zone:fs> set type=lofs |
Le type indique la manière dont le noyau dialogue avec le système de fichiers.
Clôturez la spécification du système de fichiers.
zonecfg:lx-zone:fs> end |
Cette étape peut être répétée pour ajouter plus d'un système de fichiers.
Ajoutez une interface réseau virtuelle.
zonecfg:lx-zone> add net |
Définissez l'adresse IP selon le format adresse ip de zone/masque de sous-réseau. Dans cette procédure, l'adresse IP est 10.6.10.233/24.
zonecfg:lx-zone:net> set address=10.6.10.233/24 |
Définissez le type de périphérique physique de l'interface réseau, ici le périphérique bge.
zonecfg:lx-zone:net> set physical=bge0 |
Clôturez la spécification.
zonecfg:lx-zone:net> end |
Cette étape peut être répétée pour ajouter plus d'une interface réseau.
Activez un périphérique audio présent dans la zone globale de cette zone à l'aide du type de ressource attr.
zonecfg:lx-zone> add attr |
Vérifiez la configuration de la zone.
zonecfg:lx-zone> verify |
Validez la configuration de la zone.
zonecfg:lx-zone> commit |
Quittez la commande zonecfg.
zonecfg:lx-zone> exit |
Notez que, même si vous ne répondez pas explicitement commit à l'invite, l'opération commit est automatiquement tentée lorsque vous tapez exit ou lorsqu'une condition EOF se produit.
La commande zonecfg prend également en charge des sous-commandes multiples, placées entre guillemets et séparées par des points-virgules, d'un même appel de shell.
global# zonecfg -z lx-zone "create -t SUNWlx; set zonepath=/export/home/lx-zone" |
Pour installer la configuration de la zone validée, reportez-vous à la section Installation et initialisation de zones marquées lx.
Ce script permet de configurer et d'initialiser plusieurs zones sur un système. Il regroupe les paramètres suivants :
le nombre de zones à créer ;
le préfixe de nom de zone ;
le répertoire à utiliser comme répertoire de base.
Vous devez être administrateur global de la zone globale pour pouvoir exécuter ce script. L'administrateur global possède des privilèges de superutilisateur dans la zone globale ou assume le rôle d'administrateur principal.
#!/bin/ksh # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # #ident "%Z%%M% %I% %E% SMI" if [[ -z "$1" || -z "$2" || -z "$3" || -z "$4" ]]; then echo "usage: $0 <#-of-zones> <zonename-prefix> <basedir> <template zone>" exit 2 fi if [[ ! -d $3 ]]; then echo "$3 is not a directory" exit 1 fi state=`zoneadm -z $4 list -p 2>/dev/null | cut -f 3 -d ":"` if [[ -z "$state" || $state != "installed" ]]; then echo "$4 must be an installed, halted zone" exit 1 fi template_zone=$4 nprocs=`psrinfo | wc -l` nzones=$1 prefix=$2 dir=$3 ip_addrs_per_if=`ndd /dev/ip ip_addrs_per_if` if [ $ip_addrs_per_if -lt $nzones ]; then echo "ndd parameter ip_addrs_per_if is too low ($ip_addrs_per_if)" echo "set it higher with 'ndd -set /dev/ip ip_addrs_per_if <num>" exit 1 fi i=1 while [ $i -le $nzones ]; do zoneadm -z $prefix$i clone $template_zone > /dev/null 2>&1 if [ $? != 0 ]; then echo configuring $prefix$i F=$dir/$prefix$i.config rm -f $F echo "create -t SUNWlx" > $F echo "set zonepath=$dir/$prefix$i" >> $F zonecfg -z $prefix$i -f $dir/$prefix$i.config 2>&1 | \ sed 's/^/ /g' else echo "skipping $prefix$i, already configured" fi i=`expr $i + 1` done i=1 while [ $i -le $nzones ]; do j=1 while [ $j -le $nprocs ]; do if [ $i -le $nzones ]; then if [ `zoneadm -z $prefix$i list -p | \ cut -d':' -f 3` != "configured" ]; then echo "skipping $prefix$i, already installed" else echo installing $prefix$i mkdir -pm 0700 $dir/$prefix$i chmod 700 $dir/$prefix$i zoneadm -z $prefix$i install -s -d /path/to/ISOs > /dev/null 2>&1 & sleep 1 # spread things out just a tad fi fi i=`expr $i + 1` j=`expr $j + 1` done wait done i=1 para=`expr $nprocs \* 2` while [ $i -le $nzones ]; do date j=1 while [ $j -le $para ]; do if [ $i -le $nzones ]; then echo booting $prefix$i zoneadm -z $prefix$i boot & fi j=`expr $j + 1` i=`expr $i + 1` done wait done |
Pour exécuter la procédure ci-dessous, vous devez être administrateur global.
Devenez superutilisateur ou assumez le rôle d'administrateur principal.
Pour savoir comment créer le rôle et l'assigner à un utilisateur, reportez-vous à la section Using the Solaris Management Tools With RBAC (Task Map) du System Administration Guide: Basic Administration.
Affichez la configuration de la zone.
global# zonecfg -z zonename info |
Les procédures de modification, rétablissement et suppression d'une configuration de zone sont décrites dans les sections ci-dessous.