Pages

26 Ağustos 2011 Cuma

Oracle ASM Cluster Dosya Sistemi (ACFS)


ASM Cluster Dosya Sistemi ilk olarak Oracle 11.2.0.1 sürümü ile Linux sistemler üzerinde desteklenecek şekilde hizmete girmiş, Oracle 11.2.0.2 sürümü ile Solaris, AIX,HP-UX ve Windows platformlarınada bu destek hizmete girmektedir. Oracle 11.2.0.2 sürümü ile ACFS yapısına replikasyon, etiketleme, şifreleme ve realm tabanlı güvenlik özellikleride ilave edilmiştir.

ACFS sadece ASM volumleri desteklemektedir, ancak ASMLib sürücüleri ile kullanılamaz ve fdisk gibi formatlama araçları ile bu ACFS volumleri formatlanmamalıdır. ACFS, Oracle external binary veri dosyaları (LOB dosyalar ve BFile gibi), external dizinler, Oracle veritabanı home dizin dosyaları, izleme dosyaları gibi çeşitli paylaşılabilir dosyalara senkronize erişimi desteklemektedir. ACFS üzerinde Oracle’nın desteklemediği dosyalar, ASM diskgrupları bünyesinde tutulan kontrol dosyaları, SPFILE dosyaları, redo log dosyaları, arşiv log dosyaları,clusterware dosyaları(OCR ve voting dosyaları) ve veri dosyalarıdır.


Bunun yanında ACFS nin sunucunun açılışında otomatik mount olmamasından dolayı Grid home dizin dosyalarıda ACFS bünyesinde saklanmaz. ACFS, gerek tek düğüm yapısında gerekse çoklu RAC düğüm yapılarında kullanılabilmektedir. ASM diskgruplarının Oracle veritabanı ile ilgili tüm dosyaları clusterware dosyaları ile beraber saklayabilmesi, ACFS ilede izleme dosyaları, Oracle binary dosyalar ve veritabanı home dizin dosyalarını izleme yeteneği sayesinde üçüncü parti cluster yazılım veya raw cihaz ihtiyacı ortadan kalkmaktadır. ACFS tek bir stack üzerinden çalıştığından OCFS dosya sistemine göre yapılandırması ve yönetimi oldukça kolaylaşmıştır.

Oracle, ACFS nin ORACLE_BASE dizini altında bir dosya içinde mount edilmesini tavsiye etmektedir, ancak ORACLE_BASE olarak işaret edilen dizin tek başına ACFS üzerinde yer alamaz. Farklı dizinler farklı tipte ACFS ler altında yer alabilir. Örneğin; ORACLE_HOME yolunda yer alan veritabanı home dizin dosyaları tekil bir fiziksel diskte mount edilen ACFS içinde yer alabilirken, izleme dosyaları ve harici binary veri dosyaları paylaşımlı disk üzerinde mount edilen ACFS içinde yer alabilmektedir. Böylece, paylaşımlı disk üzerinde ORACLE_HOME/diag dizini kendi ACFS dosya sistemi üzerinde mount edilebilir, ve NFS mounting işlemine gerek kalmadan tüm düğümlere tek bir düğüm üzerinde paylaşıma açılmış bu izleme dosyalarına erişimine izin verilmektedir. 

Veritabanı home dizini olarak kullanılmak üzere ACFS oluşturulurken, srvctl komut satırını kullanarak yönetilebilen Cluster Ready servisleri(CRS) oluşturulur. Dosya sisteminin çalışması için mount edilme ihtiyacı olan herhangi bir kaynak için –veritabanın kendisi gibi-, dosya sistemi üzerinde bağımlılıkları vardır, böylece dosya sistemi henüz mount edilmemişse  veritabanın başlatılması dosya sistemini mount edecektir. Eğer ACFS dosya sistemi home dizinini saklamak üzere oluşturulmuşsa, ACFS mount registry içine eklenmemelidir.

İşletim sisteminin yeniden başlatılması sonucunda veritabanı home dizini dışında dosyaları saklayan ACFS dosya sistemlerinin otomatik olarak mount olması için ASM nin çalışır olması, ilgili ASM diskgruplarının mount olması ve ADVM sürücülerinin yüklenmiş olması gerekmektedir.

