Oracle RAC’ta Voting Disk Taşıma: EXTERNAL ve HIGH Redundancy Disk Group Karşılaştırması

YUNUS EMRE ATAY

votedisk

Oracle RAC’ta voting disk’i başka bir ASM disk group’a taşımak için crsctl replace votedisk komutu kullanılır. Taşıma sonrası kaç voting disk oluşacağını hedef disk group’un redundancy tipi ve failgroup sayısı belirler. Bu yazıda 2 node’lu bir Oracle 19c RAC’ta (oraclius1, oraclius2) aynı voting disk’i iki kez taşıyoruz:

  1. DATA (EXTERNAL) → OCR (EXTERNAL): tek kopya olarak taşınır.
  2. OCR (EXTERNAL) → VOTE (HIGH): 5 kopya olarak taşınır.

Voting Disk Sayısı Nasıl Belirlenir?

ASM’de voting disk sayısını elle belirleyemezsiniz. crsctl add css votedisk komutu ASM disk group’larda çalışmaz. Sayı, voting disk’lerin bulunduğu disk group’un redundancy tipine göre belirlenir:

RedundancyVoting Disk SayısıGereken Failgroup
EXTERNAL11
NORMAL33
HIGH55

Her voting disk ayrı bir failgroup’a yerleşir. Failgroup sayısı gereken sayıdan fazlaysa fazlası voting disk tutmaz, eksikse işlem hata verir.

Mevcut Durum

Lab ortamında 3 disk group var:

asmcmd lsdg
State    Type    Rebal  ...  Total_MB  Free_MB  ...  Voting_files  Name
MOUNTED  EXTERN  N      ...     10236     7176  ...             Y  DATA/
MOUNTED  EXTERN  N      ...     14332    13956  ...             N  OCR/
MOUNTED  HIGH    N      ...      7168     6616  ...             N  VOTE/

Voting_files sütunu hangi disk group’un voting disk tuttuğunu gösterir. Şu an DATA içinde tek voting disk var:

crsctl query css votedisk
##  STATE    File Universal Id                File Name                    Disk group
--  -----    -----------------                ---------                    ---------
 1. ONLINE   613ee890f03c4f39bf30cea0bd72acbe (/dev/oracleasm/asm_data1)   [DATA]
Located 1 voting disk(s).

Cluster’ın sağlıklı olduğunu doğrulayın ve işlemden önce OCR yedeği alın:

crsctl check cluster -all

/u01/app/19/grid/bin/ocrconfig -manualbackup     # root ile
**************************************************************
oraclius1:
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
**************************************************************
oraclius2:
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
**************************************************************
oraclius2     2026/10/12 10:51:43     +OCR:/oraclius/OCRBACKUP/backup_20261012_105143.ocr.263.1246445503     724960844  

Bölüm 1: DATA’dan OCR Disk Group’a Taşıma (EXTERNAL, 1 Kopya)

OCR disk group’u EXTERNAL redundancy olduğu için voting disk 1 kopya olarak taşınır.

1.1 Hedef disk group’u kontrol edin

OCR disk group’un tüm node’larda mount olduğundan emin olun:

srvctl status diskgroup -diskgroup OCR

1.2 Voting disk’i taşıyın

root kullanıcısı ile, Grid Infrastructure ortamı ayarlıyken çalıştırın. Cluster’ı kapatmanıza gerek yoktur.

crsctl replace votedisk +OCR

Komut önce yeni disk group’a voting disk ekler, sonra eskisini siler. Cluster hiçbir anda voting disk’siz kalmaz.

1.3 Sonucu doğrulayın

crsctl query css votedisk
##  STATE    File Universal Id                File Name                    Disk group
--  -----    -----------------                ---------                    ---------
 1. ONLINE   <yeni_id>                        (/dev/oracleasm/<ocr_diski>) [OCR]
Located 1 voting disk(s).

Voting disk OCR disk group’a taşındı ama hâlâ tek kopya. Bunun nedeni OCR disk group’un EXTERNAL olması. asmcmd lsdg çıktısında OCR satırında Voting_files sütunu Y, DATA satırında N olmalıdır.

Bölüm 2: OCR’dan VOTE Disk Group’a Taşıma (HIGH, 5 Kopya)

VOTE disk group’u HIGH redundancy. 5 voting disk oluşması için en az 5 farklı failgroup içermesi gerekir. Önce bunu kontrol edin:

asmcmd lsdsk -k -G VOTE

