Guide d'administration du système Solaris Resource Manager 1.3

Paramètres d'initialisation du noyau

Le noyau comporte certains paramètres de Solaris Resource Manager pouvant être définis par l'administrateur central lors de l'initialisation du noyau. A l'initialisation, Solaris lit le fichier /etc/system et l'utilise pour configurer les modules du noyau (voir system( 4) pour de plus amples informations). Voici les paramètres pouvant être définis dans le module SHR (qui sont tous des nombres entiers à 32 bits) pour remplacer les réglages par défaut de Solaris Resource Manager :

SRMLnodes

Nombre de noeuds limites à mettre en mémoire cache dans le noyau. Dans les systèmes Solaris, chaque noeud limite du noyau exige environ 3 ko. La valeur zéro (la valeur par défaut) signifie que le noyau déterminera la valeur. En pareil cas, voici l'approche employée :

(nproc / SRMProcsPerUid ) + SRMLnodesExtra

nproc est le nombre maximum de processus simultanés autorisés dans le système. La valeur minimum 6 a priorité sur ce calcul. Le maximum spécifié par SRMMemoryMax a également priorité sur ce calcul.

SRMProcsPerUid

Nombre moyen prévu de processus par utilisateur. La valeur par défaut est 4.

SRMLnodesExtra

Biais utilisé dans l'approche heuristique visant à déterminer la taille du tableau de noeuds limites en mémoire. La valeur par défaut est 20.

SRMNhash

Nombre d'entrées dans la table de hachage utilisé pour le mappage des valeurs UID avec les noeuds limites dans le noyau. Sous les systèmes Solaris, chaque entrée a une longueur de 4 octets. La valeur par défaut est zéro, ce qui indique d'utiliser la même valeur que pour le nombre de noeuds limites.

SRMMemoryMax

Inverse de cette valeur est une fraction indiquant le pourcentage maximum de mémoire réelle à utiliser pour le noeud limite et les tables de hachage de Solaris Resource Manager. La valeur par défaut est 20, ce qui signifie qu'un maximum de 5 % de la mémoire réelle sera attribué aux structures de données de Solaris Resource Manager.

SRMMemWarnFreq

Intervalle minimum, en secondes, entre les avertissements de dépassement de mémoire pour un noeud limite. La valeur par défaut est 4.

Par exemple, dans le fichier /etc/system, la ligne

set srmlim:SRMMemWarnFreq=10

indique que des messages de dépassement de mémoire doivent être envoyés au maximum toutes les 10 secondes par utilisateur.

Il existe également certains paramètres ne faisant pas partie de Solaris Resource Manager, mais qui en influencent le comportement, par exemple :

initclass

Nom de la classe d'ordonnancement où le processus init(1M) est lancé. Sous Solaris Resource Manager, ce paramètre devrait avoir la valeur "SHR" (y compris les guillemets). La valeur par défaut sous Solaris est "TS". Si vous voulez que Solaris Resource Manager contrôle les ressources de l'UC, incluez la ligne suivante dans le fichier /etc/system :

set initclass="SHR"

afin de remplacer la valeur par défaut.

extraclass

Nom d'un module de classe d'ordonnancement à charger, sans nécessairement l'utiliser en tant que classe d'ordonnancement par défaut. Pour que Solaris Resource Manager ne contrôle que les ressources autres que l'UC, incluez la ligne suivante dans le fichier /etc/system :

set extraclass="SHR"

Pour initialiser un système sans charger Solaris Resource Manager, il ne faut pas utiliser /etc/system, mais plutôt /etc/system.noshrload. Pour en savoir davantage, consultez la rubrique Initialisation sans Solaris Resource Manager.

Configuration de démarrage multi-utilisateur

Lors d'une initialisation normale du système, lorsque le système passe du mode mono-utilisateur au mode multi-utilisateur, un script d'initialisation de Solaris Resource Manager (voir Annexe A) est exécuté afin de régler divers paramètres de Solaris Resource Manager. Pour de plus amples informations sur ce script, consultez le Chapitre 4.

Si le script d'initialisation (/etc/init.d/init.srm) est modifié, conservez des copies distinctes des versions originale et modifiée. Les mises à jour de Solaris Resource Manager ne conservent pas nécessairement les scripts d'initialisation existants.