Ignorer les liens de navigation | |
Quitter l'aperu | |
Administration d'Oracle Solaris 11.1 : Oracle Solaris Zones, Oracle Solaris 10 Zones et gestion des ressources Oracle Solaris 11.1 Information Library (Français) |
Partie I Gestion des ressources Oracle Solaris
1. Introduction à la gestion des ressources
2. Projets et tâches (présentation)
3. Administration des projets et des tâches
4. Comptabilisation étendue (présentation)
5. Administration de la comptabilisation étendue (tâches)
6. Contrôles de ressources (présentation)
7. Administration des contrôles des ressources (tâches)
8. Ordonnanceur FSS (présentation)
9. Administration de l'ordonnanceur FSS (tâches)
10. Contrôle de la mémoire physique à l'aide du démon de limitation des ressources (présentation)
11. Administration du démon de limitation des ressources (tâches)
12. Pools de ressources (présentation)
13. Création et administration des pools de ressources (tâches)
14. Exemple de configuration de la gestion des ressources
Partie II Oracle Solaris Zones
15. Introduction à Oracle Solaris Zones
16. Configuration des zones non globales (présentation)
A propos des ressources dans les zones
Utilisation des profils de droits et des rôles dans l'administration de zone
Configuration avant installation
Initialisation automatique (autoboot) d'une zone
Propriété file-mac-profile pour une zone avec root en lecture seule
Contrôle de la mémoire physique et ressource capped-memory
Ajout d'une ressource zpool automatiquement
A propos des liaisons de données
Zones non globales en mode IP partagé
Zones non globales en mode IP exclusif
Prise en charge RDS (Reliable Datagram Sockets) dans les zones non globales
Différences entre les zones non globales en modes IP partagé et IP exclusif en matière de sécurité
Utilisation simultanée de zones non globales en modes IP partagé et IP exclusif
Systèmes de fichiers montés dans une zone
Montages et mise à jour du système de fichiers
Système de fichiers /dev dans les zones non globales
Périphérique lofi amovible dans les zones non globales
Prise en charge des formats de disque dans les zones non globales
Association de pools de ressources
Paramétrage des contrôles de ressources à l'échelle de la zone
Utilisation de la commande zonecfg
Mode d'exécution interactif de zonecfg
Mode d'exécution fichier de commandes de zonecfg
Données de configuration de zones
Types de ressources et propriétés
Propriétés des types de ressources
Exemple de configurations de zone
Bibliothèque d'édition de ligne de commande Tecla
17. Planification et configuration de zones non globales (tâches)
20. Connexion à une zone non globale (présentation)
21. Connexion à une zone non globale (tâches)
22. A propos des migrations de zones et de l'outil zonep2vchk
23. Migration de systèmes Oracle Solaris et migration de zones non globales (tâches)
25. Administration d'Oracle Solaris Zones (présentation)
26. Administration d'Oracle Solaris Zones (tâches)
27. Configuration et administration de zones immuables
28. Dépannage des problèmes liés à Oracle Solaris Zones
Partie III Oracle Solaris 10 Zones
29. Introduction à Oracle Solaris 10 Zones
30. Evaluation d'un système Oracle Solaris 10 et création d'une archive
32. Configuration de la zone marquée solaris10
33. Installation de la zone marquée solaris10
34. Initialisation d'une zone, connexion et migration de zone
Cette section porte sur les composants de zones, requis et optionnels, susceptibles d'être configurés. Seuls le nom et le chemin de la zone sont requis. Vous trouverez de plus amples informations dans la section Données de configuration de zones.
Vous devez nommer la zone et choisir le chemin qui permettra d'y accéder. La zone doit résider sur un jeu de données ZFS. Le jeu de données ZFS est automatiquement créé lorsque la zone est installée ou jointe. Si un jeu de données ZFS ne peut pas être créé, l'installation ou la jonction de la zone est impossible. Notez que le répertoire parent du chemin de la zone doit également être un jeu de données.
Le réglage de la propriété autoboot détermine si la zone est automatiquement initialisée lorsque la zone globale est initialisée. Le service des zones, svc:/system/zones:default doit également être activé.
Dans les zones solaris, la propriété file-mac-profile permet de configurer des zones avec des roots en lecture seule.
Pour plus d'informations, reportez-vous au Chapitre 27, Configuration et administration de zones immuables.
Le réglage admin vous permet de définir l'autorisation d'administration de la zone. La meilleure méthode pour définir les autorisations consiste à utiliser la commande zonecfg .
Spécifiez le nom d'utilisateur.
Spécifiez les autorisations du nom d'utilisateur.
Si le RBAC est en cours d'utilisation, l'autorisation solaris.zone.login/ zonename est requise pour les connexions interactives. L'authentification par mot de passe s'effectue dans la zone.
Si RBAC est en cours d'utilisation, pour les connexions non interactives ou pour contourner l'authentification par mot de passe, l'autorisation solaris.zone.manage/ zonename est requise.
Si RBAC est en cours d'utilisation, les sous-commandes qui créent une copie d'une autre zone exigent l'autorisation solaris.zone.clonefrom/ source_zone.
La ressource dedicated-cpu spécifie qu'un sous-ensemble des processeurs du système doit être dédié à une zone non globale tant que celle-ci est en cours d'exécution. Dès que la zone est initialisée, le système crée de manière dynamique un pool temporaire destiné à être utilisé lorsque la zone est en cours d'exécution.
Vous pouvez propager les paramètres du pool pendant les migrations en les spécifiant dans la commande zonecfg.
La ressource dedicated-cpu définit les limites de ncpus et éventuellement d'importance.
Spécifie le nombre de CPU ou une plage de CPU (par exemple 2–4). Si vous optez pour une plage de CPU parce que vous souhaitez que le pool de ressources se comporte de manière dynamique, vous devez également :
Définir la propriété importance
Activer le service poold. Pour plus d'informations, reportez-vous à la section Activation du service de pools de ressources dynamiques à l'aide de svcadm.
Si, pour un plus grand dynamisme du pool de ressources, vous avez choisi d'utiliser une plage de CPU, définissez également la propriété importance. La propriété importance détermine l'importance relative du pool mais est optionnelle. Elle n'est nécessaire que si vous spécifiez une plage pour ncpus et utilisez des pools de ressources dynamiques gérés par poold. Si poold n'est pas en cours d'exécution, la propriété importance est ignorée. Si poold est en cours d'exécution et si la propriété importance n'a pas été définie, importance adopte par défaut la valeur 1. Pour plus d'informations, reportez-vous à la section Contrainte de propriété pool.importance.
Remarque - Les ressources capped-cpu et dedicated-cpu sont incompatibles. L'instance de contrôle de ressource cpu-shares et la ressource dedicated-cpu sont incompatibles.
La ressource capped-cpu définit une limite absolue très précise de la quantité de ressources CPU qu'un projet ou une zone peut consommer. Associée aux jeux de processeurs, la capacité de CPU limite l'utilisation de ressources CPU au sein d'un jeu. La ressource capped-cpu possède une seule propriété ncpus, dont la valeur est un nombre décimal positif avec deux chiffres après la virgule. Cette propriété correspond aux unités de CPU. Cette ressource n'accepte pas de plage, mais elle accepte les nombres décimaux. Lorsque vous spécifiez la propriété ncpus, notez que la valeur 1 correspond à 100 pourcent d'une CPU. Ainsi, la valeur 1,25 équivaut à 125 pourcent, car 100 pourcent correspond à une CPU complète sur le système.
Remarque - Les ressources capped-cpu et dedicated-cpu sont incompatibles.
Vous pouvez utiliser l'ordonnanceur équitable (FSS, Fair Share Scheduler) pour contrôler l'allocation des ressources CPU disponibles aux différentes zones en fonction de leur importance. Celle-ci se reflète dans le nombre de parts de ressources CPU que vous assignez à chaque zone. Même si vous n'utilisez pas FSS pour gérer l'allocation de ressources CPU aux zones, vous pouvez définir la classe de programmation des zones pour utiliser FSS de manière à pouvoir assigner des parts aux projets au sein des zones.
Lorsque vous définissez explicitement la propriété cpu-shares, l'ordonnanceur équitable sert de classe de programmation pour la zone concernée. Dans ce cas, il est cependant préférable de définir FSS comme classe de programmation par défaut du système à l'aide de la commande dispadmin. Toutes les zones disposent ainsi d'une part équitable des ressources CPU du système. Toute zone pour laquelle la propriété cpu-shares n'est pas définie utilise la classe de programmation par défaut du système. Pour définir la classe de programmation d'une zone, vous pouvez procéder de différentes façons :
Vous pouvez utiliser la propriété scheduling-class de zonecfg.
Vous pouvez avoir recours à l'utilitaire de pools de ressources. Si la zone est associée à un pool dont la propriété pool.scheduler est définie sur une classe de programmation valide, les processus exécutés dans cette zone le sont dans cette classe de programmation par défaut. Reportez-vous aux sections Introduction aux pools de ressources et Association d'un pool avec une classe de programmation.
Si l'instance de contrôle de ressource cpu-shares est définie et si vous n'avez pas défini FSS comme la classe de programmation pour la zone, zoneadmd s'en charge lors de l'initialisation de celle-ci.
Si la classe de programmation n'est pas définie par toute autre action, la zone hérite de la classe de programmation par défaut du système.
Notez que vous pouvez utiliser la commande priocntl décrite dans la page de manuel priocntl(1) pour placer les processus en cours d'exécution dans une autre classe de programmation sans modifier la classe de programmation par défaut et sans réinitialiser.
La ressource capped-memory définit les limites des propriétés physical, swap et locked de la mémoire. Chaque limite est optionnelle, mais vous devez en définir au moins une. Pour utiliser la ressource capped-memory, le package resource-cap doit être installé dans la zone globale.
Déterminez les valeurs pour cette ressource si vous prévoyez de limiter la mémoire de la zone à l'aide de rcapd dans la zone globale. La propriété physical de la ressource capped-memory est utilisée par rcapd comme valeur max-rss pour la zone.
La propriété swap de la ressource capped-memory permet de définir le contrôle de ressource zone.max-swap.
La propriété locked de la ressource capped-memory permet de définir le contrôle de ressource zone.max-locked-memory.
Remarque - Généralement, les applications ne bloquent pas une quantité importante de mémoire, mais vous pouvez décider de définir un verrouillage de mémoire si les applications de la zone sont susceptibles de bloquer de la mémoire. Si la confiance de la zone est un problème, vous pouvez définir la limite de mémoire verrouillée à 10 % de la mémoire physique du système, ou 10 % de la limite de mémoire physique de la zone.
Pour plus d'informations, reportez-vous au Chapitre 10, Contrôle de la mémoire physique à l'aide du démon de limitation des ressources (présentation), au Chapitre 11, Administration du démon de limitation des ressources (tâches) et à la section Configuration d'une zone. Pour définir temporairement une limitation de ressources pour une zone, reportez-vous à la section Spécification d'une limitation temporaire de ressources pour une zone.
La ressource rootzpool facultative de l'utilitaire zonecfg permet de créer un zpool ZFS dédié pour l'installation de la zone. Le zpool ZFS root de la zone peut être hébergé sur les périphériques de stockage partagés définis par un ou plusieurs URI (Universal Resource Identifiers). La propriété storage requise identifie l'URI de l'objet de stockage pour qu'il contienne le système de fichiers zfs root pour une zone. Un seul rootzpool peut être défini pour une zone donnée. Le stockage est automatiquement configuré pour la zone au moment de l'initialisation de la zone.
Les zpools correspondants sont automatiquement créés ou importés durant les opérations d'installation ou de rattachement de la zone. Lorsque la zone est désinstallée ou détachée, les actions suivantes ont lieu :
La configuration des ressources de stockage est automatiquement annulée.
Les zpools correspondants sont automatiquement exportés ou détruits.
Afin de réutiliser un zpool précréé pour une installation de zone, il convient de l'exporter à partir du système.
La structure des zones prend en charge les types d'URI suivants :
dev
URI de chemin de périphérique local
Format :
dev:local-path-under-/dev dev://absolute-path-with-dev dev:absolute-path-with-dev
Exemples
dev:dsk/c7t0d0s0 dev:///dev/dsk/c7t0d0s0 dev:/dev/dsk/c7t0d0s0
lu (Unité logique)
Fibre Channel (FC) et domaines Serial Attached SCSI (SAS)
Format :
lu:luname.naa.ID lu:initiator.naa.ID,target.naa.ID,luname.naa.ID
Exemples
lu:luname.naa.5000c5000288fa25 lu:initiator.naa.2100001d38089fb0,target.naa.2100001d38089fb0,luname.naa.5000c5000288fa25
iscsi
URI iSCSI
Format :
iscsi:///luname.naaID iscsi://host[:port]/luname.naa.ID
Exemples
iscsi:///luname.naa.600144f03d70c80000004ea57da10001 iscsi://[::1]/luname.naa.600144f03d70c80000004ea57da10001 iscsi://127.0.0.1/luname.naa.600144f03d70c80000004ea57da10001 iscsi://127.0.0.1:3620/luname.naa.600144f03d70c80000004ea57da10001 iscsi://hostname:3620/luname.naa.600144f03d70c80000004ea57da10001
L'outil suriadm permet d'administrer des objets partagés basés sur les URI de stockage. Pour des informations sur les ID, l'autorité d'adresse de nom NAA (Name Address Authority) et l'obtention d'URI pour les objets de stockage existants, reportez-vous aux pages de manuel suriadm(1M) et suri(5).
Le système nomme le rootzpool nouvellement créé ou importé pour sa zone correspondante. Le nom attribué a la forme suivante : zonename _rpool.
La propriété storage est gérée à l'aide des commandes suivantes depuis l'étendue de la ressource rootzpool :
add storage URI string
remove storage URI string
Un zpool peut être délégué à une zone non globale en configurant la ressource zpool facultative dans l'utilitaire zonecfg . Le zpool est automatiquement configuré pour la zone lors de son initialisation.
Les zpools correspondants sont automatiquement créés ou importés durant les opérations d'installation ou de rattachement de la zone.
Lorsque la zone est désinstallée ou détachée, les actions suivantes ont lieu :
La configuration des ressources de stockage est automatiquement annulée.
Les zpools correspondants sont automatiquement exportés ou détruits.
La propriété storage identifie l'URI de l'objet de stockage associé à cette ressource.
La propriété storage est gérée à l'aide des paramètres suivants dans l'étendue de la ressource rootzpool :
add storage URI string
remove storage URI string
La propriété name est obligatoire pour la ressource zpool. La propriété est utilisée dans le nom d'un zpool délégué à la zone. Le composant name du système de fichiers ZFS ne peut pas contenir de barre oblique (/).
Le nom affecté au zpool nouvellement créé ou importé se présente sous la forme zonename_name . Il s'agit du nom zpool visible à l'intérieur de la zone non globale.
Remarque - Une installation de zone risque d'échouer lorsqu'un objet de stockage contient des partitions, des zpools ou des systèmes de fichiers UFS préexistants. Pour plus d'informations, reportez-vous à l'étape 4 de la section Installation d'une zone configurée.
Les interfaces réseau configurées à l'aide de l'utilitaire zonecfg pour doter les zones d'une connectivité réseau sont automatiquement paramétrées et placées dans la zone concernée lors de son initialisation.
La couche IP accepte et livre les paquets pour le réseau. Cette couche inclut le routage IP, le protocole de résolution d'adresse (ARP, Address Resolution Protocol), l'architecture de sécurité IP (IPsec, IP security architecture) et le filtrage IP.
Deux modes IP sont disponibles pour les zones non globales : le mode IP partagé et le mode IP exclusif. Le type par défaut est le mode IP exclusif. Une zone en mode IP partagé partage une interface réseau avec la zone globale. Vous devez configurer la zone globale à l'aide de l'utilitaire ipadm pour utiliser les zones en mode IP partagé. Une zone en mode IP exclusif doit posséder une interface réseau dédiée. Si la zone en mode IP exclusif est configurée à l'aide de la ressource anet, une carte d'interface réseau virtuelle dédiée est automatiquement créée et affectée à cette zone. Pour éviter de créer et de configurer les liaisons de données dans la zone globale et d'affecter les liaisons de données aux zones non globales, vous pouvez utiliser la ressource anet automatisée. Utilisez la ressource anet pour effectuer les opérations suivantes :
Autoriser l'administrateur de la zone globale à choisir des noms spécifiques pour les liaisons de données affectées aux zones non globales
Autoriser plusieurs zones à utiliser des liaisons de données du même nom
Pour des raisons de rétrocompatibilité, les liaisons de données préconfigurées peuvent être affectées aux zones non globales.
Pour plus d'informations sur les fonctionnalités IP dans chacun de ces cas, reportez-vous aux sections Mise en réseau dans des zones non globales en mode IP partagé et Mise en réseau dans des zones non globales en mode IP exclusif.
Remarque - La protection des liaisons, décrite au Chapitre 20, Using Link Protection in Virtualized Environments du manuel Oracle Solaris Administration: Network Interfaces and Network Virtualization peut être utilisée sur un système exécutant des zones. Cette fonctionnalité est configurée dans la zone globale.
Une liaison de données est une interface de niveau 2 de la pile de protocoles OSI, qui est représentée dans un système comme une interface STREAMS DLPI (v2). Ce type d'interface peut être monté sous des piles de protocoles telles que TCP/IP. Une liaison de données désigne également une interface physique, par exemple, une carte d'interface réseau (NIC). La liaison de données est la propriété physical configurée à l'aide de zonecfg (1M). La propriété physical peut être une carte d'interface réseau virtuelle (VNIC), comme décrit dans la Partie III, Network Virtualization and Resource Management du manuel Oracle Solaris Administration: Network Interfaces and Network Virtualization.
Les liaisons de données sont, par exemple, des interfaces physiques telles que e1000g0 et bge1, des NIC telles que bge3, des agrégations telles que aggr1, aggr2 ou des interfaces à balises VLAN telles que e1000g123000 et bge234003 (comme VLAN 123 sur e1000g0 et VLAN 234 sur bge3, respectivement).
Pour plus d'informations sur l'utilisation d'IPoIB (IP over Infiniband), reportez-vous à la description anet de la section Propriétés des types de ressources.
Une zone en mode IP partagé utilise une interface IP à partir de la zone globale. La zone doit contenir une ou plusieurs adresses IP dédiées. Une zone en mode IP partagé partage la configuration et l'état de la couche IP avec la zone globale. Vous devez utiliser l'instance d'IP partagé si les deux conditions suivantes sont vérifiées :
La zone non globale doit utiliser la même liaison de données que la zone globale, que les zones globales et non globales se trouvent sur le même sous-réseau ou non.
Vous n'avez pas besoin des autres capacités fournies par les zones en mode IP exclusif.
La ressource net de la commande zonecfg permet d'assigner une ou plusieurs adresses IP aux zones en mode IP partagé. Il convient également de configurer les noms des liaisons de données dans la zone globale.
Dans la ressource zonecfg net, les propriétés address et physical doivent être définies. La propriété defrouter est facultative.
Pour utiliser la configuration réseau en mode IP partagé dans la zone globale, vous devez utiliser ipadm , et non la configuration automatique du réseau. Pour déterminer si la configuration réseau s'effectue à l'aide de ipadm, exécutez la commande suivante. La réponse affichée doit être DefaultFixed.
# svcprop -p netcfg/active_ncp svc:/network/physical:default DefaultFixed
Les adresses IP affectées aux zones en mode IP partagé sont associées à des interfaces réseau logiques.
La commande ipadm peut être utilisée dans la zone globale pour assigner ou supprimer des interfaces logiques dans une zone en cours d'exécution.
Pour ajouter des interfaces, utilisez la commande suivante :
global# ipadm set-addrprop -p zone=my-zone net0/addr1
Pour supprimer des interfaces, utilisez l'une des commandes suivantes :
global# ipadm set-addrprop -p zone=global net0/addr
Ou :
global# ipadm reset-addrprop -p zone net0/addr1
Pour plus d'informations, reportez-vous à la section Interfaces réseau en mode IP partagé.
Le mode IP exclusif est la configuration réseau par défaut des zones non globales.
Une zone en mode IP exclusif possède son propre état d'IP, ainsi qu'une ou plusieurs liaisons de données dédiées.
Les fonctions suivantes peuvent être utilisées dans une zone en mode IP exclusif :
La configuration automatique d'adresse sans état via DHCPv4 et IPv6
Le multipathing sur réseau IP (IPMP, IP Network Multipathing)
La commande ipadm permettant de définir les paramètres TCP/UDP/SCTP, ainsi que les paramètres réglables IP/ARP
Les protocoles IPsec (IP security) et IKE (Internet Key Exchange), qui automatisent l'approvisionnement en matériel de chiffrement authentifié pour l'association de sécurité IPsec
Il existe deux façons de configurer les zones en mode IP exclusif :
Utilisez la ressource anet de l'utilitaire zonecfg pour créer automatiquement une VNIC temporaire à de l'initialisation de la zone et la supprimer lorsque la zone s'arrête.
Préconfigurez la liaison de données dans la zone globale et affectez-la à la zone en mode IP exclusif à l'aide de la ressource net de l'utilitaire zonecfg. La liaison de données est spécifiée à l'aide de la propriété physical de la ressource net. La propriété physical peut être une carte d'interface réseau virtuelle (VNIC), comme décrit dans la Partie III, Network Virtualization and Resource Management du manuel Oracle Solaris Administration: Network Interfaces and Network Virtualization. La propriété address de la ressource net n'est pas définie.
Par défaut, une zone en mode IP exclusif peut configurer et utiliser toute adresse IP de l'interface associée. En option, une liste d'adresses IP séparées par des virgules peut être spécifiée à l'aide de la propriété allowed-address. La zone en mode IP exclusif ne peut pas utiliser les adresses IP qui ne figurent pas dans la liste allowed-address . En outre, toutes les adresses de la liste allowed-address sont automatiquement configurées de façon permanente pour la zone en mode IP exclusif lorsque celle-ci est initialisée. Si cette configuration d'interface n'est pas souhaitée, la propriété configure-allowed-address doit être réglée sur false. La valeur par défaut est true.
Notez que la liaison de données assignée active la commande snoop.
La commande dladm peut être utilisée avec la sous-commande show-linkprop pour afficher l'assignation de liaisons de données aux zones en mode IP exclusif en cours d'exécution. La commande dladm peut également être utilisée avec la sous-commande set-linkprop pour assigner des liaisons de données supplémentaires aux zones en cours d'exécution. Vous trouverez des exemples d'utilisation à la section Gestion des liaisons de données dans les zones non globales en mode IP exclusif.
Dans une zone en mode IP exclusif en cours d'exécution qui possède son propre jeu de liaisons de données, la commande ipadm permet de définir la configuration IP, ce qui inclut la possibilité d'ajouter ou de supprimer des interfaces logiques. Vous pouvez procéder à la configuration IP d'une zone de la même façon que pour une zone globale, à l'aide de l'interface sysidtools décrite dans la page de manuel sysconfig(1M).
La configuration IP d'une zone en mode IP exclusif ne peut être affichée que depuis la zone globale, à l'aide de la commande zlogin.
global# zlogin zone1 ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/v4 static ok 127.0.0.1/8 nge0/_b dhcp ok 10.134.62.47/24 lo0/v6 static ok ::1/128 nge0/_a addrconf ok fe80::2e0:81ff:fe5d:c630/10
Le protocole IPC RDS (Reliable Datagram Sockets) est pris en charge à la fois dans les zones non globales en mode IP exclusif et IP partagé. Le pilote RDSv3 est activé en tant que rds de service SMF. Par défaut, le service est désactivé après l'installation. Le service peut être activé dans une zone non globale par un administrateur de zone disposant des autorisations adéquates. Après zlogin, rds peut être activée dans chacune des zones dans laquelle elle doit être exécutée.
Exemple 16-1 Activation du service rds dans une zone non globale
Pour activer un service RDSv3 dans une zone en mode IP exclusive ou IP partagé, exécutez zlogin ou la commande svcadm enable :
# svcadm enable rds
Vérifiez que rds est activé :
# svcs rds STATE STIME FMRI online 22:50:53 svc:/system/rds:default
Pour plus d'informations, reportez-vous à la page de manuel svcadm(1M).
Dans une zone en mode IP partagé, les applications de la zone (superutilisateur compris) ne peuvent pas envoyer de paquets avec des adresses IP source autres que celles assignées à la zone par le biais de l'utilitaire zonecfg. Dans ce type de zone, il est impossible d'envoyer ou de recevoir des paquets de liaisons de données arbitraires (couche 2).
Par contre, dans les zones en mode IP exclusif, zonecfg attribue la totalité de la liaison de données spécifiée à la zone. Par conséquent, le superutilisateur ou l'utilisateur disposant du profil de droits requis peut envoyer les paquets falsifiés sur les liaisons de données dans une zone en mode IP exclusif, comme il peut le faire dans la zone globale. Vous pouvez désactiver l'usurpation d'adresse IP en définissant la propriété allowed-address. Pour la ressource anet, vous pouvez activer d'autres protections telles que mac-nospoof et dhcp-nospoof en définissant la propriété link-protection.
Les zones en mode IP partagé partagent la couche IP avec la zone globale alors que les zones en mode IP exclusif possèdent leur propre instance de la couche IP. Ces deux types de zones peuvent être utilisées sur une même machine.
Chaque zone possède un jeu de données ZFS délégué par défaut. Ce jeu de données délégué par défaut imite la disposition des jeux de données de la zone globale par défaut. Un jeu de données nommé .../rpool/ROOT contient les environnements d'initialisation. Ce jeu de données ne doit pas être manipulé directement. Le jeu de données rpool, qui doit exister, est monté par défaut sur ... /rpool. Les jeux de données .../rpool/export, et .../rpool/export/home sont montés sur /export et /export/home. Ces jeux de données de zone non globale s'utilisent de la même façon que les jeux de données correspondants de la zone globale et peuvent être gérés à l'identique. L'administrateur de zone peut créer d'autres jeux de données au sein des jeux de données .../rpool, .../rpool/export et ... /rpool/export/home.
N'utilisez pas la commande zfs décrite dans la page de manuel zfs(1M) pour créer, supprimer ou renommer des systèmes de fichiers dans la hiérarchie débutant par le système de fichiers de rpool/ROOT de la zone. La commande zfs peut être utilisée pour définir des propriétés autres que canmount, mountpoint, sharesmb, zoned, com.oracle.*:*, com.sun:* et org.opensolaris.*.*..
En règle générale, les systèmes de fichiers montés dans une zone comportent :
Le jeu de systèmes de fichiers montés lors de l'initialisation de la plate-forme virtuelle
Le jeu de systèmes de fichiers montés dans l'environnement applicatif lui-même
Ces jeux comprennent, par exemple, les systèmes de fichiers suivants :
Systèmes de fichiers ZFS avec une propriété mountpoint définie sur une valeur autre que none ou legacy et qui comportent la valeur yes pour la propriété canmount.
Systèmes de fichiers spécifiés dans le fichier /etc/vfstab d'une zone.
Montages AutoFS et amorcés automatiquement par AutoFS. Les propriétés autofs sont définies à l'aide de la commande sharectl décrite dans la page de manuel sharectl(1M).
Montages explicitement exécutés par un administrateur de zone.
Les autorisations de montage des systèmes de fichiers dans une zone en cours d'exécution sont également définies par la propriété zonecfg fs-allowed. Cette propriété ne s'applique pas aux systèmes de fichiers montés dans la zone à l'aide des ressources zonecfg add fs ou add dataset. Par défaut, seuls les montages de systèmes de fichiers au sein d'un jeu de données délégué par défaut à une zone, hsfs les systèmes de fichiers et systèmes de fichiers réseau tels que NFS, sont autorisés au sein d'une zone.
Attention - Les montages autres que ceux par défaut exécutés dans l'environnement applicatif font l'objet de certaines restrictions. qui empêchent l'administrateur de zone de refuser de fournir des services au reste du système ou de réaliser des opérations affectant les autres zones. |
Des restrictions de sécurité sont par ailleurs associées au montage de certains systèmes de fichiers à l'intérieur d'une zone et d'autres systèmes de fichiers ont un comportement particulier lorsqu'ils sont montés dans une zone. Pour plus d'informations, reportez-vous à la section Systèmes de fichiers et zones non globales.
Pour plus d'informations sur les jeux de données, reportez-vous à la page de manuel datasets(5). Pour plus d'informations sur les environnements d'initialisation, reportez-vous à la section Création et administration d’environnements d’initialisation Oracle Solaris 11.1
Il est impossible de monter un système de fichiers de manière à masquer tous les fichiers, liens symboliques ou répertoires faisant partie de l'image système de la zone, comme décrit dans la page de manuel pkg(5). Par exemple, si aucun des packages installés ne distribue des contenus dans /usr/local, il est possible de monter un système de fichiers sous /usr/local. Cependant, si un package quelconque, y compris un package SVR4 hérité, distribue un fichier, un répertoire ou un lien symbolique vers un chemin commençant par /usr/local, il n'est pas possible de monter système de fichiers dans /usr/local. Vous pouvez néanmoins monter un système de fichiers temporairement dans /mnt.
En raison de l'ordre de montage des systèmes de fichiers dans une zone, il est impossible qu'une ressource fs monte un système de fichiers dans /export/filesys si /export provient du jeu de données rpool/export de la zone ou d'un autre jeu de données délégué.
Vous pouvez définir une propriété hostid pour la zone non globale différente de la propriété hostid de la zone globale. Cette opération est possible, par exemple, dans le cas d'une machine migrée vers une zone d'un autre système. Les applications désormais à l'intérieur de la zone peuvent dépendre de la propriété hostid d'origine. Pour plus d'informations, reportez-vous à la section Types de ressources et propriétés.
La commande zonecfg utilise un système basé sur des règles pour spécifier les périphériques qui doivent figurer dans une zone donnée. Les périphériques répondant à l'une de ces règles sont inclus dans le système de fichiers /dev de la zone. Pour plus d'informations, reportez-vous à la section Configuration d'une zone.
Un périphérique lofi de fichier loopback amovible, qui fonctionne comme un périphérique de CD-ROM et peut être configuré dans une zone non globale. Vous pouvez modifier le fichier auquel le périphérique est mappé et créer plusieurs périphériques lofi pour qu'ils utilisent le même fichier en mode lecture seule. Ce type de périphérique lofi est créé à l'aide de la commande lofiadm avec l'option -r. Aucun nom de fichier n'est requis au moment de la création. Au cours du cycle de vie d'un périphérique lofi amovible, un fichier peut être associé à un périphérique vide ou dissocié d'un périphérique qui n'est pas vide. Un fichier peut être associé simultanément à plusieurs périphériques lofi amovibles en toute sécurité. Un périphérique lofi amovible est en lecture seule. Vous ne pouvez pas mapper un fichier ayant été mappé à un périphérique lofi monté en lecture-écriture ou à un périphérique lofi amovible. Le nombre de périphériques lofi potentiels est limité par le contrôle de ressource zone.max-lofi qui peut être défini à l'aide de zonecfg (1M) dans la zone globale.
Une fois créé, un périphérique lofi amovible est en lecture seule. Le pilote lofi renverra une erreur ou toute opération d'écriture vers un périphérique lofi amovible.
La commande lofiadm permet également de répertorier les périphériques lofi amovibles.
Exemple 16-2 Création d'un périphérique lofi amovible avec un fichier associé
# lofiadm -r /path/to/file /dev/lofi/1
Exemple 16-3 Création d'un périphérique lofi amovible vide
# lofiadm -r /dev/lofi/2
Exemple 16-4 Insertion d'un fichier dans un périphérique lofi amovible
# lofiadm -r /path/to/file /dev/lofi/1 /dev/lofi/1
Pour plus d'informations, reportez-vous aux pages de manuel lofiadm(1M), zonecfg(1M) et lofi(7D). Reportez-vous également à la section Contrôles des ressources à l'échelle d'une zone.
Le partitionnement de disque et l'utilisation de la commande uscsi sont permis grâce à l'outil zonecfg. Reportez-vous à device dans la section Propriétés des types de ressources pour obtenir un exemple. Pour plus d'informations sur la commande uscsi, consultez la page de manuel uscsi(7I).
La délégation est prise en charge uniquement pour les zones solaris.
Les disques doivent utiliser la cible sd comme indiqué à l'aide de la commande prtconf avec l'option -D. Reportez-vous à la page de manuel prtconf(1M).
Lorsque vous initialisez une zone, un jeu par défaut de privilèges fiables est inclus dans la configuration. Ces privilèges sont jugés fiables, car ils évitent que tout processus privilégié d'une zone affecte les processus d'autres zones non globales du système ou de la zone globale. La commande zonecfg permet :
D'ajouter des privilèges au jeu par défaut, étant entendu que ces modifications risquent de permettre aux processus d'une zone de contrôler une ressource globale et donc d'affecter les processus d'autres zones.
De supprimer des privilèges du jeu par défaut, étant entendu que ces modifications risquent d'empêcher certains processus de fonctionner correctement si ces privilèges sont nécessaires à leur exécution.
Remarque - Certains privilèges ne peuvent pas être supprimés du jeu de privilèges par défaut d'une zone et d'autres ne peuvent actuellement pas y être ajoutés.
Pour plus d'informations, reportez-vous aux sections Privilèges dans une zone non globale et Configuration d'une zone, ainsi qu'à la page de manuel privileges(5).
Si vous avez configuré des pools de ressources sur votre système, comme décrit dans le Chapitre 13, Création et administration des pools de ressources (tâches), vous pouvez utiliser la propriété pool pour associer la zone à l'un des pools de ressources lorsque vous la configurez.
Même si aucun pool de ressources n'est configuré, vous pouvez spécifier, à l'aide de la ressource dedicated-cpu, qu'un sous-ensemble des processeurs du système doit être dédié à une zone non globale tant que celle-ci est en cours d'exécution. Le système crée de manière dynamique un pool temporaire destiné à être utilisé lorsque la zone est en cours d'exécution. Vous pouvez propager les paramètres du pool pendant les migrations en les spécifiant dans la commande zonecfg.
Remarque - Toute configuration de zone utilisant un pool permanent défini par le biais de la propriété pool est incompatible avec un pool temporaire configuré à l'aide de la ressource dedicated-cpu. Vous ne pouvez définir que l'une de ces deux propriétés.
L'administrateur global ou un utilisateur disposant des autorisations appropriées peut définir des contrôles de ressources privilégiés à l'échelle d'une zone. L'intérêt de ces contrôles est de limiter l'utilisation des ressources totales pour l'ensemble des entités processus à l'intérieur d'une zone.
La commande zonecfg permet de spécifier ces limites, pour les zones globales et non globales. Reportez-vous à la section Configuration d'une zone.
La méthode conseillée, et la plus simple, pour définir un contrôle de ressource à l'échelle de la zone consiste à utiliser le nom de la propriété ou la ressource, par exemple capped-cpu au lieu de la ressource rctl tel que cpu-cap.
Le contrôle de ressource zone.cpu-cap définit une limite absolue pour la quantité de ressources CPU consommée par une zone. La valeur 100 représente 100 pourcent d'une CPU selon le paramètre . La valeur 125 équivaut à 125 pourcent, car 100 pourcent correspond à une capacité de CPU complète sur le système.
Remarque - Lors de la définition de la ressource capped-cpu, il est possible de définir un nombre décimal pour l'unité. La valeur correspond au contrôle de ressource zone.cpu-cap mais est réduite par 100. La valeur 1 équivaut à la valeur 100 pour le contrôle de ressource.
Le contrôle de ressource zone.cpu-shares permet de limiter le nombre de parts de CPU FSS pour une zone. Les parts de CPU sont tout d'abord allouées à la zone, puis subdivisées entre les projets à l'intérieur de celle-ci comme spécifié dans les entrées project.cpu-shares. Pour plus d'informations, reportez-vous à la section Utilisation de l'ordonnanceur FSS sur un système Oracle Solaris doté de zones. Le nom de propriété globale de ce contrôle est cpu-shares.
Le contrôle de ressource zone.max-locked-memory permet de restreindre la quantité de mémoire physique verrouillée disponible dans une zone. L'allocation de la ressource de mémoire verrouillée sur les projets de la zone peut être gérée à l'aide du contrôle de ressource project.max-locked-memory. Voir le Tableau 6-1 pour plus d'informations.
Le contrôle de ressource zone.max-lofi restreint le nombre potentiel de périphériques lofi qu'une zone peut créer.
Le contrôle de ressource zone.max-lwps renforce l'isolement en empêchant que la présence de trop nombreux LWP dans une zone affecte d'autres zones. Le contrôle de ressource project.max-lwps permet de contrôler l'allocation de la ressource LWP aux différents projets à l'intérieur de la zone. Voir le Tableau 6-1 pour plus d'informations. Le nom de propriété globale de ce contrôle est max-lwps.
Le contrôle de ressource zone.max-processes renforce l'isolement en empêchant l'utilisation d'un trop grand nombre d'emplacements de table de processus dans une zone, au détriment d'autres zones. L'allocation de la ressource des emplacements de table de processus sur les projets de la zone peut être définie à l'aide du contrôle de ressource project.max-processes décrit dans la section Contrôles de ressources disponibles. Le nom de la propriété globale de ce contrôle est max-processes. Le contrôle de ressource zone.max-processes peut également englober le contrôle de ressource zone.max-lwps. Si zone.max-processes est défini, mais pas zone.max-lwps, alors zone.max-lwps est implicitement défini sur la valeur zone.max-processes multipliée par 10 lorsque la zone est initialisée. Notez que, dans la mesure où les processus standard et zombie utilisent tous deux les emplacements de table de processus, le contrôle max-processes offre une protection contre les zombies qui épuisent la table de processus. Les processus zombie ne possédant, par définition, aucun LWP, le contrôle max-lwps n'offre aucune protection contre cette possibilité.
Les contrôles de ressources zone.max-msg-ids, zone.max-sem-ids, zone.max-shm-ids et zone.max-shm-memory permettent de limiter les ressources System V utilisées par tous les processus à l'intérieur d'une zone. Vous pouvez contrôler l'allocation des ressources System V aux différents projets à l'intérieur de la zone à l'aide des versions de projet de ces contrôles de ressources. Les noms de propriétés globales de ces contrôles sont max-msg-ids, max-sem-ids, max-shm-ids et max-shm-memory .
Le contrôle de ressource zone.max-swap permet de limiter le swap consommé par les mappages d'espace d'adressage des processus utilisateur et les montages tmpfs à l'intérieur d'une zone. La commande prstat -Z affiche une colonne SWAP indiquant le swap total consommé par les montages tmpfs et les processus de la zone. Cette valeur facilite la surveillance du swap réservé par chaque zone, qui peut être utilisé pour choisir un paramètre zone.max-swap adéquat.
Tableau 16-1 Contrôles des ressources à l'échelle d'une zone
|
Vous pouvez spécifier ces limites en exécutant les processus à l'aide de la commande prctl. Vous trouverez un exemple sous la section Définition de partages FSS dans la zone globale à l'aide de la commande prctl. Les limites spécifiées à l'aide de la commande prctl ne sont pas persistantes. Elles perdent leur effet dès que vous réinitialisez le système.
Le type de ressource attr permet d'ajouter un commentaire à une zone. Pour plus d'informations, reportez-vous à la section Configuration d'une zone.