Press ESC to close

Oracle RAC Clusterware Administration: CRSCTL, SRVCTL, OCR and Voting Disk Management

Oracle Clusterware, birden fazla sunucu ve sunucu sisteminin tek bir sistem gibi birlikte çalışmasını ve merkezi olarak yönetilmesini sağlayan Oracle altyapı yazılımıdır. Oracle Real Application Clusters (RAC) mimarisinin temelini oluşturan Clusterware, düğümler arasındaki iletişimi, yüksek erişilebilirliği (High Availability) ve kaynak yönetimini sağlayarak RAC ortamının kesintisiz çalışmasına olanak tanır.

Clusterware Software Stack

RAC düğümü başladığında Oracle Clusterware otomatik olarak başlatılır. Bu başlatma işlemi birkaç işlemden geçiyor

Oracle Clusterware Yönetimi (Clusterware Management)

Grid Infrastructure Universal Installer, Oracle Clusterware ve ASM Instance kurulumlarını ve ilk yapılandırma işlemlerini otomatik olarak gerçekleştirir. Kurulum tamamlandıktan sonra Clusterware ve ASM servisleri işletim sistemi açılışında otomatik olarak başlatılır. Bu sayede sunucu yeniden başlatıldığında çoğu durumda manuel bir müdahaleye ihtiyaç duyulmadan servisler otomatik olarak devreye girer.

Oracle, Oracle Grid Infrastructure yönetimi için kullanılabilecek çeşitli araçlar ve yardımcı programlar sunmaktadır. Bunlardan en yaygın kullanılan araçlardan biri, komut satırı tabanlı Clusterware yönetim aracı olan crsctl yardımcı programıdır. crsctl komutu ile CRS (Cluster Ready Services) servisleri cluster üzerindeki herhangi bir düğümden başlatılabilir, durdurulabilir ve durum kontrolleri gerçekleştirilebilir. Kullanılabilecek tüm komut ve parametreleri görüntülemek için aşağıdaki yardım komutu kullanılabilir.

crsctl -help komutu çalıştırıldığında Clusterware yönetiminde kullanılabilecek temel komutlar listelenir. Bu komutlar sayesinde Clusterware kaynakları yönetilebilir, servis durumları kontrol edilebilir, OCR ve Voting Disk işlemleri gerçekleştirilebilir ve cluster servisleri başlatılıp durdurulabilir.

Özellikle günlük Oracle RAC yönetim operasyonlarında en sık kullanılan komutlar arasında start, stop, check, status, query, enable ve disable işlemleri yer almaktadır. Ayrıca replace votedisk, backup, pin/unpin gibi komutlar ileri seviye cluster yönetimi ve bakım işlemlerinde kullanılmaktadır.

$ crsctl -help
Usage: crsctl add – add a resource, type, or other entity
crsctl backup – back up voting disk for CSS
crsctl check – check a service, resource, or other entity
crsctlconfig – output autostart configuration
crsctl debug – obtain or modify debug state
crsctl delete – delete a resource, type, or other entity
crsctl disable – disable autostart
crsctl discover – discover DHCP server
crsctl enable – enable autostart
crsctleval – evaluate operations on resource or other entity…
crsctl get – get an entity value
crsctlgetperm – get entity permissions
crsctllsmodules – list debug modules
crsctl modify – modify a resource, type, or other entity
crsctl query – query service state
crsctl pin – pin the nodes in the nodelist
crsctl relocate – relocate a resource, server, or other entity
crsctl replace – replace the location of voting files
crsctl release – release a DHCP lease
crsctl request – request a DHCP lease or an action entrypoint
crsctlsetperm – set entity permissions
crsctl set – set an entity value
crsctl start – start a resource, server, or other entity
crsctl status – get status of a resource or other entity
crsctl stop – stop a resource, server, or other entity
crsctl unpin – unpin the nodes in the nodelist
crsctl unset – unset a entity value, restoring its default

Oracle Grid Infrastructure ortamında kullanılan bir diğer önemli komut satırı aracı ise srvctl yardımcı programıdır. srvctl, Oracle RAC bileşenlerini ve cluster kaynaklarını yönetmek için kullanılır. Veritabanı, instance, listener, service, ASM, VIP ve scan listener gibi birçok cluster kaynağı bu araç ile yönetilebilir.

Bir srvctl komutu temel olarak dört bölümden oluşur:

$ srvctl <command> <object> [<options>]

Yardım almak için

