février 3, 2022

AIX pour les administrateurs système

Hiérarchie de la mémoire
Les instructions et les données que le PROCESSEUR traite sont extraites de la mémoire. La mémoire se décline en plusieurs couches.
Registres – la couche supérieure, ce sont des cellules de stockage à grande vitesse (peuvent contenir des données de 32 à 64 bits)
Caches – Si les données ne peuvent pas être trouvées dans les registres, elles seront examinées au niveau suivant, qui est cache
Cache L1 les fastes un plus petit (généralement sur la puce du PROCESSEUR) 32-256 Ko
Cache L2, si les données nécessaires ne sont pas en L1, le PROCESSEUR essaie de les trouver en L2, il peut s’agir de mégaoctets (4 Mo)
Cache L3 , il est un peu plus loin, autour de 32 Mo
de RAM – Si les données nécessaires ne sont pas dans les caches matériels, alors TLB (Tampon de recherche de traduction) sera vérifié, après la mémoire RAM
TLB-cache des adresses récemment accédées
Disque – Si l’adresse n’est pas dans la RAM, un défaut de page se produit et les données sont récupérées du disque dur.
Un défaut de page est une demande de chargement d’une page de données de 4 Ko à partir du disque.
Le fonctionnement de la pagination à la demande est que le noyau ne charge que quelques pages à la fois dans la mémoire réelle. Lorsque le processeur est prêt pour une autre page, il regarde la RAM. S’il ne le trouve pas là, un défaut de page se produit, ce qui indique au noyau d’apporter plus de pages dans la RAM à partir du disque.
Si le processeur attend des données de la mémoire réelle, le processeur est toujours considéré comme étant à l’état occupé. Si des données sont nécessaires à partir du disque, le processeur est en état d’attente d’E / S.
————————————-
Cache L2 et performances:
Le cache L2 est une mémoire rapide qui stocke des copies des données des emplacements de mémoire principale les plus fréquemment utilisés.

La première image montre un système Power5, la deuxième image Power6 (ou Power7).
Dans les systèmes Power5, il existe un seul cache L2 sur une puce de processeur qui est partagé par les deux cœurs de la puce. Dans les serveurs ultérieurs (Power6 et Power7), ils ont un cache L2 séparé pour chaque cœur d’une puce. Les performances de la partition dépendent de l’efficacité avec laquelle elle utilise le cache du processeur.
Si l’interférence du cache L2 avec d’autres partitions est minime, les performances sont bien meilleures pour la partition. Le partage du cache L2 avec d’autres partitions signifie qu’il est possible que les données les plus fréquemment consultées par le processeur soient vidées du cache et que l’accès à partir du cache L3 ou de la mémoire principale prenne plus de temps.

————————————-
Espace de pagination (également appelé espace d’échange)
La RAM et l’espace de pagination sont divisés en sections de 4 Ko appelées cadres de page. (Une page est une unité de mémoire virtuelle contenant 4 Ko de données.) Lorsque le système a besoin de plus de RAM, les cadres de page d’informations sont déplacés hors de la RAM et sur le disque dur. C’est ce qu’on appelle la pagination. Lorsque ces images de page d’informations sont à nouveau nécessaires, elles sont extraites du disque dur et replacées dans la RAM. C’est ce qu’on appelle la pagination.
Lorsque le système passe plus de temps à mélanger des cadres de page dans et hors de la RAM au lieu de faire un travail utile, le système se déchaîne.
Lorsque la quantité d’espace de pagination disponible tombe en dessous d’un seuil, appelé niveau d’avertissement d’espace de pagination, le système envoie à tous les processus (à l’exception des processus du noyau) un signal SIGDANGER. Ce signal indique aux processus de se terminer gracieusement. Lorsque la quantité d’espace de radiomessagerie vide tombe plus en dessous d’un deuxième seuil, appelé niveau de suppression de l’espace de radiomessagerie, le système envoie un signal SIGKILL aux processus qui utilisent le plus d’espace de radiomessagerie. (terminez sans erreur)
Lorsque AIX est installé, il crée automatiquement de l’espace de pagination sur le disque d’installation, qui est généralement le disque dur hdisk0. Le nom de cet espace de pagination est toujours hd6. Le fichier /etc/swapspaces contient une liste des zones d’espace de pagination qui seront activées au démarrage du système.
swapon est un terme des jours précédant l’utilisation des cadres de page. À cette époque, vers 1982, AIX a échangé des programmes entiers de la RAM et sur le disque dur. Aujourd’hui, une partie du programme est laissée en RAM et le reste est paginé hors du programme sur le disque dur. Le terme swapon est resté, donc aujourd’hui, nous nous référons parfois à la pagination et à la pagination en tant que permutation
Une fois que vous affichez une page de calcul, elle continue de prendre de la place sur le fichier d’échange tant que le processus existe, même si la page est ensuite paginée. En général, vous devriez éviter de paginer du tout.
De combien d’espace de pagination avez-vous besoin sur votre système ? Quelle est la règle de base?
Les administrateurs de base de données aiment généralement demander le plus grand nombre de tout et peuvent vous demander de doubler la quantité d’espace de pagination que votre RAM (l’ancienne règle empirique). De manière générale, si mon système a plus de 4 Go de RAM, j’aime généralement créer un rapport un à un de l’espace de pagination par rapport à la RAM. Surveillez fréquemment votre système après sa mise en service. Si vous voyez que vous n’approchez jamais vraiment 50% de l’utilisation de l’espace de pagination, n’ajoutez pas d’espace.

Le nombre et les types d’applications dicteront la quantité d’espace de pagination nécessaire. De nombreuses « règles empiriques » de dimensionnement ont été publiées, mais la seule façon de dimensionner correctement l’espace de pagination de votre machine est de surveiller la quantité d’activité de pagination.
Conseils pour l’espace de pagination:
– Seulement 1 espace de radiomessagerie par disque
– Utilisez des disques avec le moins d’activité
– Les espaces de radiomessagerie doivent avoir la même taille
– N’étendez pas un espace de radiomessagerie à plusieurs PV
Idéalement, il devrait y avoir plusieurs espaces de radiomessagerie de taille égale chacun sur différents volumes physiques. L’espace de radiomessagerie est alloué de manière circulaire et utilisera toutes les zones de radiomessagerie de manière égale. Si vous avez deux zones de pagination sur un disque, vous ne répartissez plus l’activité sur plusieurs disques.En raison de la technique de round robin utilisée, si elles ne sont pas de la même taille, l’utilisation de l’espace de pagination ne sera pas équilibrée.
boot-r affiche la mémoire réelle en kilo-octets (cela fonctionne également: lsattr-El sys0-a realmem)
lscfg-vp|grep-p DIMM affiche la mémoire DIMM
lsattr-El sys0-a realmem (attributs de liste) voir la quantité de mémoire réelle dont vous disposez
ps aux|sort +4-n répertorie la quantité de mémoire utilisée par les processus
svmon-P|grep-p < pid > vous pouvez voir combien de spce de radiomessagerie un processus utilise
svmon-P-O sortseg= pgsp montre l’utilisation de l’espace de radiomessagerie des processus
mkps-s 4-n-a rootvg hdisk0 crée un espace de radiomessagerie (donnez le nom automatiquement:paging00)
-n l’active immédiatement,
-a il sera également activé au prochain redémarrage (l’ajoute à /etc/swapspaces)
-s taille 4 lp
lsps – une liste de tous les espaces de radiomessagerie et de l’utilisation d’un espace de radiomessagerie
lsps-s résumé de tous les espaces de radiomessagerie combinés (tous les espaces de radiomessagerie sont additionnés)
chps-s 3 hd6 augmente dynamiquement la taille d’un espace de radiomessagerie avec 3 lps
chps-d 1 paging00 diminue dynamiquement la taille d’un espace de radiomessagerie avec 1 lp (cela créera un espace de radiomessagerie temporaire)
/etc/swapspaces contient une liste des zones d’espace de radiomessagerie
vmstat-s
smitty mkps ajoutant de la radiomessagerie espace
chps smitty modification de l’espace de pagination
swapon/dev/paging02 activer ou mettre en ligne dynamiquement un espace de pagination (ou pgsp smitty)

