ヘッダーをスキップ

Oracle Database 2日でReal Application Clustersガイド
11g リリース1(11.1)

E05737-03
目次
目次
索引
索引

戻る 次へ

2 クラスタの準備

この章には、システム管理者およびネットワーク管理者が、DBAとして、クラスタ内の2つのノードを構成する担当者をサポートする際に必要な情報が含まれています。この章では、Red Hat Linuxオペレーティング・システムの基本を理解していることを前提としています。必要に応じて、『Oracle Real Application Clustersインストレーション・ガイドfor Linux and UNIX Systems』で詳細を参照してください。また、この章のタスクを実行するには、root権限が必要です。

この章の内容は次のとおりです。

要件の確認の概要

インストールを開始する前に、システムがOracle Real Application Clusters(Oracle RAC)の要件を満たしていることを確認する必要があります。この要件は、次の3つのカテゴリに分けられます。

ハードウェア要件の確認の概要

Oracle ClusterwareまたはOracle ClusterwareとOracle RACのインストールの一部を形成する各ノードは、ソフトウェアの最低限のハードウェア要件を満たす必要があります。これらのハードウェア要件は、次のようなカテゴリに分けられます。

Oracle Databaseホーム・ディレクトリに3.5GB以上の使用可能なディスク領域、また自動ストレージ管理(ASM)のホーム・ディレクトリに3.3GB以上の使用可能なディスク領域が必要です。さらに、Oracle Clusterwareソフトウェアのインストールには600MBの使用可能なディスク領域が必要です。最適なパフォーマンスおよび保護のためには、複数のディスクが必要であり、各ディスクが異なるディスク・コントローラを使用する必要があります。


注意:

実際のディスク領域要件については、ご使用のオペレーティング・システムのインストレーション・ガイドを参照してください。Oracleソフトウェアで使用されるディスク領域は一定でなく、このマニュアルに記載されている値より大きくなることもあります。 


Oracle RACデータベースは、シェアード・エブリシング型のデータベースです。Oracle RACデータベースで使用されているすべてのデータファイル、制御ファイル、REDOログ・ファイル、およびサーバー・パラメータ・ファイル(SPFILE)は、すべてのOracle RACデータベース・インスタンスがアクセス可能な共有記憶域に配置する必要があります。このマニュアルで説明するOracle RACインストールでは、データベース・ファイルの共有記憶域にOracle ASMが使用されます。

Oracle Clusterwareは、次のコンポーネントを使用することによって、優れたスケーラビリティと高可用性を実現します。

これらのOracle Clusterwareコンポーネントには、次のような追加のディスク領域が必要です。

投票ディスク・ファイルを配置するには、各投票ディスクが、任意のハードウェア・デバイスまたはディスクを共有しないように、または他のシングル・ポイント障害の場所を共有しないように構成されていることを確認します。Oracle Clusterwareファイルの詳細は、「Oracle Clusterwareファイル用のブロック・デバイスの構成」を参照してください。

参照:

 

ネットワーク要件の識別の概要

Oracle RACクラスタは、プライベート・インターコネクトでリンクしている2つ以上のノードで構成されます。インターコネクトは、クラスタにあるノードの間の通信パスとして機能します。クラスタ・データベースの各インスタンスでは、各インスタンスの共有リソースの使用を同期化するためのメッセージ機能でインターコネクトを使用します。Oracle RACでは、複数のインスタンスで共有されるデータ・ブロックの転送にもインターコネクトを使用します。

Oracle Clusterwareでは、クラスタ内のノードが、プライベート・インターコネクトを使用してプライベート・ネットワークに接続されている必要があります。プライベート・インターコネクトは、クラスタ・ノード間で構成する個別のネットワークです。Oracle RACで使用するインターコネクトは、Oracle Clusterwareで使用するインターコネクトと同じです。このインターコネクトは、プライベート・インターコネクトである(クラスタ・メンバー以外のノードからはアクセスできない)必要があります。

Oracle RACおよびOracle Clusterwareに使用するネットワークを構成する場合は、クラスタ内の各ノードが次の要件を満たしている必要があります。

Red Hat Linuxを実行しているノード上に構成するインタフェースを決定するには、rootユーザーとして次のコマンドを使用します。

# /sbin/ifconfig

各ノードのIPアドレスを取得するには、システムおよびネットワーク管理者の協力が必要になる場合があります。

参照:

 

インストールされたオペレーティング・システムとソフトウェア要件の検証

正確な要件の詳細は、使用プラットフォームのOracle ClusterwareおよびOracle Real Application Clustersのインストレーションおよび構成ガイドを参照してください。この要件には次のものが含まれます。

Oracle Database 11g リリース1(11.1)で現在サポートされていないバージョンのオペレーティング・システムを実行している場合は、最初にオペレーティング・システムをアップグレードしてから、Oracle Real Application Clusters 11g をインストールしてください。

Red Hat Linuxのオペレーティング・システム要件が満たされているかどうかを判断するには、次の手順を実行します。
  1. インストールされているLinuxディストリビューションおよびバージョンを確認するには、オペレーティング・システム・プロンプトでrootユーザーとして次のコマンドを実行します。

    # cat /etc/issue
    
    
  2. 必要なエラータ・レベルがインストールされているかどうかを判別するには、rootユーザーとして次の手順を実行します。

    # uname -r
    2.6.9-42.EL
    
    

    一般のソフトウェアと同様、Linuxカーネルは、オペレーティング・システムの不具合を修正するために更新されます。このようなカーネルの更新を、エラータ・カーネルまたはエラータ・レベルといいます。

    前述の例の出力は、カーネルのバージョンが2.6.9、エラータ・レベル(EL)が22であることを示しています。ディストリビューションに必要なエラータ・レベルを確認します。そのエラータ・レベルが最低限必要とされるエラータ・レベルよりも低い場合、オペレーティング・システムに最新のカーネル更新をインストールします。カーネル更新は、オペレーティング・システムのベンダーから入手できます。

  3. インストールに影響を与えるオペレーティング・システムの問題がないことを確認するには、使用プラットフォームのOracle ClusterwareおよびOracle Real Application Clustersのインストレーション・ガイドに記載されているオペレーティング・システムのパッチ更新およびパッケージがすべてインストールされていることを確認します。Red Hat Linuxを使用している場合は、rootユーザーとして次のコマンドを実行すると、必要なパッケージ(特定の機能または計算を実行するプログラム)がインストールされているかどうかを判別できます。

    # rpm -q package_name
    
    

    package_name変数は、setarchなどの検証の対象とするパッケージの名前です。パッケージがインストールされていない場合、Linuxの配布メディアからインストールするか、LinuxベンダーのWebサイトから必要なバージョンのパッケージをダウンロードします。

    参照:

     

サーバーの準備

この項では、次のタスクを実行します。

オペレーティング・システム・ユーザーおよびグループの構成

このサーバーにOracleソフトウェアがインストールされるのが初めてかどうかによって、オペレーティング・システム・グループを作成する必要がある場合があります。

Oracleソフトウェアのインストール時に次のオペレーティング・システムのグループが使用されます。

次のオペレーティング・システム・ユーザーは、すべてのインストールに必要です。

単一のOracleインベントリ・グループは、システム上のすべてのOracleソフトウェアのインストールに必要です。Oracleソフトウェアの最初のインストール後は、そのシステムに行う後続のOracleソフトウェアのインストール全般に対して同じOracleインベントリ・グループを使用する必要があります。ただし、Oracleソフトウェアを所有する異なるユーザーを作成して、各ソフトウェアのインストールへの管理アクセスを認証する場合に異なるオペレーティング・システム・グループを使用することができます。オペレーティング・システム・ユーザー(oracleなど)がOracleソフトウェアへのアクセスの認証に使用されるオペレーティング・システム・グループ(dbaグループなど)のメンバーである場合、そのユーザーは関連するソフトウェアへの管理アクセス権を持ちます。

各Oracle Databaseのインストールへの管理アクセスを認証する場合に異なるオペレーティング・システム・グループを使用すると、それぞれのグループのメンバーは、システムのすべてのデータベースではなく、1つのデータベースに対してのみSYSDBA権限を持ちます。また、別のオペレーティング・システム・グループをASM認証用に構成すると、ASMへのSYSASMアクセスを持ち、データベース・インスタンスへのSYSDBAアクセスを持たないユーザーを構成できます。


注意:

Oracle RACをMicrosoft Windowsにインストールする場合、Oracle Universal InstallerによってSYSDBAアクセスを認証するためのORA_DBAグループが自動的に作成されます。SYSASMアクセスを認証するためのORA_ASMグループは作成されません。また、管理権限を持つアカウントでログインしている間にOracle RACソフトウェアをインストールする場合、インストールのためのユーザーを別途作成する必要はありません。 


必要なオペレーティング・システムのユーザーおよびグループをRed Hat Linux上に作成するには、次の手順を実行します。
  1. サーバーに存在するグループを判別するには、/etc/groupファイルの内容をリストします。

    cat /etc/group
    
    
  2. サーバーにOracleソフトウェアをインストールしたのが初めてであり、Oracleインベントリ・グループが存在しない場合は、rootユーザーとして次のようなコマンドを入力し、Oracleイベントリ・グループを作成します。

    /usr/sbin/groupadd oinstall
    
    
  3. rootユーザーとして次のようなコマンドを入力し、OSDBAグループを作成します。

    /usr/sbin/groupadd dba
    
    
  4. Oracleソフトウェアを所有するユーザーがサーバーに存在しない場合は、ユーザーを作成する必要があります。クラスタ内のすべてのノードで現在使用中でないユーザーID(UID)を選択します。次のコマンドは、oracleユーザーおよびユーザーのホーム・ディレクトリ(/home/oracle)の作成方法を示しています。デフォルト・グループはoinstall、セカンダリ・グループはdbaで、UIDは200を使用します。

    useradd -u 200 -g oinstall -G dba -d /home/oracle -r oracle
    
    

    サーバーですでに作成されたユーザーを判別するには、/etc/passwdファイルの内容をリストします。

    cat /etc/passwd
    
    
  5. 次のコマンドを使用して、oracleアカウントのパスワードを設定します。passwordを自分のパスワードに置き換えます。

    passwd oracle
    
    Changing password for user oracle.
    New UNIX password: password 
    retype new UNIX password: password
    passwd:  all authentication tokens updated successfully.
    
    
  6. 必要に応じて、クラスタ内の各ノードで手順1から手順4を繰り返します。

  7. docrac1およびdocrac2の両方でユーザーoracleの属性が同一であることを確認します。

    id oracle 
    
    

    このコマンドの出力結果は、次のようになります。

    uid=200(oracle) gid=500(oinstall) groups=500(oinstall),501(dba)
    
    

    参照:

     

セキュア・シェルの構成

UNIXおよびLinuxプラットフォームにOracle RACをインストールする際、ソフトウェアは、1つのノードにインストールされます。その後、OUIはセキュアな通信を使用してそのソフトウェアのバイナリ・ファイルを他のクラスタ・ノードにコピーします。OUIは、通信にセキュア・シェル(SSH)を使用します。また、Oracle RACおよびOracle Clusterwareのその他の様々なコンポーネントも、SSHを使用してセキュアな通信を行います。

SSHを構成するには、最初に、Rivest Shamir Adleman(RSA)鍵とデジタル署名アルゴリズム(DSA)鍵を各クラスタ・ノードに作成する必要があります。秘密鍵と公開鍵を作成した後、すべてのクラスタ・ノード・メンバーの鍵を、各ノードで同一の認証鍵ファイルにコピーします。これが完了したら、SSHエージェントを起動して、鍵をメモリーにロードします。

参照:

 

RSA鍵およびDSA鍵の生成

SSHを構成する最初の手順として、各クラスタ・ノードでRSA鍵とDSA鍵を作成します。

