¿Cómo mover ocr y vdisk a nuevo disk array?

No hace mucho, uno de mis clientes inició el proceso de migración de su disk storage system, desde EMC CX4 hacia EMC VNX. Ellos tienen sus bases de datos operando con Oracle RAC 11.2.0.3, por lo que siguieron el procedimiento de agregar LUNs del nuevo EMC VNX en los diskgroups de datos, para luego retirar los LUNs del antiguo EMC CX4, aprovechando el rebalanceo automático que hace ASM al agregarle y removerle discos.

Hasta aquí todo bien, pero quedaba el trabajo sobre el diskgroup que contiene el ocr, voting disks y spfile de ASM, llamado en este caso +OCR, para el cual el procedimiento no es tan simple como agregar y retirar discos.

A continuación les mostraré en detalle el procedimiento que seguí para concluir con este último paso en la migración de disk storage system para este diskgroup, cumpliendo el requerimiento expreso del cliente: no suspender el servicio.

Empezaré por mostrarles el escenario sobre el cual se trabajó:

El diskgroup +OCR fue creado con redundancia normal, por lo cual es requisito obligatorio emplear 3 discos. El objetivo es que sus contenidos sean ahora trasladados a 3 discos en el nuevo disk array, pero no se puede hacer directamente como en el caso de un diskgroup de datos, básicamente debido a los voting disk.

El ocr y el spfile de ASM son archivos que se distribuyen entre los discos que constituyen el diskgroup sobre el cual residen, pero Oracle crea un voting disk idéntico en cada disco del diskgroup. Así, al agregar mas discos al diskgroup, el ocr y el spfile son candidatos a ser redistribuidos entre todos los discos, pero los voting disk no, se quedan en sus discos originales, por lo que requieren de un tratamiento especial.

La nota 428681.1, OCR / Vote disk Maintenance Operations: (ADD/REMOVE/REPLACE/MOVE), tiene el detalle de lo que debe hacer en diversos escenarios, de cuya lectura queda claro que no es posible agregar mas voting disks, sino solamente moverlos a otro diskgroup. Por esta razón se solicitó la creación de 3 nuevos LUNs, sobre los cuales se crearía el diskgroup que albergaría temporalmente a los voting disk, de forma que quedara algo así:

Luego que los LUNs estuvieron provisionados y debidamente asignados a todos los nodos del RAC, se procedió a la creación del diskgroup VDISK, mediante el utilitario ASMCA.

Con esto ya estamos listos para el paso inicial: el movimiento de voting disks.

[oracle@rac1]$ crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
 1. ONLINE   1e56372cc94a4f92bfd9952beef36a5b (/dev/rhdiskpower3) [OCR]
 2. ONLINE   570dd695f7ea4f08bf86d92adc2a2343 (/dev/rhdiskpower1) [OCR]
 3. ONLINE   027f719d79914f72bfc1fdfb3098209b (/dev/rhdiskpower2) [OCR]
Located 3 voting disk(s).

[oracle@rac1]$ crsctl replace votedisk +VDISK
Successful addition of voting disk 42cd3a1355714febbf8b8be58da5d277.
Successful addition of voting disk 95b0b904a7844f6bbf35881a7fd545f6.
Successful addition of voting disk 189d6f4cba754fc6bf1d8f94fd70fe89.
Successful deletion of voting disk 1e56372cc94a4f92bfd9952beef36a5b.
Successful deletion of voting disk 570dd695f7ea4f08bf86d92adc2a2343.
Successful deletion of voting disk 027f719d79914f72bfc1fdfb3098209b.
Successfully replaced voting disk group with +VDISK.
CRS-4266: Voting file(s) successfully replaced

[oracle@rac1]$ crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
 1. ONLINE   42cd3a1355714febbf8b8be58da5d277 (/dev/rhdiskpower57) [VDISK]
 2. ONLINE   95b0b904a7844f6bbf35881a7fd545f6 (/dev/rhdiskpower130) [VDISK]
 3. ONLINE   189d6f4cba754fc6bf1d8f94fd70fe89 (/dev/rhdiskpower90) [VDISK]
