En esta sección se describen algunas limitaciones conocidas sobre el funcionamiento de DR en los sistemas Sun Fire 6800, 4810, 4800 y 3800.
Si se agrega una placa del sistema a un dominio sin utilizar los procedimientos de DR, por ejemplo, ejecutando el comando addboard en la línea de comandos del controlador del sistema, es preciso ejecutar el comando setkeyswitch off y después setkeyswitch on para activar la placa en el sistema.
Esta versión de DR no funciona con Sun StorEdge Traffic Manager.
Antes de realizar operaciones de DR en alguna placa de E/S (IBx), es preciso introducir el comando siguiente para detener el daemon de vold:
# sh /etc/init.d/volmgt stop |
Una vez realizada la operación de DR, introduzca el siguiente comando para reiniciar el daemon de vold:
# sh /etc/init.d/volmgt start |
En los sistemas Sun Fire 6800, 4810, 4800 y 3800, DR no admite los controladores HIPPI/P, SAI/P (error 4466378) ni SunHSI/P (error 4496362).
Es preciso ejecutar el comando devfsadm(1M) para ver los cambios realizados, especialmente los cambios de PCI a cPCI.
No debe reiniciarse ni restaurarse el controlador del sistema (SC) durante las operaciones de DR. Tampoco se debe ejecutar flashupdate, ya que es necesario reiniciar al término de la ejecución.
Sólo se puede desconfigurar una placa de E/S CompactPCI (cPCI) si todas las tarjetas de la placa están sin configurar. Si alguna tarjeta cPCI está ocupada (por ejemplo, tiene una interfaz abierta o un disco montado), la operación de desconfiguración de la placa fracasará indicado el estado "busy". Todas las tarjetas cPCI deben estar desconfiguradas antes de desconfigurar una placa de E/S cPCI.
Cuando un disco multirruta está conectado a dos tarjetas cPCI, es posible observar una actividad de disco inesperada en ambas tarjetas. Por esta razón, asegúrese de que no existe actividad alguna en el lado local del recurso. La probabilidad de que esto suceda se da sobre todo al tratar de realizar una operación de DR en una tarjeta cPCI con estado "busy" (ocupado), incluso aunque no haya actividad en el lado local del recurso. Puede que sea necesario reintentar la operación de DR.
Cuando un usuario utiliza el comando cfgadm(1M) con la opción -a para ver la lista de puntos de conexión, dicha lista incluye las ranuras cPCI y los buses PCI. El comando cfgadm -a muestra el punto de conexión correspondiente a un bus PCI como N0.IB8::pci0 y existen cuatro puntos de conexión de este tipo por cada placa cPCI. No deberían realizarse operaciones de DR con estos puntos de conexión, ni tampoco con el punto sghsc (que el comando cfgadm -a presenta como N0.IB8::sghsc4), ya que DR en realidad no se ejecuta y se eliminan algunos recursos internos. De todos modos, la realización de estas operaciones no entraña riesgo.
Para que DR funcione correctamente con las tarjetas cPCI, los anclajes de todas las tarjetas cPCI que se encuentren insertadas en el momento de arranque de Solaris deben estar perfectamente acoplados.
Recupere los datos y parámetros de direcciones asociados a la Interfaz escribiendo el comando.
# ifconfig interfaz |
Por ejemplo, ifconfig hme0
Ejecute el comando if_mpadm(1M) de la manera siguiente:
# if_mpadm -d interfaz |
Al hacerlo se desconecta la interfaz y las direcciones de sustitución en caso de fallo (failover) se trasladan a otra interfaz activa del grupo. Si la interfaz ya tiene estado de error, este paso simplemente confirma que la interfaz está desconectada.
(Opcional) Desactive la interfaz con unplumb.
Esta operación sólo es necesaria si va a querer utilizar DR para reconfigurar la interfaz de forma automática más adelante.
Extraiga la tarjeta.
Consulte la página del comando man de cfgadm(1M) y Sun Fire 6800, 4810, 4800 and 3800 Systems Dynamic Reconfiguration User Guide para obtener más información.
Introduzca la tarjeta.
Consulte la página del comando man de cfgadm(1M) y el documento Sun Fire 6800, 4810, 4800 and 3800 Systems Dynamic Reconfiguration User Guide para obtener más información.
Después de introducir la tarjeta, la interfaz se configura automáticamente utilizando los parámetros almacenados en el archivo de configuración hostname (/etc/hostname.interfaz, donde interfaz puede ser un valor como hme1 o qfe2).
Esto activa el daemon in.mpathd, con lo que se reanuda el sondeo y se detectan los componentes reparados. in.mpathd hace que las direcciones IP originales regresen (failback) a su interfaz inicial. De esta forma, la interfaz debería estar conectada y lista para funcionar con IPMP.
Si la interfaz no se ha desactivado y se ha dejado en estado OFFLINE antes de extraerla, la operación de instalación aquí descrita no podrá configurarla de forma automática. Para volver a poner la interfaz en estado ONLINE y recuperar su dirección IP después de instalarla físicamente, introduzca el siguiente comando: if_mpadm -r interfaz.
En esta sección se explica el concepto de memoria permanente y los requisitos necesarios para interrumpir momentáneamente el funcionamiento del sistema operativo cuando se desconfigura una placa que tiene memoria permanente.
Una forma rápida de determinar si una placa tiene memoria permanente es ejecutar el siguiente comando como superusuario:
# cfgadm -av | grep permanent |
El sistema presenta una salida similar a la siguiente, en la que se describe la placa de sistema 0 (cero):
N0.SB0::memory connected configured ok base address 0x0, 4194304 KBytes total, 668072 KBytes permanent |
La memoria permanente es el lugar en el que residen el núcleo (kernel) de Solaris y sus datos. La memoria que contiene el núcleo no puede liberarse de la misma forma que se liberan las páginas de memoria de intercambio que residen en otras placas y que contienen los procesos de usuario. En su lugar, cfgadm utiliza una técnica de copia-redenominación para liberar la memoria.
El primer paso de una operación de copia-redenominación es detener cualquier actividad de la memoria en el sistema interrumpiendo las operaciones de E/S y los subprocesos (threads). Esto se denomina quiescence en inglés. Durante esta "pausa", el sistema permanece parado y no responde a eventos externos, como la recepción de paquetes de red. La duración de la interrupción depende de dos factores: el número de dispositivos de E/S y procesos que deben detenerse, y la cantidad de memoria que debe copiarse. Normalmente, el número de dispositivos de E/S salida determina el tiempo de interrupción, ya que es necesario detener y reanudar todos estos dispositivos. En general, el estado de interrupción dura más de dos minutos.
Puesto que la interrupción del sistema tiene un impacto notable, cfgadm pide confirmación antes de realizar la operación. Si escribe:
# cfgadm -c unconfigure N0.SB0 |
El sistema presenta un mensaje pidiendo confirmación:
System may be temporarily suspended, proceed (yes/no)? |
Si está utilizando SunMC para realizar la operación de DR, el mensaje aparece en una ventana emergente.
Introduzca yes para aceptar la operación y continuar.