Bu yazımda sizler için fiziksel oracle linux sunucumuz için multipath disk yapılandırması ve asm disk eklemeyi anlatacağım. Bu yazım biraz uzun olacak şimdiden iyi okumalar,Bu yazıyı okuduktan sonra fiziksel bir sunucuya OEL kurup anlattığım şekilde yapılandırabilirsiniz.
(Multipath ile olan yazımı herkes kullanabilir. Oracle DBA için özel değildir.)
Multipath nedir:
Fiziksel sunucularımız ile san switchler ve storageler arasındaki yedekliliğin sağlanmasıdır.
Yani kısaca HBA , SAN SW ve Storage Controllerdan biri bozulsa bile fiziksel sunucumuz ile storagelar arasındaki bağlantı yedekliliği burdaki temel amaçtır.
Multipath normalde storage vendorlar tarafından sağlanmaktadır ben bu yazımda işletim sistemi bazında nasıl yapılacağını anlatacağım.
Resim-2
Multipath Linux Yapılandırması:
Ben bu işlemi OEL 7.9 kurulu fiziksel hp gen10 sunucumda yaptım. Ayarlar ve konfigurasyonlar hepsi fiziksel sunucum üzerindedir.
HBA kartlar özelliği;
HPE SN1100Q 16Gb 2P FC HBA
Sunucumuzu açalım kuruluma başlayalım,
Aşağıdaki paketleri yükleyelim
yum install device-mapper
yum install device-mapper-multipath
Paket kurulumlarından sonra storage adminden disk veya disklerimizi isteyelim ihtiyaca göre ben 2 adet 200gb disk istedim.
Multipathd servisimizi çalıştıralım ve sistem açılışlarında otomatik açılması için 2. Komutu girelim,
service multipathd start
systemctl enable multipathd
Resim-3
SAN alandan aldıgımız disk veya disklerin WWID numaralarını multipath conf içine girmemiz lazım bunun için aşağıdaki komutu girelim.
multipath –ll
Daha önceden yapılandırma yaptığım için asmdisk yazıyor sizde yazmayacak bu ismi ihtiyaca göre siz belirleyebilirsiniz.
Resimde görüldüğü üzere 2 adet Netapp Storage üstünden 200gblık alan tanımlı gözüküyor.
fdisk –l yaptığımızda görünen Sdd sdh sdf sdj partitionların üstteki alana ait olduğunu anlayabiliriz.
4 adet olmasının sebebi her hba kartım arkasında dual portumun olması 2 ayrı hat ve san controller ile yedekli.
Resim-4
Ardından /etc/ altında
/etc/multipath.conf adında bir conf yaratıyoruz ve içine aşağıdaki gibi dolduruyoruz.
Referans linkler;
Aşağıdaki confu kendi ihtiyaçlarıma göre kendim Redhat sitesinden referans ile doldurdum burda dikkatinizi çekmek istediğim nokta
multipaths { multipath {
ile başlayan config satırları
Eklediğimiz disklerin karışık görünmemesi ve okunulur olması açısından burda yapacağımız config önemli.
Resim-5
Örnek bir diskim için conf;
Burda alias diskin adının nasıl görünmesini istiyorsanız
Wwid multipath –ll komutundan aldığınız çıktı
user_firendly_names yes olmasına dikkat edin
path selector yedeklilik algoritmasını ifade eder
round robin 0 default olarak seçilir.
Device kısmındaki conf ise storage sunucum için oluşturulmuştur.
multipath { wwid 3600a098038304133725d4a2d4c4c3143 alias asmdisk1 path_grouping_policy multibus path_selector "round-robin 0" failback immediate rr_weight priorities no_path_retry 5 flush_on_last_del yes user_friendly_names yes
Ardından service multipathd restart
Sonrasında multipath –ll yapıyoruz
Service multipathd status yapınca eğer confta hata varsa düzeltmelisiniz
Eğer aşağıdaki gibi yazıyorsa herşey yolunda demektir,
Resim-6
Daha sonra fdisk –l yapıp eklediğimiz 2 disk asmdisk1 ve asmdisk2 olarak görüntüleyebiliriz.
Resim-7
Storage alanından verdiğimiz diskler eklenmiş gözükmektedir.En güzelide yedekli yapıda.(multipath)
Aşağıdaki komutla detaylı bir şekilde disklerimizi görüntüleyebiliriz,
lsblk -io NAME,LABEL,SIZE,VENDOR
Resim-8
ASM Disk Nedir ?
ASM(automatic storage manager) Oracle 10g ile gelen bir özelliktir.
ASM ile yeni disk ekleme mevcut alanı değiştirme gibi işlemleri kesilme olmaksızın yapabiliriz, I/O paylaşımı ve mevcut disklere dağıtarak performans sağlama.Logical volume yönetiminin sağlanması. En önemli özelliği ise datafileların normal bir storage üzerinde saklanması ile oluşabilecek dengesiz dağılımların engellenmesi.
Resim-9
Sunucumuzda asm disk yapılandırması adımlarına geçelim,
Önce aşağıdaki paketleri indirelim,
yum install -y oracleasm yum install -y oracleasm-support yum install oracleasmlib
İlgili paketleri kurduktan sonra userlar ve gruplar eklenmelidir. Bu gruplar ve yapılar sizin kullandığınız yapıya göre değişebilsede %90 böyle olması lazım.
groupadd -g 1001 oinstall;groupadd -g 1002 dba;groupadd -g 1004 asmadmin;groupadd -g 1006 asmdba;groupadd -g 1007 asmoper;groupadd -g 1008 oper useradd -m grid -u 1001 -g oinstall -G asmadmin,asmdba,asmoper -d "/home/grid" useradd -m oracle -u 1002 -g oinstall -G dba,asmdba,oper -d "/home/oracle"
(Not burdaki grup numaraları farklı sayılarda olabilir ben ilk kurulum oldugu için bu sayıları verdim)
cat /etc/group
cat /etc/passwd
İle oluşturulan gruplar ve userlar kontrol edilir.
Daha sonra aşağıdaki klasörler ve yetkiler verilir fakat bu yine her firmanın yapısına göre farklılık gösterir. Bu klasörler farklı bir partionda oluşturulmalıdır bunu oracle admin yani dba admin belirleyecektir.
(?? Işareti ile belirlediğim partition size kalmış OS yüklü olmayan bir partition olsun)
mkdir -p /??/app/oraInventory chown -R grid:oinstall / ??/app/oraInventory chmod -R 775 / ?? /app/oraInventory mkdir -p / ?? /app/19.0.0.0/grid_base chown -R grid:oinstall / ?? /app/19.0.0.0/grid_base chmod -R 755 / ??/app/19.0.0.0/grid mkdir -p / ?? /app/19.0.0.0/grid chown -R root:oinstall / ?? /app/19.0.0.0/grid chmod -R 750 / ?? /app/19.0.0.0/grid mkdir -p / ?? /app/oracle mkdir / ?? /app/oracle/cfgtoollogs chown -R oracle:oinstall / ?? /app/oracle chmod -R 775 / ?? /app/oracle mkdir -p / ?? /app/oracle/product/19.0.0.0/dbhome_1 chown -R oracle:oinstall / ?? /app/oracle/product/19.0.0.0/dbhome_1 chmod -R 775 / ?? /app/oracle/product/19.0.0.0/dbhome_1
oracleasm configure –i Default user to own the driver interface []: grid Default group to own the driver interface []: asmdba Start Oracle ASM library driver on boot (y/n) [n]: y Scan for Oracle ASM disks on boot (y/n) [y]: y Writing Oracle ASM library driver configuration: done
Resim-10
Ardından aşağıdaki komut çalıştırılır ,
oracleasm init Creating /dev/oracleasm mount point: /dev/oracleasm Loading module "oracleasm": oracleasm Configuring "oracleasm" to use device physical block size Mounting ASMlib driver filesystem: /dev/oracleasm
Kontrol edilir,
oracleasm status
Resim-11
service oracleasm start
Resim-12
oracleasm configure
Resim-13
Eğer tüm komutlar ve çıktılar bu şekilde sonuçlandıysa herşey yolunda demektir.
Bu şekilde konfigurasyonları oluşturduktan sonra multipath olarak SAN üzerinden verdiğimiz LUN alanlarımızı ASM disk olarak ekleme adımlarına başlayabiliriz.
Multipath üzerinden eklediğim 2 adet alanımı asmdisk olarak aşağıdaki yazdığım komutlar ile ekliyorum.
oracleasm createdisk DATA01 /dev/mapper/asmdisk1
oracleasm createdisk DATA02 /dev/mapper/asmdisk2
Eğer bu hatayı alırsanız,
oracleasm module not loaded or /dev/oracleasm not mounted.
Resim-14
oracleasm –exec-path komutunu çalıştırın
Daha sonra,
oracleasm init Loading module "oracleasm": oracleasm Configuring "oracleasm" to use device physical block size Mounting ASMlib driver filesystem: /dev/oracleasm
ve daha sonra createdisk komutu ile asmdiskleri ekleyin,
Ardından şu 2 komut çalıştırılır.
/usr/sbin/oracleasm querydisk /dev/mapper/asmdisk1
/usr/sbin/oracleasm querydisk /dev/mapper/asmdisk2
Resim-15
/usr/sbin/oracleasm scandisks
Resim-16
Sonuç olarak eklenen diskleri görüntülemek için aşağıdaki komutu kullanıyorum.
oracleasm listdisks
Resim-17
Multipath olarak yapılandırma yaptık ve bu yapılandırmamıza göre 2 adet SAN alandan 200 e gblık alan tahsis ettik. Bu alanları ASM disk olarak sunucumuza tanıttık.
Bu yazıda multipath yapılandırmasının linux fiziksel bir sunucuda nasıl olması gerektiğini ve asm disk eklemeyi anlattık. Umarım faydalı olmuştur.
Bu konuyla ilgili sorularınızı alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.
Referanslar
TAGs: Linux Sunucularda Multipath Disk Yapılandırması,Oracle İçin Asm Disk Ekleme