Red Hat Linux上でRSA鍵およびDSA鍵を構成するには、次の手順を実行します。
  1. 一度ログ・アウトしてから、oracleユーザーとして、docrac1でオペレーティング・システムに再度ログインします。


    注意:

    ここでの手順で、rootユーザーからoracleユーザーへの切替えにsuコマンドを使用しないでください。これらの手順を正常に実行するには、rootユーザーとしてオペレーティング・システムのセッションを完全に終了し、oracleユーザーとして新しいセッションを開始します。 


  2. oracleユーザーのホーム・ディレクトリに.sshディレクトリが存在するかどうかを確認します。存在しない場合は、.sshディレクトリを作成し、oracleユーザーのみがそのディレクトリにアクセスできるようにディレクトリ権限を設定します。次に例を示します。

    $ ls -a $HOME
    $ mkdir ~/.ssh
    $ chmod 700 ~/.ssh
    
    
  3. RSAタイプの公開暗号化鍵と秘密暗号化鍵を作成します。端末ウィンドウを開いて次のコマンドを実行します。

    /usr/bin/ssh-keygen -t rsa
    
    

    プロンプトで、次の手順を実行します。

    • [Enter] キーを押して、鍵ファイルのデフォルトの場所を受け入れます。

    • パス・フレーズを入力する際は、oracleユーザーのパスワードとは異なるパス・フレーズを入力して確認します。

    このコマンドによって、/home/oracle/.ssh/id_rsa.pubファイルに公開鍵が作成され、/home/oracle/.ssh/id_rsaファイルに秘密鍵が作成されます。


    注意

    システムのセキュリティを保護するため、他のユーザーに秘密鍵を配布しないでください。 


  4. docrac1docrac2の両方に、DSAタイプの公開鍵および秘密鍵を作成します。各ノードの端末ウィンドウで、次のコマンドを実行します。

    /usr/bin/ssh-keygen -t dsa
    
    

    プロンプトで、次の手順を実行します。

    • [Enter] キーを押して、鍵ファイルのデフォルトの場所を受け入れます。

    • パス・フレーズを入力する際は、oracleユーザーのパスワードとは異なるパス・フレーズを入力して確認します。

    このコマンドによって、/home/oracle/.ssh/id_dsa.pubファイルに公開鍵が作成され、/home/oracle/.ssh/id_dsa ファイルに秘密鍵が作成されます。


    注意

    システムのセキュリティを保護するため、他のユーザーに秘密鍵を配布しないでください。 


  5. クラスタに追加する各ノードで手順1から手順4を繰り返します。

    参照:

     

認証鍵ファイルへの鍵の追加

鍵を生成したら、各ノードの鍵をauthorized_keysファイルにコピーし、このファイルをクラスタ内のすべてのノードにコピーします。

生成した鍵をauthorized_keysファイルに追加するには、次の手順を実行します。
  1. ローカル・ノードで、oracleユーザー・ホーム・ディレクトリの.sshディレクトリにディレクトリを変更します。

    cd ~/.ssh
    
    
  2. 次のコマンドを使用してRSA鍵およびDSA鍵をauthorized_keysファイルに追加した後、.sshディレクトリの内容を一覧表示します。

    $ cat id_rsa.pub >>authorized_keys
    $ cat id_dsa.pub >>authorized_keys
    $ ls
    
    

    authorized_keysファイルに加えて、生成した鍵であるid_dsa.pubおよびid_rsa.pubと公開鍵ファイルであるid_dsaおよびid_rsaが表示されます。

  3. セキュア・コピー(SCP)またはセキュアFTP(SFTP)を使用して、authorized_keysファイルをリモート・ノード上のoracleユーザーの.sshディレクトリにコピーします。次の例では、SCPを使用してauthorized_keysファイルをdocrac2にコピーします。oracleユーザーのパスは/home/oracleです。

    [oracle@docrac1 .ssh]scp authorized_keys docrac2:/home/oracle/.ssh/
    The authenticity of host 'docrac2(143.46.43.101)' can't be established.RSA key 
    fingerprint is 7z:ez:e7:f6:f4:f2:d1:a6:f7:4e:zz:me:a7:48:ae:f6:7e.
    Are you sure you want to continue connecting (yes/no)? yes
    oracle@docrac2's password:
    
    

    RSA鍵またはDSA鍵を受け入れるように求められます。yesと入力します。

    プロンプトが表示されたら、oracleユーザーのパスワードを指定します。このパスワードは、クラスタ内のすべてのノードで同一になるようにする必要があります(注意: これは新たに指定するパス・フレーズではなく、ユーザーのパスワードです)。authorized_keysファイルがリモート・ノードにコピーされます。

  4. SSHを使用し、作成したパス・フレーズを使用してauthorized_keysファイルのコピー先ノードにログインします。.sshディレクトリに移動し、catコマンドを使用して、2番目のノードのRSA鍵およびDSA鍵をauthorized_keysファイルに追加します。次に例を示します。

    [oracle@docrac1 .ssh]$ ssh docrac2
    Enter passphrase for key '/home/oracle/.ssh/id_rsa':
    [oracle@docrac2 oracle]S cd .ssh
    [oracle@docrac2 ssh]$ cat id_rsa.pub  >> authorized_keys
    [oracle@docrac2 ssh]$ cat id_dsa.pub  >> authorized_keys
    
    
  5. クラスタにノードが3つ以上ある場合は、クラスタに追加する各ノードに対して手順3および手順4を繰り返します。最後に更新したauthorized_keysファイルを次のノードにコピーし、そのノードの公開鍵をauthorized_keysファイルに追加します。

  6. すべてのノードでauthorized_keysファイルを更新したら、SCPを使用して、完全なauthorized_keysファイルを最後の更新対象ノードからその他すべてのクラスタ・ノードにコピーし、既存のファイルを上書きします。次に例を示します。

    [oracle@docrac2 .ssh]scp authorized_keys docrac1:/home/oracle/.ssh/
    The authenticity of host 'docrac1(143.46.43.100)' can't be established. RSA key 
    fingerprint is 7e:62:60:f6:f4:f2:d1:a6:f7:4e:zz:me:b9:48:dc:e3:9c.
    Are you sure you want to continue connecting (yes/no)? yes
    oracle@docrac2's password:
    Warning: Permanently added 'docrac1,143.46.43.100' (RSA) to the list of known
    hosts.
    oracle@docrac1's password:
    authorized_keys                          100%  1656    19.9MB.s    00:00
    
    

