Etiquetado de discos para ASM en Solaris.
* Con la ayuda de Sergio Ramírez en la parte de Solaris. Muchísimas gracias, compañero!.
Cuando he tenido que etiquetar discos en linux para que el ASM los reconozca para candidatos, la librería asmlib me lo ha puesto muy fácil, pues solamente era necesario marcar los discos de la siguiente forma.
[root@host Server]# /etc/init.d/oracleasm createdisk ASMDISK1_DATA /dev/mapper/racdb_asm1
Marking disk «ASMDISK1_DATA» as an ASM disk: [ OK ]
[root@host Server]# /etc/init.d/oracleasm createdisk ASMDISK1_FRA /dev/mapper/racdb_asm2
Marking disk «ASMDISK1_FRA» as an ASM disk: [ OK ]
[root@cun0401 Server]# /etc/init.d/oracleasm listdisks
ASMDISK1_DATA
ASMDISK1_FRA
Pero esta librería no está disponible para Solaris y el proceso de etiquetar los discos para que ASM los vea como candidatos no resulta tan evidente como se describe en la documentación de instalación de grid en Solaris.
En concreto, una vez los discos están visibles y los dispositivos son del propietario grid:dba , en el comando format hay que modificar los volúmenes tal como se muestra.
root@host:~$ format
Searching for disks…done
AVAILABLE DISK SELECTIONS:
0. c0t0d0
/pci@0,600000/pci@0/pci@8/pci@0/scsi@1/sd@0,0
1. c0t1d0 Solaris
/pci@0,600000/pci@0/pci@8/pci@0/scsi@1/sd@1,0
2. c2t600A0B800029B03400001B474BE28D9Bd0
/scsi_vhci/ssd@g600a0b800029b03400001b474be28d9b
3. c2t600A0B800029B034000022A64DB65A53d0
/scsi_vhci/ssd@g600a0b800029b034000022a64db65a53 –> Este es el disco a añadir
4. c2t600A0B800029B034000020104C43B3C1d0
/scsi_vhci/ssd@g600a0b800029b034000020104c43b3c1
5. c2t600A0B800029B034000021104C612E6Dd0
/scsi_vhci/ssd@g600a0b800029b034000021104c612e6d
6. c2t600A0B8000269A3200007F3F4BE25284d0
/scsi_vhci/ssd@g600a0b8000269a3200007f3f4be25284
7. c2t600A0B8000269A32000084B24CC8D1D5d0
/scsi_vhci/ssd@g600a0b8000269a32000084b24cc8d1d5
8. c2t600A0B8000269A32000084C74CD0F3D2d0
/scsi_vhci/ssd@g600a0b8000269a32000084c74cd0f3d2
9. c2t600A0B8000269A320000802A4BF3820Ad0
/scsi_vhci/ssd@g600a0b8000269a320000802a4bf3820a
10. c2t600A0B8000269A320000834C4C439596d0
/scsi_vhci/ssd@g600a0b8000269a320000834c4c439596
11. c2t600A0B8000269A320000834F4C43960Fd0
/scsi_vhci/ssd@g600a0b8000269a320000834f4c43960f
Specify disk (enter its number): 3 –> corresponde al identificador del disco a añadir
Select partitioning base:
0. Current partition table (original)
1. All Free Hog
Choose base (enter number) [0]? 1 –> para modificarlas todas las particiones
Part Tag Flag Cylinders Size Blocks
0 root wm 0 0 (0/0/0) 0
1 swap wu 0 0 (0/0/0) 0
2 backup wu 0 – 51197 100.00GB (51198/0/0) 209707008
3 unassigned wm 0 0 (0/0/0) 0
4 unassigned wm 0 0 (0/0/0) 0
5 unassigned wm 0 0 (0/0/0) 0
6 usr wm 0 0 (0/0/0) 0
7 unassigned wm 0 0 (0/0/0) 0
Do you wish to continue creating a new partition
table based on above table[yes]? Yes -> Confirmamos que deseamos crear nuestras particiones.
Free Hog partition[6]? 7 -> Determina que partición es la que almacena el espacio libre
Enter size of partition ‘0’ [0b, 0c, 0.00mb, 0.00gb]: 500mb -> En la partición 0 definimos un tamaño de 500mb la que necesita ASM para su gestión.
Enter size of partition ‘1’ [0b, 0c, 0.00mb, 0.00gb]:
Enter size of partition ‘3’ [0b, 0c, 0.00mb, 0.00gb]:
Enter size of partition ‘4’ [0b, 0c, 0.00mb, 0.00gb]:
Enter size of partition ‘5’ [0b, 0c, 0.00mb, 0.00gb]:
Enter size of partition ‘6’ [0b, 0c, 0.00mb, 0.00gb]: 99.50gb -> Configuramos el resto del tamaño en una de las particiones
Part Tag Flag Cylinders Size Blocks
0 root wm 0 – 249 500.00MB (250/0/0) 1024000
1 swap wu 0 0 (0/0/0) 0
2 backup wu 0 – 51197 100.00GB (51198/0/0) 209707008
3 unassigned wm 0 0 (0/0/0) 0
4 unassigned wm 0 0 (0/0/0) 0
5 unassigned wm 0 0 (0/0/0) 0
6 usr wm 250 – 51193 99.50GB (50944/0/0) 208666624
7 unassigned wm 51194 – 51197 8.00MB (4/0/0) 16384
Okay to make this the current partition table[yes]? Yes -> Confirmamos que esta correcto tal cual la hemos definido
Enter table name (remember quotes): «asm» -> Le ponemos un nombre al modelo de configuración de la tabla, para posteriores discos para la ASM del mismo tamaño.
Ready to label disk, continue? yes
partition> q –> salimos del menú de partición
FORMAT MENU:
disk – select a disk
type – select (define) a disk type
partition – select (define) a partition table
current – describe the current disk
format – format and analyze the disk
repair – repair a defective sector
label – write label to the disk
analyze – surface analysis
defect – defect list management
backup – search for backup labels
verify – read and display labels
save – save new disk/partition definitions
inquiry – show vendor, product and revision
volname – set 8-character volume name
! – execute , then return
quit
format> verify -> Mediante el comando verify comprobamos que esta correcto.
Primary label contents:
Volume name = < >
ascii name =
pcyl = 51200
ncyl = 51198
acyl = 2
nhead = 64
nsect = 64
Part Tag Flag Cylinders Size Blocks
0 root wm 0 – 249 500.00MB (250/0/0) 1024000
1 swap wu 0 0 (0/0/0) 0
2 backup wu 0 – 51197 100.00GB (51198/0/0) 209707008
3 unassigned wm 0 0 (0/0/0) 0
4 unassigned wm 0 0 (0/0/0) 0
5 unassigned wm 0 0 (0/0/0) 0
6 usr wm 250 – 51193 99.50GB (50944/0/0) 208666624
7 unassigned wm 51194 – 51197 8.00MB (4/0/0) 16384
format> q
Ahora, desde la interfaz gráfica (asmca) o desde sqlplus, Oracle es capaz de identificar los discos como candidatos para añadirlos al diskgroup ASM que corresponda.
-bash-3.00$ sqlplus / as sysasm
SQL> select path, name from v$asm_disk;
PATH NAME
————————————————– ——————————
/dev/did/rdsk/d9s6
/dev/did/rdsk/d9s7
/dev/did/rdsk/d9
/dev/did/rdsk/d4s6 RECOVERY_0000
/dev/did/rdsk/d22s6 DATOS_0001
/dev/did/rdsk/d18s6 OCRVOTING_0000
/dev/did/rdsk/d19s6 OCRVOTING_0001
Al aparecer los tres nuevos volúmenes como candidatos, ya es posible añadir el disco al diskgroup desde sqlplus conectado como SYSASM.
SQL> alter diskgroup DATOS add disk ‘/dev/did/rdsk/d9s6’;
SQL> select path, name from v$asm_disk;
PATH NAME
————————————————– ——————————
/dev/did/rdsk/d9s7
/dev/did/rdsk/d9
/dev/did/rdsk/d4s6 RECOVERY_0000
/dev/did/rdsk/d9s6 DATOS_0000
/dev/did/rdsk/d22s6 DATOS_0001
/dev/did/rdsk/d18s6 OCRVOTING_0000
/dev/did/rdsk/d19s6 OCRVOTING_0001
Deja una respuesta