J'ai exécuté un boîtier NAS / SAN sur Solaris 11 Express avant la sortie de Solaris 11. La boîte est un HP X1600 avec un D2700 attaché. En tout, 12 disques SATA de 1 To 7200, 12 disques SAS de 300 Go 10 000 dans des zpools séparés. La RAM totale est de 30 Go. Les services fournis sont CIFS, NFS et iSCSI.
Tout allait bien, et j'avais un graphique d'utilisation de la mémoire ZFS ressemblant à ceci:
Une taille d'arc assez saine d'environ 23 Go - en utilisant la mémoire disponible pour la mise en cache.
Cependant, j'ai ensuite mis à niveau vers Solaris 11 lorsque cela est sorti. Maintenant, mon graphique ressemble à ceci:
La sortie partielle de arc_summary.pl
est:
System Memory:
Physical RAM: 30701 MB
Free Memory : 26719 MB
LotsFree: 479 MB
ZFS Tunables (/etc/system):
ARC Size:
Current Size: 915 MB (arcsize)
Target Size (Adaptive): 119 MB (c)
Min Size (Hard Limit): 64 MB (zfs_arc_min)
Max Size (Hard Limit): 29677 MB (zfs_arc_max)
Il cible 119 Mo alors qu'il est assis à 915 Mo. Il a 30 Go pour jouer. Pourquoi? Ont-ils changé quelque chose?
Éditer
Pour clarifier, arc_summary.pl
c'est Ben Rockwood, et les lignes pertinentes générant les statistiques ci-dessus sont:
my $mru_size = ${Kstat}->{zfs}->{0}->{arcstats}->{p};
my $target_size = ${Kstat}->{zfs}->{0}->{arcstats}->{c};
my $arc_min_size = ${Kstat}->{zfs}->{0}->{arcstats}->{c_min};
my $arc_max_size = ${Kstat}->{zfs}->{0}->{arcstats}->{c_max};
my $arc_size = ${Kstat}->{zfs}->{0}->{arcstats}->{size};
Les entrées de Kstat sont là, j'en tire juste des valeurs impaires.
Modifier 2
Je viens de re-mesurer la taille de l'arc avec arc_summary.pl
- j'ai vérifié ces chiffres avec kstat
:
System Memory:
Physical RAM: 30701 MB
Free Memory : 26697 MB
LotsFree: 479 MB
ZFS Tunables (/etc/system):
ARC Size:
Current Size: 744 MB (arcsize)
Target Size (Adaptive): 119 MB (c)
Min Size (Hard Limit): 64 MB (zfs_arc_min)
Max Size (Hard Limit): 29677 MB (zfs_arc_max)
Ce qui me frappe, c'est que la taille cible est de 119 Mo. En regardant le graphique, il cible exactement la même valeur (124,91 millions selon les cactus, 119 millions selon arc_summary.pl
- pensez que la différence n'est que des problèmes d'arrondi de 1024/1000) depuis l'installation de Solaris 11. Il semble que le noyau ne fasse aucun effort pour déplacer la taille cible vers quelque chose de différent. La taille actuelle fluctue au fur et à mesure que les besoins du système (grand) se battent avec la taille cible, et il semble que l'équilibre se situe entre 700 et 1000 Mo.
La question est donc maintenant un peu plus pointue - pourquoi Solaris 11 définit-il difficilement ma taille cible ARC à 119 Mo, et comment puis-je la modifier? Dois-je augmenter la taille minimale pour voir ce qui se passe?
J'ai bloqué la sortie de kstat -n arcstats
plus à http://pastebin.com/WHPimhfg
Modifier 3
Ok, bizarrerie maintenant. Je sais que flibflob a mentionné qu'il y avait un correctif pour résoudre ce problème. Je n'ai pas encore appliqué ce correctif (toujours en train de régler les problèmes de support interne) et je n'ai appliqué aucune autre mise à jour logicielle.
Jeudi dernier, la boîte s'est écrasée. Comme dans, complètement arrêté de répondre à tout. Lorsque je l'ai redémarré, cela s'est bien passé, mais voici à quoi ressemble mon graphique maintenant.
Il semble avoir résolu le problème.
C'est du vrai la la land maintenant. Je n'ai littéralement aucune idée de ce qui se passe. :(