SSHを使用して別のノードにログインする場合、または別のノードでコマンドを実行する場合は、この時点で、RSA鍵およびDSA鍵の作成時に指定したパス・フレーズの入力を求められます。

参照:

 

SSHユーザー等価関係の構成

次の条件がクラスタ内のすべてのノードに該当する場合、クラスタには、ユーザー等価関係があります。

Linuxシステムで、パス・フレーズの入力を求められずにOracle Universal Installerでsshコマンドおよびscpコマンドを使用できるようにするには、SSHユーザー等価を構成する必要があります。

Red Hat Linux上でSSHユーザー等価を構成するには、次の手順を実行します。
  1. Oracle Universal Installerを実行するシステムで、oracleユーザーとしてオペレーティング・システムにログインします。

  2. 次のコマンドを使用して、SSHエージェントを起動し、SSH鍵をメモリーにロードします。

    $ exec /usr/bin/ssh-agent $SHELL
    $ /usr/bin/ssh-add
    
    

    ssh-addプログラムでは、SSHの構成時に生成した各鍵にパス・フレーズを入力するよう求められます。次に例を示します。

    [oracle@docrac1 .ssh]$ exec /usr/bin/ssh-agent $SHELL
    [oracle@docrac1 .ssh]$ /usr/bin/ssh-add
    Enter passphrase for /home/oracle/.ssh/id_rsa
    Identity added: /home/oracle/.ssh/id_rsa (/home/oracle/.ssh/id_rsa)
    Identity added: /home/oracle/.ssh/id_dsa (/home/oracle/.ssh/id_dsa)
    
    

    これらのコマンドによって、ノードでssh-agentプログラムが起動され、SSHコマンドを発行する際にパス・フレーズを使用するように求めるプロンプトを表示しないように、RSA鍵およびDSA鍵がメモリーにロードされます。

    SSHが適切に構成されていれば、パスワードまたはパス・フレーズを求めるプロンプトは表示されることなくsshscpコマンドを使用できます。


    注意:

    この端末ウィンドウは、Oracle ClusterwareおよびOracle RACのソフトウェア・インストールが完了するまで閉じないでください。インストールが完了する前にこの端末ウィンドウを閉じる必要がある場合は、手順2を繰り返してからソフトウェア・インストールを開始または続行してください。 


  3. sshコマンドを使用してクラスタ内の各ノードの日付を取得し、SSH構成を完了します。

    たとえば、ノード名がdocrac1およびdocrac2である2ノードのクラスタで、次のコマンドを入力します。

    $ ssh docrac1 date
    $ ssh docrac2 date
    
    

    SSHを使用してはじめてノード間で接続を行った場合は、次のようなメッセージが表示されることがあります。

    The authenticity of host 'docrac1(143.46.43.100)' can't be established.
    RSA key fingerprint is 7z:ez:e7:f6:f4:f2:d1:a6:f7:4e:zz:me:a7:48:ae:f6:7e.
    Are you sure you want to continue connecting (yes/no)? yes

    プロンプトにyesと入力して続行します。このノードをもう一方のノードから接続するときにこのメッセージが再度表示されることはありません。これ以外のメッセージやテキスト(日付を除く)が表示された場合、インストールに失敗する可能性があります。

    いずれかのノードからパスワードまたはパス・フレーズの入力を求められた場合は、そのノードの~/.ssh/authorized_keysファイルに正しい公開鍵が含まれていることを確認してください。必要な変更を行って、前述のコマンドを入力したときに日付のみが表示されるようにします。また、シェルがインタラクティブ・シェルの場合にのみスクリプトが機能するように、ログイン・スクリプトの中で出力の生成や質問の表示を行う部分を変更する必要があります。

    手順1から手順3を完了した後、クラスタ内の各ノードの各パブリック・ホスト名は、クラスタの他のすべてのメンバーのknown_hostsファイルに登録される必要があります。

    参照:

     

オペレーティング・システム環境の構成の概要

Red Hat Linuxでは、Oracle Universal Installer(OUI)は、oracleアカウントから実行します。Oracle Universal Installerは、oracleユーザー用に構成された環境変数から情報を入手します。OUIを実行する前に、oracleユーザーの環境変数を変更し、次のとおりに構成しておく必要があります。

また、/tmpディレクトリで使用可能なディスク領域が400MB未満の場合でも、別のファイル・システムには400MB以上の使用可能な領域がある場合は、このファイル・システムに代替の一時ディレクトリを指定するように、TEMPおよびTMPDIR環境変数を設定できます。

Oracle Clusterwareをインストールする前に、Oracle Clusterwareホーム(CRSホームとも呼ばれる)・ディレクトリの場所にORACLE_HOMEという変数を設定できます。ただし、インストール・プロセスの一部として、ソフトウェアがインストールされる必要があるディレクトリも指定します。Oracle Clusterwareがインストールされた後、環境変数ORACLE_HOMEは、Oracle Databaseのホーム・ディレクトリの値を反映して変更されます。


注意:

インストールを開始する前に、これらのファイルからsttyコマンドを削除してください。Linuxシステムでは、sttyコマンドが含まれる隠しファイル(ログオン・スクリプトやプロファイル・スクリプトなど)がある場合、これらのファイルがインストール中にリモート・シェルによってロードされると、OUIによってエラーが検出され、インストールが停止されます。 


参照:

 

ネットワークの構成

Oracle Clusterwareの要件として、クラスタ内のノードをプライベート・インターコネクト経由でプライベート・ネットワークに接続する必要があります。また、クラスタ内の各ノードにパブリック・ネットワーク経由でアクセスできることも必要です。