Bu sebeple, mount öncesinde bu işlemlerin doğru şekilde gerçekleşmesi için birşeylerin yapılması gerekmektedir. Bu amaçla acfsutil komutu kullanılarak ACFS mount registry aracı kullanılmakta ve ACFS lerin her açılışta otomatik mount edilme işlemi etkinleştirilmektedir.   

Aşağıdaki örnekte RDBMS home dizinini saklamak üzere kullanılacak ACFS dosya sistemi oluşturmak ve hizmete almak yer alacaktır.

         1.    Cluster bünyesindeki tüm düğümlerde mount point dizini oluşturulmaktadır.
[root]# mkdir –p /u01/app/oracle/acfsdbhome1
[root]# chown grid:oinstall /u01/app/oracle/
[root]# chown grid:oinstall /u01/app/oracle/acfsdbhome1/

2.    ASM volume üzerinde dosya sistemi oluşturulacaktır.

[root]# mkfs -t acfs /dev/asm/acfsdgvol1-29

mkfs.acfs: version = 11.2.0.2.0
mkfs.acfs: on-disk version = 39.0
mkfs.acfs: volume = /dev/asm/acfsdgvol1-29
mkfs.acfs: volume size = 5514282867
mkfs.acfs: Format complete.

3.    Oluşturulan yeni ACFS dosya sistemi srvctl kullanarak CRS ye eklenecektir.

[root]# $GRID_HOME/bin/srvctl add filesystem -d /dev/asm/acfsdgvol1-29 -v

acfsdgvol1 -g ACFSDG -m /u01/app/oracle/acfsdbhome1

4.    Kaynak tüm düğümlerde mount edilmek için başlatılacaktır.

[root]# $GRID_HOME/bin/srvctl start filesystem -d /dev/asm/acfsdgvol1-29

[Oracle OKS] Cluster Membership change - Current incarn 0x5
[Oracle OKS] Nodes in cluster:
[Oracle OKS] Node 1 (IP 0xa4fe2d70) Node 2 (IP 0xa8fd1b84)
[Oracle OKS] Node count 2, Local node number 1
[Oracle ADVM] Cluster reconfiguration started.
[Oracle ADVM] Cluster reconfiguration completed.
[Oracle OKS] Cluster Membership change setup complete

Yukardaki konsol mesajları ile kaynağın her iki düğümde çalıştığı, OKS ve ADVM sürücüleri cluster çapındaki kaynakların yönetilmek için gerektiği realize etmektedir.

5.    ACFS dosya sisteminin tüm düğümlerde başladığını kontrol etmek için df –k komutu kullanılmaktadır ve CRS içindeki ACFS sistem kaynakları kontrol edilmelidir.

[grid]$ $GRID_HOME/bin/crsctl status resource ora.acfsdg.acfsdgvol1.acfs

NAME=ora.acfsdg.acfsdgvol1.acfs
TYPE=ora.acfs.type
TARGET=ONLINE , ONLINE
STATE=ONLINE on linux1-rac, ONLINE on linux2-rac

Aşağıdaki örnekte genel amaçla kullanılacak(trace dosyaları, external binary veri dosyaları gibi) bir ACFS dosya sistemi oluşturmak ve hizmete almak yer alacaktır.

       1.    Yukarıdaki örnekteki ilk 2 adımda yapılan işlem aynen sırasıyla tekrarlanacaktır.

       2.    Düğümlerde dosya sistemi mount edilmektedir.

[root ~]# mount -t acfs /dev/asm/acfsdgvol2-29 /u01/app/oracle/diag/

       3.    Yeni dosya sistemi ACFS mount registry içine eklenecek ve böylece bu ACFS dosya sisteminin her açılışta otomatik mount edilmesi devreye alınacaktır.

[grid]$ /sbin/acfsutil registry -a -f -n linux1-rac,linux2-rac /dev/asm/acfsdgvol2-29 /u01/app/oracle/diag/

acfsutil registry: mount point /u01/app/oracle/diag successfully added
to Oracle Registry

       4.    acfsutil registry komutu ile registry girişleri kontrol edilecektir.

[grid@linux1-rac bin]$ /sbin/acfsutil registry

Mount Object:
Device: /dev/asm/acfsdgvol2-29
Mount Point: /u01/app/oracle/diag
Disk Group: ACFSDG
Volume: ACFSDGVOL2
Options: none
Nodes: linux1-rac,linux2-rac


0 yorum:

Yorum Gönder