Forum

Oracle 11g üze...
 
Bildirimler
Hepsini Temizle

Oracle 11g üzerinde ASM Disk Gruplarının Yönetilmesi

2 Yazılar
2 Üyeler
0 Reactions
1,683 Görüntüleme
(@ugurinal)
Gönderiler: 145
Estimable Member
Konu başlatıcı
 

    ORACLE 11G ÜZERİNDE ASM DİSK GRUPLARININ YÖNETİMİ


 


ASM disk gruplarını kullanılması veritabanı sistem performansında pek çok yoldan avantajlar sağlar;



  • I/O performansı yükselir.

  • Veritabanı uygunluğu artar

  • Diskgruplarına ek disk ilave ederek yada yeni disk grupları ile birden fazla veritabanı için kolayca ilave boş disk alanları yaratabilirsiniz.

Bu bölümde, disk grupları ile ilişkili değişik tipte yönetim görevleri gösterilecek, failure gruplara disk eklemelerin nasıl yapılacağı, disk gruplarının nasıl aynalanacağu(mirrored) ve disk gruplarının nasıl ekleneceği, düşürüleceği ve düzenlenebileceği konuları işlenecektir.Bu bölüm komut satırından bu işlemlerin nasıl yapılacağını irdelemektedir.


ASM Disk Grup Mimarisi


Disk grupları, birden fazla diskin tek birim olarak yönetildiği yapılardır. Her ASM diski, veritabanı yöneticisi tarafından veya veritabanı sistemi tarafından otomatik olarak isimlendirilmesi ile oluşturulur.


Diskler içindeki dosyalar birbiri ile 2 türde paylaştırılır.Coerse striping, dosyaların tüm disklerde 1MB birimler halinde serpiştirilmesidir ve genellikle OLTP işlemleri yoğun kullanılacak veritabanları için uygundur. Fine striping mimarisinde ise 128 KB lik birimler halinde serpiştirme yapılır ve genellikle raporlama, OLAP işlemlerinin yoğun kullanıldığı veritabanları için uygundur.


Disk Group Mirroring ve Failure Groups


Bir failure group, disk grubu içinde disk controller gibi ortak bir kaynağı kullanan birden fazla diskten meydana gelir. Herhangi bir felaket anında bu failure grupiçindeki tüm diskler disk grubu için erişilemez olabilir. Aslında bu noktada failure gruplar, sunucu donanımı tabanında oluşturulan RAID-1 diskler olabilir. İşletim sistemi seviyesinde bu RAID-1 ile yapılandırılan 2 fiziksel disk tek bir disk gibi görünür ve algılanır.


Failure gruplar içinde diskler tanımlandıktan sonra oluşturulacak olan ASM disk grubu için mirroring özelliği belirtilebilir. 3 tür mirroring vardır.



  • External Redundancy: Eğer failure grup içindeki diskler herhangi bir RAID controller ile yapılandırılmışsa (örneğin RAID-1) bu seçenek uygundur. Tek bir disk lokasyonu belirtilebilir.

  • Normal Redundancy: Çift taraflı mirroring desteği sunar ve en az 2 failure gruptan oluşan disklerden oluşturulabilir. Failure gruplar içerisindeki disklerden birinin çökmesi disk grubu için işlevselliğin durmasına sebep olmaz ve very kaybı olmaz.

  • High Redundancy: Üç yönlü mirroring özelliği sunar ve bir disk grubu içinde en az 3 failure grup gereksinimi duyulur. 2 failure grup çökse dahi, veritabanında very kaybı olmaz ve çalışmaya devam eder.

Disk Grubu Dinamik Yeniden Balanslama(Rebalancing)


Bir failure grup çıkardığınızda yada bir failure gruptan disk çıkardığınızda veya eklediğinizde disk grubunun yapısında değişiklik meydana gelir. Bu durumda, Oracle eski disklerden yeni disklere orantılı olarak yeniden dağıtmak üzere otomatik olarak yeniden balanslama yapar. Bu yeniden balanslama esnasında veritabanının online olması ve kullanıcıların veritabanına bağlı olmasının I/O performansına etkisini azaltmak için ASM_POWER_LIMIT adlı başlangıç parameter değerinin düşük değerde olması gerekir.


Aşağıdaki sorgu bize disk grupları, bunların ait olduğu failure grupları ve disklerin oluşturulma tarihleri ile isimlerini veren sorgudur.


SQL > select group_number, disk_number, name, failgroup, create_date, path


           from v$asm_disk;


ASM disk gruplarında ne kadar boş alan kaldığını öğrenmek için ise;


SQL > select group_number, name, type, total_mb, free_mb


           from v$asm_diskgroup;


Örneğin;  sisteme  2 yeni disk ilave ettikten sonra yeni bir ASM diskgrup oluşturmak için ise;


SQL> create diskgroup data2 normal redundancy


          failgroup fg1 disk ‘/dev/sde1' name d2a


          failgroup fg2 disk ‘/dev/sdf1' name d2b;


Bir ASM disk grubunu içindeki veritabanı objeleri ile beraber düşürmek için ise;


SQL> drop diskgroup data2 including contents;


 


Disk Gruplarında Hızlı Mirror Senkronizayonu


Eğer bozuk disklerden birisi onarılıp yerine takılırsa veya yeni bir disk ile değiştirilirse, verilerin bu diske yeniden "mirror"lanması biraz zaman alabilir. Hızlı mirror yeniden senkronizasyonu Oracle 11g ile gelen bir özelliktir. Bu özelliği etkin kılmak için, geçici bir hata oluştuğunda(planlı yada plansız) ASM ‘nin diski otomatik olarak disk grubu düşürmemesi için bir zaman atanır.


DATA disk grubuna bir zaman atamak için disk grubunun hem RDBMS instance için, hemde ASM instance için uyumluluk seviyesinin 11.1 veya daha üstü seviyeye eşitlenmiş olması gerekmektedir.


SQL> alter diskgroup data set attribute


          ‘compatible.asm' = '11.1.0.0.0';


SQL> alter diskgroup data set attribute


          ‘compatible.rdbms' = '11.1.0.0.0';


Varsayılan disk onarma süresi 3,6 saattir. Bu süreyi  örneğimizdeki gibi 2.1 saate düşürmek için;


SQL> alter diskgroup data set attribute


          ‘disk_repair_time' = ‘2.1 h';


Disk gruplarını düzenleme


Mevcut disk gruplarında boş alana ihtiyaç duyulduğunda veya mevcut disklerden birisinin yenisi ile değiştirilmesi durumunda kullandığımız disk grubuna aşağıdaki örnekteki gibi ilave failure gruplar ekleyebiliriz. Bu şekilde herhangi bir şekilde ASM disk gruplarını yeniden oluşturmaya gerek kalmaz.


SQL> alter diskgroup data


          add failgroup deneme1 disk ‘/dev/sdg1' name d1c;


Bu disk grubunun otomatik yeniden balanslama işlemi 16 dakika kadar surer.Bu süreyi yarı yarıya azaltmak gibi durumlarda manuel olarak yeniden balanslama işlemi yapabiliriz. Aşağıdaki örnekte 8 dakika olmaktadır.


SQL> alter diskgroup data rebalance power 8;


ALTER DISKGROUP komutları   


alter diskgroup ... drop disk -> Tanımlanan disk grubundan failure gruplarına ait diskleri çıkarır.     


alter diskgroup ... drop ... add -> Failure gruptan disk çıkarır ve yerine yenisi eklemek için kullanılır.


alter diskgroup ... mount ->Disk grubunu tüm instance lar için erişilir yapar.


alter diskgroup ... nomount ->Disk grubunu tüm instance lar için erişilmez yapar.


alter diskgroup ... checkall ->Disk grubunun dahili bütünlüğünü check eder.

 
Gönderildi : 06/01/2009 14:46

(@OmerKARADENIZ)
Gönderiler: 1560
Noble Member
 

Bu güzel ve değerli makale için teşekkür ederim ve makalelerini @cozumpark.com">makale@cozumpark.com adresine göndermeniz halinde anasayfada yayınlanabilecek ve haftalık bültende sunulabilecek şekilde kullanabiliriz.


 

 
Gönderildi : 06/01/2009 15:53

Paylaş: