En este documento , describimos con mi compañero Nicolas Morono, un problema con el demonio ldmd y como lo recuperar la configuracion de los LDOMs desde el archivo ldm-db.xml
Al querer asignarle una lun a un dominio nos dio el siguiente error :
# ldm list
Failed to connect to logical domain manager: Connection
refused
chequeo y el servicio ldmd esta caido
# svcs -xv
svc:/ldoms/ldmd:default (Logical Domains Manager)
State: maintenance since June 2, 2016 06:36:16 PM ART
Reason: Start method exited with $SMF_EXIT_ERR_FATAL.
See: /var/svc/log/ldoms-ldmd:default.log
Impact: This service is not running.
en el /var/adm/messages estan estos errores registrados
Jun 2 18:36:16 m5-1-pdom2 svc.startd[33]: [ID 652011
daemon.warning] svc:/ldoms/ldmd:default: Method
"/opt/SUNWldm/bin/ldmd_start" failed with exit status 95.
Jun 2 18:36:16 m5-1-pdom2 svc.startd[33]: [ID 748625
daemon.error] ldoms/ldmd:default failed fatally: transitioned to maintenance
(see 'svcs -xv' for details)
Jun 2 18:36:16 m5-1-pdom2 fmd: [ID 377184 daemon.error]
SUNW-MSG-ID: SMF-8000-YX, TYPE: defect, VER: 1, SEVERITY: major
Jun 2 18:36:16 m5-1-pdom2 EVENT-TIME: Thu Jun 2 18:36:16 ART
2016
Jun 2 18:36:16 m5-1-pdom2 PLATFORM: SPARC-M5-32, CSN:
AK00xx8x1, HOSTNAME: m5-1-pdom2
Jun 2 18:36:16 m5-1-pdom2 SOURCE: software-diagnosis, REV:
0.1
Jun 2 18:36:16 m5-1-pdom2 EVENT-ID:
889f64a0-0102-efd6-997f-8e83e7fba09a
Jun 2 18:36:16 m5-1-pdom2 DESC: A service failed - a start,
stop or refresh method failed.
Jun 2 18:36:16 m5-1-pdom2 AUTO-RESPONSE: The service has
been placed into the maintenance state.
Jun 2 18:36:16 m5-1-pdom2 IMPACT: svc:/ldoms/ldmd:default is
unavailable.
Jun 2 18:36:16 m5-1-pdom2 REC-ACTION: Run 'svcs -xv
svc:/ldoms/ldmd:default' to determine the generic reason why the service
failed, the location of any logfiles, and a list of other services impacted.
Please refer to the associated reference document at http://support.oracle.com/msg/SMF-8000-YX
for the latest service procedures and policies regarding this diagnosis.
Jun 2 18:40:28 m5-1-pdom2 cmlb: [ID 107833 1
En el log del svc estan estos errores
# cat /var/svc/log/ldoms-ldmd:default.log
Jun 02 18:35:16 timeout waiting for op
HVctl_op_get_bulk_res_stat
Jun 02 18:35:16 fatal error: waiting for hv response timeout
[ Jun 2 18:35:16 Stopping because process dumped core. ]
[ Jun 2 18:35:16 Executing stop method (:kill). ]
[ Jun 2 18:35:16 Executing start method
("/opt/SUNWldm/bin/ldmd_start"). ]
Jun 02 18:36:16 timeout waiting for op HVctl_op_hello
Jun 02 18:36:16 fatal error: waiting for hv response timeout
[ Jun 2 18:36:16 Method "start" exited with status
95. ]
Se busco en los documentos de oracle y llegamos a la
conclusion de que habia un bug en versiones de firmware inferiores a 1.14.2 que
se correspondia con nuestro entorno.
Se abrio un service request para confirmar lo analizado por
nosotros y la solucion propuesta fue la misma.
En si, el bug es en Hypervisors inferiores a la version
1.14.2.
- La solución a corto plazo es realizar un power-cycle del
sistema.
- La solución a mediano/largo plazo es actualizar el
Firmware del sistema a una version reciente (HypV 1.14.2 o superior).
Llegado a este punto nos encontramos que las soluciones
implican un power-cycle que implica bajar todos los ldoms corriendo y el
reinicio total de la maquina.
Optamos por realizar el upgrade de firmware y al realizar el
powercycle nos damos cuenta que la ultima configuracion de ldoms guardada es
vieja y vamos a perder 6 meses de
modificaciones en las configuraciones de los ldoms.
(creaciones de ldoms nuevos, asignaciones de discos, asignacion de placas de
red, etc)
La solucion aplicada para solucionar esto fue la siguiente:
Se busco en /var/opt/SUNWldm el archivo ldom-db.xml previo a
bootear el equipo, ese archivo tiene toda lo configuracion que esta activa en
el pdom
independientemente de si esta o no guardada en la sp.
Se dejo una copia del archivo en /usr/scripts (asi no era
necesario realizar un restore del backup )
Se realiza el power-cycle desde ilom
stop
Servers/PDomains/PDomain_2/HOST
y luego
start Servers/PDomains/PDomain_2/HOST
Una vez booteado el equipo y con los ldoms bajos y unbind,
tomamos backup del archivo ldom-db.xml y deshabilitamos el demonio de ldoms.
root@ # ldm ls
NAME STATE FLAGS CONS VCPU MEMORY UTIL NORM UPTIME
primary active -n-cv- UART 8 16G 0.2% 0.2% 8d 2h 38m
dnet1002 active -n---- 5002 8 8G 0.5% 0.5% 5d 2h 49m
dsunt100 active -n---- 5000 48 40G 0.0% 0.0% 8d 1h 34m
dsunt200 active -n---- 5001 48 40G 0.0% 0.0% 2m
root@#
root@ # ldm stop dsunt200
LDom dsunt200 stopped
root@ # ldm unbind dsunt200
root@ # ldm stop dsunt100
LDom dsunt100 stopped
root@ # ldm unbind dsunt100
root@ # ldm stop dnet1002
LDom dnet1002 stopped
root@ # ldm unbind dnet1002
root@ # ldm ls
NAME STATE FLAGS CONS VCPU MEMORY UTIL NORM UPTIME
primary active -n-cv- UART 8 16G 0.5% 0.5% 8d 2h 40m
dnet1002 inactive ------ 8 8G
dsunt100 inactive ------ 48 40G
dsunt200 inactive ------ 48 40G
root@ #
cd /var/opt/SUNWldm
cp -p ldom-db.xml ldom-db.xml.orig
svcadm disable ldmd
##### aca habia backupeado y dejado en /usr/scripts/ el
archivo con la data. Ahora pisamos el original de /var/opt/SUNWldm
cp -p /usr/scripts/ldom-db.xml /var/opt/SUNWldm/ldom-db.xml
# Volvemos a habilitar el demonio.
svcadm enable ldmd
### chequeo la config , bind y start de los dominios si
quedaron ok. Aca luego de chequear la configuracion se le dio un init 6 para
que reinicie normalmente
y despues de eso se dio bind y start a los dominios.
root@ # ldm bind dsunt200
root@ # ldm start dsunt200
LDom dsunt200 started
root@ # ldm bind dsunt100
root@ # ldm start dsunt100
LDom dsunt100 started
root@ # ldm bind dnet1002
root@ # ldm start dnet1002
LDom dnet1002 started
root@ # ldm ls
NAME STATE FLAGS CONS VCPU MEMORY UTIL NORM UPTIME
primary active -n-cv- UART 8 16G 3.7% 3.7% 8d 2h 55m
dnet1002 active -n---- 5002 8 8G 0.7% 0.7% 3s
dsunt100 active -n---- 5000 48 40G 0.0% 0.0% 2s
dsunt200 active -n---- 5001 48 40G 9.1% 1.0% 2s
root@ #
Este comentario ha sido eliminado por un administrador del blog.
ResponderEliminar