Fichier de limites de Workload Manager

Objectif

Décrit les limites minimale et maximale des ressources allouées aux superclasses ou sous-classes d'une configuration WLM.

Descriptif

Le fichier limits dans le fichier /etc/wlm/Config décrit les limites de ressources pour les superclasses de la configuration WLM Config. Si la superclasse Super de cette configuration comporte des sous-classes définies, les limites de ressources des sous-classes sont définies dans le fichier /etc/wlm/Config/Super/limits.

Les limites au niveau superclasse représentent un pourcentage de la quantité totale de ressources disponibles sur le système et les limites au niveau de la sous-classe représentent un pourcentage de la ressource mise à disposition de la superclasse parent. Malgré cette différence, la description des limites de ressources s'applique à la fois à une superclasse et à une sous-classe.

Le fichier Limites est organisé en strophes nommées d'après les classes WLM et contient des paires attribut-valeur indiquant la limite de ressources minimale et maximale allouée à la classe pour les différentes ressources. Les noms d'attribut identifient la ressource. Pour chaque ressource, les valeurs suivantes doivent être fournies:

  • Limite minimale (exprimée ici sous la forme M)
  • Limite maximale logicielle (exprimée ici sous la forme SM)
  • Limite maximale (exprimée ici sous la forme HM)

Les limites sont exprimées en pourcentages. Les limites minimale et maximale sont toutes deux un nombre compris entre 0 et 100. Le maximum doit être supérieur ou égal au maximum mou, qui doit à son tour être supérieur ou égal au minimum. Lorsque les limites ne sont pas spécifiées pour une classe ou un type de ressource, le système prend par défaut la valeur 0 pour le minimum et 100 pour le maximum et le maximum.

Utilisez le format suivant pour définir les valeurs limites:
attribute_name = m%-SM%,HM%
Dans le système d'exploitation AIX® , vous pouvez également spécifier des limites de total par processus et par classe. Ces limites sont difficiles et peuvent être spécifiées dans le format suivant:
attribute_name = <value> [unit]
La plage valide de valeurs pour chaque attribut, ainsi que leurs unités par défaut et autorisées sont décrites dans Système d'exploitation et gestion des unités.

Attributs

Chaque strophe nomme une classe WLM qui doit exister dans le fichier Classes au niveau correspondant (superclasse ou sous-classe).

Les attributs suivants sont définis dans le fichier Limites :
Article Descriptif
cpu Représente les limites d'UC de la classe
memory Représente les limites de mémoire physique de la classe
diskIO Représente les limites d'E-S du disque pour la classe
totalConnectTime La durée maximale d'une session de connexion dans la classe peut rester active. Il est spécifié sous la forme d'un entier avec les unités prévues (S pour les secondes, M pour les minutes, H pour les heures, D pour les jours, et W pour les semaines). Lorsque l'utilisateur s'approche de cette limite de temps de connexion, WLM envoie des messages d'avertissement. Lorsque la limite est atteinte, l'utilisateur est averti et la session de connexion prend fin.
totalCPU Temps UC total autorisé pour chaque processus de la classe. Il est spécifié sous la forme d'un entier avec les unités prévues (S pour les secondes, M pour les minutes, H pour les heures, D pour les jours, et w pendant des semaines).
totalDiskIO Quantité totale d' DiskIO autorisée pour chaque processus de la classe. Il est spécifié sous la forme d'un entier avec les unités prévues (KO pour kilooctets, MO pour les mégaoctets, TB pour les téraoctets, PB pour les pétaoctets, et EB pour les exaoctets).
totalLogins Nombre total de sessions de connexion simultanément disponibles dans la classe. Si un utilisateur tente de se connecter au système et que le shell de connexion se termine dans une classe qui a atteint la limite totalLogins , l'opération de connexion échoue. De plus, si une opération entraîne le déplacement d'un shell de connexion dans une classe qui a atteint la limite totalLogins , l'opération échoue également.
totalProcesses Nombre maximal de processus autorisés dans la classe. Si une opération entraîne l'entrée d'un nouveau processus dans la classe lorsque la classe dispose de ce nombre de processus, l'opération échoue.
totalThreads Nombre maximal d'unités d'exécution autorisées dans la classe. Si une opération entraîne l'entrée d'une nouvelle unité d'exécution dans la classe lorsque la classe dispose de ce nombre d'unités d'exécution, l'opération échouera. La limite totale des unités d'exécution doit être au moins aussi grande que la limite totale du processus pour une classe. Si une classe a une limite d'unité d'exécution totale mais qu'aucune limite de processus totale n'est spécifiée, la limite totale du processus sera définie sur la limite totale des unités d'exécution.
classVirtMem Quantité maximale de mémoire virtuelle qu'une classe peut avoir à la fois. Il est spécifié sous la forme d'un entier dont les unités sont destinées (MO pour les mégaoctets, GB pour les gigaoctets, TB pour les téraoctets).
procVirtMem Quantité maximale de mémoire virtuelle qu'un processus peut avoir à la fois. Il est spécifié sous la forme d'un entier dont les unités sont destinées (MO pour les mégaoctets, GB pour les gigaoctets, TB pour les téraoctets).

Les valeurs par défaut mentionnées ci-dessus sont les valeurs par défaut du système et peuvent être modifiées à l'aide d'une section spéciale nommée "default".

Tenez compte de la section suivante au début du fichier Limites :
default:
   CPU   = 10%-50%,80%
   diskIO  = 20%-60%,100%

Cette strophe modifie les valeurs par défaut des limites d'E-S de l'unité centrale et du disque de sorte que si ces attributs ne sont pas spécifiés pour certaines (ou toutes les) classes, leur valeur par défaut minimale, maximale et maximale par défaut pour les valeurs indiquées ci-dessus. Dans cet exemple, les valeurs par défaut des limites de mémoire physique (spécifiées par l'attribut Mémoire ) sont toujours la valeur par défaut du système-le minimum 0% et le maximum molle et dur à 100%.

Les classes qui utilisent uniquement des valeurs par défaut pour tous les types de ressource peuvent être omises dans le fichier.

Security

Le fichier Limites définissant les limites des superclasses d'une configuration WLM doit disposer de droits d'accès en écriture uniquement pour root. Le fichier Limites définissant les limites des sous-classes d'une superclasse doit disposer des droits d'accès en écriture pour adminuser et admingroup pour la superclasse. Si aucun administrateur n'existe pour la superclasse, le fichier Limites doit appartenir à root. Si aucun groupe d'administrateurs n'existe pour une superclasse, le fichier de la superclasse doit appartenir au groupe "system" et n'a pas de droit d'accès en écriture pour le groupe.

Exemple

Voici un exemple de fichier /etc/wlm/Config/limits typique:
* System Defined Classes
* In this example, the system administrator uses
* only default values for the System and Shared
* superclasses. The System class has a memory minimum of
* 1% by default - can be increased by system administrator
* The system administrator gives non default values
* only for the Default class:
*
System:
   memory = 1%-100%,100%
Default:
   CPU    =  0%-50%,75%
   memory = 0%-25%,50%
*
* User defined classes
*
Super1:
   CPU     = 10%-100%,100%
   memory  = 20%-100%,100%
   diskIO = 0%-33%,50%
Super2:
   memory  =0%-20%,50%
   diskIO =10%-66%,100%
Remarque: L'astérisque (*) est un caractère de commentaire.

Fichiers

Article Descriptif
limites Définit les droits d'accès aux ressources pour les superclasses ou sous-classes d'une configuration WLM