Çıktıdaki Failgroup sütununda en az 5 farklı değer görünmelidir. CREATE DISKGROUP sırasında FAILGROUP belirtmediyseniz her disk kendi failgroup’u olur, yani 7 disk 7 failgroup demektir. Bu durumda ASM bu failgroup’lardan 5’ine voting disk yerleştirir, kalan 2’si sadece veri tutar.

2.1 Disk group’un tüm node’larda mount olduğunu doğrulayın

srvctl status diskgroup -diskgroup VOTE

Mount edilmemiş node varsa:

srvctl start diskgroup -diskgroup VOTE -node oraclius2

2.2 Voting disk’leri taşıyın

crsctl replace votedisk +VOTE
Successful addition of voting disk 24d3892fedbf4f83bfbf3d1d42a8342a.
Successful addition of voting disk 7f4d8afa8ea84f99bf7904fb13789515.
Successful addition of voting disk a06d800d78c74f7bbf0d26bf97ff2de8.
Successful addition of voting disk 80b0021c85664f12bfe1f9a68c448ef0.
Successful addition of voting disk 124b7f385d424f0cbf88d075d6e31d19.
Successful deletion of voting disk a4ebd5dd2a984f7dbfd8e92f8a6c5733.
Successfully replaced voting disk group with +VOTE.
CRS-4266: Voting file(s) successfully replaced

2.3 Sonucu doğrulayın

crsctl query css votedisk
##  STATE    File Universal Id   File Name                    Disk group
--  -----    -----------------   ---------                    ---------
 1. ONLINE   <id1>               (/dev/oracleasm/<vote_disk>) [VOTE]
 2. ONLINE   <id2>               (/dev/oracleasm/<vote_disk>) [VOTE]
 3. ONLINE   <id3>               (/dev/oracleasm/<vote_disk>) [VOTE]
 4. ONLINE   <id4>               (/dev/oracleasm/<vote_disk>) [VOTE]
 5. ONLINE   <id5>               (/dev/oracleasm/<vote_disk>) [VOTE]
Located 5 voting disk(s).

Tek voting disk, VOTE disk group’a 5 kopya olarak taşındı. Hangi 5 failgroup’un seçileceğine ASM karar verir. Hangi disklerin voting disk tuttuğunu görmek için:

asmcmd lsdsk -k -G VOTE      # Voting_File sütununda Y olan 5 disk

Sonuç Karşılaştırması

TaşımaHedef Disk GroupVoting Disk Sayısı
DATA → OCREXTERNAL1
OCR → VOTEHIGH (5 veya daha fazla failgroup)5

Aynı crsctl replace votedisk komutu kullanılsa da sonucu hedef disk group belirliyor. Voting disk sayısını artırmak için komutun kendisine parametre vermezsiniz, doğru redundancy ve failgroup yapısındaki disk group’a taşırsınız.

Dikkat Edilecekler

  • HIGH redundancy disk group’ta 5’ten az failgroup varsa 5 voting disk oluşamaz ve taşıma hata verir. İşlem sonrası mutlaka crsctl query css votedisk satır sayısını kontrol edin.
  • Voting disk içeriği OCR yedeğiyle birlikte otomatik yedeklenir, dd ile manuel yedek gerekmez.
  • Eski disk group’u silmeden önce içinde OCR, ASM spfile veya password file kalmadığından emin olun.
  • İşlemi önce test ortamında deneyin, production’da bakım penceresinde yapın.

Sıkça Sorulan Sorular

Voting disk taşımak için cluster’ı kapatmak gerekir mi?
Hayır, crsctl replace votedisk cluster açıkken online çalışır.

EXTERNAL redundancy disk group’a 5 voting disk taşıyabilir miyim?
Hayır. EXTERNAL en fazla 1, NORMAL 3, HIGH 5 voting disk tutar.

HIGH disk group’ta 7 failgroup varsa kaç voting disk oluşur?
5. Üst sınır HIGH için 5’tir, fazla failgroup’lar sadece veri tutar.


Bir yanıt yazın

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

Hey!

Merhaba! Ben EMRE, teknoloji, yazılım veri tabanı ve veri analitiği alanlarına tutkuluyum. Bu blogda, öğrendiklerimi ve tecrübelerimi paylaşarak faydalı içerikler sunmayı hedefliyorum. Boş zamanlarımda yeni teknolojiler keşfetmeyi, yazmayı ve kendimi geliştirmeyi seviyorum.

ıletısım adreslerım