
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