ネットワークを構成し、クラスタ内の各ノードがクラスタ内の他のノードと通信できるようにするには、次の手順を実行します。
  1. クラスタ名を決定します。クラスタ名は次の条件を満たす必要があります。

    • ホスト・ドメイン内でグローバルに一意であること。

    • 1文字以上、15文字未満であること。

    • ホスト名に使用されるキャラクタ・セット(アンダースコア(_)、ハイフン(-)およびシングルバイト英数字(aからz、AからZおよび0から9))と同じキャラクタ・セットで構成されていること。

    • サード・パーティ・ベンダーのクラスタウェアを使用する場合は、そのベンダーのクラスタ名を使用することをお薦めします。

  2. クラスタ内の各ノードに対してパブリック・ノード名、プライベート・ノード名、および仮想ノード名を指定します。

    • パブリック・ノード名には、各ノードのプライマリ・ホスト名を使用します。つまり、hostnameコマンドによって表示される名前を使用します。このノード名は、永続ホスト名または仮想ホスト名のいずれか(docrac1など)になります。

    • 各ノードのプライベート・ノード名またはプライベートIPアドレスを決定します。プライベートIPアドレスは、このクラスタ内の他のノードのみがアクセスできるアドレスです。Oracle Databaseでは、ノード間またはインスタンス間のキャッシュ・フュージョン通信にプライベートIPアドレスを使用します。public_hostname-privという形式(docrac1-privなど)で名前を指定することをお薦めします。

    • 各ノードの仮想ホスト名を決定します。仮想ホスト名はパブリック・ノード名で、ノードが停止している場合にノードに送信されるクライアントのリクエストを再ルーティングするために使用されます。Oracle Databaseでは、クライアントとデータベース間の接続に仮想IP(VIP)アドレスを使用するため、VIPアドレスはパブリックにアクセス可能である必要があります。public_hostname-vipという形式(docrac1-vipなど)で名前を指定することをお薦めします。

  3. 各ノードで次のコマンドを実行して、すべてのネットワーク・アダプタのインタフェース名および関連するIPアドレスを識別します。

    # /sbin/ifconfig
    
    

    出力から、パブリックまたはプライベートのネットワーク・インタフェースとして指定する各ネットワーク・アダプタのインタフェース名(eth0など)およびIPアドレスを識別します。


    注意:

    Oracle ClusterwareおよびOracle RACをインストールする際に、この情報が必要になります。 


  4. クラスタの各ノードで、対応するネットワーク名を持つパブリックIPアドレスを1つのネットワーク・アダプタに割り当て、対応するネットワーク名を持つプライベートIPアドレスをもう1つのネットワーク・アダプタに割り当てます。

    各ノードのパブリック名は、使用するドメイン・ネーム・システム(DNS)に登録済である必要があります。使用可能なDNSがない場合は、システム・ホスト・ファイル(/etc/hosts)のネットワーク名とIPアドレスを記録します。ホストのプライベート・ネットワーク名とプライベートIPアドレスを対応させるには、各ノードの/etc/hostsファイルを使用します。

    pingコマンドを使用して、インターコネクト・インタフェースが接続可能かどうかをテストできます。

  5. クラスタ内の各ノードで、仮想IPアドレスとして動作する3番目のIPアドレスを構成します。次の要件を満たすIPアドレスを使用します。

    • その仮想IPアドレスとネットワーク名は、現在使用されていない。

    • その仮想IPアドレスは、パブリックIPアドレスと同じサブネット上に存在する。

    各ノードの仮想ホスト名は、DNSで登録される必要があります。使用可能なDNSがない場合は、システム・ホスト・ファイル/etc/hostsに仮想ホスト名およびIPアドレスを記録します。

  6. ネットワーク構成の完了時、IPアドレスおよびネットワーク・インタフェースの構成は、次の表のようになります(ノード名やIPアドレスが異なる場合があります)。

    ノード  ノード名  タイプ  IPアドレス  登録先 

    docrac1 

    docrac1 

    パブリック 

    143.46.43.100 

    DNS(使用できない場合はhostsファイル) 

    docrac1 

    docrac1-vip 

    仮想 

    143.46.43.104 

    DNS(使用できない場合はhostsファイル) 

    docrac1 

    docrac1-priv 

    プライベート 

    10.10.10.11 

    hostsファイル 

    docrac2 

    docrac2 

    パブリック 

    143.46.43.101 

    DNS(使用できない場合はhostsファイル) 

    docrac2 

    docrac2-vip 

    仮想 

    143.46.43.105 

    DNS(使用できない場合はhostsファイル) 

    docrac2 

    docrac2-priv 

    プライベート 

    10.10.10.12 

    hostsファイル 

    インストール・プロセスを完了した後、クライアントを構成して、仮想IPアドレスまたは仮想IPアドレスに関連付けられたネットワーク名のいずれかを使用します。

    参照:

     

ネットワークの構成の検証

ネットワークの構成後、検証テストを実行して、ネットワークが正しく構成されていることを確認します。クラスタのノード間のネットワーク接続に問題があると、Oracle Clusterwareのインストールに失敗します。

Red Hat Linuxで動作する2ノードのクラスタにおいてネットワークの構成を検証するには、次の手順を実行します。
  1. rootユーザーとして、パブリック・ネットワークおよびプライベート・ネットワークの構成を検証します。docrac1およびdocrac2の両方において、インタフェースが同じネットワーク上に構成されているかどうかを検証します。

    この例では、パブリック・ネットワークにeth0が使用されます。プライベート・ネットワークにはeth1が使用され、これがキャッシュ・フュージョン通信に使用されます。

    # /sbin/ifconfig
     
    eth0      Link encap:Ethernet  HWaddr 00:0E:0C:08:67:A9  
              inet addr: 143.46.43.100   Bcast:143.46.43.255   Mask:255.255.240.0
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:270332689 errors:0 dropped:0 overruns:0 frame:0
              TX packets:112346591 errors:2 dropped:0 overruns:0 carrier:2
              collisions:202 txqueuelen:1000 
              RX bytes:622032739 (593.2 MB)  TX bytes:2846589958 (2714.7 MB)
              Base address:0x2840 Memory:fe7e0000-fe800000 
     
    eth1      Link encap:Ethernet  HWaddr 00:04:23:A6:CD:59  
              inet addr: 10.10.10.11   Bcast: 10.10.10.255   Mask:255.255.240.0   
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:21567028 errors:0 dropped:0 overruns:0 frame:0
              TX packets:15259945 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:4091201649 (3901.6 MB)  TX bytes:377502797 (360.0 MB)
              Base address:0x2800 Memory:fe880000-fe8a0000 
     
    lo        Link encap:Local Loopback  
              inet addr:127.0.0.1  Mask:255.0.0.0
              UP LOOPBACK RUNNING  MTU:16436  Metric:1
              RX packets:52012956 errors:0 dropped:0 overruns:0 frame:0
              TX packets:52012956 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0 
              RX bytes:905082901 (863.1 MB)  TX bytes:905082901 (863.1 MB)
    
    
  2. rootユーザーで、ノードdocrac1/etc/hostsファイルに、クラスタ内の両方のノードのホストIPアドレス、仮想IPアドレスおよびプライベート・ネットワークIPアドレスが含まれていることを確認します。次に例を示します。

    # Do not remove the following line, or various programs
    # that require network functionality will fail.
    127.0.0.1       localhost.localdomain       localhost
    143.46.43.100   docrac1.mycompany.com          docrac1
    143.46.43.104   docrac1-vip.mycompany.com      docrac1-vip
    10.10.10.11     docrac1-priv
     
    143.46.43.101   docrac2.mycompany.com          docrac2
    143.46.43.105   docrac2-vip.mycompany.com      docrac2-vip
    10.10.10.12     docrac2-priv
    
    

    /etc/hostsファイルに前述のいずれかの情報がない場合、このファイルを編集して必要な情報を追加します。

    docrac1/etc/hostsファイルを構成した後、そのクラスタのIPアドレスについて同じ情報が含まれるように、docrac2/etc/hostsファイルを編集します。

  3. rootユーザーとして、pingコマンドを使用して、docrac1からdocrac2への接続とその逆方向の接続をテストし、ネットワーク構成を検証します。各ノードで、rootユーザーとして次のコマンドを実行します。

    # ping -c 3 docrac1.mycompany.com
    # ping -c 3 docrac1
    # ping -c 3 docrac1-priv
     
    # ping -c 3 docrac2.mycompany.com
    # ping -c 3 docrac2
    # ping -c 3 docrac2-priv
    
    

    仮想IP(docrac1-vipdocrac2-vip)に対してpingコマンドを使用しても、Oracle Clusterwareがインストールされ実行中でなければ、ノードは検出できません。パブリックまたはプライベートのアドレスに対するpingコマンドが失敗した場合は、その問題を解決してから次の手順に進みます。

  4. pingコマンドを使用して、デフォルトのゲートウェイにアクセスできることを確認します。デフォルトのゲートウェイを識別するには、Red Hat Linuxのヘルプ・ユーティリティで説明されているように、routeコマンドを使用します。

    参照:

     

オペレーティング・システムおよびソフトウェアの準備

ご使用のサーバーにOracleソフトウェアをインストールする際、Oracle Universal Installerでは、特定のパッケージとソフトウェア・アプリケーションがオペレーティング・システムにインストール済であることを前提としています。

この項の内容は次のとおりです。

次のWebサイトにあるOracleMetaLinkの認定情報を参照して、オペレーティング・システムとOracle Databaseソフトウェアが認定済の組合せになっていることを確認する必要があります。

https://metalink.oracle.com

この情報は、「Certify & Availability」をクリックし、「1.View Certifications by Product」を選択すると表示されます。


注意:

Oracle Universal Installerは、サーバーおよびオペレーティング・システムがリストされた要件を満たしているかどうかを検証します。Oracle Universal Installerを起動する前に要件を確認し、サーバーおよびオペレーティング・システムが要件を満たすことを確認します。 


参照:

 

両方のノードにおける時間の設定の概要

インストールを開始する前に、両方のノードの日時をできるかぎり同じ日時に設定します。これを実現するために、ほとんどのオペレーティング・システムに付属しているネットワーク・タイム・プロトコル(NTP)機能を使用することをお薦めします。

NTPは、ネットワークで接続されたサーバーの時計を同期させるように設計されたプロトコルです。NTPを使用すると、ネットワーク上の各サーバーがクライアント・ソフトウェアを実行し、参照NTPサーバーと呼ばれる1つ以上のサーバーに対して定期的にタイミング・リクエストを行います。タイミング・リクエストで戻された情報は、サーバーの時計を調整するために使用されます。

クラスタのすべてのノードで、同じ参照NTPサーバーを使用する必要があります。

参照:

 

カーネル・パラメータの構成の概要

OUIでは、様々なカーネル・パラメータの現在の設定をチェックして、Oracle RACのデプロイの最低要件を満たすかどうかを確認します。本番データベース・システムの場合は、ユーザーの特定のシステムのパフォーマンスを最適化するように設定をチューニングすることをお薦めします。


注意:

ご使用のシステムのパラメータ設定またはシェルの制限値が、この項に示す値よりも大きい場合は、このパラメータの設定を変更しないでください。  


参照:

 

プラットフォーム固有の構成タスクの実行の概要

Oracle RACのインストール先とするオペレーティング・システムに固有の、またはクラスタと併用するコンポーネント用の、特別な構成手順の実行が必要になる場合があります。オペレーティング・システムに固有のインストール・タスクには、次のような例があります。

インストール・ディレクトリおよび共有記憶域の構成

この項では、Oracle Universal Installerを起動する前に完了する必要がある記憶域構成タスクについて説明します。次のタスクに関する情報が含まれます。

共有記憶域ソリューションについての決定の概要

クラスタ内の各ノードには、Oracle Clusterware(Oracle Cluster Registryと投票ディスク)ファイルおよびOracleデータベース・ファイルを格納する外部共有ディスクが必要です。サポートされる共有記憶域のタイプは、ご使用のプラットフォームによって異なります。たとえば、次のものがあります。

すべてのインストールに対して、Oracle ClusterwareファイルおよびOracleデータベース・ファイルで使用する記憶域オプションを選択する必要があります。


注意:

Oracle RACのインストール用にサポートされる記憶域オプションの最新情報は、Oracle Meta Linkの「Certify」ページを参照してください。

