Sun Cluster Data Service for Oracle Real Application Clusters ガイド (Solaris OS 版)

共有ファイルシステム用にノード固有のファイルとディレクトリを作成する

Oracle システムの保守を簡単にするために、Oracle バイナリファイルと Oracle 構成ファイルを共有ファイルシステムにインストールできます。次の共有ファイルシステムがサポートされています。

Oracle ソフトウェアが共有ファイルシステムにインストールされている場合、ORACLE_HOME 環境変数で指定されているディレクトリ内のすべてのファイルは、すべてのクラスタノードからアクセスできます。ただし、一部の Oracle ファイルやディレクトリでは、ノード固有の情報を維持する必要があります。

Oracle ソフトウェアを共有ファイルシステムにインストールする場合は、ファイルやディレクトリのローカルコピーを作成し、そこにノード固有の情報を保持する必要があります。これらのファイルやディレクトリにすべてのクラスタノードからアクセスできるようにするためにシンボリックリンクを使用します。シンボリックリンクのターゲットは、ノード内のファイルシステム上にあるファイルやディレクトリです。このようなファイルシステムは、共有ファイルシステムの一部ではありません。

シンボリックリンクをこのような目的で使用する場合、ローカルファイルシステム上に領域を割り当てる必要があります。Oracle アプリケーションが、この領域内のファイルに対してシンボリックリンクを作成するためには、アプリケーションがこの領域内のファイルにアクセスできる必要があります。シンボリックリンクは共有ファイルシステム上に存在するため、リンクへのすべての参照は、すべてのノードで同じになります。したがって、すべてのノードが、ローカルファイルシステム上のその領域用に同じネーム空間を持つ必要があります。

共有ファイルシステム用のノード固有ディレクトリの作成

次の手順は、ノード固有の情報を保持する各ディレクトリに対して実行します。以下に、ノード固有の情報の保持に必要となる典型的なディレクトリを示します。

ノード固有の情報を保持するために必要となるほかのディレクトリについては、Oracle のマニュアルを参照してください。

共有ファイルシステム用にノード固有ディレクトリを作成する

  1. 各クラスタノードで、ノード固有の情報を保持するためのローカルディレクトリを作成します。

    作成するローカルディレクトリ構造は、ノード固有の情報を含むグローバルディレクトリ構造と一致するようにしてください。たとえば、グローバルディレクトリの/global/oracle/network/agent には、/local ディレクトリ下にローカルに格納する必要のあるノード固有の情報が含まれていることがあります。このような場合、/local/oracle/network/agent という名前のディレクトリを作成します。


    # mkdir -p local-dir
    
    -p

    存在しない親ディレクトリをすべて最初に作成することを指定します。

    local-dir

    作成するディレクトリのフルパス名を指定します。

  2. 各クラスタノードで、ノード固有の情報を保持するグローバルディレクトリのローカルコピーを作成します。

    ノード固有の情報のローカルコピーは、手順 1で作成したローカルディレクトリに含まれるようにしてください。


    # cp -pr global-dir local-dir-parent
    
    -p

    所有者、グループ、許可モード、修正時刻、アクセス時刻、およびアクセス制御リストが保護されることを指定します。

    -r

    ディレクトリとそのすべてのファイル (サブディレクトリとそのファイルを含む) がコピーされることを指定します。

    global-dir

    コピーするグローバルディレクトリのフルパスを指定します。このディレクトリは、ORACLE_HOME 環境変数で指定されるディレクトリ下で、共有ファイルシステム上に存在します。

    local-dir-parent

    ローカルコピーを含む、ローカルノード上のディレクトリを指定します。このディレクトリは、手順 1で作成したディレクトリの親ディレクトリです。

  3. 手順 2でコピーしたグローバルディレクトリを、グローバルディレクトリのローカルコピーへのシンボリックリックで置き換えます。

    1. 任意のクラスタノードから、手順 2でコピーしたグローバルディレクトリを削除します。


      # rm -r global-dir
      
      -r

      ディレクトリとそのすべてのファイル (サブディレクトリとそのファイルを含む) が削除されることを指定します。

      global-dir

      削除するファイル名とグローバルディレクトリのフルパスを指定します。このディレクトリは、手順 2でコピーしたグローバルディレクトリになります。

    2. 任意のクラスタノードで、ディレクトリのローカルコピーから、手順 aで削除したグローバルディレクトリへのシンボリックリンクを作成します。


      # ln -s local-dir global-dir
      
      -s

      リンクがシンボリックリンクであることを指定します。

      local-dir

      手順 1で作成したローカルディレクトリがリンクの元であることを指定します。

      global-dir

      手順 aで削除したグローバルディレクトリがリンク先であることを指定します。


例 1–1 ノード固有ディレクトリの作成

この例では、ノード固有ディレクトリを 2 ノードクラスタで作成するための操作手順を示しています。このクラスタは、以下のように構成されています。

