EnterpriseZine(エンタープライズジン)

EnterpriseZine(エンタープライズジン)

テーマ別に探す

VMwareを使ったRAC環境構築のTips

edited by DB Online   2012/11/01 00:00

以前は、大規模かつ高い可用性が求められる重要システムでのみ使用するイメージのあったOracle Real Application Clusters(以下、RAC)ですが、ClusterwareやASMが導入されたOracle Database 10g RACの登場以降、様々なシステムで広く使用されるようになってきています。事実、弊社でお受けする設計・構築案件やデータ移行案件のほぼ100%がRACになっていますし、昨今オラクル社がリリースしたExadataやOracle Database ApplianceといったEngineered Systemsにも、基本的にはRACが選択されます。RACが採用されるシステムは、増えることあれども、減ることはないと考えられます。しかしながら、RACを使用したことがないエンジニアの方も多数いらっしゃると思います。そのようなエンジニアにRACを実際に使っていただくための手助けとして、「目指せリア充!コーソル流 RAC 活のススメ ~シングル卒業~」と題し、お手持ちのWindows 7環境でも簡単に11g Release2 RACを使用でき、11g Release2 RACの特徴や注意点を掴める記事をお送りしたいと思います。第一回目は、VMwareを使ったRAC構築手順の概要とTipsです。RACを構築するためには、OSの設定が肝となります。OSの設定を中心に構築時に注意すべき点をピックアップしてご紹介します。

 

参考資料
 インストールについて、以下の資料も合わせてご確認ください。
 http://www.oracle.com/technetwork/jp/database/oraclerac-install-guide-1504202-ja.pdf

 1.VMwareインストール

 ユーザー登録をすれば無償で使用することができるVMware Server2.0を使用しました。
 ※VMware Serverは2.0から管理ツールがWebインターフェースになりましたが、Firefoxでは対応していない バージョンがあるため、今回はInternet Explorerを使用しました。

 2.ゲストOS作成~インストール

 ・ディスクサイズ
  ローカルディスクは、Gridホームに6.5GBの領域、Oracleベースに4.6GBのディスク領域、合計で約11GBの領域が必要となります。OS領域やインストールメディアを配置する領域も考慮し、30GBの領域を確保しました。

 ・メモリ
  メモリは2GB以上が必須となりますが、今回はホストOSのメモリが4GBしかないため両ノード共1.5GBに設定しました。

 ・スワップ
  メモリが2GBから8GBの場合、同等のスワップサイズが必須となります。今回はメモリよりやや多めの2GBを割り当てました。

 ・ネットワーク
  パブリックLAN、プライベートLAN用にNICを2つ用意します。今回はパブリックLAN用にBridgeをプライベートLAN用にHost-onlyを使用し、共に固定IPを設定しました。

 3.VMware Toolsインストール

 VMware Toolsのインストールは必須ではありませんが、マウスのパフォーマンスの向上や、ホストOSとゲストOS間でテキストやファイルのコピーアンドペーストが可能になるなど、仮想環境が使い易くなりますので、インストールすることをお勧めします。

 VMware Toolsはパッケージマウント後、以下の手順を実施しインストールします。

 1.VMwareTools-7.7.5-156745.i386.rpmのインストール
 2./usr/bin/vmware-config-tools.plの実行

 /usr/bin/vmware-config-tools.plを実行するには、uname -mrの結果と同じバージョンのkernel-uek-develを予めインストールしておく必要があります。

 一時的にネットワークが切断されるため、SSH クライアントでリモート接続せず、ローカルのコンソールから実行してください。

 4.ゲストOS設定

 ユーザの作成や、カーネルパラメータの設定など、共有ディスク以外のインストール前の準備を実施します。

 ※OSコピーの前に設定を実施しておくと、コピーしたOSに設定内容が全て引き継がれるので、この後の手間を省くことができます。

 ・ネットワーク設定
 ゲストOS設定では特にネットワークの設定に注意が必要です。以下に詳細を記載します。