https://metalink.oracle.com 


Oracle Clusterwareファイルの格納にOCFS2を使用する場合は、ご使用のオペレーティング・システムのバージョンに適したバージョンのOCFS2を使用する必要があります。OCFS2は、Red Hat Linuxおよびカーネル・バージョン2.6で動作します。

このマニュアルの、Red Hat Linuxに基づく例では、共有ディスク・パーティションを使用してOracle Clusterwareファイルを格納し、ASMを使用してOracleデータベース・ファイルを格納します。Oracle ClusterwareおよびOracle RACソフトウェアは、共有ファイル・システムではなく、ローカル・ディスクにノードごとにインストールされます。

次の項では、Red Hat Linux上でOracle Clusterwareファイル用の共有ディスク・パーティションを構成する方法について説明します。

参照:

 

Oracle Clusterwareファイル用のブロック・デバイスの構成

Oracle Clusterwareリリース10.2以上では、Red Hat Enterprise Linux 4.0を使用する場合にRAWデバイスではなく、ブロック・デバイスを使用できます。Oracle Clusterwareファイルは、デフォルトで直接I/O(O_DIRECT)を使用するように構成されているため、ブロック・デバイスに直接書き込むことができます。

Oracle Clusterwareをインストールする前に、5つの共有ディスク・パーティションを構成する必要があります。

Red Hat Enterprise Linux 4.0を使用している場合にブロック・デバイスを構成するには、次の手順を実行します。
  1. rootユーザーとしてオペレーティング・システムにログインします。

  2. 使用するディスクのデバイス名を識別するには、クラスタの最初のノード(たとえば、docrac1)で次のコマンドを入力します。

    # /sbin/fdisk -l
    
    

    追加した新規ブロック・デバイスまたはパーティション化されていない使用可能領域があるパーティション化済デバイスに、必要なディスク・パーティションを作成できます。パーティション化されていない使用可能領域があるデバイスを識別するには、既存のパーティションの開始シリンダ番号および終了シリンダ番号を調べ、未使用のシリンダがそのデバイスに含まれているかどうかを調査します。

  3. OCRおよびそのミラーに対してサイズ280MBのディスク・パーティションを2つ作成し、Oracle Clusterwareの投票ディスクに対してサイズ280MBのパーティションを3つ作成します。

    ブロック・デバイスにパーティションを作成するには、rootユーザーとして次のようなコマンドを入力します。devicenameはブロック・デバイスの名前です。

    # /sbin/fdisk devicename
    
    

    パーティションを作成する際は、次のガイドラインに従います。

    • pコマンドを使用して、デバイスのパーティション表をリストします。

    • nコマンドを使用して、パーティションを作成します。

    • このデバイスに必要なパーティションを作成した後、wコマンドを使用して、変更されたパーティション表をデバイスに書き込みます。

    • パーティションの作成については、Linuxのヘルプ・システムのfdiskのエントリを参照してください。

    次の例では、fdiskを使用して、最初のノードでブロック・デバイス/dev/sdaに280MBのパーティションを作成します。このパーティション(またはスライス)は、OCRディスクのために使用されます。OCRミラーのために、異なるディスクおよびディスク・コントローラに280MBのパーティションを別途作成します。各ファイルは、異なるディスクおよびディスク・コントローラに存在する必要があります。次の例の太字のテキストは、ユーザーが入力したコマンドを表します。

    # /sbin/fdisk /dev/sda
    The number of cylinders for this disk is set to 1024.
    Command (m for help): p
    
    Disk /dev/sdb: 1073 MB, 107341824 bytes
    34 heads, 61 sectors/track, 1011 cylinders
    Units = cylinders of 2074 * 512 = 1061888 bytes
    
       Device boot           Start       End      Blocks     ID  System
    
    Command (m for help): n
    Command action
      e  extended
      p  primary partition (1-4)
    p
    Partition number (1-4): 1
    First cylinder (1-1011, default 1):
    Using default value 1
    Last cylinder of +size or +sizeM or +sizeK (1-1011, default 1011): +280M
    
    Command (m for help): w
    The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    Syncing disks.
    #
    
    
  4. 次のコマンドを入力して、セカンド・ブロック・デバイス/dev/sdb上に280MBのパーティションを作成します。このパーティションは、OCRミラーに使用されます。前述の例と同じプロンプトを使用します。

    fdisk /dev/sdb
    
    
  5. fdiskコマンドを使用して、ブロック・デバイス/dev/sda上に280MBのパーティションを作成します。このパーティションは、投票ディスク・ファイルに使用されます。投票ディスク・ファイルは、それぞれ異なるディスクおよびコントローラに存在する必要があります。

    # /sbin/fdisk /dev/sda
    The number of cylinders for this disk is set to 1024.
    Command (m for help): n
    Command action
      e  extended
      p  primary partition (1-4)
    p
    Partition number (1-4): 2
    First cylinder (8-1024, default 8):
    Using default value 8
    Last cylinder of +size or +sizeM or +sizeK (8-1024, default 1024): +280M
    
    Command (m for help): w
    The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    Syncing disks.
    #
    
    
  6. fdiskコマンドを使用して、ブロック・デバイス/dev/sdb上に280MBのパーティションを作成します。このパーティションは、投票ディスク・ファイルに使用されます。ファイルは、それぞれ異なるディスクおよびコントローラに存在する必要があります。

    # /sbin/fdisk /dev/sdb
    The number of cylinders for this disk is set to 1024.
    Command (m for help): n
    Command action
      e  extended
      p  primary partition (1-4)
    p
    Partition number (1-4): 2
    First cylinder (8-1024, default 8):
    Using default value 8
    Last cylinder of +size or +sizeM or +sizeK (8-1024, default 1024): +280M
    
    Command (m for help): w
    The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    Syncing disks.
    #
    
    
  7. fdiskコマンドを使用して、ブロック・デバイス/dev/sdcに280MBのパーティションを作成します。このパーティションは、投票ディスク・ファイルに使用されます。

    # /sbin/fdisk /dev/sdc
    
    

    コマンドを実行する際は、手順3と同じレスポンスを使用しますが、パーティションのサイズには+280Mを指定します。

  8. ノードdocrac2rootユーザーとして、前述の手順3〜7で使用した各ディスクに対してpartprobeコマンドを実行する必要があります。たとえば、前述のコマンドでディスク/dev/sda/dev/sdb、および/dev/sdcを構成した場合は、次のコマンドを実行します。

    # /sbin/partprobe /dev/sda
    # /sbin/partprobe /dev/sdb
    # /sbin/partprobe /dev/sdc
    
    

    これによって、クラスタ内のもう一方のノードで共有記憶域デバイスのカーネル・パーティション表が強制的にリフレッシュされます。

  9. OCRパーティションの所有権をクラスタ内のすべてのノードのインストール所有者に変更します。

    OUIを実行するセッションでは、Oracle Clusterwareのインストールを実行するインストール所有者(oracleなど)がOCRパーティションを所有している必要があります。インストール所有者は、OUIで書き込むことができるようにOCRパーティションを所有している必要があります。インストール中、OUIによってOCRパーティションの所有権がrootに戻されます。

    参照:

     

