You are hereBlogues / almudena's blog / Cómo reutilizar discos en ASM movendo un disco dun DG a outro

Cómo reutilizar discos en ASM movendo un disco dun DG a outro


Por: almudena - Publicado o: 28 September 2012

Partimos dunha situación onde temos un DG, PRODATA, ao 91% de ocupación que é, polo tanto, preciso ampliar e empregaremos para elo un disco que pertence a doutro DG, FRAOLD, que está ao 6%:

select name,state,total_mb,free_mb,
       round(((total_mb-free_mb)/total_mb)*100,0)||'%' as pct_used
from v$asm_diskgroup;

NAME               STATE          TOTAL_MB    FREE_MB PCT_USED
--------------------------------------------------------------------------------
PRODATA            MOUNTED            143353    13168 91%
FRAOLD             MOUNTED             61437    57928 6%
PROFRA             MOUNTED             81916    19312 76%


Consultamos en ASM os discos que ten o DG FRAOLD:

SQL> set pages 100
column  path format a20
column  name format a20
select name,total_mb,path,header_status,mode_status
from v$asm_disk
where name like 'FRAOLD%'
order by path
/
NAME          TOTAL_MB PATH             HEADER_STATUS    MODE_STATUS
-------------------- ---------- -------------------- ------------------------------------------------------------------
FRAOLD01      20479 ORCL:FRAOLD01         MEMBER          ONLINE
FRAOLD02      20479 ORCL:FRAOLD02         MEMBER          ONLINE
FRAOLD03      20479 ORCL:FRAOLD03         MEMBER          ONLINE

E agora buscamos o disposivo fisico cos que se corresponden. Para elo podemos facer uso do seguinte comando:

fdisk -l |grep dev | grep 1 |grep -v Disco | awk '{print "/etc/init.d/oracleasm querydisk " $1 }'
/etc/init.d/oracleasm querydisk /dev/sda1
/etc/init.d/oracleasm querydisk /dev/sdb1
/etc/init.d/oracleasm querydisk /dev/sdc1
/etc/init.d/oracleasm querydisk /dev/sdd1
/etc/init.d/oracleasm querydisk /dev/sde1
/etc/init.d/oracleasm querydisk /dev/sdf1



co que obtemos que o disco ASM FRAOLD03 se corresponde co dispositivo físico /dev/sdf:

oracle1:~ # /etc/init.d/oracleasm querydisk /dev/sdf1
Device "/dev/sdf1" is marked an ASM disk with the label "FRAOLD03"

A continuación eliminados o disco FRAOLD03 no DG FRAOLD:

sqlplus / as sysadm:

SQL> alter diskgroup FRAOLD  drop disk 'FRAOLD03';

Diskgroup altered.


E comprobamos que agora este disco aparece coa cabeceira en estado FORMER (o que indica que o disco xa formou parte dun DG do que foi eliminado correctamente polo que pode ser empregado para añadir a outro DG)

SQL> set lines 160
set pages 100
column  path format a20
column  name format a20
select name,total_mb,path,header_status,mode_status
from v$asm_disk
order by path
/SQL>
NAME         TOTAL_MB PATH            HEADER_STATUS          MODE_STATUS
-------------------- ---------- -------------------- ------------------------------------ ---------------------
PRODATA01      20479 ORCL:PRODATA01         MEMBER                  ONLINE
PRODATA02      20479 ORCL:PRODATA02         MEMBER                  ONLINE
PRODATA03      20479 ORCL:PRODATA03         MEMBER                  ONLINE
PRODATA04      20479 ORCL:PRODATA04         MEMBER                  ONLINE
PRODATA05      20479 ORCL:PRODATA05         MEMBER                  ONLINE
PRODATA06      20479 ORCL:PRODATA06         MEMBER                  ONLINE
PRODATA07      20479 ORCL:PRODATA07         MEMBER                  ONLINE
FRAOLD01       20479 ORCL:FRAOLD01          MEMBER                  ONLINE
FRAOLD02       20479 ORCL:FRAOLD02          MEMBER                  ONLINE
                   0 ORCL:FRAOLD03          FORMER                  ONLINE
PROFRA01       20479 ORCL:PROFRA01          MEMBER                  ONLINE
PROFRA02       20479 ORCL:PROFRA02          MEMBER                  ONLINE
PROFRA03       20479 ORCL:PROFRA03          MEMBER                  ONLINE
PROFRA04       20479 ORCL:PROFRA04          MEMBER                  ONLINE


Vemos tamén, dende linea de comandos, que aparece como posible candidato para ser empregado por ASM:

oracle@oracle1:~> asmcmd  lsdsk -k --candidate
Total_MB  Free_MB  OS_MB  Name      Failgroup  Library                                               Label     UDID  Product  Redund   Path
       0        0  20479                       ASM Library - Generic Linux, version 2.0.4 (KABI_V2)  FRA03                    UNKNOWN  ORCL:FRAOLD03

Como queremos empregar este disco para o DG PROFRA imos cambiar a etiqueta de FRAOLD3 por PRODATA08, para elo recrearemos o disco en ASM:

oracle1:~ # /etc/init.d/oracleasm querydisk /dev/sdf1
Device "/dev/sdf1" is marked an ASM disk with the label "FRAOLD03"
oracle1:~ # /etc/init.d/oracleasm deletedisk FRAOLD03
Removing ASM disk "FRAOLD03":                                            done
oracle1:~ # /etc/init.d/oracleasm scandisks
Scanning the system for Oracle ASMLib disks:                          done
oracle1:~ # oracleasm listdisks |grep FRA
FRAOLD01
FRAOLD02
PROFRA01
PROFRA02
PROFRA03
PROFRA04
oracle1:~ #
oracle1:~ # oracleasm listdisks |grep FRA
FRAOLD01
FRAOLD02
PROFRA01
PROFRA02
PROFRA03
PROFRA04
oracle1:~ # 

No outro nodo do cluster (oracle2) facemos un scaneo dos discos para que detecte o cambio:

oracle@oracle2:~> su -
Contraseña:
oracle2:~ # /etc/init.d/oracleasm scandisks
Scanning the system for Oracle ASMLib disks:                          done
oracle2:~ # oracleasm listdisks |grep FRA
FRAOLD01
FRAOLD02
PROFRA01
PROFRA02
PROFRA03
PROFRA04
oracle2:~ #


E agora creamos de novo o disco en ASM:

oracle1:~ # /etc/init.d/oracleasm querydisk /dev/sdf1
Device "/dev/sdf1" is not marked as an ASM disk

oracle1:~ # /etc/init.d/oracleasm createdisk PRODATA08 /dev/sdf1
Marking disk "DATA08" as an ASM disk:                                 done

De novo scaneamos no outro nodo do cluster:

oracle2:~ # /etc/init.d/oracleasm scandisks
Scanning the system for Oracle ASMLib disks:                          done
oracle2:~ # /etc/init.d/oracleasm listdisks |grep DATA
PRODATA01
PRODATA02
PRODATA03
PRODATA04
PRODATA05
PRODATA06
PRODATA07
PRODATA08


Ampliamos o DG PRODATA co disco etiquetado como PRODATA08:

SQL> ALTER DISKGROUP DATA ADD DISK 'ORCL:PRODATA08';

Diskgroup altered.

SQL> 


Podemos estimar canto tardará a operación de rebalanceo que saltá automaticamente cando se añade/elimina ou cambia de tamaño un disco en ASM:

SQL> select * from v$asm_operation;

GROUP_NUMBER OPERATION         STATE         POWER     ACTUAL       SOFAR   EST_WORK   EST_RATE EST_MINUTES
------------ --------------- ---------- ---------- ---------- ---------- ---------- ---------- -----------
ERROR_CODE
------------------------------------------------------------------------------------------------------------------------------------
       1 REBAL         RUN         1        1        9805      17076      2286         3



se queremos darlle máis prioridade para que remate antes, lanzamos o seguinte comando;

SQL> alter diskgroup PRODATA rebalance power 11; 


Finalmente verificamos os tamaños dos DGs:

NAME           STATE          TOTAL_MB    FREE_MB 	  PCT_USED
--------------------------------------------------------------------------------------------------
PRODATA       MOUNTED         163832         33645            79%
FRAOLD        MOUNTED         40958           3745            19%
PROFRA        MOUNTED         81916           21499           74%



Share this

Great internet websitewebsite! It looks extremely expert! Keep up the great job!
nfl 17 coins http://whygoape.com/forum/topic/madden-mobile-coins-boost-at-the-same-time

Enviar un comentario novo

O contido deste campo é privado e non se amosará publicamente.
  • As direccións das páxinas web e as direccións de correo se convirten en enlaces automáticamente.
  • Tags HTML permitidos: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Os saltos de liña e párrafo créanse automaticamente.

Máis información acerca das opcións de formato

Image CAPTCHA
Escriba os caracteres que se amosan na imaxe.