Bu makalemizde Oracle 11g R2 ile karşımıza çıkan Oracle SCAN IP özelliğini ve bunun kullanımı için DNS yapılandırmamızı inceleyeceğiz. Bu yapılandırma ortamımızda bir DNS sunucusu yoksa yapılacak işlemdir. Eğer ortamımızda bir DNS sunucusu varsa Oracle RAC için Scan IP adreslerini bu DNS sunucumuza kaydetmemiz yeterlidir. Böyle bir durumda sunucumuzda DNS servisinin “Round-robin” özelliğinin açık olduğundan emin olmalıyız.
Oracle SCAN IP nedir ?
Tam açılımı Single Client Access Name’dir. Oracle 11gR2 ile gelen özelliklerden biri olan SCAN, kısaca network içerisinde 3 adet sanal IP adresinin tek bir DNS kaydına bağlanması işlemidir. GNS ve DHCP sistemleriyle birlikte kullanıldığında Oracle Clusterware SCAN ismiyle network ‘de sanal IP adresleri oluşturarak bunları çalışan üyeler üzerine atar. SCAN isimli sanal IP adresleri üyeler üzerinde bulut yapısında çalışarak “Load Balancing” ve “Failover” ayarlarına göre gerektiğinde üyeler üzerinde yer değiştirebilir. İstemciler bu IP adreslerinin kullanarak veritabanına bağlantı sağlar.
1. Öncelikle sunucumuzda DNS Paketlerimizi yüklüyoruz.
# yum -y install bind
2. Sunucumuzda Dns yapılandırma dosyamız “/etc/named.conf” içerisinde DNS Sunucu adresimizi ve isim çözümleyemediği durumlarda yönlendireceği DNS adreslerimizi düzenliyoruz.
# vim /etc/named.conf -- Dosyasında aşağıdaki satırları düzenliyoruz. -- Burada bold işaretlediğim yerlere kendi sisteminizin bilgilerini yazıyoruz. // named.conf // // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS // server as a caching only nameserver (as a localhost DNS resolver only). // // See /usr/share/doc/bind*/sample/ for example named configuration files. // options { listen-on port 53 { 127.0.0.1; 192.168.2.120; }; listen-on-v6 port 53 { ::1; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { any; }; recursion yes; dnssec-enable yes; dnssec-validation yes; dnssec-lookaside auto; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; forwarders { 192.168.2.150; }; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; zone "." IN { type hint; file "named.ca"; }; zone "localdomain." IN { type master; file "localdomain.zone"; allow-update { none; }; }; zone "0.168.192.in-addr.arpa." IN { type master; file "0.168.192.in-addr.arpa"; allow-update { none; }; };
3. Sunucumuzda “Forward” DNS kayıtlarımızı yapabilmek için “/var/named/localdomain.zone” dosyasında gerekli düzenlemeleri yapıyoruz.
# vim /var/named/localdomain.zone -- Dosyamızı açıyoruz ve aşağıdaki gibi düzenliyoruz. $TTL 86400 @ IN SOA localhost root.localhost ( 42 ; serial (d. adams) 3H ; refresh 15M ; retry 1W ; expiry 1D ) ; minimum IN NS localhost localhost IN A 127.0.0.1 kryrac1 IN A 192.168.2.121 kryrac2 IN A 192.168.2.122 kryrac1-priv IN A 192.168.117.141 kryrac2-priv IN A 192.168.117.142 kryrac1-priv2 IN A 192.168.117.143 kryrac2-priv2 IN A 192.168.117.144 kryrac1-vip IN A 192.168.2.131 kryrac2-vip IN A 192.168.2.132 kryrac-scan IN A 192.168.2.125 kryrac-scan IN A 192.168.2.126 kryrac-scan IN A 192.168.2.127
4. Sunucumuzda Reverse DNS kayıtlarımızı yapabilmek için “/var/named/0.168.192.in-addr.arpa” dosyasında gerekli düzenlemeleri yapıyoruz.
# vim /var/named/0.168.192.in-addr.arpa -- Dosyamızı açıyoruz ve aşağıdaki gibi düzenliyoruz. Burada "reverse" kayıtlarını oluştururken atamış olduğumuz IP adreslerinin son rakamlarını yazıyoruz. Diğer kısmını "DNS Reverse" özelliği tamamlayacaktır. $ORIGIN 0.168.192.in-addr.arpa. $TTL 1H @ IN SOA koraykey.localdomain. root.koraykey.localdomain. ( 2 3H 1H 1W 1H ) 0.168.192.in-addr.arpa. IN NS koraykey.localdomain. 121 IN PTR kryrac1.localdomain. 122 IN PTR kryrac2.localdomain. 131 IN PTR kryrac1-vip.localdomain 132 IN PTR kryrac2-vip.localdomain 125 IN PTR kryrac-scan.localdomain. 126 IN PTR kryrac-scan.localdomain. 127 IN PTR kryrac-scan.localdomain.
5. Sunucumuzda işlemleri tamamladıktan sonra servisimizi başlatıyoruz ve sunucumuz başladığında otomatik açılması için gerekli yapılandırmaları yapıyoruz.
# service named start Starting named: [ OK ] # chkconfig named on
6. Sunucumuzda DNS yapılandırmamız tamamladı. Şimdi isim çözümleyecek sunucularımız üzerinde “/etc/resolv.conf” dosyasına yapılandırdığımız bu sunucumuzun adresini giriyoruz.
# vim /etc/resolv.conf -- Dosyasını açıp aşağıdaki düzenlemeleri yapıyoruz. search localdomain nameserver 192.168.2.120
7. Bu düzenlemeleri yaptıktan sonra sistemimizi test edebiliriz. Özellikler Oracle RAC kurulumu yapılacak sunucular üzerinde isimlendirmeleri çözebildiğine emin olmalıyız. Aksi takdirde kurulum işleminde sıkıntılar çıkacaktır.
# nslookup kryrac-scan Server: 192.168.2.120 Address: 192.168.2.120#53 Name: kryrac-scan.localdomain Address: 192.168.2.126 Name: kryrac-scan.localdomain Address: 192.168.2.127 Name: kryrac-scan.localdomain Address: 192.168.2.125 # nslookup kryrac1 Server: 192.168.2.120 Address: 192.168.2.120#53 Name: kryrac1.localdomain Address: 192.168.2.121 # nslookup kryrac2 Server: 192.168.2.121 Address: 192.168.2.121#53 Name: kryrac2.localdomain Address: 192.168.2.122
Bu makalemizdeki Linux İşletim Sistemlerinde Oracle RAC Scan IP Kullanımı için DNS Yapılandırmasını inceledik. Yapılandırmamızı test ortamlarımız veya daha küçük ağ ortamlarında DNS sunucusu kurmadan yapmak için “Linux İşletim Sistemlerinde Basit DNS Yapılandırması” makalemizi inceleyebilirsiniz. Bu makalemizdeki uygulanan adımlar “Oracle Enterprise Linux 6.4″ işletim sistemi üzerinde test edilmiştir. Diğer Linux dağıtımlarıyla uyumludur. Bu aşamadan sonra Oracle RAC Kurulumu yapacaksak “Oracle Enterprise Linux İşletim Sisteminde Oracle Real Application Cluster (Rac) Veritabanı Kurulumu” makalemizden yararlanabilirsiniz.
Başka bir makalede görüşmek üzere…