Oracle Clusterware用のUdev permissionsファイルの作成

Red Hat Enterprise Linux 4.0システムを再起動する際、ブロック・デバイスに対する所有権および権限はデフォルトでrootユーザーに戻されます。このオペレーティング・システムでOracle Clusterwareファイル用にブロック・デバイスを使用している場合、このデフォルトを上書きする必要があります。

Red Hat Enterprise Linux 4.0を使用している場合にpermissionsファイルを作成するには、次の手順を実行します。
  1. rootユーザーとしてオペレーティング・システムにログインします。

  2. /etc/udev/permissions.dディレクトリに変更します。

  3. オペレーティング・システムが再起動すると、テキスト・エディタを使用して49-oracle.permissionsファイルを作成し、ブロック・デバイスの適切な所有者を確認します。

    次に、/etc/udev/permissions.d/49-oracle.permissionsファイルの内容の例を示します。

    # OCR
    sda1:root:oinstall:0640
    sdb1:root:oinstall:0640
    # Voting Disks
    sda2:oracle:oinstall:0640
    sdb2:oracle:oinstall:0640
    sdc1:oracle:oinstall:0640
    # ASM
    sdd:oracle:dba:0660
    sde:oracle:dba:0660
    
    
  4. ファイルを保存します。

  5. (オプション)oracle.permissionsファイルの作成後、システムを次に再起動したときに共有デバイスに対する権限が自動的に設定されます。ただちに権限を有効にするには、システムを再起動せず、chownコマンドおよびchmodコマンドを使用します。

    chown root:oinstall /dev/sda1
    chmod 640 /dev/sda1
    chown root:oinstall /dev/sdb1
    chown 640 /dev/sdb1
    chown oracle:oinstall /dev/sda2
    chmod 640 /dev/sda2
    chown oracle:oinstall /dev/sdb2
    chown 640 /dev/sdb2
    chown oracle:oinstall /dev/sdc1
    chown 640 /dev/sdc1
    chown oracle:dba /dev/sdd
    chown 660 /dev/sdd
    chown oracle:dba /dev/sde
    chown 660 /dev/sde
    
    
  6. クラスタ内の各ノードでこれらの手順を繰り返します。

Oracleベース・ディレクトリの選択の概要

Oracle Universal Installer(OUI)では、指定した場所にOracleベース・ディレクトリが作成されます。Oracleベース・ディレクトリ(ORACLE_BASE)は、Oracleソフトウェア・インストールの最上位ディレクトリとして機能します。Optimal Flexible Architecture(OFA)ガイドラインでは、Oracleベース・ディレクトリに対して次のようなパスを使用することをお薦めします。

/mount_point/app/oracle

前述のパスの例では、変数mount_pointがOracleソフトウェアをインストールしようとしているファイル・システムのマウント・ポイント・ディレクトリです。

Oracleベース・ディレクトリに対して使用するファイル・システムには、Oracle Databaseソフトウェアのインストールのため7GB以上の使用可能なディスク領域が必要です。Oracleベース・ディレクトリへのパスは、すべてのノード上で同じである必要があります。

Red Hat Linuxシステムの場合、df -hコマンドを使用して、マウントされた各ファイル・システム上の使用可能なディスク領域を調べることができます。使用可能な領域が十分にあるファイル・システムを選択してください。このマニュアルで説明されるサンプル・インストールの場合、Oracle RACとASMをそれぞれ別のホーム・ディレクトリにインストールするには、選択したマウント・ポイントに7GB以上の使用可能な領域が必要です。このマニュアルの例では、Oracleベース・ディレクトリとして/opt/oracle/11gR1を使用しています。

参照:

 

Oracle Clusterwareホーム・ディレクトリの選択の概要

OUIでは、Oracle ClusterwareがCRS_homeと呼ばれるディレクトリ構造にインストールされます。このホームは、同じサーバー上にインストールされた他のOracle製品のホーム・ディレクトリとは別のものです。OUIでは、ユーザー用にCRSホーム・ディレクトリを作成します。インストールを開始する前に、Oracle Clusterwareディレクトリの作成に十分なディスク領域がファイル・システムに存在すること、およびrootユーザーがCRSホーム・ディレクトリを所有していることを確認してください。

CRSホーム・ディレクトリに使用するファイル・システムには、600MB以上の使用可能なディスク領域が必要です。CRSホーム・ディレクトリへのパスは、すべてのノード上で同じである必要があります。

Red Hat Linuxの場合、df -hコマンドを使用して、マウントされた各ファイル・システム上の使用可能なディスク領域を調べることができます。使用可能な領域が適切なファイル・システムを選択してください。このマニュアルの例では、CRSホーム・ディレクトリとしてディレクトリ/crsを使用しています。


注意:

CRSホーム・ディレクトリがOracleベース・ディレクトリのサブディレクトリでないことを確認してください。 


参照:

 


戻る 次へ
Oracle
Copyright © 2006, 2008 Oracle Corporation.

All Rights Reserved.
目次
目次
索引
索引