19 Oracle Flex ASMの管理
Oracle Flex ASMを使用すると、データベース・サーバーとは異なる物理サーバーでOracle ASMインスタンスを実行できます。
この項では、Oracle Flex ASMについて説明します。内容は次のとおりです。
関連項目:
-
Oracle Flex Clusterのサポートの詳細は、『Oracle Clusterware管理およびデプロイメント・ガイド』を参照してください。
-
Oracle ASMおよびOracle ACFSを使用してOracle Flex ASMを構成する方法の詳細は、My Oracle Support (
https://support.oracle.com
)の記事を参照してください。 -
メンバー・クラスタを管理するためのASMCMDコマンドの詳細は、「ASMCMDメンバー・クラスタ管理コマンド」
-
Oracle Grid Infrastructureのインストールおよびアップグレードの詳細は、『Oracle Grid Infrastructureインストレーションおよびアップグレード・ガイド』
Oracle Flex ASMの概要
Oracle Flex ASMを使用すると、データベース・サーバーとは異なる物理サーバーでOracle ASMインスタンスを実行できます。このデプロイでは、システム全体におけるOracle ASMのフットプリントを削減しながら、Oracle ASMインスタンスの大規模なクラスタでより多くのデータベース・クライアントをサポートできます。
Oracle Flex ASMを使用している場合、Oracle ASMクライアントはストレージへの直接アクセスで構成されます。
Oracle Flex ASMを使用すると、すべての記憶域の要件を、ディスク・グループの単一のセットに統合できます。これらのすべてのディスク・グループを、単一のクラスタで実行中のOracle ASMインスタンスの小さいセットでマウントおよび管理します。カーディナリティ設定で、Oracle ASMインスタンスの数を指定できます。デフォルトは、3インスタンスです。
クラスタは、グループ・メンバーシップ・サービスを提供するノードのセットです。各クラスタの名前は、グローバルに一意です。各クラスタには、1つ以上のハブ・ノードがあります。ハブ・ノードは、Oracle ASMディスクにアクセスできます。すべてのクラスタには、少なくとも1つのプライベート・ネットワークおよびパブリック・ネットワークがあります。クラスタが格納のためにOracle ASMを使用する場合、少なくとも1つのOracle ASMネットワークがあります。1つのネットワークを、プライベート・ネットワークおよびOracle ASMネットワークの両方として使用できます。セキュリティ上の理由で、Oracle ASMネットワークはパブリックにしないでください。クラスタ内で実行中のOracle Flex ASM構成は、1つのみ指定できます。
Oracle ASMインスタンスは、Oracle Flex ASMでの様々な構成で動作できます。
-
Oracle ASMディスク(標準Oracle ASMクラスタ)に直接アクセスできるローカルOracle ASMクライアント
-
Oracle ASMディスクに直接アクセスできるOracle Flex ASMクライアント
-
Oracle ASMプロキシ・インスタンスを介したOracle ACFSアクセス
-
Oracle IOServer (IOS)によるOracle ASMディスク・グループへのネットワークベースの接続
これらの構成を図19-1、図19-2および図19-3に示します。
Oracle ASMディスク(標準Oracle ASMクラスタ)に直接アクセスできるローカルOracle ASMクライアント
このモード(図19-1のハブ・ノードA)の場合、Oracle ASMは、データベース・クライアントが同じホスト・コンピュータ上でOracle ASMインスタンスとともに稼働している既存の標準アーキテクチャを引き続きサポートします。ローカル・クライアント・アーキテクチャのみが、ハブ・ノードでサポートされます。
この構成では、データベース・インスタンスはOracle ASMインスタンスとして同じハブ・ノードに存在し、ローカルOracle ASMクライアント・インスタンスとして参照されます。Oracle ASMメタデータは、Oracle ASMとデータベース・インスタンス間で移動します。このクライアントは、Oracle ASMディスクに直接I/Oアクセスできます。
ローカル・モードはOracle Flex ASMを使用しないため、ローカルOracle ASMで構成されたクラスタはOracle ASMネットワークが必要なく、他のOracle Flex ASMサービスも含まれません。
Oracle ASMディスクに直接アクセスできるOracle Flex ASMクライアント
このモード(図19-1のハブ・ノードB)の場合、Oracle ASMクラスタのハブ・ノードで稼働しているデータベース・クライアントは、メタデータのためにOracle ASMにリモートでアクセスしますが、Oracle ASMディスクへのI/Oのブロック操作を直接実行します。Oracle ASMサーバーを実行しているホストとリモート・データベース・クライアントは、どちらもハブ・ノードであることが必要です。ハブ・ノードは、他のサーバーと緊密に接続し、共有ディスクに直接アクセスするOracle ASMクラスタ内のノードです。
この構成では、データベース・インスタンスは周辺のOracle ASMインスタンス(図19-1のハブ・ノードC)と異なるホスト・コンピュータ上に存在し、Oracle ASMクライアント・インスタンスとして参照されます。
データベースはOracle ASMインスタンスと同じOracle ASMクラスタ内にあり、データベース・インスタンスはハブ・ノード上にあります。Oracle ASMメタデータは、Oracle ASMとデータベース・インスタンス間で移動します。このクライアントは、Oracle ASMディスクに直接I/Oアクセスできます。
データベース・インスタンスとOracle ASMインスタンスの分散に応じて、データベース・クライアントは、同じノード上でOracle ASMにローカルにアクセスするか、またはOracle ASMネットワーク上でリモートにアクセスします。この操作のモードは、Oracle ASMクラスタ内のハブ・ノード上のデータベース・クライアントによって使用されます。直接アクセス・モードも、Oracle ASMクラスタ・ファイルシステムによってサポートされる唯一のOracle Flex ASM構成です。
Oracle ASMプロキシ・インスタンスを介したOracle ACFSアクセス
Oracle ASMプロキシ・インスタンスは、直接Oracle ASMクライアントとともにハブ・ノードで実行中のOracleインスタンスです。Oracle ASMプロキシ・インスタンスでは、Oracle Automatic Storage Managementクラスタ・ファイルシステム(Oracle ACFS)およびOracle ASM動的ボリューム・マネージャ(Oracle ADVM)がサポートされます。
図19-2は、Oracle Flex ASMでのOracle ASMプロキシ・サーバーを使用したOracle ACFSおよびOracle ADVMの構成を示しています。
図19-2 Oracle Flex ASMでのOracle ACFSおよびOracle ADVMの構成
「図19-2 Oracle Flex ASMでのOracle ACFSおよびOracle ADVMの構成」の説明
Oracle ASMプロキシ・インスタンスのINSTANCE_TYPE
初期化パラメータは、ASMPROXY
に設定されます。
Oracle ACFSは、間接ストレージ・メンバー・クラスタのストレージ・アクセスの方法としても使用できます。詳細は、「クラスタ・ドメイン内のOracle ACFSについて」を参照してください。
Oracle IOServer (IOS)によるOracle ASMディスク・グループへのネットワークベースの接続
Oracle IOServer (IOS)インスタンスは、Oracle ASM管理対象ディスクに接続できないOracleメンバー・クラスタのノード上のOracle DatabaseインスタンスにOracle ASMファイル・アクセスを提供します。Oracle ASM管理対象ディスクへの接続があるメンバー・クラスタの場合、IOServerを障害発生時のバックアップとして構成できます。Oracle IOServerインスタンスは、Oracleメンバー・クラスタでのみ使用されます。
図19-3は、Oracle IOServerとメンバー・クラスタ内のOracle Databaseの関係を示しています。
さらに、IOSを使用すると、そのようなノードでクライアント・クラスタを構成できます。ストレージ・クラスタでは、IOServerインスタンスがクライアントによるIOの送信先であるネットワーク・ポートを開きます。IOServerインスタンスは、データ・パケットをクライアントから受信し、他のデータベース・クライアントと同様、Oracle ASMディスクへの適切なIOを実行します。クライアント側では、データベースはdNFSを使用してIOServerインスタンスと通信できます。しかし、クライアント側の構成がないため、サーバーIPアドレスや追加の構成情報を指定する必要がありません。IOServer経由でOracle ASMファイルにアクセスするように構成されたノードおよびクラスタでは、Oracle IOSインスタンスの検出が自動的に行われます。
IOSインスタンスには、次のプロセスが含まれます。
-
ネットワーク・プロセス: このプロセスでは、ネットワーク・ポートを開き、クライアント側からのdNFSリクエストを受信します。このようなリクエストは、IOプロセスおよび識別プロセスが受け取って処理するように、キューに入れられます。また、ネットワーク・プロセスでは、他のタイプのプロセスからのレスポンスを受け取って、そのレスポンスをクライアントに返信します。
-
識別プロセス: このプロセスは、dNFSリクエストを受け取り、Oracle ASMファイルの作成、削除、識別、識別解除およびサイズ変更を行います。
-
IOプロセス: このプロセスでは、ローカルIOSインスタンスによって識別されたファイルに対して実際のIOを実行します。
ASM_IO_PROCESSES
初期化パラメータでは、Oracle IOサーバー・インスタンスで開始されるIOワーカー・プロセスの数を指定します。ASM_IO_PROCESSES
初期化パラメータの詳細は、「ASM_IO_PROCESSES」を参照してください。
Oracle Flex ASMの設定について
Oracle Flex ASMデプロイメントをインストールするには、ネットワークを分類し、Oracle ASMネットワークとして使用するためのネットワークのリストを選択します。
新しくインストールする際にOracle Flex ASMを選択した場合、OUIによって、Oracle ASMネットワークを選択するよう求められます。
Oracle ASMリスナー・リソースは、各Oracle ASMネットワークに対して自動的に作成され、すべてのノードで起動されます。
関連項目:
Oracle Clusterwareのインストールの詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。
Oracle Flex ASMの管理
Oracle Flex ASMコンポーネントは、ASMCA、ASMCMDのCRSCTL、SQL*Plus、およびSRVCTLを使用して管理されます。さらに、Oracle Flex ASMで使用するために、INSTANCE_TYPE
初期化パラメータを特定のインスタンス・タイプに設定できます。
Oracle Flex ASMに関する情報の表示
ASMCMD showclustermode
コマンドを使用して、Oracle Flex ASMが有効であるかどうかを確認できます。次に例を示します。
$ asmcmd showclustermode ASM cluster : Flex mode enabled
SQL*PlusおよびASMCMDコマンドを使用して、Oracle Flex ASM接続を表示できます。たとえば、次のようになります。
SQL> SELECT instance_name, db_name, status FROM V$ASM_CLIENT; INSTANCE_NAME DB_NAME STATUS --------------- -------- ------------ +ASM1 +ASM CONNECTED orcl1 orcl CONNECTED orcl2 orcl CONNECTED $ asmcmd lsct data DB_Name Status Software_Version Compatible_version Instance_Name Disk_Group +ASM CONNECTED 18.0.0.0.0 18.0.0.0.0 +ASM DATA orcl CONNECTED 18.0.0.0.0 18.0.0.0.0 orcl1 DATA orcl CONNECTED 18.0.0.0.0 18.0.0.0.0 orcl2 DATA
Oracle Flex ASMを管理するためのSRVCTLコマンドおよびCRSCTLコマンド
SRVCTLは、管理者がOracle Clusterwareリソースの属性を作成または変更できるように拡張されます。SRVCTLを使用して、Oracle Flex ASM構成でのインスタンスのステータスを決定できます。次に例を示します。
$ srvctl status asm -detail ASM is running on mynoden02,mynoden01 ASM is enabled.
SRVCTLを使用して、Oracle Flex ASMが有効であるかどうかを確認することもできます。有効である場合、srvctl
config
asm
は、Oracle Flex ASM構成で使用するために指定されているOracle ASMインスタンスの数を表示します。次に例を示します。
$ srvctl config asm ASM instance count: 3
SRVCTLのmodify
asm
コマンドを使用して、Oracle ASMインスタンス数(カーディナリティ)を変更できます。次に例を示します。
$ srvctl modify asm -count 4 $ srvctl modify asm -count ALL
Oracle ASMインスタンスが失敗した場合、クライアントは自動的に別のインスタンスに再配置されます。必要に応じて、クライアントを手動で再配置できます。
SRVCTL
UPDATE
INSTANCE
コマンドおよびSRVCTL
UPDATE
IOSERVER
コマンドは、データベースのOracle ASMインスタンス、データベースのOracle IOServerインスタンスまたはOracle IOServerのOracle ASMインスタンスを変更できます。次に例を示します。
$ srvctl update instance -db my_orcl_db -instance my_instance_1 -targetinstance my_asm_instance_1 $ srvctl update ioserver -instance my_instance_2 -targetinstance my_asm_instance_2
-detail
オプションを指定してSRVCTL
STATUS
コマンドを実行し、各クライアントの接続先であるOracle ASMインスタンスまたはOracle IOserverインスタンスを表示できます。
すべてのデータベース・ユーザーは、Oracle ASMに接続する資格証明を含むウォレットを持つ必要があります。データベース・ユーザーは、CRSCTLコマンドを使用して、このウォレットを管理できます。すべてのOracle ASMユーザー名およびパスワードは、システムで生成されます。
ALTER SYSTEMを使用したクライアントの再配置
ALTER
SYSTEM
RELOCATE
CLIENT
コマンドを使用して、クライアントを再配置できます。次に例を示します。
SQL> ALTER SYSTEM RELOCATE CLIENT 'client-id';
以前のSQL文では、client-id
は、instance_name
:
db_name
の形式です。INSTANCE_NAME
およびDB_NAME
列は、V$ASM_CLIENT
ビューに含まれています。SQL文を実行するには、SYSASM
としてOracle ASMインスタンスに接続する必要があります。この文を発行すると、クライアントへの接続は終了し、クライアントは最も少なくロードされたインスタンスにフェイルオーバーします。クライアントが最も少なくロードされたインスタンスに現在接続している場合、クライアントへの接続は終了し、クライアントはその同じインスタンスにフェイルオーバーします。
メンバー・クラスタを管理するためのASMCMDコマンド
ASMCMDコマンドを使用してメンバー・クラスタの構成を管理できます。
lscc
コマンドを使用してメンバー・クラスタをリストし、rmcc
コマンドを使用してメンバー・クラスタを削除できます。
mkcc
コマンドを使用したメンバー・クラスタの作成や、chcc
コマンドを使用したメンバー・クラスタの変更を行います。たとえば、ASMCMDのchcc
コマンドとmkcc
コマンドを使用して、ストレージ方法を直接Oracle ASMから間接Oracle ASMに変更したり、間接Oracle ASMから直接Oracle ASMに変更したりできます。
Oracle Flex ASMの初期化パラメータ
Oracle Flex ASM構成でのインスタンス用の特別な新しい初期化パラメータはありませんが、既存のパラメータの設定が確認され、Oracle Flex ASM環境に合うように調整される可能性があります。
INSTANCE_TYPE
初期化パラメータの値は、Oracle ASMプロキシ・インスタンスを含め、インスタンスのタイプを指定します。ASM
値とRDBMS
値に加え、ASMPROXY
値はOracle ASMプロキシ・インスタンスを識別します。
関連項目:
-
Oracle ASMに関連した初期化パラメータの詳細は、「Oracle ASM初期化パラメータの推奨設定」
-
メンバー・クラスタを管理するためのASMCMDコマンドの詳細は、「ASMCMDメンバー・クラスタ管理コマンド」
-
INSTANCE_TYPE
初期化パラメータの詳細は、『Oracle Databaseリファレンス』を参照してください。 -
ALTER
SYSTEM
文の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。 -
CRSCTLコマンドの詳細は、『Oracle Clusterware管理およびデプロイメント・ガイド』
-
SRVCTLコマンドの詳細は、Oracle Clusterware管理およびデプロイメント・ガイド
-
SRVCTLコマンドの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。
-
Oracle Clusterwareのインストールの詳細は、『Oracle Grid Infrastructureインストレーションおよびアップグレード・ガイド』