各クラスタノードで、以下の手順を実行します。

  1. 次のコマンドを実行して、必要なディレクトリをローカルファイルシステムに作成します。


    # mkdir -p /local/oracle/network/agent
    

    # mkdir -p /local/oracle/network/log
    

    # mkdir -p /local/oracle/network/trace
    

    # mkdir -p /local/oracle/srvm/log
    

    # mkdir -p /local/oracle/apache
    
  2. 次のコマンドを実行して、ノード固有の情報を保持するグローバルディレクトリのローカルコピーを作成します。


    # cp -pr $ORACLE_HOME/network/agent /local/oracle/network/.
    

    # cp -pr $ORACLE_HOME/network/log /local/oracle/network/.
    

    # cp -pr $ORACLE_HOME/network/trace /local/oracle/network/.
    

    # cp -pr $ORACLE_HOME/srvm/log /local/oracle/srvm/.
    

    # cp -pr $ORACLE_HOME/apache /local/oracle/.
    

以下の手順は、1 つのノードでのみ実行します。

  1. 次のコマンドを実行して、グローバルディレクトリを削除します。


    # rm -r $ORACLE_HOME/network/agent
    

    # rm -r $ORACLE_HOME/network/log
    

    # rm -r $ORACLE_HOME/network/trace
    

    # rm -r $ORACLE_HOME/srvm/log
    

    # rm -r $ORACLE_HOME/apache
    
  2. 次のコマンドを実行して、ローカルディレクトリから、対応するグローバルディレクトリへのシンボリックリックを作成します。


    # ln -s /local/oracle/network/agent $ORACLE_HOME/network/agent 
    

    # ln -s /local/oracle/network/log $ORACLE_HOME/network/log
    

    # ln -s /local/oracle/network/trace $ORACLE_HOME/network/trace
    

    # ln -s /local/oracle/srvm/log $ORACLE_HOME/srvm/log
    

    # ln -s /local/oracle/apache $ORACLE_HOME/apache
    

共有ファイルシステム用のノード固有ファイルの作成

次の手順は、ノード固有の情報を保持する各ファイルに対して実行します。以下に、ノード固有の情報の保持に必要となる典型的なファイルを示します。

ノード固有の情報を保持するために必要となるほかのファイルについては、Oracle のマニュアルを参照してください。

共有ファイルシステム用にノード固有ファイルを作成する

  1. 各クラスタノードで、ノード固有の情報を保持するファイルを含むローカルディレクトリを作成します。


    # mkdir -p local-dir
    
    -p

    存在しない親ディレクトリをすべて最初に作成することを指定します。

    local-dir

    作成するディレクトリのフルパス名を指定します。

  2. 各クラスタノードで、ノード固有の情報を保持するグローバルファイルのローカルコピーを作成します。


    # cp -p global-file local-dir
    
    -p

    所有者、グループ、許可モード、修正時刻、アクセス時刻、およびアクセス制御リストが保護されることを指定します。

    global-file

    コピーするファイル名とグローバルファイルのフルパスを指定します。このファイルは、ORACLE_HOME 環境変数で指定されるディレクトリ下で、共有ファイルシステム上にインストールされています。

    local-dir

    ファイルのローカルコピーを含むディレクトリを指定します。このディレクトリは、手順 1で作成したディレクトリになります。

  3. 手順 2でコピーしたグローバルファイルを、そのファイルのローカルコピーへのシンボリックリンクで置き換えます。

    1. 任意のクラスタノードから、手順 2でコピーしたグローバルファイルを削除します。


      # rm global-file
      
      global-file

      削除するファイル名とグローバルファイルのフルパスを指定します。このファイルは、手順 2でコピーしたグローバルファイルになります。

    2. 任意のクラスタノードで、ファイルのローカルコピーから、手順 aで削除したグローバルファイルへのシンボリックリンクを作成します。


      # ln -s local-file global-file
      
      -s

      リンクがシンボリックリンクであることを指定します。

      local-file

      手順 2でコピーしたファイルが、リンクの元であることを指定します。

      global-file

      手順 aで削除したファイルのグローバルバージョンが、リンク先であることを指定します。


例 1–2 ノード固有ファイルの作成

この例では、ノード固有ファイルを 2 ノードクラスタで作成するための操作手順を示しています。このクラスタは、以下のように構成されています。

各クラスタノードで、以下の手順を実行します。

  1. 次のコマンドを実行して、ノード固有の情報を保持するファイルを含むローカルディレクトリを作成します。


    # mkdir -p /local/oracle/network/admin
    
  2. 次のコマンドを実行して、ノード固有の情報を保持するグローバルファイルのローカルコピーを作成します。


    # cp -p $ORACLE_HOME/network/admin/snmp_ro.ora \
      /local/oracle/network/admin/.
    

    # cp -p $ORACLE_HOME/network/admin/snmp_rw.ora \
      /local/oracle/network/admin/.
    

以下の手順は、1 つのノードでのみ実行します。

  1. 次のコマンドを実行して、グローバルファイルを削除します。


    # rm $ORACLE_HOME/network/admin/snmp_ro.ora
    

    # rm $ORACLE_HOME/network/admin/snmp_rw.ora
    
  2. 次のコマンドを実行して、ファイルのローカルコピーから、対応するグローバルファイルへのシンボリックリックを作成します。


    # ln -s /local/oracle/network/admin/snmp_ro.ora \
      $ORACLE_HOME/network/admin/snmp_rw.ora
    

    # ln -s /local/oracle/network/admin/snmp_rw.ora \
      $ORACLE_HOME/network/admin/snmp_rw.ora
    

次に進む手順

「Sun Cluster Support for Oracle Real Application Clusters パッケージのインストール」 に進んで、Sun Cluster Support for Oracle Real Application Clusters ソフトウェアパッケージをインストールします。