ネットワーク構成図
ネットワーク構成図

 

 RAC環境では用意するNICは2つですが、以下4種類のIPアドレスが必要となります。

 ・パブリックIPアドレス
 ・仮想IPアドレス(VIP)
 ・SCAN IPアドレス(SCAN VIP)
 ・プライベートIPアドレス

 ※VIPアドレス、SCAN IPアドレスについてはGrid Infrastructureインストール時に構成されますので、事前の構成は不要です。

  SCAN IPアドレスは11gR2の新機能です。詳細については、今後の回でご説明させていただきます。IPアドレスはインストール前にDNSやhostsファイルで名前解決されていることが必須となります。

 以下の点について注意し、設定を実施してください。

 ・パブリックIPアドレス、仮想IPアドレス、SCAN IPアドレスは同一セグメント上に、プライベートIPアドレスは別  セグメントに設定すること
 ・SCAN IPアドレスはRAC環境で1つ、その他は各ノードで1つずつIPアドレスを設定すること
 ・SCAN名にアンダースコア("_")を使用しないこと

 今回はhostsファイルを使用し、以下の内容を記載しました。

 5.ゲストOSコピー

 ・ゲストOS(COSOL01)コピー
  ゲストOSの設定が完了したら、ゲストOSを停止し、仮想環境をフォルダごとコピーします。

 ・コピーしたゲストOS(COSOL02)の設定ファイルを変更
  ゲストOSコピー後、以下の手順を実施します。

 1.フォルダ、ファイル名の変更
 コピーしたフォルダ名を"COSOL02"に変更します。

 また、"COSOL2"フォルダ配下にあるファイルで"COSOL01"が含まれているファイル名を全て"COSOL2"に変更します。

キャプチャ

 2.vmxファイルの編集
 vmxファイルをテキストエディタで開き、以下の記載を編集します。

 3.vmxfファイルの編集
 vmxfファイルをテキストエディタで開き、以下の記載を編集します。

 4.vmdkファイルの編集
 vmdkファイルをテキストエディタで開き、以下の記載を編集します。

 ・VMwareへの追加登録
 コピーしたゲストOSをVMwareに追加登録します。

 ・仮想マシン上のNICを変更
  MACアドレスの競合を防ぐため、コピーしたゲストOSのNICを削除、追加し、NICを付け替えます。

 ・共有ディスクの追加
1.COSOL01でディスクを追加作成
 共有ディスクはゲストOSとは別のフォルダに作成します。本環境ではゲストOSのフォルダと同じ階層の別フォルダに作成しました。

2.COSOL02でディスクを追加
 COSOL01で作成した共有ディスクをCOSOL02で追加します。

3.vmxファイルの編集
 不要なファイルキャッシングの機能や、ロックの機能を無効にするために各ゲストOSのvmxファイルをテキストエディタで開き、最終行に以下を追記します。

 6.OSコピー後の設定

 ・ゲストOSの起動
  各ゲストOSを起動します。コピーしたゲストOS(COSOL02)については、初回起動時に以下メッセージが出力されますのでI_copied を選択してください。

キャプチャ

 ・COSOL02の設定変更
  OSが起動したら、COSOL02で以下の手順を実施してください。

  1.ホスト名の変更
  2.IPアドレスの変更
  3.環境変数の変更

  gridユーザ、oracleユーザで、SIDなど、ノードにより異なる環境変数を設定してください。

 ・両ノードでの設定変更
  両ノードで以下の手順を実施してください。
 

1.共有ディスクの設定
 fdiskコマンドでパーティションの作成をするなど、共有ディスクの設定を実施してください。

2.cvuqdiskパッケージのインストール
 インストール・メディアのrpmディレクトリにある、cvuqdiskパッケージをインストールしてください。

