Ignorer les liens de navigation | |
Quitter l'aperu | |
Administration Oracle Solaris : Oracle Solaris Zones, Oracle Solaris 10 Zones et gestion des ressources Oracle Solaris 11 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 des 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)
Administration des pools de ressources (liste des tâches)
Activation et désactivation de l'utilitaire Pools
Activation du service de pools de ressources à l'aide de svcadm
Désactivation du service de pools de ressources à l'aide de svcadm
Activation du service de pools de ressources dynamiques à l'aide de svcadm
Désactivation du service de pools de ressources dynamiques à l'aide de svcadm
Activation des pools de ressources à l'aide de pooladm
Désactivation des pools de ressources à l'aide de pooladm
Création d'une configuration statique
Modification d'une configuration
Association d'un pool avec une classe de programmation
Définition des contraintes de configuration
Etablissement des objectifs de configuration
Transfert de CPU entre les jeux de processeurs
Activation et suppression des configurations de pools
Activation d'une configuration de pools
Test d'une configuration avant sa validation
Suppression d'une configuration de pools
Définition des attributs des pools et liaison à un pool
Liaison des processus à un pool
Liaison de tâches ou de projets à un pool
Définition de l'attribut project.pool pour un projet
Liaison d'un processus à un autre pool grâce aux attributs project
Création d'un état statistique pour les ressources liées au pool à l'aide de poolstat
Affichage de la sortie poolstat par défaut
Création de plusieurs rapports à intervalles spécifiques
Création d'un état statistique sur l'ensemble de ressources
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)
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
Appliquez l'option -s à /usr/sbin/pooladm pour créer un fichier de configuration statique correspondant à la configuration dynamique actuelle et conserver ainsi les modifications au fil des réinitialisations. Sauf en cas de spécification d'un nom de fichier différent, il convient d'utiliser l'emplacement par défaut /etc/pooladm.conf .
Validez votre configuration à l'aide de la commande pooladm et de l'option -c. Exécutez ensuite la commande pooladm avec l'option -s pour mettre à jour la configuration statique en fonction de l'état de la configuration dynamique.
Remarque - Il est préférable d'utiliser la nouvelle fonctionnalité pooladm -s au lieu de la fonctionnalité précédente poolcfg -c discover pour créer une configuration correspondant à la configuration dynamique.
Avant de commencer
Activez les pools sur votre système.
# pooladm -s
Notez que la configuration contient des éléments par défaut créés par le système.
# poolcfg -c info system tester string system.comment int system.version 1 boolean system.bind-default true int system.poold.pid 177916 pool pool_default int pool.sys_id 0 boolean pool.active true boolean pool.default true int pool.importance 1 string pool.comment pset pset_default pset pset_default int pset.sys_id -1 boolean pset.default true uint pset.min 1 uint pset.max 65536 string pset.units population uint pset.load 10 uint pset.size 4 string pset.comment boolean testnullchanged true cpu int cpu.sys_id 3 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 2 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 1 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 0 string cpu.comment string cpu.status on-line
# pooladm -c
# pooladm -s /tmp/backup
Pour optimiser votre configuration, créez un jeu de processeurs nommé pset_batch et un pool nommé pool_batch. Etablissez ensuite une association entre le pool et le jeu de processeurs.
N'oubliez pas d'insérer les arguments de sous-commande contenant un espace vide.
# poolcfg -c 'create pset pset_batch (uint pset.min = 2; uint pset.max = 10)'
# poolcfg -c 'create pool pool_batch'
# poolcfg -c 'associate pool pool_batch (pset pset_batch)'
# poolcfg -c info system tester string system.comment kernel state int system.version 1 boolean system.bind-default true int system.poold.pid 177916 pool pool_default int pool.sys_id 0 boolean pool.active true boolean pool.default true int pool.importance 1 string pool.comment pset pset_default pset pset_default int pset.sys_id -1 boolean pset.default true uint pset.min 1 uint pset.max 65536 string pset.units population uint pset.load 10 uint pset.size 4 string pset.comment boolean testnullchanged true cpu int cpu.sys_id 3 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 2 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 1 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 0 string cpu.comment string cpu.status on-line pool pool_batch boolean pool.default false boolean pool.active true int pool.importance 1 string pool.comment pset pset_batch pset pset_batch int pset.sys_id -2 string pset.units population boolean pset.default true uint pset.max 10 uint pset.min 2 string pset.comment boolean pset.escapable false uint pset.load 0 uint pset.size 0 cpu int cpu.sys_id 5 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 4 string cpu.comment string cpu.status on-line
# pooladm -c
# pooladm -s /tmp/backup
Vous pouvez associer un pool à une classe de programmation pour permettre à tous les processus liés de tirer parti de l'ordonnanceur. Pour ce faire, donnez à la propriété pool.scheduler le nom de l'ordonnanceur. Cet exemple permet d'associer le pool pool_batch à l'ordonnanceur FSS.
# poolcfg -c 'modify pool pool_batch (string pool.scheduler="FSS")'
# poolcfg -c info system tester string system.comment int system.version 1 boolean system.bind-default true int system.poold.pid 177916 pool pool_default int pool.sys_id 0 boolean pool.active true boolean pool.default true int pool.importance 1 string pool.comment pset pset_default pset pset_default int pset.sys_id -1 boolean pset.default true uint pset.min 1 uint pset.max 65536 string pset.units population uint pset.load 10 uint pset.size 4 string pset.comment boolean testnullchanged true cpu int cpu.sys_id 3 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 2 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 1 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 0 string cpu.comment string cpu.status on-line pool pool_batch boolean pool.default false boolean pool.active true int pool.importance 1 string pool.comment string pool.scheduler FSS pset batch pset pset_batch int pset.sys_id -2 string pset.units population boolean pset.default true uint pset.max 10 uint pset.min 2 string pset.comment boolean pset.escapable false uint pset.load 0 uint pset.size 0 cpu int cpu.sys_id 5 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 4 string cpu.comment string cpu.status on-line
# pooladm -c
# pooladm -s /tmp/backup
Les contraintes limitent l'étendue des configurations possibles en empêchant certaines modifications potentielles. Cette procédure montre comment définir la propriété cpu.pinned.
Dans les exemples qui suivent, cpuid représente un nombre entier.
# poolcfg -c 'modify cpu <cpuid> (boolean cpu.pinned = true)'
# poolcfg -dc 'modify cpu <cpuid> (boolean cpu.pinned = true)'
Vous pouvez fixer des objectifs pour la commande poold lors d'une action corrective.
Dans la procédure suivante, l'objectif wt-load est de faire en sorte que poold essaie de mettre en adéquation l'allocation des ressources et leur utilisation. L'objectif locality est désactivé pour faciliter la réalisation de cet objectif de configuration.
# poolcfg -c 'modify system tester (string system.poold.objectives="wt-load")'
# poolcfg -c 'modify pset pset_default (string pset.poold.objectives="locality none")'one line
# poolcfg -c 'modify pset pset_batch (string pset.poold.objectives="locality none")'one line
# poolcfg -c info system tester string system.comment int system.version 1 boolean system.bind-default true int system.poold.pid 177916 string system.poold.objectives wt-load pool pool_default int pool.sys_id 0 boolean pool.active true boolean pool.default true int pool.importance 1 string pool.comment pset pset_default pset pset_default int pset.sys_id -1 boolean pset.default true uint pset.min 1 uint pset.max 65536 string pset.units population uint pset.load 10 uint pset.size 4 string pset.comment boolean testnullchanged true string pset.poold.objectives locality none cpu int cpu.sys_id 3 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 2 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 1 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 0 string cpu.comment string cpu.status on-line pool pool_batch boolean pool.default false boolean pool.active true int pool.importance 1 string pool.comment string pool.scheduler FSS pset batch pset pset_batch int pset.sys_id -2 string pset.units population boolean pset.default true uint pset.max 10 uint pset.min 2 string pset.comment boolean pset.escapable false uint pset.load 0 uint pset.size 0 string pset.poold.objectives locality none cpu int cpu.sys_id 5 string cpu.comment string cpu.status on-line cpu int cpu.sys_id 4 string cpu.comment string cpu.status on-line
# pooladm -c
# pooladm -s /tmp/backup
Pour spécifier le niveau des informations consignées dans le journal généré par poold, définissez la propriété system.poold.log-level dans la configuration poold. La configuration poold est conservée au sein de la configuration libpool. Pour plus d'informations, reportez-vous à la section Informations de consignation poold et aux pages de manuel poolcfg(1M) et libpool(3LIB).
Vous pouvez également tirer parti de la commande poold sur la ligne de commande pour indiquer le niveau de consignation voulu dans le journal créé par poold.
# /usr/lib/pool/poold -l INFO
Pour plus d'informations sur les paramètres disponibles, reportez-vous à la section Informations de consignation poold. Le niveau de consignation par défaut est NOTICE.
La commande poolcfg associée à l'option -f accepte une entrée provenant d'un fichier texte dans lequel figurent les arguments de sous-commande poolcfg correspondant à l'option -c. Cette méthode est pratique pour effectuer une série d'opérations. Lors du traitement des commandes, la configuration n'est mise à jour que si toutes les commandes aboutissent. Dans le cas de configurations plus importantes ou plus complexes, il est préférable d'utiliser cette technique que de procéder par sous-commande.
Dans les fichiers de commandes, le caractère # signale un commentaire dans le reste de la ligne.
$ cat > poolcmds.txt create system tester create pset pset_batch (uint pset.min = 2; uint pset.max = 10) create pool pool_batch associate pool pool_batch (pset pset_batch)
# /usr/sbin/poolcfg -f poolcmds.txt