swapoff/dev/paging03 désactiver un espace de pagination
——————————
suppression d’un espace de pagination :
swapoff/dev/paging03 désactiver un espace de pagination (le /dev est nécessaire)
rmps paging03 supprime un espace de pagination (le /dev n’est pas nécessaire)
——————————
Pour vider l’espace de pagination:
(il montre un pourcentage élevé, mais en fait rien ne l’utilise)
1. chps-d 1 hd6 cela diminuera la taille de la spave de radiomessagerie de 1 lp (cela créera une température. espace de pagination, copiez le conntent…)
(s’il n’y a pas assez d’espace dans le vg, il ne le fera pas)
2. chps-s 1 hd6 augmente l’espace de pagination à sa taille d’origine
——————————
Fork:
Lorsqu’il y a un message concernant cannot fork… cela est probablement dû à un faible espace de pagination
Lorsqu’un processus appelle fork(), le système d’exploitation crée un processus enfant du processus appelant.
Le processus enfant créé par fork() est une sorte de réplique du processus appelant. Certains processus serveur, ou démons, appellent fork() plusieurs fois pour créer plusieurs instances d’eux-mêmes. Un exemple de ceci est un serveur Web qui pré-fourche afin qu’il puisse gérer un certain nombre de connexions entrantes sans avoir à fork() au moment où elles arrivent.
Quand AIX est à court de mémoire, il commence à tuer les processus. La protection d’un processus (par exemple ssh) peut être importante pour atteindre le serveur.
L’option vmo ‘nokilluid’ peut être utilisée pour protéger des processus spécifiques :
1. grep ssh/etc/passwd obtenir l’ID utilisateur de ssh (dans notre cas, c’était 202)
2. vmo-o nokilluid = 202 ID utilisateur inférieurs à cette valeur ne seront pas tués en raison de l’espace de page faible
——————————
Gestion de la mémoire virtuelle :
(cette section s’applique également à ioo, no, nfso)
vmo-a|egrep « minperm%|maxperm%|maxclient%|lru_file_repage|strict_maxclient|strict_maxperm|minfree|maxfree »
root@aix04 Je n’ai pas de problème avec le système de gestion de l’environnement.: /root #vmo-L
NOM CUR DEF BOOT MIN MAX UNITÉ TYPE
DEPENDENCIES
——————————————————————————–
cpu_scale_memp 8 8 8 1 64 B
——————————————————————————–
data_stagger_interval n/a 161 161 0 4K – 1 4KB pages D
lgpg_regions
——————————————————————————–
D= Dynamic: peut être modifié librement
B = Bosboot: ne peut être modifié qu’en utilisant bosboot et reboot
S = Static: le paramètre ne peut jamais être modifié
R =Reboot: le paramètre ne peut être modifié que pendant boot
/etc/tunables/nextboot <valuesvaleurs à appliquer au prochain redémarrage. Ce fichier est automatiquement appliqué au démarrage.
/etc/tunables/lastboot < generated généré automatiquement au démarrage. Il contient les paramètres, avec leurs valeurs après le dernier démarrage.
/etc/accordables/lasboot.log <contains contient la journalisation de la création du fichier lastboot, c’est-à-dire que toute modification de paramètre effectuée est journalisée
vmo-o maxperm%=80 <sets définit 80
vmo-p-o maxperm%=80-o maxclient%=80 < sets définit maxperm% et maxclient% sur 80
(-p: définit les valeurs actuelles et de redémarrage (met à jour la valeur actuelle et /etc/tunables/nextboot)
vmo-r-o lgpg_size=0-o lgpg_regions=0 <sets définit uniquement dans le fichier nextboot, donc après le redémarrage sera activé
——————————
Note SAP 973227 recommandations:
minperm%= 3
maxperm%=90
maxclient%=90
lru_file_repage= 0
strict_maxclient=1
strict_maxperm=0
minfree=960
maxfree = 1088
————————————–
————————————–
————————————–

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.