3.時刻同期設定
 Oracle Clusterwareでは、全てのクラスタ・ノードで同じタイムゾーン設定が必要となります。時刻を同期させる方法は2つあります。

 -ネットワーク・タイム・プロトコル(NTP)
 -Oracleクラスタ時刻同期化サービス(ctssd)

 今回はOracleクラスタ時刻同期化サービスを使用することにしました。このサービスを有効にするために、Grid Infrastructureインストール前に以下手順を実施し、NTPの構成を無効化してください。

 7.Grid Infrastructureインストール

 ・前提条件チェックのエラー
  OSの設定が正しい場合でも、インストール前の前提条件を満たしていないと判断されることがあります。   詳細について、以下に記載します。

 -物理メモリー
  必須要件を満たしていないためステータスが警告となりますが、このまま進めて問題ありません。

 -タスクresolv.confの整合性
  SCANホスト名がDNSではなくhostsファイルのみで名前解決されている場合、resolv.confが失敗します。   SCANホスト名が正しく設定されていることが確認できれば、このまま進めて問題ありません。

キャプチャ

 ・シェルの実行
  Oracle Databaseを導入する際、OUIの最後にorainstRoot.sh、root.shを実行しますが、同様のものがGrid  Infrastructureにも存在します。RACの場合は全ノードで実行する必要があります。必ず1ノードずつ順番に実行してください。

 ・インストール時のエラー
  Oracle Cluster Verificationユーティリティで以下エラーが発生しますが、SCANホスト名をhostsファイルで名前解決した場合に発生するエラーとなります。本エラーは無視可能ですのでこのままインストールを進めて問題ありません。

キャプチャ

 8.Oracle Databaseインストール

 ・前提条件チェックのエラー
  -タスクresolv.confの整合性
   Grid Infrastructureインストール時と同様です。

  -単一クライアント・アクセス名(SCAN)
   PRVG-1101のエラーが発生し、ステータスが警告となります。 このチェックについても、SCANホスト名がDNSではなくhostsファイルのみで名前解決されている場合に発生するものです。このまま進めて問題ありません。

キャプチャ

 9.データベース作成

 ・データベース作成
  データベースの作成はシングルの場合と大きな違いはありません。以下の点に注意し、作成してください。

  -オンラインREDOログのグループ、UNDO表領域はインスタンス単位で割り当てる必要がある
  -記憶域のタイプに自動ストレージ管理(ASM)を選択する

キャプチャ

 ・DB作成後の確認
  gridユーザで以下コマンドを実行し、gsd以外のステータスがonlineになっていれば、RACの構築は完了です!!

 第一回目は以上となります。RACに触れる機会がなかった人は、是非この機会に構築し、触ってみてください。



著者プロフィール

  • 青野 友香(アオノ ユカ)

    株式会社 コーソル Oracleサービスグループ 学生時代は人間文化専攻で、地域文化とメディアについて学んでいたが、 未知の領域への好奇心からIT業界を志望。その中でも、Oracle Databaseという 「最もよく分からない技術」に挑戦したいと思い、2009年4月に新卒でコーソルへ入社。 入社以降、一貫してRACを含むOracle Database製品の設計、構築・導入、チューニング、運用支援などの幅広いサービスを提供するサービスグループにて活躍している。 2011年9月にORACLE MASTER Gold Oracle Database 11g、2012年3月に Oracle Database 10g: Real Application Clusters Administrator Certified Expertを取得。 コミュニケーション能力の高さとフットワークの軽さから、 一度ご支援させていただいたお客様より、「次も青野さんで!」とのご指名を いただくことも少なくない。常にお客様のことを第一に考え、一つでも多くの ご要望にお応えすべく、工数の工面に苦悩する日々を過ごしている。 また、会社の中核メンバーとして、新人教育や社内イベントの企画などでも、幅広く活躍中。 趣味は旅行。「好奇心」を存分に活かし、世界各地で美味しい食事と美味しいお酒を堪能するのが一番の息抜き。

バックナンバー

連載:目指せリア充!コーソル流 RAC 活のススメ ~シングル卒業~
All contents copyright © 2007-2021 Shoeisha Co., Ltd. All rights reserved. ver.1.5