Ce chapitre décrit les problèmes en suspens liés à l'utilisation de l'environnement d'exploitation Solaris sur les systèmes Sun Fire 6800/4810/4800/3800.
Cette section fournit des informations sur l'utilisation de l'environnement d'exploitation Solaris.
La commande prtdiag est une commande de l'environnement d'exploitation Solaris qui sert à afficher les paramètres de configuration du système. Les informations que contient le Guide de la plate-forme matérielle Sun sur cette commande pour cette version du système d'exploitation sont erronées. Nous vous prions de trouver ci-dessous les informations corrigées.
La commande prtdiag (1M) de l'environnement d'exploitation Solaris affiche les informations suivantes relatives au domaine de votre système Sun Fire 6800/4810/4800/3800 :
Configuration
Diagnostic
Quantité totale de mémoire (similaire à la commande prtconf)
La fonctionnalité de reconfiguration dynamique (DR) est prise en charge par Solaris 8 2/02. Cette section comporte les problèmes en suspens liés à la fonctionnalité DR sur les systèmes Sun Fire 6800/4810/4800/3800 au moment de la sortie de la présente version.
Pour plus d'informations sur le microprogramme du contrôleur système qui contient la fonctionnalité DR , reportez-vous aux Sun Fire 6800/4810/4800/3800 Systems Software Release Notes incluses dans la version 5.12.6 du microprogramme. Ce microprogramme et la documentation qui l'accompagne sont inclus dans le patch SunSolve 112127-02, disponible sur le site Web de SunSolve (http://sunsolve.Sun.com).
Les présentes notes de mise à jour de la fonctionnalité de reconfiguration dynamique (DR) sur les systèmes Sun Fire 6800, 4810, 4800 et 3800 traitent des points suivants :
La prise en charge spécifique de la DR sur les systèmes 6800/4810/4800/3800 est illustrée par la commande cfgadm. Les cartes système sont indiquées en tant que cartes de la catégorie "sbd." Les cartes CompactPCI (cPCI) en tant que cartes de la catégorie "pci." Les utilisateurs qui se servent de la fonctionnalité DR au moyen de l'interface cfgadm peuvent également voir d'autres catégories de DR.
Plus plus d'informations sur les problèmes spécifiques des systèmes liés à la fonctionnalité DR, consultez "Bugs connus".
Pour visualiser les catégories qui sont associées aux points de connexion, exécutez la commande suivante en tant que super-utilisateur :
# cfgadm -s "cols=ap_id:class" |
Il est également possible de faire la liste des points de connexion dynamique en utilisant la commande cfgadm avec l'option -a. Pour déterminer la catégorie d'un point de connexion spécifique, ajoutez le point de connexion en tant qu'argument dans la commande précédente.
La fonctionnalité DR peut être utilisée sur un système Sun Fire qui dispose du logiciel suivant : la version 8 2/02 de l'environnement d'exploitation Solaris et la version 5.12.6 du microprogramme du système.
De plus, vous avez en option la possibilité d'installer Sun Management Center (SunMC). Pour plus d'informations, reportez-vous au document Supplément Sun Management Center 3.0 pour les systèmes Sun Fire 6800, 4810, 4800 et 3800.
La mise à jour du microprogramme du système Sun Fire a lieu par le biais d'une connexion FTP ou HTTP établie avec un serveur FTP ou HTTP où est stockée l'image du microprogramme. Pour plus d'informations, consultez le Sun Fire 6800/4810/4800/3800 Systems Platform Administration Manual.
Pour plus d'informations sur l'installation du patch du microprogramme, consultez les fichiers README et Install.info qui accompagnent le patch.
Veuillez ne pas mettre à jour le microprogramme du contrôleur système sans mettre également à jour le microprogramme de toutes les cartes UC/mémoire et des ensembles E/S. Si le microprogramme de vos cartes UC/mémoire et ensembles E/S diffère du microprogramme du contrôleur système, vous risquez de ne pas pouvoir initialiser vos domaines.
Configurez le serveur FTP ou HTTP.
Pour plus d'informations, reportez-vous à l'annexe B du Sun Fire 6800/4810/ 4800/3800 Systems Platform Administration Manual (Référence n° 805-7373-13).
Téléchargez le microprogramme 5.12.6.
Ce microprogramme et la documentation qui l'accompagne sont inclus dans le patch SunSolve 112127-02, disponible sur le site Web de SunSolve à l'adresse suivante
http://sunsolve.Sun.COM/pub-cgi/show.pl?target=patches/patch-access
Copiez le patch sur le serveur FTP ou HTTP en utilisant, par exemple, une commande du genre :
# cp /patch_location/* /export/ftp/pub/5.12.6 |
Connectez-vous à la console du contrôleur système (port série) pour surveiller le système lorsque vous mettez à jour le microprogramme (étape 6).
L'invite du contrôleur système est :
nomhôtesc:SC> |
Fermez tous les domaines en arrêtant l'environnement d'exploitation Solaris.
Le commutateur à clé reste sur on dans ces domaines.
Dans chacun des domaines que vous fermez à l'étape 5, réglez le commutateur à clé sur standby:
nomhôtesc:A> setkeyswitch standby |
Vérifiez que toutes les cartes UC/mémoire et ensembles E/S sont sous tension en exécutant la commande showboards sur le contrôleur système dans le shell de la plate-forme :
nomhôtesc:SC> showboards |
Si certaines cartes UC/mémoire ou ensembles E/S ne sont pas sous tension, utilisez la commande poweron sur le contrôleur système dans le shell de la plate-forme pour mettre ces composants sous tension :
nomhôtesc:SC> poweron noms_composants |
Mettez à jour le microprogramme en utilisant la commande flashupdate sur le contrôleur système dans le shell de la plate-forme.
N'éteignez pas ou ne réinitialisez pas le système sans passer par cette étape.
Utilisez la syntaxe de commande adaptée au protocole URL :
nomhôtesc:SC> flashupdate -f URL all |
La commande flashupdate réinitialise le contrôleur système et met à jour les cartes UC/mémoire et ensembles E/S, scapp et RTOS.
Lors de l'exécution de scapp 5.12.5 ou supérieur et de RTOS 18 ou supérieur ; scapp et RTOS sont mis à jour selon la procédure appropriée seulement si l'image à installer diffère de l'image actuellement installée.
Après la réinitialisation réussie du contrôleur système, connectez-vous à chaque console de domaine et mettez hors tension toutes les cartes UC/mémoire et ensembles E/S en réglant le commutateur à clé sur off:
nomhôtesc:A> setkeyswitch off |
Vérifiez que toutes les cartes UC/mémoire et ensembles E/S sont mis hors tension en exécutant la commande showboards sur le contrôleur système dans le shell de la plate-forme :
nomhôtesc:SC> showboards |
Si certaines cartes UC/mémoire ou ensembles E/S sont sous tension, utilisez la commande poweroff du contrôleur système dans le shell de la plate-forme pour mettre ces composants hors tension :
nomhôtesc:SC> poweroff noms_composants |
Activez chaque domaine en réglant le commutateur à clé sur on:
nomhôtesc:A> setkeyswitch on |
Lorsque tous les domaines sont allumés, mettez à jour la copie de secours de la configuration du contrôleur système en utilisant la commande dumpconfig :
nomhôtesc:SC> dumpconfig -f URL |
où URL indique le protocole ftp.
Cette section traite des limites connues de la DR sur les systèmes Sun Fire 6800, 4810, 4800 et 3800.
Si vous ajoutez une carte système à un domaine sans utiliser les procédures DR (par exemple, en exécutant la commande addboard dans la ligne de commande du contrôleur système (SC)) vous devez exécuter la commande setkeyswitch off puis la commande setkeyswitch on pour activer la carte dans le système.
Cette version du logiciel DR ne prend pas en charge Sun StorEdge Traffic Manager.
Avant d'exécuter une opération DR sur une carte E/S (IBx), entrez la commande suivante pour arrêter le démon vold :
# sh /etc/init.d/volmgt stop |
Lorsque l'opération DR a abouti, entrez la commande suivante pour relancer le démon vold :
# sh /etc/init.d/volmgt start |
Sur les systèmes Sun Fire 6800, 4810, 4800 et 3800, la DR ne prend pas charge le gestionnaire HIPPI/P, SAI/P (bug 4466378) ni SunHSI/P (bug 4496362).
Vous devez exécuter la commande devfsadm(1M) pour voir les changements éventuels, notamment ceux de PCI vers cPCI.
Ne réinitialisez pas le contrôleur système (SC) pendant des opérations DR. Ne faites pas non plus de mise à jour flash, qui nécessite une réinitialisation en fin de processus.
Vous pouvez déconfigurer un ensemble E/S CompactPCI (cPCI) seulement si toutes les cartes sont dans un état de déconfiguration. Si une des cartes cPCI est occupée (p. ex. avec une interface plombée ou un disque monté), l'opération de déconfiguration de la carte échoue et l'état "busy" (occupé) s'affiche. Toutes les cartes cPCI doivent être déconfigurées avant de passer à la déconfiguration de l'ensemble E/S cPCI.
Lorsqu'un disque multivoie est connecté à deux cartes cPCI, il est possible de visualiser l'activité du disque sur les cartes lorqu'aucune activité n'est attendue. C'est pour cette raison que vous devez vous assurer qu'il n'existe aucune activité sur le côté local de la ressource. Cette condition a d'autant plus de chance de se produire lorsque vous tentez d'effectuer des opérations DR sur une carte cPCI occupée, même lorsqu'il n'y a aucune activité sur le côté local de la ressource. Une tentative successive de DR peut s'avérer nécessaire.
Lorsqu'un utilisateur dresse une liste des points de connexion en utilisant la commande cfgadm(1M) avec l'option -a, les logements cPCI et les bus PCI figurent tous dans la liste en tant que points de connexion. La commande cfgadm -a affiche un point de connexion pour un bus PCI bus en tant que N0.IB8::pci0. Il y a quatre points de connexion de ce genre pour chaque carte cPCI. L'utilisateur ne doit pas faire d'opération DR sur ces points ni sur le point de connexion sghsc (que la commande cfgadm -a affiche en tant que N0.IB8::sghsc4), parce que la DR n'est pas réellement exécutée, et que certaines ressoures internes sont retirées. Toutefois, cette opération est inoffensive.
Pour que la DR fonctionne correctement avec des cartes cPCI, les leviers qui sont insérés dans toutes les cartes cPCI au moment de l'initialisation de Solaris doivent être complètement engagés.
Récupérez le nom de groupe, l'adresse test et l'index de l'interface en tapant la commande suivante.
# ifconfig interface |
Par exemple, ifconfig hme0
Utilisez la commande if_mpadm(1M) comme suit :
# if_mpadm -d interface |
L'interface est ainsi mise hors ligne ce qui provoque la reprise des adresses sur une autre interface active du groupe. Si l'interface est déjà en état d'échec (fail), cette étape sert simplement à indiquer et à garantir que l'interface est hors ligne.
(Option) Déplombez l'interface.
Cette étape n'est nécessaire que si vous voulez utiliser la DR pour reconfigurer automatiquement l'interface à un moment ultérieur.
Retirer l'interface physique.
Pour plus d'informations, consultez la page de manuel cfgadm(1M) et le Sun Fire 6800, 4810, 4800 and 3800 Systems Dynamic Reconfiguration User Guide.
Attachez l'interface physique.
Pour plus d'informations, consultez la page de manuel cfgadm(1M) et le Sun Fire 6800, 4810, 4800 and 3800 Systems Dynamic Reconfiguration User Guide.
Une fois attachée, l'interface physique est automatiquement configurée à l'aide des valeurs de paramètres se trouvant dans le fichier de configuration hostname (/etc/hostname.interface, où interface correspond à une valeur telle que hme1 ou qfe2).
Le démon in.mpathd recommence alors à tester et détecter les réparations. Par conséquent, le démon provoque la reprise des adresses IP originales sur cette interface. L'interface doit à présent être en ligne et prête à être utilisée sous IPMP.
Si l'interface n'a pas été déplombée et réglée sur OFFLINE (HORS LIGNE) avant une opération de détachement précédente, l'opération de connexion décrite ici ne la configure pas automatiquement. Pour remettre l'interface sur ONLINE (EN LIGNE) et qu'elle puisse reprendre son adresse IP à la fin de la connexion phsysique, entrez la commande suivante : if_mpadm -r interface
Cette section traite de la mémoire permanente et de la nécessité de mettre le système d'exploitation au repos lors de la déconfiguration d'une carte système dotée d'une mémoire permanente.
Pour savoir rapidement si une carte est dotée d'une mémoire permanente il suffit d'exécuter la commande suivante en tant que super-utilisateur :
# cfgadm -av | grep permanent |
Le système répond, par exemple, par le message suivant, qui décrit la carte système 0 (zéro):
N0.SB0::memory connected configured ok base address 0x0, 4194304 KBytes total, 668072 KBytes permanent |
La mémoire permanente représente l'endroit où résident le noyau Solaris et ses données. Le noyau ne peut pas être libéré par la mémoire comme le font les processus utilisateur résidant sur d'autres cartes qui libèrent la mémoire en pageant le périphérique de swap. Par contre, pour libérer la mémoire, la commande cfgadm utilise la technique du copier-renommer .
La première étape de l'opération copier-renommer consiste à arrêter toute activité de mémoire sur le système en mettant sur pause toutes les opérations E/S et les activités des threads ; cette opération est communément appelé mise au repos. Pendant la mise au repos le système est gelé et ne répond pas aux événements externes tels que les paquets de réseau. La durée de la mise au repos dépend de deux facteurs : le nombre de périphériques E/S et de threads à arrêter et la quantité de mémoire à copier. En général, le nombre de périphériques E/S détermine le temps de mise au repos requis, parce qu'il faut mettre les périphériques E/S sur pause et les remettre en activité. En général, une mise au repos dure plus de deux minutes.
Etant donné qu'une mise au repos a un répercussion considérable, la cfgadm demande confirmation à l'utilisateur avant de mettre le système au repos. Si vous entrez :
# cfgadm -c unconfigure N0.SB0 |
Le système répond par une invite de confirmation :
System may be temporarily suspended, proceed (yes/no)? |
Si vous utilisez SunMC pour effectuer l'opération DR, une fenêtre surgissante affiche cette invite.
Entrez yes pour confirmer que l'impact de la mise au repos est acceptable, et poursuivre.
Cette section contient le synopsis et les numéros d'identification Sun des bugs les plus importants, relevés pendant le test de la DR. Cette liste n'inclut pas tous les bugs.
Description : si un système exécute le processus cryptorand du module SUNWski, une déconfiguration de mémoire (p. ex. dans le cadre de la déconnexion d'une carte UC/mémoire (SB)) provoque la fermeture de cryptorand tandis que les messages sont enregistrés dans /var/adm/messages. Cette action empêche aux services d'attribution de nombres aléatoires de sécuriser les sous-systèmes, par conséquent la mémoire présente au moment où le cryptorand est lancé ne devrait pas se déconfigurer.
Le processus cryptorand fournit un nombre aléatoire pour /dev/random. Une fois lancé cryptorand, le temps qu'il faut avant que /dev/random devienne disponible dépend de la quantité de mémoire du système. Il faut environ deux minutes par Go de mémoire. Les applications qui utilisent /dev/random pour obtenir des nombres aléatoires risquent de se bloquer temporairement. Il n'est pas nécessaire de relancer cryptorand si une carte UC/mémoire est ajoutée à un domaine.
Procédure : si une carte UC/mémoire est retirée du domaine, relancez cryptorand en entrant la commande suivante en tant que super-utilisateur :
# sh /etc/init.d/cryptorand start |
Description : une situation de panique se produit lorsqu'une carte système dotée d'une UC est retirée du système tandis que Solaris Bandwidth Manager (SBM) est en cours d'utilisation.
Procédure : n'installez pas SBM sur des systèmes qui seront utilisés pour faire des essais de DR, et n'exécutez pas les opérations DR de la carte système avec UC sur des systèmes sur lesquels est installé SBM.
Description : une opération DR de configuration se bloque avec une carte IBx (E/S) après quelques itérations réussies. Cette situation se produit lorsque l'opération DR est exécutée en même temps que le démon DMP qui applique la politique check_all avec un intervalle.
Procédure : pour éviter l'impasse entre le démon DMP et la reconfiguration dynamique de la carte système, entrez la commande suivante avant d'effectuer les opérations DR. Cette commande arrête et relance le démon DMP.
# /usr/sbin/vxdmpadm stop restore |
Description : lorsqu'un contrôleur SCSI est configuré mais pas occupé, il ne peut pas être déconnecté à aide de la commande DR cfgadm(1M).
Procédure : aucune.
Description : lorsqu'un client multi-thread de la bibliothèque cfgadm émet des demandes sbd simultanées, le système risque de se bloquer.
Procédure : aucune. Il n'existe actuellement aucune application qui utilise le multithread de la bibliothèque cfgadm.
Description : lorsque plusieurs opérations DR sont effectuées simultanément, ou lorsque psradm est exécuté en même temps qu'une opération DR, le système risque de se bloquer à cause d'une étreinte de mutex fatale.
Procédure : effectuez les opérations DR en série (une opération DR à la fois) ; et laissez chacune d'entre elles se terminer correctement avant d'exécuter psradm, ou avant de commencer une autre opération DR.
Description : un message d'erreur du bus de console apparaît parfois pendant les opérations get de SNMP sur l'objet cpuModDescr. Cette situation ne se produit pas fréquemment et seulement lorsque SunMC surveille un système. Lorsque le message s'affiche effectivement, unknown est restitué à SunMC en tant que valeur de l'objet cpuModDescr.
Procédure : la seule solution consiste à ne pas utiliser SunMC. Toutefois, le message est inoffensif, et le problème se produit rarement, mieux vaut l'ignorer tout simplement. Le seul seul est de voir l'IUG SunMC afficher parfois la valeur erronée de cpuModDescr.
Un système Sun Fire risque de paniquer lors de la mise sur pause sync d'une ou de plusieurs cartes UC pendant une opération DR. La pause Sync est requise pour attacher ou détacher les cartes. Si des interruptions mondo sont en suspens, et que pour un motif quelconque le SC ne réussit pas à terminer la pause sync avant la fin du délai limite send_mondo timeout de une seconde, le système panique.