この章には、システム管理者およびネットワーク管理者が、クラスタに2つのノードを構成するDBAをサポートする際に必要な情報が含まれています。この章では、Linuxオペレーティング・システムの基本を理解していることを前提としています。必要に応じて、『Oracle Real Application Clustersインストレーション・ガイドfor Linux and UNIX Systems』で詳細を参照してください。また、この章の特定のタスクを実行するには、root
またはsudo
権限(またはWindowsシステムでの管理者権限)が必要です。
この章の内容は次のとおりです。
インストールを開始する前に、システムがOracle Real Application Clusters(Oracle RAC)の要件を満たしていることを確認する必要があります。この要件は、次の3つのカテゴリに分けられます。
オペレーティング・システムとOracle Databaseソフトウェアの組合せが動作保証されているものであることを確認する必要があります。次のWebサイトあるMy Oracle Support(以前のOracle MetaLink)の動作保証を参照してください。
https://support.oracle.com
「動作保証」タブを選択することによって、動作保証情報を検索できます。ご使用のプラットフォームの動作保証の情報を見つける方法については、サポート・ノートでも調べることができます。
注意: Oracle Universal Installerは、サーバーおよびオペレーティング・システムがリストされた要件を満たしているかどうかを検証します。ただし、Oracle Universal Installerを起動する前に要件を確認し、サーバーおよびオペレーティング・システムが要件を満たしていることを確認する必要があります。このことは、ハードウェアまたはソフトウェアが動作保証されない場合に発生する可能性があるソフトウェア・インストール・プロセスの遅れを回避するのに役立ちます。 |
クラスタ、またはOracle ClusterwareとOracle RACのインストールの一部を形成する各ノードは、ソフトウェアの最低限のハードウェア要件を満たす必要があります。これらのハードウェア要件は、次のようなカテゴリに分けられます。
注意: Oracleソフトウェアをインストールする際、Oracle Universal Installer(OUI)によって自動的にハードウェア前提条件チェックが実行され、適合しない場合は通知されます。 |
物理メモリー(1.5GB以上のRAM)
RAMと同じ容量のスワップ領域
使用可能な/tmp
内の一時領域(1GB以上)
インストールするOracleソフトウェアのリリースでの動作が保証されているプロセッサ・タイプ(CPU)
1024 x 786以上のディスプレイ解像度(Oracle Universal Installer(OUI)を正しく表示するため)
クラスタ内で使用されるすべてのサーバーでチップ・アーキテクチャが同一であること(たとえば、すべてが32ビット・プロセッサまたは64ビット・プロセッサ)
Oracleソフトウェアを格納するのに十分なディスク領域がソフトウェア・インストール場所にあること
注意: 実際のディスク領域要件については、ご使用のオペレーティング・システム用のOracle Grid Infrastructureのインストレーション・ガイドとOracle Real Application Clustersのインストレーション・ガイドを参照してください。Oracleソフトウェアで使用されるディスク領域は一定でなく、このマニュアルに記載されている値より大きくなることもあります。 |
Gridホーム・ディレクトリには、少なくとも5.5GBの使用可能なディスク領域が必要です。このディレクトリには、Oracle ClusterwareおよびOracle Automatic Storage Management(Oracle ASM)のバイナリ・ファイルと、関連するログ・ファイルの両方が格納されます。また、Oracle Databaseホーム・ディレクトリまたはOracleホーム・ディレクトリには、少なくとも4GBのディスク領域が必要です。
参照:
|
Oracle RACデータベースは、シェアード・エブリシング型のデータベースです。Oracle RACデータベースで使用されているすべてのデータファイル、制御ファイル、REDOログ・ファイルおよびサーバー・パラメータ・ファイル(SPFILE)は、すべてのOracle RACデータベース・インスタンスがアクセス可能な共有記憶域に配置する必要があります。このマニュアルで説明するOracle RACインストールでは、Oracle ClusterwareおよびOracle Databaseファイルの共有記憶域にOracle ASMが使用されます。
Oracle Clusterwareは、次のコンポーネントを使用することによって、優れたスケーラビリティと高可用性を実現します。
投票ディスク: クラスタ・メンバーシップを管理し、ネットワーク障害の場合にノード間でクラスタ所有権を調整します。投票ディスクは、共有記憶域に存在するファイルです。可用性を高めるために、複数の投票ディスクを持つこと、および奇数の投票ディスクを持つことをお薦めします。単一の投票ディスクを定義する場合は、冗長性のためにファイル・システム・レベルでのミラー化を使用します。
Oracle Cluster Registry(OCR): クラスタ構成情報およびクラスタ内の任意のクラスタ・データベースに関する構成情報を保持します。OCRには、どのデータベース・インスタンスをどのノード上で実行するか、どのサービスをどのデータベース上で実行するかなどの情報が含まれます。また、OCRにはOracle Clusterwareが制御するプロセスに関する情報も格納されます。OCRは、クラスタ内のすべてのノードがアクセス可能な共有記憶域に存在します。Oracle ClusterwareではOCRを多重化(OCRの複数のコピーを保持)できるため、この機能を使用して高可用性を確保することをお薦めします。
注意: Oracle Clusterwareファイルの格納にOracle ASMを使用しないことを選択する場合は、Oracle ClusterwareをGridホームにインストールする前に、投票ディスクとOCRの両方が、構成するクラスタ・ファイル・システムに存在する必要があります。 |
これらのOracle Clusterwareコンポーネントには、共有ファイル・システム上に次のようなディスク領域が必要です。
3つのOracle Clusterwareレジストリ(OCR)・ファイル(それぞれのディスク領域が300MBか、または合計ディスク領域が900MB)
3つの投票ディスク・ファイル(それぞれのディスク領域が300MBか、または合計ディスク領域が900MB)
Oracle Clusterwareファイルの格納にOracle ASMを使用していない場合、最適なパフォーマンスおよび保護を実現するために、複数のディスクを使用し、各ディスクで投票ディスク・ファイルの配置にそれぞれ異なるディスク・コントローラを使用する必要があります。各投票ディスクがハードウェア・デバイスを共有したり、シングル・ポイント障害を持ったりしないように構成されていることを確認してください。
参照:
|
Oracle Clusterwareでは、クラスタ内のノードが、プライベート・インターコネクトを使用してプライベート・ネットワークに接続されている必要があります。プライベート・インターコネクトは、クラスタ・ノード間で構成する個別のネットワークです。インターコネクトは、クラスタ内のノード間の通信パスとして機能します。このインターコネクトは、プライベート・インターコネクトである(クラスタ・メンバー以外のノードからはアクセスできない)必要があります。
Oracle RACで使用するインターコネクトは、Oracle Clusterwareで使用するインターコネクトと同じです。クラスタ・データベースの各インスタンスでは、各インスタンスの共有リソースの使用を同期化するためのメッセージ機能でインターコネクトを使用します。Oracle RACでは、複数のインスタンスで共有されるデータ・ブロックの転送にもインターコネクトを使用します。
Oracle RACおよびOracle Clusterwareに使用するネットワークを構成する場合は、クラスタ内の各ノードが次の要件を満たしている必要があります。
各ノードに2つ以上のネットワーク・インタフェース・カード(NIC)またはネットワーク・アダプタが必要です。一方のアダプタはパブリック・ネットワーク・インタフェース用、もう一方のアダプタはプライベート・ネットワーク・インタフェース(インターコネクト)用です。ノードが次の条件のいずれかに該当する場合、ネットワーク・アダプタをノードにさらに追加します。
2つ以上のネットワーク・アダプタが備わっていない場合。
2つのネットワーク・インタフェース・カードが備わっているが、ネットワーク接続ストレージ(NAS)が使用されている場合。NAS用に別個のネットワーク・アダプタを装備する必要があります。
2つのネットワーク・カードが備わっているが、冗長なインターコネクトを使用する場合。
以前のリリースでは、インターコネクトに冗長なネットワークを使用する場合、ボンディング、トランキング、チーミングなどのテクノロジが必要でした。現在、クラスタ用Oracle Grid InfrastructureおよびOracle RACでは、他のネットワーク・テクノロジを使用することなく冗長なネットワーク・インターコネクトを利用して、クラスタ内における最適な通信を強化できます。この機能は、Oracle Database 11gリリース2(11.2.0.2)から使用可能です。
冗長なインターコネクトの使用によって、複数(最大4つ)のプライベート・ネットワーク(インターコネクトとも呼ばれる)全体にわたるロード・バランシングと高可用性が可能になります。
参照: 冗長なインターコネクトの使用の構成の詳細は、『Oracle Grid Infrastructureインストレーション・ガイドfor Linux』を参照してください。 |
すべてのノードのパブリック・インタフェース名が同一である必要があります。あるノードのパブリック・インタフェースがネットワーク・アダプタeth0
を使用している場合は、eth0
をすべてのノードでパブリック・インタフェースとして構成する必要があります。ネットワーク・インタフェース名は大/小文字が区別されます。
すべてのノードに、同じプライベート・インタフェース名を構成する必要もあります。eth1
が1番目のノードのプライベート・インタフェース名である場合は、2番目のノードのプライベート・インタフェース名もeth1
である必要があります。ネットワーク・インタフェース名は大/小文字が区別されます。
パブリック・インタフェース用のネットワーク・アダプタでは、TCP/IPがサポートされている必要があります。
プライベート・インタフェース用のネットワーク・アダプタでは、高速ネットワーク・アダプタを使用するユーザー・データグラム・プロトコル(UDP)、およびTCP/IP(ギガビット・イーサネットまたはさらに高速のもの)対応のネットワーク・スイッチがサポートされている必要があります。
注意:
|
プライベート・ネットワークでは、指定されたすべてのインターコネクト・インタフェースのエンド・ポイントが、ネットワーク上で完全に到達可能である必要があります。クラスタ内のすべてのノードが、クラスタ内のすべてのプライベート・ネットワーク・インタフェースに接続できる必要があります。
各ノードのホスト名は、英数字を使用できるRFC 952標準に準拠する必要があります。ホスト名にアンダースコア(_)は使用できません。
クラスタ用Oracle Grid Infrastructureソフトウェアの拡張インストールを実行する場合、仮想IP(VIP)用のグリッド・ネーミング・サービス(GNS)および動的ホスト構成プロトコル(DHCP)を使用できます。グリッド・ネーミング・サービスは、マルチキャスト・ドメイン・ネーム・サーバー(mDNS)を使用するOracle Database 11gリリース2の新機能であり、この機能を使用すると、ドメイン・ネーム・サーバー(DNS)でネットワーク・アドレス構成を追加しなくても、クラスタ上でノードが追加および削除される際に、クラスタがホスト名およびIPアドレスを動的に割り当てることができるようになります。GNSの詳細は、ご使用のプラットフォームの『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。
このマニュアルでは、GNSを使用しない標準インストールの実行方法を説明します。次のアドレスは、社内のDNSに手動で構成する必要があります。
各ノードのパブリックIPアドレス
各ノードの仮想IPアドレス
クラスタの3つの単一クライアント・アクセス名(SCAN)アドレス
注意: Oracle Clusterwareは、プライベートとマークされたインタフェースを、クラスタ・インターコネクトとして使用します。 |
インストール中にクラスタのSCANが構成され、これは、クラスタに割り当てられるすべてのSCANアドレスに解決されるドメイン名になります。SCANアドレスに使用されたIPアドレスは、VIPアドレスとして同じサブネット上にある必要があります。SCANがネットワーク内で一意であることが必要です。SCANアドレスは、インストール前にping
コマンドに応答しないようにします。
クラスタ用Oracle Grid Infrastructureのインストール中に、SCANアドレスのそれぞれに対してリスナーが作成されます。Oracle RACデータベースにアクセスするクライアントは、SCANまたはSCANアドレスを使用し、VIP名やVIPアドレスは使用しません。アプリケーションがSCANを使用してクラスタ・データベースに接続する場合、クラスタでノードの追加や削除があったときに、クライアント・コンピュータ上のネットワーク構成ファイルを変更する必要はありません。SCANとそれに関連付けられたIPアドレスは、クラスタを構成するノードとは無関係に、クライアントが接続に使用する安定した名前を提供します。クライアントは、簡易接続ネーミング・メソッドとSCANを使用してクラスタ・データベースに接続できます。
環境ごとの正確な要件の詳細は、ご使用のプラットフォーム用のOracle Grid Infrastructureのインストレーション・ガイドとOracle Real Application Clustersのインストレーション・ガイドを参照してください。これらの要件には、次のものが含まれることがあります。
オペレーティング・システムのバージョン
オペレーティング・システムのカーネル・バージョン
カーネル・パラメータの値の変更
インストール済のパッケージ、パッチまたはパッチ・セット
インストール済のコンパイラおよびドライバ
Webブラウザのタイプおよびバージョン
その他のアプリケーション・ソフトウェア要件
Oracle Database 11gリリース2(11.2)で現在サポートされていないバージョンのオペレーティング・システムを実行している場合は、最初にオペレーティング・システムをアップグレードしてから、Oracle Real Application Clusters 11gをインストールしてください。
オペレーティング・システムにOracle Linuxを使用している場合は、Oracle Validated RPMシステム構成スクリプトを使用してシステム構成を行えます。
Oracle Linuxのオペレーティング・システム要件が満たされているかどうかを判断するには、次の手順を実行します。
インストールされているLinuxディストリビューションおよびバージョンを確認するには、オペレーティング・システム・プロンプトでroot
ユーザーとして次のコマンドを実行します。
# cat /proc/version
各サーバーがどのチップ・アーキテクチャを採用しているか、およびどのバージョンのソフトウェアをインストールする必要があるかを確認するには、オペレーティング・システムのプロンプトで、root
ユーザーとして次のコマンドを実行します。
# uname -m
このコマンドによってプロセッサ・タイプが表示されます。64ビット・アーキテクチャの場合は、「x86_64」と出力されます。
必要なエラータ・レベルがインストールされているかどうかを判別するには、root
ユーザーとして次の手順を実行します。
# uname -r 2.6.9-55.0.0.0.2.ELsmp
一般のソフトウェアと同様、Linuxカーネルは、オペレーティング・システムの不具合を修正するために更新されます。このようなカーネルの更新を、エラータ・カーネルまたはエラータ・レベルといいます。
前述の例の出力は、カーネルのバージョンが2.6.9、エラータ・レベル(EL)が55.0.0.0.2.ELsmpであることを示しています。ディストリビューションに必要なエラータ・レベルを確認します。そのエラータ・レベルが最低限必要とされるエラータ・レベルよりも低い場合、オペレーティング・システムに最新のカーネル更新をインストールします。カーネル更新は、オペレーティング・システムのベンダーから入手できます。
インストールに影響を与えるオペレーティング・システムの問題がないことを確認するには、ご使用のプラットフォーム用のOracle Grid Infrastructureのインストレーション・ガイドを参照し、そこに記載されているオペレーティング・システムのパッチ更新およびパッケージがすべてインストールされていることを確認します。Oracle Linuxを使用している場合は、root
ユーザーとして次のコマンドを実行すると、必要なパッケージ(特定の機能または計算を実行するプログラム)がインストールされているかどうかを判別できます。
# rpm -q package_name
package_name
変数は、setarch
などの検証の対象とするパッケージの名前です。パッケージがインストールされていない場合、Linuxの配布メディアからインストールするか、LinuxベンダーのWebサイトから必要なバージョンのパッケージをダウンロードします。
一部のLinuxシステムでは、up2date
またはYUM(Yellow dog Updater, Modified)を使用して、パッケージとそれに必要な依存パッケージをインストールすることもできます。YUMでは、リポジトリを使用して、システムに合ったRPMパッケージを自動的に見つけて取得します。
参照:
|
システムがOracle RACのインストールの基本的要件を満たすことを確認した後、次に実行する手順はインストールの準備としてのサーバーの構成です。
この項では、次のタスクを実行します。
このサーバーにOracleソフトウェアがインストールされるのが初めてかどうかによって、オペレーティング・システム・グループを作成する必要がある場合があります。
クラスタ用Oracle Grid InfrastructureソフトウェアおよびOracle RACをインストールするには、次のオペレーティング・システム・グループおよびユーザーを作成する必要があります。
すべてのインストールに対するOracleインベントリ・グループ(通常はoinstall
)。Oracleインベントリ・グループが、Oracleソフトウェア・インストール所有者のプライマリ・グループである必要があります。Oracleインベントリ・グループのメンバーには、Oracleインベントリ・ディレクトリに対するアクセス権があります。このディレクトリは、サーバー上のすべてのOracleソフトウェア・インストールの中央インベントリ・レコードであり、各インストールのインストール・ログおよびトレース・ファイルも含まれています。
Oracleソフトウェアの所有者。ソフトウェアのインストール時に使用するユーザー・アカウントです。
すべてのインストールで単一のソフトウェア所有者を使用する場合、通常、ユーザー名はoracle
になります。Oracle Database管理権限からクラスタ用Oracle Grid Infrastructure管理権限を分離するために、個別のソフトウェア所有者を使用してクラスタ用Oracle Grid InfrastructureおよびOracle RACソフトウェアをインストールする場合は、通常、クラスタ用Oracle Grid Infrastructureソフトウェア所有者にgrid
を使用し、Oracle RACソフトウェア所有者にoracle
を使用します。
Oracle Database認証に対するOSDBAグループ(通常はdba
)。
OSDBAグループは、システム権限グループであり、そのメンバーには、Oracle Databaseを管理するSYSDBA権限と、Oracle ClusterwareとOracle ASMを管理するSYSASM権限が与えられています。管理権限をきめ細かく制御するために、「(オプション)オペレーティング・システム・ユーザーおよびグループ」で説明したとおり複数のオペレーティング システム・グループを作成することができます。.
注意: Oracle RACをMicrosoft Windowsにインストールする場合、OUIによってSYSDBAアクセス認証用のORA_DBA グループが自動的に作成されます。また、管理権限を持つアカウントでログインしている間にOracle RACソフトウェアをインストールする場合、インストールのためのユーザーを別途作成する必要はありません。 |
クラスタ用Oracle Grid InfrastructureとOracle RACで同じインストール所有者を使用する場合、管理タスクを実行するときには、管理するインスタンス(GridホームのOracle ASM、またはOracleホームのデータベース・インスタンス)に一致するようにORACLE_HOME
環境変数の値を変更する必要があります。ORACLE_HOME
環境変数を変更するには、次の例のようなコマンド構文を使用しますが、ここで、/u01/app/11.2.0/grid
はクラスタ用Oracle Grid Infrastructureホームを表しています。
ORACLE_HOME=/u01/app/11.2.0/grid; export ORACLE_HOME
注意: Oracle ClusterwareとOracle ASMのホーム・ディレクトリを個別にすることはできなくなりました。 |
sqlplus
、lsnrctl
、asmcmd
のいずれかのコマンドを使用してインスタンスを管理しようとしたときに、ORACLE_HOME
が別のバイナリ・パスに設定されていると、エラーが発生します。Oracleホームのパスはsrvctl
コマンドには影響しません。
すべてのOracleソフトウェア・インストールの所有者として単一のオペレーティング・システム・ユーザーを使用するかわりに、複数ユーザーを使用して、各ユーザーに1つ以上のOracleソフトウェア・インストールを所有させることができます。クラスタ用Oracle Grid Infrastructureインストールのみを所有するように作成されたユーザーはgrid
ユーザーと呼ばれます。このユーザーは、Oracle ClusterwareとOracle Automatic Storage Managementの両方のバイナリを所有します。すべてのOracleソフトウェア・インストール(クラスタ用Oracle Grid Infrastructureを含む)、またはOracle Databaseソフトウェア・インストールのみを所有するように作成されたユーザーはoracle
ユーザーと呼ばれます。
Oracle Databaseソフトウェア・インストールごとに異なるユーザーを使用することもできます。また、Oracle Databaseソフトウェア・インストールごとに異なるOSDBAグループを指定できます。各Oracle Databaseインストールへの管理アクセスを認証するために異なるオペレーティング・システム・グループを使用することで、ユーザーに付与されるSYSDBA
権限は、システム上のすべてのデータベース用ではなく、OSDBAグループに関連付けられているデータベース用となります。
OSDBAグループのメンバーには、Oracle ASMへの管理アクセスが認可されるSYSASM
システム権限も付与できます。次の項で説明するように、Oracle ASM認証に別のオペレーティング・システム・グループを構成して、Oracle ASMインスタンスに対するSYSASM
アクセス権を持つユーザーを、データベース・インスタンスに対するSYSDBA
アクセス権を持つユーザーと区別できます。
異なるOracleソフトウェア・インストールに対して、Oracleソフトウェア所有者を個別に作成し、別々のユーザーおよびオペレーティング・システム権限グループを使用する場合は、それらの各ユーザーがOracle中央インベントリ・グループ(oinstall
)をプライマリ・グループとして持つ必要があることに注意してください。このグループのメンバーは、Oracleインベントリ・ディレクトリに対する必須の書込み権限を持っています。
注意: クラスタ用Oracle Grid Infrastructureソフトウェア・インストールは、1人のユーザーのみが所有できます。あるユーザーにOracle Clusterwareソフトウェア・インストールを所有させ、別のユーザーにOracle ASMソフトウェア・インストールを所有させるようなことはできません。 |
追加のユーザーおよびグループを作成して、クラスタ用Oracle Grid Infrastructureに対する管理アクセス権限を、他のOracleインストールに関連付けられた管理ユーザーおよびグループから分離できます。管理アクセスの分離は、異なるオペレーティング・システム・グループのメンバーシップを指定することによって実装されます。インストール権限の分離は、Oracleインストールごとに別のインストール所有者を使用することによって実装されます。
作成できるオプションのユーザーおよびグループは、次のとおりです。
Oracle Automatic Storage Managementグループ(OSASMグループ)(通常はasmadmin
)。Oracle ASM管理者用とOracle Database管理者用に別々の管理権限グループを設定する場合に、個別のグループとしてこのグループを作成します。OSASMグループのメンバーは、オペレーティング・システムの認証を使用することで、SQLを使用してSYSASM
としてOracle ASMインスタンスに接続できます。SYSASM
権限によって、ディスク・グループのマウントおよびディスマウントなどの記憶域の管理タスクが許可されます。SYSASM
権限には、Oracle Databaseインスタンスへのアクセス権限はありません。個別のOSASMグループを作成しない場合は、OSDBAグループ(dba
)がOSASMグループです。
ASMデータベース管理者グループ(ASMグループのOSDBA、通常はasmdba
)。Oracle ASMのOSDBAグループのメンバーには、Oracle ASMが管理するファイルに対する読取り/書込みアクセス権が付与されます。クラスタ用Oracle Grid Infrastructureインストールの所有者およびすべてのOracle Databaseソフトウェアの所有者(oracle
など)は、このグループのメンバーである必要があり、Oracle ASMが管理するファイルへのアクセス権が必要なデータベースのOSDBAメンバーシップのすべてのユーザーは、ASMグループのOSDBAのメンバーである必要があります。
Oracle Database用OSOPERグループ(通常はoper
)。特定のオペレーティング・システム・ユーザーが、データベース管理権限(SYSOPER
権限)の制限されたセットを持つようにする場合は、このグループを作成します。OSDBAグループのメンバーはすべての権限をSYSOPER
権限によって自動的に付与されます。
Oracle ASM用OSOPERグループ(通常はasmoper
)。このグループのメンバーには、Oracle ASMインスタンスの開始、停止など、SYSASM
権限のサブセットへのアクセス権が付与されます。
このマニュアルでは、oracle
という単一のソフトウェア所有者をすべてのインストールに対して使用します。oracle
ユーザーは、oinstall
およびdba
オペレーティング・システム・グループに所属します。
オペレーティング・システムで認証されるすべての管理権限を所有する1つのソフトウェア所有者を作成するには、次の手順を実行します。
/etc/group
ファイルの内容をリストして、サーバーに存在するグループを確認します。
cat /etc/group
サーバーにOracleソフトウェアをインストールしたのが初めてであり、Oracleインベントリ・グループが存在しない場合は、クラスタ内のすべてのノードで現在使用されていないグループIDを使用して、Oracleイベントリ・グループ(oinstall
)を作成します。root
ユーザーとして次のようなコマンドを入力します。
# /usr/sbin/groupadd -g 1000 oinstall
root
ユーザーとして次のようなコマンドを入力し、クラスタ内のすべてのノードで現在使用されていないグループIDを使用して、OSDBA(dba
)グループを作成します。
# /usr/sbin/groupadd -g 1001 dba
Oracleソフトウェアを所有するユーザー(oracle
)がサーバーに存在しない場合は、ユーザーを作成する必要があります。クラスタ内のすべてのノードで現在使用されていないユーザーID(UID)を選択します。サーバーでどのユーザーが作成済かを確認するには、次のコマンドを使用して/etc/passwd
ファイルの内容を表示します。
cat /etc/passwd
次のコマンドは、oracle
ユーザーおよびユーザーのホーム・ディレクトリ(/home/oracle
)の作成方法を示しています。デフォルト・グループはoinstall
、セカンダリ・グループはdba
で、UIDには1100を使用します。
# useradd -u 1100 –g oinstall -G dba -d /home/oracle -r oracle
次のコマンドを使用して、oracle
アカウントのパスワードを設定します。password
を自分のパスワードに置き換えます。
passwd oracle Changing password for user oracle. New UNIX password: password retype new UNIX password: password passwd: all authentication tokens updated successfully.
クラスタ内の各ノードで手順1から手順5を繰り返します。
クラスタの各ノードで、ユーザーoracle
の属性が同一であることを確認します。
id oracle
このコマンドの出力結果は、次のようになります。
uid=1100(oracle) gid=1000(oinstall) groups=1000(oinstall),1001(dba)
Oracleソフトウェアをインストールするには、すべてのクラスタ・メンバー・ノード間にセキュア・シェル(SSH)の接続が設定されている必要があります。OUIは、インストール中にssh
およびscp
コマンドを使用して、他のクラスタ・ノードに対してリモート・コマンドを実行し、そのクラスタ・ノードにファイルをコピーします。これらのコマンドを使用する際にパスワードを求めるプロンプトが表示されないように、SSHを構成する必要があります。SSHは、Configuration AssistantやOracle Enterprise Managerでも使用され、またクラスタにノードを追加する際にも使用されます。
Oracle Universal Installer(OUI)インタフェースからインストール中に、インストールを実行しているユーザー・アカウントにSSHを構成することができます。自動構成によって、パスワードなしのSSH接続をすべてのクラスタ・メンバー・ノード間に作成できます。
スクリプトを実行できるようにするには、すべてのOracleソフトウェア・インストール所有者のプロファイルからstty
コマンドを削除するとともに、ログイン時にトリガーされる他のセキュリティ手段で、端末に対してメッセージを生成するものを削除する必要があります。これらのメッセージやメール・チェックなどが表示されていると、Oracleソフトウェア・インストール所有者は、Oracle Universal Installerに組み込まれているSSH構成スクリプトを使用できません。これらの表示が無効になっていない場合は、SSHを手動で構成してからでなければ、インストールを実行できません。
Linuxシステムで、パス・フレーズの入力を求められずにOracle Universal Installerでssh
コマンドおよびscp
コマンドを使用できるようにするには、クラスタ内にユーザー等価関係が必要です。次の条件がクラスタ内のすべてのノードに該当する場合、クラスタには、ユーザー等価関係があります。
指定したユーザーのユーザー名、ユーザーID(UID)およびパスワードが同じ場合
指定したユーザーが同じグループに属する場合
指定したグループのグループID(GID)が同じ場合
参照:
|
Oracle Linuxでは、oracle
アカウントからOracle Universal Installer(OUI)を実行します。OUIは、oracle
ユーザー用に構成された環境変数から情報を取得します。OUIを実行する前に、クラスタ用Oracle Grid Infrastructureソフトウェア所有者のシェル起動ファイルに対して、次の変更を行う必要があります。
シェル起動ファイルで、インストール・ユーザー(oracle
)のデフォルトのファイル・モード作成マスク(umask
)を022に設定します。マスクを022に設定すると、ソフトウェア・インストールを実行するユーザーが作成するファイルの権限は常に644になります。
インストール・ユーザー(oracle
)のファイル記述子(nofile
)およびプロセス(nproc
)のulimit
設定を設定します。
クラスタ用Oracle Grid Infrastructureをインストールする準備として、ソフトウェア所有者のDISPLAY
環境変数を設定します。
ファイル内で環境変数ORACLE_SID
、ORACLE_HOME
、ORACLE_BASE
に値を設定している行は、すべて削除します。
変更を保存した後で、シェル起動スクリプトを実行して環境を構成します。
また、/tmp
ディレクトリの使用可能ディスク領域は1GBより少ないが、使用可能領域は1GB以上ある、共有されていない別のファイル・システムが確認された場合、TEMP
およびTMPDIR
という環境変数を設定して、このファイル・システム上の代替一時ディレクトリを指定できます。
現在の環境設定を確認するには、oracle
ユーザーとしてenv | more
コマンドを使用します。
インストール前にOracleソフトウェア所有者環境を構成する方法の詳細は、ご使用のプラットフォーム用のOracle Grid Infrastructureのインストレーション・ガイドを参照してください。
注意: インストールを開始する前に、非表示ファイル(ログオン、プロファイル・スクリプトなど)からすべてのstty コマンドを削除します。Linuxシステムでは、このようなstty コマンドが含まれるファイルがある場合、インストール中にこれらのファイルがリモート・シェルによってロードされると、OUIにエラーが表示され、インストールが停止します。 |
Oracle Database 11gリリース2(11.2)のクライアントは、単一クライアント・アクセス名(SCAN)を使用してデータベースに接続します。SCANとそれに関連付けられたIPアドレスは、クラスタを構成するノードとは無関係に、クライアントが接続に使用する安定した名前を提供します。SCANは、パブリック・クライアント接続を処理するクラスタ内で、複数のリスナーを参照する複数のIPアドレスに解決されることによって機能します。これらのリスナーはSCANリスナーと呼ばれ、インストール時に作成されます。
クラスタ用Oracle Grid Infrastructureのインストールの準備でネットワークを構成するには、次の手順を実行します。
クラスタ名を決定します。クラスタ名は次の条件を満たす必要があります。
ホスト・ドメイン内でグローバルに一意であること。
1文字以上、15文字未満であること。
ホスト名に使用されるキャラクタ・セット(シングルバイト英数字(aからz、AからZおよび0から9)とハイフン(-))と同じキャラクタ・セットで構成されていること。
サード・パーティ・ベンダーのクラスタウェアを使用する場合は、そのベンダーのクラスタ名を使用することをお薦めします。
クラスタ内の各ノードに対してパブリック・ホスト名と仮想ホスト名を指定します。
パブリック・ホスト名には、各ノードのプライマリ・ホスト名を使用します。つまり、hostname
コマンドによって表示される名前を使用します。このホスト名は、永続ホスト名または仮想ホスト名のいずれか(racnode1
など)になります。
各ノードの仮想ホスト名を決定します。仮想ホスト名はパブリック・ノード名で、ノードが停止している場合にノードに送信されるクライアント・リクエストを再ルーティングするために使用されます。<パブリック・ホスト名>
-vip
という形式(racnode1-vip
など)で名前を指定することをお薦めします。
各ノードで次のコマンドを実行して、すべてのネットワーク・アダプタのインタフェース名および関連するIPアドレスを識別します。
# /sbin/ifconfig
出力から、パブリック・ネットワーク・インタフェースとして指定する各ネットワーク・アダプタのインタフェース名(eth0
など)およびIPアドレスを識別します。
オペレーティング・システムが、システム構成を変更するためのグラフィック・ユーザー・インタフェース(GUI)をサポートしている場合、次のコマンドを使用して、利用できるGUIを起動し、ネットワーク・アダプタと/etc/hosts
ファイルを構成することができます。
/usr/bin/system-config-network &
注意: Oracle ClusterwareおよびOracle RACをインストールする際に、各ネットワーク・アダプタごとにインタフェースの名前およびIPアドレスを入力するよう求められます。 |
クラスタの各ノードで、対応するネットワーク名を持つパブリックIPアドレスを1つのネットワーク・アダプタに割り当てます。各ノードのパブリック名は、使用するドメイン・ネーム・システム(DNS)に登録する必要があります。プライベートとして指定したサブネット上のIPアドレスは、クラスタ・メンバー・ノードのプライベートIPアドレスとして割り当てられます。/etc/hosts
ファイルでこれらのアドレスを手動で構成する必要はありません。
ping
コマンドを使用して、インターコネクト・インタフェースが接続可能かどうかをテストできます。
クラスタ内の各ノードで、仮想IPアドレスとして動作する3番目のIPアドレスを構成します。次の要件を満たすIPアドレスを使用します。
その仮想IPアドレスとネットワーク名は、現在使用されていない。
その仮想IPアドレスは、パブリックIPアドレスと同じサブネット上に存在する。
各ノードの仮想ホスト名は、DNSに登録する必要があります。
3つのIPアドレスに解決されるSCANをDNSに定義します。
ネットワーク構成の完了時、IPアドレスおよびネットワーク・インタフェースの構成は、表2-1のようになります(ノード名やIPアドレスが異なる場合があります)。
表2-1 手動によるネットワークの構成例
ID | ホーム・ノード | ホスト・ノード | 指定された名前 | タイプ | アドレス | アドレスの割当て元 | 解決方法 |
---|---|---|---|---|---|---|---|
ノード1パブリック |
ノード1 |
|
|
パブリック |
192.0.2.101 |
固定 |
DNS |
ノード1 VIP |
ノード1 |
Oracle Clusterwareにより選択 |
|
仮想 |
192.0.2.104 |
固定 |
DNS、hostsファイル |
ノード1プライベート |
ノード1 |
|
|
プライベート |
192.168.0.1 |
固定 |
DNS、hostsファイル、またはなし |
ノード2パブリック |
ノード2 |
|
|
パブリック |
192.0.2.102 |
固定 |
DNS |
ノード2 VIP |
ノード2 |
Oracle Clusterwareにより選択 |
|
仮想 |
192.0.2.105 |
固定 |
DNS、hostsファイル |
ノード2プライベート |
ノード2 |
|
|
プライベート |
192.168.0.2 |
固定 |
DNS、hostsファイル、またはなし |
SCAN VIP 1 |
なし |
Oracle Clusterwareにより選択 |
|
仮想 |
192.0.2.201 |
固定 |
DNS |
SCAN VIP 2 |
なし |
Oracle Clusterwareにより選択 |
|
仮想 |
192.0.2.202 |
固定 |
DNS |
SCAN VIP 3 |
なし |
Oracle Clusterwareにより選択 |
|
仮想 |
192.0.2.203 |
固定 |
DNS |
脚注1 ノード・ホスト名が、複数のアドレスに解決される場合があります。
DNSを使用している場合でも、各ノードの/etc/hosts
ファイルに、パブリックIPアドレスを指定する行を追加することをお薦めします。次の例のように、/etc/hosts
ファイルを構成します。
#eth0 - PUBLIC 192.0.2.100 racnode1.example.com racnode1 192.0.2.101 racnode2.example.com racnode2
注意: /etc/hosts ファイルに構成したアドレスか、またはDNSに登録したアドレスをメモしておいてください。クラスタ用Oracle Grid InfrastructureおよびOracle RACのインストール時に、パブリック・アドレス、仮想IPアドレスおよびSCANアドレスの入力を求められます。
SCAN VIPアドレスの構成は、 |
クラスタの完全修飾SCANのデフォルトは、cluster_name
-scan.
GNS_subdomain_name
(たとえばdocrac-scan.example.com
)です。クラスタの短縮SCANはdocrac-scan
です。ネットワーク内で一意であり、RFC 952標準に準拠していれば、どのような名前もSCANとして使用できます。
DNSサーバーでIPアドレスの構成を行った場合は、次に示すように、root
ユーザーとしてすべてのノードの/etc/nsswitch.conf
中のhosts検索順序を変更します。
変更前:
hosts: files nis dns
変更後:
hosts: dns files nis
nsswitch.conf
ファイルを変更した後で、次のコマンドを使用して、各ノードでnscd
デーモンを再起動します。
# /sbin/service nscd restart
インストール・プロセスを完了した後、クラスタへのアクセスにSCANを使用するようにクライアントを構成します。前述の例を使用すると、クライアントはクラスタへの接続にdocrac-scan
を使用します。
ネットワークの構成後、検証テストを実行して、ネットワークが正しく構成されていることを確認します。クラスタのノード間のネットワーク接続に問題があると、Oracle Clusterwareのインストールに失敗します。
Oracle Linuxで動作する2ノードのクラスタにおいてネットワークの構成を検証するには、次の手順を実行します。
root
ユーザーとして、パブリック・ネットワークおよびプライベート・ネットワークの構成を検証します。クラスタ内のすべてのノードで、インタフェースが同じネットワーク(プライベートまたはパブリック)上に構成されているかどうかを検証します。
この例では、各ノードで、パブリック・ネットワークにeth0
が使用され、プライベート・ネットワークにeth1
が使用されます。
# /sbin/ifconfig eth0 Link encap:Ethernet HWaddr 00:0E:0C:08:67:A9 inet addr: 192.0.2.100 Bcast:192.0.2.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
root
ユーザーとしてping
コマンドを使用して、クラスタ内の各ノードからその他すべてのノードに対する接続をテストし、ネットワークの構成を検証します。たとえば、root
ユーザーとして、各ノードで次のコマンドを実行します。
# ping -c 3 racnode1.example.com # ping -c 3 racnode1 # ping -c 3 racnode2.example.com # ping -c 3 racnode2
Oracle Clusterwareがインストールされ、実行中になるまでは、仮想IP(racnode1-vip
、racnode2-vip
)やSCAN IPに対してping
コマンドを使用しても、ノードから応答は得られません。パブリック・アドレスに対するping
コマンドが失敗した場合は、その問題を解決してから次の手順に進みます。
ping
コマンドを使用して、デフォルトのゲートウェイにアクセスできることを確認します。デフォルトのゲートウェイを識別するには、Oracle Linuxのヘルプ・ユーティリティで説明されているように、route
コマンドを使用します。
ご使用のサーバーにOracleソフトウェアをインストールする際、Oracle Universal Installerでは、特定のパッケージとソフトウェア・アプリケーションがオペレーティング・システムにインストール済であることを前提としています。
この項の内容は次のとおりです。
インストールを開始する前に、すべてのクラスタ・ノードの日時が可能なかぎり同じ日時に設定されていることを確認してください。クラスタ時刻同期メカニズムによって、すべてのクラスタ・メンバーの内部時計を同期させることができます。Linux上のOracle RACでは、ネットワーク・タイム・プロトコル(NTP)またはOracleクラスタ時刻同期化サービスを使用できます。
NTPは、ネットワークで接続されたサーバーの時計を同期させるように設計されたプロトコルです。NTPを使用すると、ネットワーク上の各サーバーでクライアント・ソフトウェアが実行され、参照NTPサーバーと呼ばれる1つ以上のサーバーに対して定期的にタイミング・リクエストを行います。タイミング・リクエストで戻された情報は、サーバーの時計を調整するために使用されます。クラスタ内のすべてのノードで、同じ参照NTPサーバーを使用する必要があります。
注意: LinuxまたはUNIXプラットフォーム上でNTPを使用する場合は、-x フラグを使用して構成する必要があります。NTPの構成方法の詳細は、ご使用のプラットフォームの『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。 |
NTPを構成しない場合は、OracleによりCluster Time Synchronization Service(CTSS)が構成および使用されます。CTSSを使用して、すべてのクラスタ・メンバーの内部時計を同期させることもできます。CTSSはクラスタのメンバー・ノードの同期を保ちます。CTSSではクラスタ内の1番目のノードがマスターとされ、クラスタ内のその他すべてのノードはマスター・ノードと同じ時刻になるように同期されます。CTSSでは、同期化に外部時計は使用しません。
注意: NTPまたはCTSSを使用しても、ノードのシステム時刻を変更したために発生する人為的エラーからは保護されません。 |
OUIでは、様々なカーネル・パラメータの現在の設定をチェックして、Oracle RACのデプロイの最低要件を満たすかどうかを確認します。本番データベース・システムの場合は、使用している特定のシステムのパフォーマンスを最適化するように設定をチューニングすることをお薦めします。
注意: ご使用のシステムのパラメータ設定またはシェルの制限値が、OUIが示す値よりも大きい場合は、このパラメータの設定を変更しないでください。 |
参照:
|
Oracle RACのインストール先とするオペレーティング・システムに固有の、またはクラスタと併用するコンポーネント用の、特別な構成手順の実行が必要になる場合があります。オペレーティング・システムに固有のインストール・タスクには、次のような例があります。
SUSE Linux、Red Hat Enterprise Linux、またはOracle Linuxでは、Hugeページの使用を構成します。
Red Hat LinuxシステムまたはOracle Linuxシステムでは、Oracle ClusterwareおよびOracle RACで使用可能なファイル数およびプロセス数が増加するように、oracle
ユーザーのシェル制限を設定します。
HP-UXでは、Xライブラリのシンボリック・リンクを作成します。
AIXベースのシステムでは、ネットワーク・チューニング・パラメータを構成します。
参照:
|
Oracle RACでは、Oracle Clusterwareファイルを格納するために共有ファイル・システムへのアクセスが必要です。また、Oracleソフトウェアおよびデータベース・ファイルをインストールする場所を決定する必要もあります。
この項では、Oracle Universal Installerを起動する前に完了する必要がある記憶域構成タスクについて説明します。この章の内容は次のとおりです。
注意: サード・パーティ・ベンダーのマルチパス・ディスクでOracle Automatic Storage Managementライブラリ・ドライバ(ASMLIB)を使用するには、追加の構成が必要です。 |
参照:
|
Oracleインベントリ(oraInventory
)ディレクトリは、サーバー上のすべてのOracleソフトウェア・インストールの中央インベントリ・レコードです。oraInventory
ディレクトリには、次のものが含まれます。
システム上のOracleホーム・ディレクトリ(クラスタ用Oracle Grid InfrastructureおよびOracle Database)のレジストリ。
Oracleソフトウェアのインストール時のインストール・ログおよびトレース・ファイル。これらのファイルは、将来参照するためにそれぞれのOracleホームにもコピーされます。
oraInventory
ディレクトリは、インストール中にOUIによって作成されます。デフォルトでは、Oracleインベントリ・ディレクトリはOracleベース・ディレクトリにはインストールされません。これは、Oracleソフトウェアのすべてのインストールで共通のOracleインベントリが共有されるため、Oracleインベントリは全ユーザーに対して1つのみ存在します(ただし、Oracleベース・ディレクトリについては、ソフトウェアのインストールを行うユーザーごとに個別に存在します)。
既存のOracleインベントリがある場合は、必ずすべてのOracleソフトウェア・インストールで同じOracleインベントリを使用し、インストールに使用するすべてのOracleソフトウェア・ユーザーがこのディレクトリへの書込み権限を持つようにします。
システムにOracle中央インベントリ・ディレクトリ(oraInventory)があるかどうかを確認するには、次の手順を実行します。
次のコマンドを実行して、既存のOracleインベントリ・ディレクトリが存在するかを確認します。
# more /etc/oraInst.loc
oraInst.loc
ファイルが存在する場合、このコマンドの出力結果は、次のようになります。
inventory_loc=/u01/app/oraInventory inst_group=oinstall
前述の出力例の意味は次のとおりです。
inventory_loc
グループは、Oracleインベントリの場所を示します。
inst_group
パラメータは、Oracleインベントリ・グループの名前(この例では、oinstall
)を示します。
Oracleインベントリ・ディレクトリが存在しない場合、ファイルまたはディレクトリが存在しないことを示すエラー・メッセージが表示されます。
Oracleインベントリ・ディレクトリが存在しない場合、Oracleソフトウェアをインストールする前にこれを作成する必要はありません。
インストール中に、クラスタ用Oracle Grid Infrastructureバイナリを格納するホーム・ディレクトリへのパスを指定するように求められます。OUIでは、Oracle ClusterwareおよびOracle ASMがGrid_home
と呼ばれるディレクトリにインストールされます。指定するディレクトリ・パスが次の要件を満たすことを確認します。
既存のOracleホーム外のパスに作成する必要があります。
ユーザー・ホーム・ディレクトリ内であってはいけません。
すべてのファイルをroot
が所有できるパスのサブディレクトリとして作成するか、または一意のパスに作成する必要があります。
インストール前にパスを作成する場合は、クラスタ用Oracle Grid Infrastructureのインストール所有者(oracle
またはgrid
)が所有し、権限に775が設定されている必要があります。
インストールを開始する前に、クラスタ用Oracle Grid Infrastructureディレクトリを作成するのに十分なディスク領域がファイル・システムに存在している必要があります。Gridホーム・ディレクトリに使用するファイル・システムには、4.5GB以上の使用可能なディスク領域が必要です。
Gridホーム・ディレクトリのパスは、すべてのノード上で同じである必要があります。root
ユーザーとして、Optimal Flexible Architecture(OFA)ガイドラインに準拠したパスを作成する必要があり、これにより、OUIはインストール中にこのディレクトリを選択できるようになります。
Gridホーム・ディレクトリを作成するには、次の手順を実行します。
root
ユーザーとしてGridホーム・ディレクトリを作成するには、次のコマンドを入力します。
# mkdir -p /u01/app/11.2.0/grid # chown -R oracle:oinstall /u01/app/11.2.0/grid
注意: Gridホーム・ディレクトリがOracleベース・ディレクトリのサブディレクトリでないことを確認してください。Oracle ClusterwareをOracleベース・ディレクトリにインストールすると、インストール・エラーが発生します。 |
Oracle Universal Installer(OUI)では、指定した場所にOracleベース・ディレクトリが作成されます。このディレクトリは、インストールを実行するユーザーによって所有されます。Oracleベース・ディレクトリ(ORACLE_BASE
)によって、Oracleインストール環境の編成が容易になり、複数データベースのインストール環境でOptimal Flexible Architecture(OFA)構成を維持できるようになります。OFAガイドラインでは、Oracleベース・ディレクトリに対して次のようなパスを使用することが推奨されています。
/mount_point/app/user
前述のパスの例では、変数mount_point
はOracleソフトウェアをインストールするファイル・システムのマウント・ポイント・ディレクトリ、user
はOracleソフトウェア所有者(通常はoracle
)です。OUIにこのパスをOracleソフトウェア・パスとして認識させるには、/u01/app
のようにu0[1-9]/app
形式にする必要があります。
Oracleベース・ディレクトリのパスは、すべてのノード上で同じである必要があります。Oracleベース・ディレクトリに対する権限は、750以上にする必要があります。
例: Oracleベース・ディレクトリの作成
任意のOracleソフトウェアのインストール前に、Oracleインベントリ・ディレクトリの場所の決定に使用され、かつOracle RACのインストール先でもあるOracleベース・ディレクトリを構成する必要があります。
/u01
にマウントされたファイル・システムに、クラスタ用Oracle Grid InfrastructureソフトウェアおよびOracle RACソフトウェアの両方に対して十分な領域があることを確認済であるものとします。また、/u01/app/oracle/
ディレクトリをOracleベース・ディレクトリにします。すべてのOracleソフトウェアのインストールにoracle
ユーザーが使用されます。
Oracleベース・ディレクトリを作成するには、次の手順を実行します。
root
ユーザーとしてログインします。
mkdir
コマンドを使用して、Oracleベース・ディレクトリへのパスを作成します。
# mkdir -p /u01/app/oracle/
Oracleベース・パスの所有権をOracleソフトウェア所有者(oracle
)に変更します。
# chown -R oracle:oinstall /u01/app/oracle/
Oracleベース・ディレクトリに対する権限を775に変更します。
# chmod -R 775 /u01/app/oracle/
Oracleホーム・ディレクトリは、Oracle RACソフトウェアのインストール先です。ローカル・ファイル・システムで作成されたOracleホーム・ディレクトリ(/u01/app/oracle/product/11.2.0/dbhome_1
など)を使用できます。クラスタ内のすべてのノードに、同じディレクトリが存在する必要があります。インストール前にこれらのディレクトリを作成する必要はありません。デフォルトで、インストーラはOracleホーム用にOracleベース・ディレクトリのサブディレクトリを提示します。
共有Oracleホームを使用することもできます。共有Oracleホームの場所は、ネットワーク記憶域上でも、Oracle Automatic Storage Managementクラスタ・ファイル・システム(Oracle ACFS)などのサポートされているクラスタ・ファイル・システム上でもかまいません。Oracle ACFSの詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。
Oracleホーム・ディレクトリに対してローカル・ファイル・システムを使用するときに、同じサーバーに異なるバージョンのOracle RACまたはOracle Databaseをインストールする場合、各ソフトウェア・インストールで個別のOracleホーム・ディレクトリを使用する必要があります。異なるOracleホームから、同じ製品または異なる製品の複数バージョンを同時に実行できます。あるOracleホームにインストールされた製品は、別のOracleホームにインストールされた製品と競合または相互作用しません。
インストール済のソフトウェアに異なるOracleホームを使用することによって、別のOracleホームのソフトウェアに影響を与えずに、あるホームのOracleソフトウェアのメンテナンス操作を実行できます。ただし、各Oracleホームのアップグレードまたはパッチの適用は個別に行う必要があるため、ソフトウェアのメンテナンス・コストは増大します。
クラスタにある各ノードは、Oracle Clusterware(Oracle Cluster Registryと投票ディスク)ファイルおよびOracle Databaseファイルを格納するための外部共有ディスクを必要とします。サポートされる共有記憶域のタイプは、使用しているプラットフォームによって異なります。次に例を示します。
サポートされるクラスタ・ファイル・システム。Linux版のOCFS2、Microsoft Windows版のOCFS、IBMプラットフォームのGeneral Parallel File System(GPFS)などがあります。
ネットワーク・ファイル・システム(NFS)。Linux on POWERまたはLinuxベースのIBM zSeriesではサポートされていません。
(アップグレードの場合のみ)ブロック・デバイスまたはRAWデバイスで構成される共有ディスク・パーティション。ブロック・デバイスは、Linuxファイル・システムを使用してマウントされていないディスク・パーティションです。これらのパーティションには、Oracle ClusterwareおよびOracle RACによって直接書込みが行われます。
注意: OUIを使用して、Oracle Clusterwareファイルをブロック・デバイスまたはRAWデバイスにインストールすることはできません。Oracle Automatic Storage Managementクラスタ・ファイル・システム(Oracle ACFS)に、Oracle Clusterwareのバイナリおよびファイルを配置することはできません。 |
OCFS2を使用してOracle Clusterwareファイルを格納する場合、オペレーティング・システムのバージョンに適したバージョンのOCFS2を使用する必要があります。OCFS2はOracle LinuxおよびRed Hat Linuxのカーネルのバージョン2.6で動作します。
すべてのインストールに対して、Oracle ClusterwareファイルおよびOracle Databaseファイルで使用する記憶域オプションを選択する必要があります。このマニュアルの例では、Oracle ClusterwareおよびOracle Databaseファイルの格納にOracle ASMを使用しています。クラスタ用Oracle Grid InfrastructureおよびOracle RACソフトウェアは、共有ファイル・システムではなく、各ノードに対してローカルなディスクにインストールされます。
このマニュアルでは、Oracle ASMで使用する共有ディスクを構成するための2つの異なる方法について説明します。
注意: Oracle RACのインストール用にサポートされる記憶域オプションの最新情報は、下記のMy Oracle Support(旧OracleMetaLink)の「動作保証」ページを参照してください。 |
参照:
|
NFSファイル・システムを使用するには、動作保証されているNASデバイス上にある必要があります。認定済のネットワーク接続ストレージ(NAS)がある場合は、NFSマウントされたディレクトリにゼロパディング・ファイルを作成し、それらのファイルをOracle ASMディスク・グループ内のディスク・デバイスとして使用できます。
Oracle ASMでのOracle Clusterwareファイルの高可用性を確保するには、Oracle Clusterwareファイル用として、別々の3つの障害グループ(物理ディスクは3つ以上)に2GB以上のディスク領域が必要です。各ディスクには1GB以上の容量を確保して、容量に余裕を持ってOracle Clusterwareファイルを作成できるようにする必要があります。
次のガイドラインに従って、適切なディスク・デバイスを指定します。
Oracle Automatic Storage Managementディスク・グループのすべてのデバイスは、サイズおよびパフォーマンス特性が同じである必要があります。
単一の物理ディスクにある複数のパーティションをディスク・グループに含めないでください。
Oracle Automatic Storage Managementディスク・グループで論理ボリュームをデバイスとして使用することは、Oracle RACではサポートされていません。
インストールを実行するユーザー・アカウント(oracle
)には、指定したパスにファイルを作成するための書込み権限が必要です。
ディスク・グループを作成するためにNASデバイスを構成するには、次の手順を実行します。
NASデバイスに対して、ディスクに対するアクセス権の追加と構成を行います。各クラスタ・ノードに、クラスタ用Oracle Grid InfrastructureソフトウェアとOracle Databaseソフトウェアで使用されるすべてのディスクに対するアクセス権が付与されていることを確認します。
この手順の詳細は、NASデバイス・ドキュメントを参照してください。
クラスタ・ノードで、root
ユーザーとしてログインします(または次の手順でsudo
を使用します)。
NASデバイス上のディスクに対するアクセス権を構成します。この手順を実行するプロセスは、ディスクのタイプとNASサービスのタイプによって異なります。
ここでは、構成プロセスの一例を示します。最初の手順では、ローカル・システムにマウント・ポイント・ディレクトリを作成します。
# mkdir -p /mnt/oracleasm
システムの再起動時にNFSファイル・システムがマウントされるよう、マウント・ファイル/etc/fstab
にこのファイル・システムのエントリを追加します。
オペレーティング・システムのマウント・ファイルの編集の詳細は、Linuxのmanページを参照してください。推奨されるマウント・オプションの詳細は、ご使用のプラットフォーム用のOracle Grid Infrastructureのインストレーション・ガイドを参照してください。
次のようなコマンドを入力して、ローカル・システムにNFSファイル・システムをマウントします。host
はファイル・サーバーのホスト名またはIPアドレス、pathname
はNFS内の記憶域の場所(たとえば/public
)です。
# mount <host>:<pathname> /mnt/oracleasm
作成するディスク・グループの名前(たとえば、nfsdg
)を選択します。
ディレクトリ名としてディスク・グループ名を使用して、NFSファイル・システムにファイルのディレクトリを作成します。次に、例を示します。
# mkdir /mnt/oracleasm/nfsdg
このディレクトリに必要な数のゼロパディング・ファイルを作成するには、次のようなコマンドを使用します。
# dd if=/dev/zero of=/mnt/oracleasm/nfsdg/disk1 bs=1024k count=1000
この例では、disk1
という名前の1GBのファイルをNFSファイル・システムに作成します。作成するディスク・グループが外部冗長性であれば1つ、通常の冗長性であれば2つ、高い冗長性であれば3つのファイルを作成する必要があります。
作成したディレクトリおよびファイルの所有者、グループおよび権限を変更するには、次のコマンドを入力します。
# chown -R oracle:dba /mnt/oracleasm # chmod -R 660 /mnt/oracleasm
Oracle RACのインストールでOracleASMディスク・グループを作成する際、ディスク検出パスを編集して、作成したファイルの名前に一致する正規表現を指定する必要があります。たとえば、/mnt/oracleasm/nfsdg/*
とします。
共有ディスクを構成するためのもう1つのオプションは、ASMLibユーティリティを使用することです。サーバーの再起動時に共有ディスクが自動的にマウントされるよう構成する場合、デバイスの永続性に関する特別なファイルを構成していないかぎり、システムの停止前に/dev/sdg
と表示されていたディスクがシステムの再起動後に/dev/sdh
と表示される可能性があります。
共有ディスクの構成にASMLibを使用すれば、ノードの再起動時に次のようになります。
ディスク・デバイス名は変わりません
これらのディスク・デバイスの所有権とグループ・メンバーシップは同じままです
簡単なコマンドで、Oracle ASMによって実装したディスク構成をクラスタ内の他のノードにコピーできます
次の項では、ASMLibのインストールと構成方法、およびASMLibを使用した共有ディスク・デバイスの構成方法について説明します。
ASMLibソフトウェアは、Oracle Technology Networkから入手できます。次のASMLibダウンロード・ページで、使用しているプラットフォーム用のリンクを選択します。
http://www.oracle.com/technetwork/topics/linux/asmlib/index-101839.html
Linuxプラットフォーム用として4から6のパッケージが表示されます。oracleasmlib
パッケージには、Oracle ASMライブラリ自体が含まれています。oracleasm-support
パッケージには、Oracle ASMドライバを起動し、実行するために使用するユーティリティが含まれています。これらのパッケージは両方ともインストールする必要があります。
残りのパッケージには、Oracle ASMライブラリのためのカーネル・ドライバが含まれています。パッケージごとに、異なるカーネル用のドライバが含まれています。実行するカーネルに合ったパッケージをインストールする必要があります。uname -r
コマンドを使用して、使用しているサーバー上にあるカーネルのバージョンを確認します。oracleasm
カーネル・ドライバ・パッケージは、名前にバージョンが含まれています。たとえば、Red Hat Enterprise Linux 4 ASを実行し、使用するカーネルが2.6.9-55.0.12.ELsmpカーネルである場合、oracleasm-2.6.9-55.0.12.ELsmp-2.0.3-1.x86_64.rpm
パッケージを選択します。
注意: Oracle ASMLibカーネル・ドライバ(oracleasm )は、Oracle Linux 5に含まれています。このカーネルの使用時に、ドライバ・パッケージをインストールする必要はありません。oracleasm-support およびoracleasmlib パッケージはインストールする必要があります。 |
ASMLibソフトウェア・パッケージをインストールするには、次の手順を実行します。
クラスタ内の各ノードに、ASMLibパッケージをダウンロードします。
パッケージ・ファイルをダウンロードしたディレクトリに移動します。
root
ユーザーとして、rpm
コマンドを使用してパッケージをインストールします。次に、例を示します。
# rpm -Uvh oracleasm-support-2.1.3-1.el4.x86_64.rpm # rpm -Uvh oracleasmlib-2.0.4-1.el4.x86_64.rpm # rpm -Uvh oracleasm-2.6.9-55.0.12.ELsmp-2.0.3-1.x86_64.rpm
これらのコマンドが完了すると、システムにASMLibがインストールされます。
クラスタ内の各ノードで手順2と手順3を繰り返します。
ASMLibソフトウェアがインストールされた後に、Oracle ASMドライバを使用できるようにするには、システム管理者がいくつかの手順を実行する必要があります。Oracle ASMドライバをロードし、ドライバのファイル・システムをマウントする必要があります。これは初期化スクリプト/usr/sbin/oracleasm
によって行われます。
インストール後にASMLibソフトウェアを構成するには、次の手順を実行します。
root
ユーザーとして、次のコマンドを実行します。
# /usr/sbin/oracleasm configure -I
スクリプトによって、Oracle ASMドライバのアクセス・ポイントを所有するデフォルトのユーザーとグループの入力を求められます。Oracle Databaseソフトウェア所有者(oracle
)とOSDBAグループ(dba
)を指定します。
また、スクリプトによって、ノードの起動時にASMLibドライバを起動するか、ノードの起動時にOracle Automatic Storage Managementディスクの存在をスキャンするかを指定するよう求められます。これらの質問に対しては、両方ともyesと答えます。
クラスタ内の各ノードで、手順1を繰り返します。
Oracle ASMディスク・グループに使用されるディスクはすべて、各ノードでアクセスできる必要があります。物理ディスクを各ノードから利用できるようにした後で、そのディスク・デバイスをOracle ASMディスクとしてマークすることができます。このタスクには/usr/sbin/oracleasm
スクリプトが使用されます。
対象とするディスク・デバイスでパーティション化がサポートされている場合(RAWデバイスなど)は、まずディスク全体を含む単一のパーティションを作成する必要があります。対象とするディスク・デバイスがパーティション化をサポートしていない場合は、ディスク上にパーティションを作成する必要はありません。
ASMLibを使用してOracle ASMディスクを作成するには、次の手順を実行します。
root
ユーザーとして、oracleasm
を使用して、次の構文でOracle ASMディスクを作成します。
# /usr/sbin/oracleasm createdisk disk_name device_partition_name
このコマンドでは、disk_name
がOracle ASMディスク用に選択した名前です。選択する名前はASCII大文字、数字、アンダースコアのみで構成されている必要があり、ディスク名の先頭は文字で始まる必要があります(たとえばDISK1やVOL1、またはRAC_FILE1)。Oracle ASMディスクとしてマークするディスク・パーティション名は、device_partition_name
です。次に、例を示します。
# /usr/sbin/oracleasm createdisk DISK1 /dev/sdb1
createdisk
コマンドで使用されていたディスクのマークを解除する必要がある場合は、次の構文を使用します。
# /usr/sbin/oracleasm deletedisk disk_name
Oracle ASMで使用される各ディスクに対して、手順1を繰り返します。
クラスタ用のOracle ASMディスクをすべて作成した後で、listdisks
コマンドを使用して可用性を確認します。
# /usr/sbin/oracleasm listdisks DISK1 DISK2 DISK3
クラスタ内の他のすべてのノードで、scandisks
コマンドを使用して、新しく作成されたOracle ASMディスクを表示します。ノードごとにOracle ASMディスクを作成する必要はなく、クラスタ内の1つのノードでのみ作成します。
# /usr/sbin/oracleasm scandisks Scanning system for ASM disks [ OK ]
Oracle ASMディスクのスキャン後、各ノード上の利用可能なOracle ASMディスクを表示して、可用性を確認します。
# /usr/sbin/oracleasm listdisks DISK1 DISK2 DISK3
注意: この時点で、クラスタ用Oracle Grid Infrastructureソフトウェアをインストールする各ノードを再起動する必要があります。ノードが再起動された後で、各ノードで構成された共有記憶域を表示します。これでシステム構成が完了し、ノードが停止しても構成が永続することを確認できます。 |
デフォルトでは、サーバーが起動すると、Linux 2.6 カーネル・デバイス・ファイル・ネーミング・スキームudev
によってデバイス・ファイル名が動的に作成され、その所有権がroot
に割り当てられます。udev
でデフォルトの設定が適用される場合は、投票ディスクまたはOracle Cluster Registryパーティションのデバイス・ファイル名と所有者が変更されるため、サーバーの再起動時にこれらが損なわれます。たとえば、ユーザーgrid
が所有する/dev/sdd
というデバイス上の投票ディスクが、サーバーの再起動後には、root
が所有する/dev/sdf
というデバイスに置かれる可能性もあります。
ASMLibを使用する場合は、udev
内で永続的な権限とデバイス・パスを指定する必要がありません。ASMLibを使用しない場合は、各ノードにマウントされる共有ディスクのカスタム・ルール・ファイルを作成する必要があります。udev
が起動すると、ルール・ファイルに定義されたルール(構成ディレクティブ)が順次実行されます。これらのファイルは、パス/etc/udev/rules.d/
にあります。ルール・ファイルは、字句順に読み取られます。たとえば、ファイル10-wacom.rules
内にあるルールは、ルール・ファイル90-ib.rules
内にあるルールより先に解析され実行されます。
Asianux、Red HatおよびOracle Linuxに対して同じデバイスがルール・ファイルに記載されている場合、最後に読み取られたファイルが適用されます。SUSE 2.6カーネルでは、最初に読み取られたファイルが適用されます。
ディスク・デバイスのルール・ファイルを構成するには、使用しているプラットフォームのOracle Grid Infrastructureインストレーション・ガイドの記憶域の構成についての章を参照してください。