$ srvctl <command> -h or
$ srvctl <command> <object> -h

Oracle Grid Infrastructure yönetiminde kullanılan başka yardımcı araçlar da bulunmaktadır. Bu araçlar cluster yapılandırması, OCR yönetimi ve ağ konfigürasyonu gibi işlemlerde DBA’lere önemli kolaylıklar sağlamaktadır.

  • oifcfg : Cluster ortamındaki public ve private ağ arayüzlerini yapılandırmak için kullanılan komut satırı aracıdır.
  • ocrconfig : OCR (Oracle Cluster Registry) ve OLR (Oracle Local Registry) yapılarını yönetmek için kullanılan yardımcı programdır.
  • ocrcheck : OCR yapısının durumunu ve bütünlüğünü kontrol etmek için kullanılan doğrulama aracıdır.
  • ocrdump : OCR içeriğini görüntülemek ve dışarı aktarmak için kullanılan Oracle Cluster Registry dump aracıdır.
  • Oracle Enterprise Manager Cloud Control : Oracle Clusterware ve Grid Infrastructure ortamlarının merkezi olarak izlenmesi ve yönetilmesi için kullanılabilir.

Start Up and Stop Clusterware

OS başatıldığında Clusterware de otomatik olarak başlar, ancak crsctl ile manuel olarakta clusterware durdurulup başlatılabilir

$ crsctl start cluster [-all | - n server1[,..]]

Örnek

$crsctl start cluster –all
$crsctl start cluster –n node1

Local sunucuda Oracle High Availability Services daemon (OHASD) ve Clusterware servislerini çalıştırmak için

$crsctl start crs

Bu iki komutunda Linux/Unix sistemlerde çalışabilmesi için root yetkilerine ihtiyaç duymaktadır. Durdurmak içinse aşağıdaki komutlar kullanılır -f option kullanılırsa durdurmaya zorlar;

$ crsctl stop cluster [-all | -n server_name [...]] [-f]

Local sunucu için ise;

$ crsctl stop crs [-f]

Cluster Drumunu kontrol etmek için;

$ crsctl check cluster {-all}
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online

OHASD durumunu kontrol etmek için;

$GRID_HOME/bin/crsctl check has
CRS-4638: Oracle High Availability Services is online

Tüm kaynakların durumunu kontrol etmek için;

# crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.FRA.GG_VOLUME.advm
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.chad
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.fra.gg_volume.acfs
               ONLINE  ONLINE       rac1                     mounted on /oggdir,S
                                                             TABLE
               ONLINE  ONLINE       rac2                     mounted on /oggdir,S
                                                             TABLE
ora.net1.network
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.ons
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
ora.proxy_advm
               ONLINE  ONLINE       rac1                     STABLE
               ONLINE  ONLINE       rac2                     STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        ONLINE  OFFLINE                               STABLE
ora.DATA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.FRA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac1                     STABLE
ora.LISTENER_SCAN2.lsnr
      1        ONLINE  ONLINE       rac2                     STABLE
ora.LISTENER_SCAN3.lsnr
      1        ONLINE  ONLINE       rac2                     STABLE