Located 3 voting disk(s).
Apoyados en el utilitario crsctl, hemos trasladado los voting disks desde el diskgroup +OCR hacia el diskgroup +VDISK, siendo el escenario actual:
Move vdisk
Move vdisk
Ahora que el diskgroup +OCR contiene solamente el ocr y el spfile de ASM, ya es posible recurrir al rebalanceo de ASM, por lo que procedemos a agregarle los LUNs provisionados en el disk array nuevo, empleando nuevamente el utilitario ASMCA.

Luego de agregar los 3 LUNs del nuevo disk array, la configuración es:

Ahora ya es posible retirar los discos del disk array antiguo, siempre apoyados con ASMCA.

Con los LUNs antiguos ya removidos, la nueva situación es:
Ahora que los contenidos del diskgroup OCR residen exclusivamente sobre LUNs del nuevo array disk, es hora de retornar los voting disks a su diskgroup original.
[oracle@rac1]$ crsctl replace votedisk +OCR
Successful addition of voting disk 5385fdac3eb44f96bf206fc7cce7fe48.
Successful addition of voting disk a4a5d6afbd064fa2bffe306654b0f3ac.
Successful addition of voting disk 2cbc13a0ff444fd7bf79670b75fe42c4.
Successful deletion of voting disk 42cd3a1355714febbf8b8be58da5d277.
Successful deletion of voting disk 95b0b904a7844f6bbf35881a7fd545f6.
Successful deletion of voting disk 189d6f4cba754fc6bf1d8f94fd70fe89.
Successfully replaced voting disk group with +OCR.
CRS-4266: Voting file(s) successfully replaced

[oracle@rac1]$ crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
 1. ONLINE   5385fdac3eb44f96bf206fc7cce7fe48 (/dev/rhdiskpower1002) [OCR]
 2. ONLINE   a4a5d6afbd064fa2bffe306654b0f3ac (/dev/rhdiskpower1001) [OCR]
 3. ONLINE   2cbc13a0ff444fd7bf79670b75fe42c4 (/dev/rhdiskpower1000) [OCR]
Located 3 voting disk(s).
Finalmente hemos llegado al siguiente escenario:
En este momento ya tenemos tanto el ocr, el spfile y los voting disks en el diskgroup +OCR, usando únicamente LUNs del nuevo disk storage system EMC VNX, por lo que es posible eliminar el diskgroup +VDISK, ya no necesitamos más de él.
Con esto podemos dar por concluida la tarea de movimiento de los contenidos del diskgroup +OCR (ocr, voting disks, spfile de ASM), hacia el nuevo disk array EMC VNX, sin suspensión alguna del servicio y en muy pocos minutos. Desde luego, el procedimiento fue previamente probado en un ambiente virtualizado, pues una cosa es lo que dice la documentación y otra la que pasa en la vida real, por lo que es altamente recomendable que Uds. tambien lo hagan, recuerden que cada instalación tiene su particularidades, así que mejor no correr riesgos innecesarios. Será hasta la próxima amigos!
¿Te pareció interesante este artículo?, ¿te quedaron algunas dudas?, ¿quieres sugerirme un tema a tratar?, pues déjame tus comentarios o ¡contáctame ahora mismo!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Posts Relacionados

Aprenda a identificar la fila involucrada en la ocurrencia del evento de espera "enq: TX - row lock contention"
Aprenda a resolver el error CRS-2304 GPnP profile signature verification failed al iniciar una base de datos 11.2 en un cluster 19c.
Aprenda a corregir los permisos dañados de un Oracle Home, ya sea de Oracle Grid o de Oracle Database Server

¿Necesitas Ayuda?

Completa estos datos y estaré en contacto a la brevedad.