ASM下擴展存儲對DISKGROUP的影響

 

這段時間因爲採購存儲,和不少存儲廠商進行溝通時,都提到一點:支持存儲容量的動態擴展。好比原來上的存儲容量爲5T劃了一個lun,後來因爲業務需求,須要擴展到10個T,後加的五個T的容量能夠直接加到原來的存儲上,原來的lun大小變成了10個T。redis

存儲的lun在操做系統上是以磁盤的形式存在的,這樣的話至關於磁盤的大小增長了,根據廠商技術的解釋,若是使用了文件系統的話,在文件系統裏,能夠看到lun對應的磁盤變大,可是之前所使用的文件分區大小不變,若是須要使用新增的空間,能夠對現有分區進行擴展,或劃分新的分區,這一點不難理解。sql

比較疑惑的是,因爲我使用的是oracle 11g rac+asm,並且沒有使用asmlib,直接asm掛載的裸盤,若是某個lun變大之後,asm能不能識別到新增了空間?磁盤空間的改變,對原來asm的使用會不會有影響?這個問題廠家沒能給出一個答覆,因而決定在虛擬機環境作一個測試,來驗證一下。數據庫

測試環境是在vmware 8 下面,一個已經搭好的雙機RAC環境,使用的是11gr2+asm+OEL6.1,在這個環境中我建好了三個磁盤組,ocr、data和fra,這三個磁盤組中ocr用了一塊硬盤,data兩個,fra一個,都是2g的虛擬盤。實驗思路是將fra對應的2g盤手動擴展到2.5g,以後再查看diskgroup中磁盤組容量是否產生變化。服務器

測試步驟以下:oracle

1. 查看主機上fra磁盤組對應磁盤/dev/sdd大小爲2g
clip_p_w_picpath001ide

2. 在asmca中查看各磁盤組大小爲:
clip_p_w_picpath003測試

3. 在grid用戶下使用sqlplus / as sysdba登陸後查看各磁盤組大小:
運行select name,type,total_mb,free_mb,required_mirror_free_mb,usable_file_mb from v$asm_diskgroup;clip_p_w_picpath005ui

4. 將虛擬機兩個節點停機操作系統

5. 使用vmware下的命令擴展fra對應的虛擬磁盤命令行

a) 進入到vmware安裝目錄下
cd "C:\Program Files (x86)\VMware\VMware Workstation"

b) 執行管理命令:
C:\Program Files (x86)\VMware\VMware Workstation>vmware-vdiskmanager.exe -x 2.5GB "F:\vhd\erpsharedisk\fra.vmdk"
clip_p_w_picpath007

c) 完成後能夠看到fra對應的磁盤文件擴展到2.5G
clip_p_w_picpath009

6. 再啓動rac的兩個節點,使用fdisk –l 查看對應的磁盤大小
clip_p_w_picpath011

7. 使用asmca查看磁盤組,發現全部磁盤組沒法在asmca中查看,暫時還未找到出現該問題的緣由
clip_p_w_picpath013

8. 使用sqlplus登陸查詢視圖,發現磁盤組空間無變化
clip_p_w_picpath015

9. 此時懷疑是因爲磁盤組須要從新mount才能識別新增容量,因而嘗試從新mount FRA磁盤組.因爲在asmca界面沒法對磁盤組作操做,因而改用命令行完成

10. 使用命令先取消FRA磁盤組掛載,發現報權限錯誤
clip_p_w_picpath017

11. 後來發如今11g環境下,asm須要使用sysasm用戶來完成磁盤組管理操做,換sysasm用戶進行操做,將FRA磁盤組從新掛載
clip_p_w_picpath019

從新掛載後,發現磁盤組容量並無像咱們想像的變成該磁盤如今的實際大小。由此判斷,在此環境中,若是直接擴展Lun的大小來實現數據庫可用空間的擴展不能實現,若是須要擴展數據庫可用容量,最好是在數據庫存儲端新增容量後,將新增容量劃到一個新的lun中,在服務器上,將新的lun做爲一個磁盤mount到須要擴展容量的磁盤組中,採用這樣的方式才能很是方便和高效的實現ASM環境下數據庫容量的擴展。

相關文章
相關標籤/搜索