ora.asm(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     Started,STABLE
      2        ONLINE  ONLINE       rac2                     Started,STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
      1        ONLINE  ONLINE       rac1                     STABLE
      2        ONLINE  ONLINE       rac2                     STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.cvu
      1        ONLINE  ONLINE       rac2                     STABLE
ora.qosmserver
      1        ONLINE  ONLINE       rac2                     STABLE
ora.rac1.vip
      1        ONLINE  ONLINE       rac1                     STABLE
ora.rac2.vip
      1        ONLINE  ONLINE       rac2                     STABLE
ora.racdb.db
      1        ONLINE  ONLINE       rac1                     Open,HOME=/u01/app/o
                                                             racle/product/19.0.0
                                                             .0/db,STABLE
      2        ONLINE  ONLINE       rac2                     Open,HOME=/u01/app/o
                                                             racle/product/19.0.0
                                                             .0/db,STABLE
ora.scan1.vip
      1        ONLINE  ONLINE       rac1                     STABLE
ora.scan2.vip
      1        ONLINE  ONLINE       rac2                     STABLE
ora.scan3.vip
      1        ONLINE  ONLINE       rac2                     STABLE
rac1-gg-vip
      1        ONLINE  ONLINE       rac2                     STABLE
xag.gg_orders.goldengate
      1        OFFLINE OFFLINE                               STABLE

Bu komutlar root, grid ve oracle tarafından execute edilebilir.

OCR ve VOTING DISK YÖNETİMİ

Oracle, OCR’yi yönetmek için üç araç sunar:

  • ocrconfig
  • ocrdump ve
  • ocrcheck
 $ ocrcheck
Status of Oracle Cluster Registry is as follows:
 Version : 3
 Total space (kbytes) : 262120
 Used space (kbytes) : 3192
 Available space (kbytes) : 258928
 ID : 1707636078
 Device/File Name : +VOCR

Ocrdump komutu, OCR içeriğini bir .txt veya .xml dosyasına dökmek için kullanılabilir.

$ ./ocrdump
$ ls -l OCRDUMPFILE
-rw------- 1 root root 212551 Dec 28 20:21 OCRDUMPFILE

OCR her bir nodda en az 4 saatte bir yedeklenir Yedekler $GRID_HOME/cdata/ dizininde saklanır, ocrconfig -showbackup komutu ile backuplar görüntülenebilir.

$GRID_HOME/bin/ocrconfig -showbackup

rac2     2021/02/17 11:28:50     +DATA:/rac-cluster/OCRBACKUP/backup00.ocr.277.1064748521     724960844

rac2     2021/02/16 19:13:19     +DATA:/rac-cluster/OCRBACKUP/backup01.ocr.276.1064689985     724960844

rac2     2021/02/16 15:13:02     +DATA:/rac-cluster/OCRBACKUP/backup02.ocr.281.1064675575     724960844

rac2     2021/02/16 11:12:51     +DATA:/rac-cluster/OCRBACKUP/day.ocr.280.1064661173     724960844

rac1     2021/02/09 19:02:37     +DATA:/rac-cluster/OCRBACKUP/week.ocr.273.1064084559     724960844

rac2     2021/03/08 15:23:03     +DATA:/rac-cluster/OCRBACKUP/backup_20210308_152303.ocr.278.1066663383     724960844

OCR ı backuptan tekrar restore etmek için;

  • Hangi backup ı kullanacağımızı ocrconfig -showbackup komutu ile tespiti yapılır
  • Tüm nodlar için clusterweare kapatılır.
  • ocrconfig -restore file_name komutu ile restore işlemi yapılır
  • Crs yeniden başlatın ve cluvfy comp ocr kullanarak bir OCR bütünlük kontrolü yapılır.

Voting Disk (VD) kontrolü yapmak için aşağıdaki komut kullanılabilir.

$ crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
 1. ONLINE   2302b41653a64fb0bffabe7ff3cf10d8 (/dev/oracleasm/disks/DATA1) [DATA]
Located 1 voting disk(s).

VD’yi başka bir konuma taşımak için aşağıdaki crsctl komutunu kullanabilirsiniz:

$GRID_HOME/bin/crscrsctl replace votedisk +DATA3

srvctl komutu ile Clusterware kaynakları yönetilebilir, Bu kaynaklar; database, instance, service, nodeapps, vip, asm, diskgroup, listener, scan, scan listener, serer pool, server, oc4j, home, file system, ve gns. Bu yönetilecek olan kaynak komutun <object> bölümünde belirtilmiştir. Komutun <action> bölümünde belirtilen kaynaktaki yönetim işlemini belirtir enable, disable, start, stop, relocate, status, add, remove, modify, getenv, setenv, unsetenv, config, convert ve upgrade.

srvctl <action> <object> [<options>]

$srvctl config scan
SCAN name: knewrac-scan.kcloud.dblab.com, Network: 1
Subnet IPv4: 172.16.0.0/255.255.0.0/eth0
Subnet IPv6:
SCAN 0 IPv4 VIP: -/scan1-vip/172.16.150.40
SCAN name: knewrac-scan.kcloud.dblab.com, Network: 1
Subnet IPv4: 172.16.0.0/255.255.0.0/eth0
Subnet IPv6:
SCAN 1 IPv4 VIP: -/scan2-vip/172.16.150.83
SCAN name: knewrac-scan.kcloud.dblab.com, Network: 1
Subnet IPv4: 172.16.0.0/255.255.0.0/eth0
Subnet IPv6:
SCAN 2 IPv4 VIP: -/scan3-vip/172.16.150.28


$ srvctl status vip -n knewracn1
VIP 172.16.150.37 is enabled
VIP 172.16.150.37 is running on node: knewracn1

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir