Etiket arşivi: alter diskgroup add disk

ASM disk değiştirmek, eklemek, çıkarmak

ASM disk değiştirmek, eklemek, çıkarmak..

Bu örnekte iki ASM disk grubumuza yeni diskler ekleyip eski diskleri drop edip boşa çıkaracağız.
Bunun için sistem kesintisi gerekmiyor, online olarak yapabiliyoruz. İşlemler 11GR2 grid instance ve 11GR2 single oracle instance üzerinde denendi. RAC ortamlarda biraz daha farklı süreç var onu ayrıca yazmayı düşünüyorum.Böyle bir işleme disk ünitenizin değişimi gibi durumlarda ihtiyacınız olabilir.

1-) Oracle grid değişkenlerini set edelim.

-bash-3.2$ export ORACLE_HOME=/oragrid/app/product/11.2.0.4/grid
-bash-3.2$ export ORACLE_SID=+ASM
-bash-3.2$ export PATH=$ORACLE_HOME/bin:$PATH

2-) ASM instance’ına giriş yapalım..

-bash-3.2$ sqlplus / as sysasm
SQL*Plus: Release 11.2.0.4.0 Production on Mon Jul 13 11:22:05 2015

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Automatic Storage Management option

SQL> set linesize 400;

3-) ASM disklerimizi kontrol edelim.

SQL> Select NAME,path, header_status, mode_status from v$asm_disk;
NAME	        PATH	                HEADER_STATUS	MODE_STATUS
DATA_0000	/dev/rdsk/emcpower1g	MEMBER	        ONLINE
RECO_0000	/dev/rdsk/emcpower2g	MEMBER	        ONLINE

4-) Yeni diskleri DATA ve RECO disk grubuna ekleyelim.

/dev/rdsk/emcpower3g DATA disk grubuna ekliyoruz.
/dev/rdsk/emcpower4g RECO disk grubuna ekliyoruz.

SQL> alter diskgroup DATA add disk '/dev/rdsk/emcpower3g' rebalance power 7;
Diskgroup altered.

SQL> alter diskgroup RECO add disk '/dev/rdsk/emcpower4g' rebalance power 7;
Diskgroup altered.

--ASM disk gruba birden fazla disk eklemek isteseydik aşağıdaki gibi yazmamız gerekiyordu.
-- , ile ayırıyoruz disk pathlerini.
--alter diskgroup DATA add disk '/dev/rdsk/emcpower9g','/dev/rdsk/emcpower10g' rebalance power 7;

5-) Yeni diskler eklendiği için ASM instanceı datayı yeni eklenen disklere de yayarak rebalance işlemi yapacaktır. Eski diskleri drop etmek için bu işlemin bitmesini beklemeliyiz.

İşlemin ne kadar zamanda tamamlancağını aşağıdaki sorgu ile görebiliriz.

SQL> select operation,state,power,sofar,est_work,est_rate,est_minutes from v$asm_operation;

OPERA STAT      POWER      SOFAR   EST_WORK   EST_RATE EST_MINUTES
----- ---- ---------- ---------- ---------- ---------- -----------
REBAL RUN           1       4623     122267       4879          19
REBAL WAIT          1

Sorgu sonucu boş geldiğinde ASM instanceı rebalance işlemini bitirmiş demektir.

SQL> select operation,state,power,sofar,est_work,est_rate,est_minutes from v$asm_operation;

OPERA STAT      POWER      SOFAR   EST_WORK   EST_RATE EST_MINUTES
----- ---- ---------- ---------- ---------- ---------- -----------

6-) Yeni diskleri de eklediğimize göre asm disklerimizde yeni diskleri görmemiz gerekiyor, kontrol edelim..

SQL> select NAME,path, header_status, mode_status, os_mb,free_mb,create_date,voting_file from v$asm_disk ORDER BY 1,2,3;

NAME	        PATH	                HEADER_STATUS	MODE_STATUS	OS_MB	FREE_MB	CREATE_DATE	        VOTING_FILE
DATA_0000	/dev/rdsk/emcpower1g	MEMBER	        ONLINE	        104414	68863	22.5.2015 11:16:05	N
DATA_0001	/dev/rdsk/emcpower3g	MEMBER	        ONLINE	        104518	68791	10.6.2015 14:18:24	N
RECO_0000	/dev/rdsk/emcpower2g	MEMBER	        ONLINE	        104414	85978	22.5.2015 11:17:24	N
RECO_0001	/dev/rdsk/emcpower4g	MEMBER	        ONLINE	        104424	85960	10.6.2015 14:20:24	N

7-) Şimdi eski diskleri drop edip ASM den çıkarabiliriz.Rebalance power parametresi burada rebalance hızını ayarlar,1-11 arası değer alabilir.1 en yavaş, 11 en hızlı yapması demektir. Çok yüksek verirseniz (10-11 gibi) kaynaklar büyük oranda data rebalance işlemine ayrılacaktır ve db de yavaşlama görülebilir. Rebalance power 7-8 verilmesi uygun olacaktır.

Şimdi eski diskleri Drop edelim..

SQL> alter diskgroup DATA drop disk 'DATA_0000' rebalance power 7;
Diskgroup altered.

SQL> alter diskgroup RECO drop disk 'RECO_0000' rebalance power 7;
Diskgroup altered.

8 -) ASM rebalance operation durumuna aşağıdaki gibi bakılır.Sorgu sonucu boş gelince işlem bimiştir.
Rebalance işlemini kontrol edelim, sorgumuz boş gelince tamamlanmış olacaktır.

SQL> select operation,state,power,sofar,est_work,est_rate,est_minutes from v$asm_operation;
OPERA STAT      POWER      SOFAR   EST_WORK   EST_RATE EST_MINUTES
----- ---- ---------- ---------- ---------- ---------- -----------
REBAL RUN           7       4623     122267       4879          14

SQL> select operation,state,power,sofar,est_work,est_rate,est_minutes from v$asm_operation;
OPERA STAT      POWER      SOFAR   EST_WORK   EST_RATE EST_MINUTES
----- ---- ---------- ---------- ---------- ---------- -----------

9-) Son olarak disklerimizi kontrol edelim, eski diskler asm disk listesinden gitmiş olmalı.

SQL> select name,path, header_status, mode_status, os_mb,free_mb,create_date,voting_file from v$asm_disk ORDER BY 1,2,3;

NAME	        PATH	                HEADER_STATUS	MODE_STATUS	OS_MB	FREE_MB	CREATE_DATE	        VOTING_FILE
DATA_0001	/dev/rdsk/emcpower3g	MEMBER	        ONLINE	        104518	33240	10.6.2015 14:18:24	N
RECO_0001	/dev/rdsk/emcpower4g	MEMBER	        ONLINE	        104424	67524   10.6.2015 14:20:24	N

Ve böylelikle ASM disklerimizi yenileriyle değiştirmiş olduk..