OTNの「Oracle Real Application Clusters 10g 設定手順

VMware 編 ASM番Windows Server 2003 Version」を参照

VMWareダウンロード
VMwareで何をするかというと、
ホストマシンのディスクのファイルシステム上に仮想ディスクファイルを作成し
仮想ディスクファイルを複数仮想マシンから共有ディスクとしてアクセスする。

デフォルトではVMwareで作成される仮想マシン
C:\Documents and Settings\Administorator\My Documents\My Virtual Machinesに
作成される。

VMwareインストール
自動起動は無効とする。
VMwareにはNATやらDHCPもはいっている。
仮想マシンを2台作成する。
・H/W追加ウィザードで投票ディスクなど共有ディスクを作成する。
・winNetEnterprise.vmxに以下の変更を加え、
仮想ディスクデバイスへのノードからのロックを解除。

diskLib.dataCacheMaxSize=0
diskLib.dataCacheMaxReadAheadSize=0
diskLib.dataCacheMinReadAheadSize=0
diskLib.dataCachePageSize=4096
diskLib.maxUnsyncedWrites=0

・仮想ネットワークを構成する。
サブネット
VMNet1 192.168.10.0
VMNet8 192.168.2.0
仮想マシンへのOSインストール
・OSインストール後、共有ディスクに対するパーティションを作成する。
(パーティションとは論理ドライブである。)
diskpartをダウンロードする。
http://download.microsoft.com/download/win2000platform/DiskPart/1.00.0.1/nt5/en-us/DiskPart_setup.exe
で単体インストールも可能だが、一応Win2000 SP4を宛ててからにする。

c:\program files\resource kit\diskpart.exeを実行し、

select disk n
create partition extend
create partition logical

で作成する。

続いてノード2のOSをインストール
※CDブートしない場合はVMが起動し始めた直後にEscを押す。
そこでRemoval Diskなどが選択されていて起動されないので、CDを選択する。


2台めインストール画面で
Setup detected multiple disks in your machine that are indeistinguishable.
Setup has corrected the probrem, but a reboot is required.

でとまる。
プライマリパーティションのIDE0:0がSCSI0:0とダブっていたっぽい。
1:1に変えるとすんなりインストールされた。

が、インストール2フェーズに進まない。。。。
仮想マシン#2を再度作り直したら進んだ。何だろう??

※インターコネクト設定。

RAC1
>PublicLAN
IP 192.168.2.11
MK 255.255.255.0
>Interconnect
IP
MK

RAC1

>PublicLAN
IP
MK
>Interconnect
IP
MK


192.168.2.11 rac1
192.168.2.12 rac2
192.168.10.11 int1
192.168.10.12 int2
192.168.2.21 rac1vip
192.168.2.22 rac2vip

▽CRSインストール
・ノード番号が大きいマシンから行う。
OraCr10g_home
K:\oracle\product\10.2.0\crs
でインストール


[クラスタ構成の指定]画面にて
クラスタの名前を入力
Clusterwareにて管理されるノードを選択
・パブリックIPアドレス
・プライベートインターコネクト名
・ノード上の仮想IPアドレス
を入力する。

クラスタ名 CRS
パブリックノード名 プライベートノード名
Rac1 Int1
Rac2 Int2

ここでエラー

指定したノードはクラスタ化できません。
オペレーティング・システムから次のエラーが返されました。
The Operation has failed unexpectedly

10.1をダウンロードしてやりなおす。vipのせいかもしれない。

今度は違うエラーが出る。

パブリック・ノードrac2は使用できないか、アクセスできません。
エントリを確認し、有効なパブリック・ノード名を再入力してください。

ううむ。なんでだろな。



▼豆知識
・Oracle9i時代RACクラスタソフトを必要とするが、
RACを使うためにOSごとに異なったクラスタソフトを利用していた。
10gのCRSで9i時代のORACM(OracleClusterManagerService)といっていた部分は
ocssd(Oracle Synchronized Servic)という名称で継承されている。

OCR=データベースや各ノードのインスタンス、サービス、VIPなど
RACを構成する各種情報を格納するファイル。
投票ディスクと同様に共有ディスク上に作成される数10M
バイト程度のファイル。

・投票ディスク
インターコネクトに障害が発生した場合そのままでは各ノードが同時に
同じデータを更新してしまい、データの一貫性に矛盾が起きる。
各ノードで同じ行を更新しているとき、正常な状態ではインターコネクトを解して
行ロックの情報がやり取りされるが、インターコネクト障害のためにロック情報の
やりとりができなくなってしまうため、矛盾が生ずる可能性がある。
このような事態を避けるため、インターコネクトが切断したとき、
クラスタソフトがいずれかのノードのインスタンスを強制的にダウンさせる必要がある。
どのノードをダウンさせるか決定するため投票ディスクが使用される。