Cuma , 11 Temmuz 2014
Son Haberler
Anasayfa / MAKALELER / Veri Tabanı / RAC(Real Application Cluster) Architecture(Mimarisi) Uygulama

RAC(Real Application Cluster) Architecture(Mimarisi) Uygulama

Oracle’ın Yüksek Kullanılabilirliği(High Availability/HA) Çözüm Yığını

 

 

 

Paylaşılan Depolama Seçenekleri

 

 

  1. NFS Monte Depolama (Netapp)
  2. SCSI Paylaşılan depolama; OCFS, OFS, Raw Cihazlar ile
  3. Yapı Mimarisi ile Fiber Kanal depolama

11i ADIM-1

  1. Tüm düğümlere RED HAT 2.1 yüklemek

  2. 11i Apps Tier tek bir düğüm olarak yüklemek

  3. Paylaşılan Depolama Eklemek ve HBA için Sürücüler Yüklemek


11i ADIM -2 (OS Yamalar kurulum)

  • rpm -Uv tar-1.13.25-9.i386.rpm
  • Bu Tar(Technical Assistance Request )’ın güncel versiyonuna ulaşımı sağlar
  • OCFS üzerinde çalışan bir veritabanından tar(Technical Assistance Request) dosyalarına bir kullanıcı sağlar
  • Örnekler,
  • tar –o_direct -cvf /tmp/backup.tar

11i ADIM -2 ( OS Yamalar Kurulum)

  • rpm -Uv fileutils-4.1-4.2.i386.rpm
  • Bu dd(default date) ve Cp(command with web logic) nin güncelleştirlmiş Sürümünü Sağlar
  • OCFS üzerinde çalışan bir veritabanı dosyaları kopyalamak için bir kullanıcı sağlar
  • examples :
  • cp –o_direct /ocfs/quorum.dbf /tmp/backup/quorum.dbf
  • dd o_direct=yes if=/ocfs/quorum.dbf of=/tmp/backup/quorum.dbf

11i ADIM -3 RPM(Remote Preemptive Monitor) nin Oracle Sağlayıcılıarını Yüklemek

  • ocfs-support-1.0.9-11.i686.rpm
  • ocfs-tools-1.0.9-11.i686.rpm
  • j2sdk-1_3_1_09-linux-i586.rpm.bin
  • unzip-5.50-30.i386.rpm
  • zip-2.3-10.i386.rpm
  • wu-ftpd-2.6.1-21.i386.rpm
  • hangcheck-timer-2.4.9-e.10-0.4.0-2.i686.rpm
  • hangcheck-timer-2.4.9-e.10-enterprise-0.4.0-2.i686.rpm

11i ADIM -4 Bağlantı ( interconnect)

  • ifconfig eth0:0 192.168.2.100
  • route add -host 192.168.2.100 dev eth0:0
  • Do this on each node
  • Create watchdog file (oracle installer checks for this to install cluster option) # touch /dev/watchdog
  • Setup hangcheck-timer module -# vi /etc/modules.conf — options hangcheck-timer hangcheck_tick=30 hangcheck_margin=180 –# modprobe hangcheck-timer

11i ADIM -5 OCFS.conf – 5

  • # ocfstool ( from x windows)
  • # ocfs config
  • # Ensure this file exists in /etc
  • #  node_name = linux3.home.com

 node_number =

 ip_address = 192.168.1.100

 ip_port = 7000

 comm_voting = 1

 guid = 9D3B77AF2FF26E92E25D00E04CA44B58

 

11i ADIM -6 OCFS Kurulumu

  • mkfs.ocfs -F -b 128 -L /s01 -m /s01 -u 500 -g 500 0755 /dev/sda1
  • srvconfig_loc=/s01/oragsd-config ( touch this file)

11i ADIM -7 OCM

  • $ ls
  • If cmcfg.ora exists:
  • $ cp cmcfg.ora cmcfg.ora.original
  • If cmcfg.ora does not exist:
  • $ cp cmcfg.ora.tmp cmcfg.ora
  • $ echo HostName=dc1node3inter >> cmcfg.ora
  • $ vi cmcfg.ora
  • [comment out WatchdogSafetyMargin and WatchdogTimerMargin]
  • PrivateNodeNames=linux22 linux33
  • PublicNodeNames=linux2 linux3
  • MissCount=210
  • KernelModuleName=hangcheck-timer
  • CmDiskFile=/u02/oracm-qourum
  • $ vi ocmargs.ora
  • [comment out first line, which contains the word "watchdogd"]
  • $ cd ../bin
  • $ cp ocmstart.sh ocmstart.sh.original
  • $ vi ocmstart.sh
  • [remove words "watchdog and" from line containing "Sample startup script..."]
  • [remove every line containing "watchdogd", uppercase or lowercase. If it's in a if/then/fi then remove the whole if/then/fi.]
  • $ su – root
  • export ORACLE_HOME=/d02/oracle/proddb/9.2.0
  • /d02/oracle/proddb/9.2.0/oracm/bin/ocmstart.sh
  • Configure and Start Cluster Manager
  • $ cd $HOME/product/9.2/oracm/admin

11i ADIM -8 ( cp/dd – DB files to shared storage )

 

  • cp –o_direct /d03/oracle/proddata/* /s01/oracle/proddata/
  • Kontrol Dosyaları Yenileme

11i ADIM -8 – init.ora / spfile

  • Diğer örnekler için UNDO TBS Yaratmak
  • Örnek-2 için örnekleme 1 ve yerine versa(Menagement Systems)’den thread aktif ve pasifleştirme

11i ADIM – 9 – Örnek 1

  • # RAC-specific Parameters
  • #
  • #########
  • cluster_database = true
  • cluster_database_instances=2
  • thread = 1
  • instance_number = 1
  • instance_name = PRODi1
  • service_names = PROD
  • local_listener = PRODi1
  • remote_listener = PRODi2

11i ADIM -10 – Örnek 2

  • cluster_database = true
  • cluster_database_instances=2
  • thread = 2
  • instance_number = 2
  • instance_name = PRODi2
  • service_names = PROD
  • local_listener = PRODi2
  • remote_listener = PRODi1

11i Apps tier – 806/iAS tnsnames.ora

  • PROD = (DESCRIPTION=
  • (ADDRESS_LIST =
  • (ADDRESS=(PROTOCOL=tcp)(HOST=linux1)(PORT=1521))
  • (ADDRESS=(PROTOCOL=tcp)(HOST=linux2)(PORT=1521))
  • )
  • (CONNECT_DATA=(SERVICE_NAME=PROD)(SERVER=DEDICATED))
  • )
  • PRODi2 = (DESCRIPTION=
  • (ADDRESS=(PROTOCOL=tcp)(HOST=linux2)(PORT=1521))
  • (CONNECT_DATA=(INSTANCE_NAME=PRODi2)(SERVICE_NAME=PROD))
  • )
  • PRODi1 = (DESCRIPTION=
  • (ADDRESS=(PROTOCOL=tcp)(HOST=linux1)(PORT=1521))
  • (CONNECT_DATA=(INSTANCE_NAME=PRODi1)(SERVICE_NAME=PROD))
  • )

Failover için DBC Dosya Düzeltme

  • APPS_JDBC_DRIVER_TYPE=THIN
  • FND_MAX_JDBC_CONNECTIONS=100
  • # Setup at Apps Tier
  • APPS_JDBC_URL=jdbc:oracle:thin:@(DESCRIPTION=
  • (ADDRESS_LIST=(LOAD_BALANCE=ON)
  • (ADDRESS=(PROTOCOL=TCP)(HOST=linux1)(PORT=1521))
  • (ADDRESS=(PROTOCOL=TCP)(HOST=linux2)(PORT=1521)))
  • (CONNECT_DATA=(SERVICE_NAME=prod)))

Failove ile ne Yapılabilir ve Ne Yapılamaz

  • SQL* PLUS TAF kullanarak Bağlanabilir
  • JDBC Failover ile Bağlanacak
  • Formların Çalışma Zamanı Bağlantılandırması Yapılamaz , Kullanıcılar Bağlantı Koparabilir

 

Soru ve Görüşleriniz için:

Saygılarımla…

Hakkında Mustafa Aksoy

Sakarya Üniversitesi Bilgisayar Mühendisliği mezunuyum. DWH/ETL ve Microstrategy Developer olarak çalışma hayatıma devam etmekteyim. İlgi alanlarım ve bildiğim teknolojiler; PL/SQL, ODI, ETL Circle, Data Guard,Reporting,Microstrategy ve Talend(ETL Tool)

Cevapla

E-posta adresiniz yayınlanmayacak. Required fields are marked *

*


Şu HTML etiketlerini ve özelliklerini kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>