Oracle® Clusterware

管理およびデプロイメント・ガイド

12cリリース1 (12.1)

B71322-07(原本部品番号:E48819-11)

2017年7月

Oracle Clusterware管理およびデプロイメント・ガイド, 12c リリース1 (12.1)

B71322-07

Copyright © 2007, 2017, Oracle and/or its affiliates.  All rights reserved.

原本著者:  Richard Strohm

協力者:  Ahmed Abbas、Troy Anthony、Ram Avudaiappan、Mark Bauer、Eric Belden、Suman Bezawada、Gajanan Bhat、Burt Clouse、Jonathan Creighton、Mark Fuller、Apostolos Giannakidis、Angad Gokakkar、John Grout、Andrey Gusev、Winston Huang、Sameer Joshi、Sana Karam、Roland Knapp、Erich Kreisler、Raj K.Kammend、Karen Li、Barb Lundhild、Bill Manry、Saar Maoz、John McHugh、Markus Michalewicz、Anil Nair、Siva Nandan、Philip Newlan、Srinivas Poovala、Sampath Ravindhran、Kevin Reardon、Dipak Saggi、K.P. Singh、Duane Smith、Janet Stern、Su Tang、Douglas Williams、Soo Huey Wong

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.No other rights are granted to the U.S. Government.

このソフトウェアもしくはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアもしくはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

OracleおよびJavaはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。適用されるお客様とOracle Corporationとの間の契約に別段の定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。適用されるお客様とOracle Corporationとの間の契約に定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

目次

表一覧

タイトルおよび著作権情報

はじめに

- 対象読者

- ドキュメントのアクセシビリティについて

- 関連ドキュメント

- 表記規則

このリリースでの『Oracle Clusterware管理およびデプロイメント・ガイド』の変更点

- Oracle Clusterware 12cリリース1 (12.1)の変更点

- Oracle Clusterware 12cリリース1 (12.1.0.2)の変更点

- Oracle Clusterware 12cリリース1 (12.1.0.1)の変更点

- 非推奨となった機能

- サポート対象外機能

1 Oracle Clusterwareの概要

- Oracle Clusterwareとは

- Oracle Clusterwareのシステム要件の理解

- Oracle Clusterwareのハードウェアの概念および要件

- Oracle Clusterwareのオペレーティング・システムの概念および要件

- Oracle Clusterwareのソフトウェアの概念および要件

- Oracle Clusterwareのネットワーク構成の概念

- 単一クライアント・アクセス名(SCAN)

- アドレスの手動構成

- Oracle Clusterwareのプラットフォーム固有のソフトウェア・コンポーネントの概要

- Oracle Clusterware技術スタック

- クラスタ・レディ・サービス技術スタック

- Oracle高可用性サービス技術スタック

- WindowsシステムでのOracle Clusterwareプロセス

- Oracle Clusterwareのインストールの概要

- Oracle Clusterwareのリリースの互換性

- Oracle Clusterwareのアップグレードおよびパッチ適用の概要

- Oracle Clusterware環境の管理の概要

- グリッド環境でのOracle Clusterwareのクローニングおよび拡張の概要

- Oracle Clusterwareの高可用性フレームワークおよびAPIの概要

- クラスタの時間管理の概要

- クラスタの時間管理のアクティブ化および非アクティブ化

2 Oracle Clusterwareの管理

- ロール別管理

- ロール別管理について

- クラスタ内のクラスタ管理者の管理

- 水平ロール区分の構成

- グリッド・ネーミング・サービスの概要

- GNSおよびGNS仮想IPアドレスのネットワーク管理タスク

- グリッド・ネーミング・サービス構成オプションの理解

- アドレスの自動構成オプション

- アドレスの静的な自動構成オプション

- アドレスの共有GNSオプション

- 構成ウィザードを使用したOracle Grid Infrastructureの構成

- 単一ノードの構成

- 複数ノードの構成

- Oracle Grid Infrastructureのアップグレード

- サイレント・モードでの構成ウィザードの実行

- 障害分離のためのIPMIの構成

- 障害分離のためのIPMIの使用について

- IPMI用のサーバー・ハードウェアの構成

- CRSCTLを使用したIPMIベース障害分離のインストール後の構成

- Oracle ClusterwareでのIPMIインストール後の構成

- CRSCTLを使用したIPMI構成の変更

- CRSCTLを使用したIPMI構成の削除

- 手動構成ネットワーク上のネットワーク・アドレスの理解

- ネットワーク・アドレスの構成要件の理解

- IPv6アドレスのフォーマットについて

- 名前解決およびネットワーク・リソースのアドレス・タイプ

- SCANアドレスおよびクライアント・サービス接続の理解

- 有効なノード・チェックにおけるSCANリスナーおよびサービス登録制限

- グリッド・ネーミング・サービスの管理

- SRVCTLを使用したGNSの起動と停止

- GNSサーバーまたはGNSクライアント・クラスタへのクラスタの変換

- 非GNSクラスタのGNSサーバー・クラスタへの変換

- 非GNSクラスタのクライアント・クラスタへの変換

- GNSを実行しているシングル・クラスタのサーバー・クラスタへの変換

- GNSを実行しているシングル・クラスタのGNSクライアント・クラスタへの変換

- 別のクラスタへのGNSの移動

- DNSによるクラスタの名前解決をGNSにローリング変換

- 手動構成システム上のネットワーク・アドレスの変更

- SRVCTLを使用した仮想IPアドレスの変更

- Oracle Clusterwareのプライベート・ネットワーク構成の変更

- プライベート・ネットワークおよびネットワーク・インタフェースについて

- 冗長なインターコネクトの使用

- OIFCFGを使用したインタフェース名の変更結果

- ネットワーク・インタフェースの変更

- SRVCTLを使用したネットワークの作成

- クラスタ内のネットワーク・アドレス構成

- SRVCTLを使用した、静的IPv4アドレスの静的IPv6アドレスへの変更

- SRVCTLを使用した、動的IPv4アドレスの動的IPv6アドレスへの変更

- IPv4ネットワークのIPv4およびIPv6ネットワークへの変更

- SRVCTLを使用したVIPアドレスのネットワークのIPv4からIPv6への移行

3 ポリシーベースでのクラスタおよび容量の管理

- サーバー・プールおよびポリシー・ベース管理の概要

- サーバー・プールおよびサーバーのカテゴリ化

- サーバー・プールおよびポリシーベース管理

- サーバー・プールの動作

- デフォルト・サーバー・プール

- 空きサーバー・プール

- 汎用サーバー・プール

- サーバー・プール属性

- サーバー・プールを使用した、Oracle Clusterwareでの新しいサーバーの割当て方法

- サーバー・プールからサーバー・プールへのサーバーの移動

- デフォルト属性を使用したサーバー・プールの管理

- サーバーのカテゴリ化の概要

- クラスタ構成ポリシーおよびポリシー・セットの概要

- サーバー構成およびサーバー状態の属性

- データベース・サーバーのメモリー不足の管理

- サーバー・カテゴリ属性

- ポリシー・セット構成の例

4 Oracle Flex Cluster

- Oracle Flex Clusterの概要

- Oracle Flex Clusterの管理

- クラスタ・モードの変更

- Oracle Clusterwareの標準クラスタからのOracle Flex Clusterへの変更

- ノード・ロールの変更

5 高速ホーム・プロビジョニング

- 高速ホーム・プロビジョニングのアーキテクチャ

- 高速ホーム・プロビジョニング・サーバー

- 高速ホーム・プロビジョニング・クライアント

- 高速ホーム・プロビジョニングのロール

- 基本組込みロール

- 複合組込みロール

- 高速ホーム・プロビジョニングのイメージ

- イメージの状態

- イメージ・シリーズ

- 高速ホーム・プロビジョニングの実装

- 高速ホーム・プロビジョニング・サーバーの作成

- 高速ホーム・プロビジョニング・サーバーへのゴールド・イメージの追加

- ソフトウェアのプロビジョニング

- プロビジョニングされたソフトウェア用の記憶領域

- 別のユーザーのプロビジョニング

- 高速ホーム・プロビジョニング・クライアントの作成

- 高速ホーム・プロビジョニング・クライアントの管理

- 高速ホーム・プロビジョニング・クライアントの有効化と無効化

- 高速ホーム・プロビジョニング・クライアント・クラスタ・ユーザーのためのユーザーの作成とロールの割当て

- 高速ホーム・プロビジョニング・クライアント・パスワードの管理

6 Oracle Cluster Registryおよび投票ファイルの管理

- Oracle Cluster RegistryおよびOracle Local Registryの管理

- Oracle Automatic Storage ManagementへのOracle Cluster Registryの移行

- Oracle ASMから他のタイプの記憶域へのOracle Cluster Registryの移行

- Oracle Cluster Registryの場所の追加、置換、修復および削除

- Oracle Cluster Registryの場所の追加

- Oracle Cluster Registryの場所の削除

- Oracle Cluster Registryの場所の置換

- ローカル・ノードのOracle Cluster Registry構成の修復

- Oracle Cluster Registryのデータ損失保護メカニズムの無効化

- Oracle Cluster Registryのバックアップ

- バックアップ・ファイルのリスト

- バックアップ場所の変更

- Oracle Cluster Registryのリストア

- LinuxまたはUNIXシステムでのOracle Cluster Registryのリストア

- WindowsシステムでのOracle Cluster Registryのリストア

- Oracle Restart環境でのOracle Cluster Registryのリストア

- Oracle Cluster Registryの問題の診断

- エクスポート・コマンドおよびインポート・コマンドを使用したOracle Cluster Registryの管理

- LinuxまたはUNIXシステムでのOracle Cluster Registryの内容のインポート

- WindowsシステムでのOracle Cluster Registryの内容のインポート

- Oracle Local Registry

- Oracle Cluster Registry構成のアップグレードおよびダウングレード

- 投票ファイルの管理

- Oracle ASMでの投票ファイルの格納

- 投票ファイルのバックアップ

- 投票ファイルのリストア

- 投票ファイルの追加、削除または移行

- Oracle ASMに格納されている投票ファイルの変更

- Oracle ASMに格納されていない投票ファイルの変更

- Oracle ASMへの投票ファイルの移行

- 投票ファイルの場所の確認

7 クラスタ・ノードの追加および削除

- クラスタ・ノードを追加するための必須手順

- LinuxおよびUNIXシステムでのクラスタ・ノードの追加および削除

- LinuxおよびUNIXシステムでのクラスタ・ノードの追加

- LinuxおよびUNIXシステムでのクラスタ・ノードの削除

- Windowsシステムでのクラスタ・ノードの追加および削除

- Windowsシステムでのクラスタへのノードの追加

- Windowsシステムでのクラスタ・ノードの削除

8 Oracle Clusterwareのクローニング

- Oracle Clusterwareのクローニングの概要

- Oracle Grid Infrastructureホームをクローニングするための準備

- 手順1: Oracle Clusterwareのインストール

- 手順2: 実行中のソフトウェアの停止

- 手順3: Oracle Grid Infrastructureホームのコピーの作成

- 方法1: Oracle Grid Infrastructureホームのコピーを作成し、そのコピーから不要なファイルを削除する

- 方法2: -Xオプションを使用してOracle Grid Infrastructureホームの圧縮コピーを作成する

- Oracle Clusterwareのクローニングによるクラスタの作成

- 手順1: 新規クラスタ・ノードの準備

- 手順2: 宛先ノードでのOracle Grid Infrastructureホームのデプロイ

- 手順3: 各宛先ノードでのclone.plスクリプトの実行

- コマンドライン上でのclone.plスクリプトの入力値の指定

- ファイル内でのclone.plスクリプトの入力値の指定

- 手順4: 構成ウィザードの起動

- クローニングを使用したクラスタへのノードの追加

- クローニング時に生成されたログ・ファイルの検索および表示

9 Oracle Clusterwareを使用したアプリケーションの高可用性の実現

- Oracle Clusterwareリソースおよびエージェント

- Oracle Clusterwareのリソース

- Oracle Clusterwareのリソース・タイプ

- Oracle Clusterwareのエージェント

- Oracle Clusterwareの組込みエージェント

- アクション・スクリプト

- エージェントの作成

- CおよびC++エージェントの作成およびデプロイ

- Oracle Clusterwareへのリソースの登録

- Oracle Clusterwareを使用した高可用性の実現の概要

- リソース属性

- リソースの状態

- リソース依存性

- 起動依存性

- attraction

- dispersion

- exclusion

- hard

- pullup

- weak

- 停止依存性

- hard

- リソース状態のリカバリに対するリソース依存性の影響

- リソースの配置

- リソースとしてのアプリケーションの登録

- Oracle Clusterwareで管理されるアプリケーションVIPの作成

- Oracle Enterprise ManagerによるアプリケーションVIPの追加

- ユーザー定義のリソースの追加

- デプロイメント・スキームの決定

- 特定のサーバー・プールへのリソースの追加

- サーバー固有のデプロイメントを使用したリソースの追加

- generic_applicationリソース・タイプを使用するリソースの作成

- Oracle Enterprise Managerを使用したリソースの追加

- リソース権限の変更

- アプリケーションの配置ポリシー

- アプリケーションおよびアプリケーション・リソースの登録解除

- リソースの管理

- アプリケーション・リソースの登録

- アプリケーション・リソースの起動

- アプリケーションおよびアプリケーション・リソースの再配置

- アプリケーションおよびアプリケーション・リソースの停止

- クラスタウェア・アプリケーションおよびアプリケーション・リソースのステータス情報の表示

- Oracle Clusterwareによるリソースの自動再起動の管理

- Oracle Clusterwareリソースの自動再起動の回避

- Oracle Clusterwareリソースの再起動試行カウンタの自動管理

A クラスタ検証ユーティリティのリファレンス

- クラスタ検証ユーティリティについて

- CVUの概要

- CVUの使用上の注意

- CVUのインストール要件

- CVUの使用方法

- CVUの構成ファイル

- 権限およびセキュリティ

- CVUヘルプの使用

- 特別なCVU項目

- 修正スクリプトの生成

- CVUを使用した、インストールの前提条件を満たしているかどうかの確認

- Oracle Database 10gリリース1または2でのCVUの使用

- 開始基準および終了基準

- 冗長モードおよびUNKNOWN出力

- CVUのノード・リストのショートカット

- クラスタ検証ユーティリティのコマンド・リファレンス

- cluvfy comp acfs

- 構文

- パラメータ

- cluvfy comp admprv

- 構文

- パラメータ

- 使用上の注意

- 例

- cluvfy comp asm

- 構文

- パラメータ

- 例

- cluvfy comp baseline

- 構文

- パラメータ

- 使用上の注意

- 例

- cluvfy comp clocksync

- 構文

- パラメータ

- cluvfy comp clumgr

- 構文

- パラメータ

- cluvfy comp crs

- 構文

- パラメータ

- cluvfy comp dhcp

- 構文

- パラメータ

- 使用上の注意

- cluvfy comp dns

- 構文

- パラメータ

- 使用上の注意

- cluvfy comp freespace

- 構文

- cluvfy comp gns

- 構文

- パラメータ

- cluvfy comp gpnp

- 構文

- パラメータ

- cluvfy comp ha

- 構文

- cluvfy comp healthcheck

- 構文

- パラメータ

- cluvfy comp nodeapp

- 構文

- パラメータ

- cluvfy comp nodecon

- 構文

- パラメータ

- 使用上の注意

- 例

- cluvfy comp nodereach

- 構文

- パラメータ

- 例

- cluvfy comp ocr

- 構文

- パラメータ

- 使用上の注意

- 例

- cluvfy comp ohasd

- 構文

- パラメータ

- 例

- cluvfy comp olr

- 構文

- パラメータ

- 使用上の注意

- 例

- cluvfy comp peer

- 構文

- パラメータ

- 使用上の注意

- 例

- cluvfy comp scan

- 構文

- 例

- cluvfy comp software

- 構文

- パラメータ

- 例

- cluvfy comp space

- 構文

- パラメータ

- 使用上の注意

- 例

- cluvfy comp ssa

- 構文

- パラメータ

- 使用上の注意

- 例

- cluvfy comp sys

- パラメータ

- 構文

- 例

- cluvfy comp vdisk

- 構文

- パラメータ

- cluvfy stage [-pre | -post] acfscfg

- 構文

- パラメータ

- cluvfy stage [-pre | -post] cfs

- 構文

- パラメータ

- 例

- cluvfy stage [-pre | -post] crsinst

- 構文

- パラメータ

- 使用上の注意

- cluvfy stage -pre dbcfg

- 構文

- パラメータ

- cluvfy stage -pre dbinst

- 構文

- パラメータ

- cluvfy stage [-pre | -post] hacfg

- 構文

- パラメータ

- cluvfy stage -post hwos

- 構文

- パラメータ

- cluvfy stage [-pre | -post] nodeadd

- 構文

- パラメータ

- cluvfy stage -post nodedel

- 構文

- パラメータ

- 使用上の注意

- CVUのトラブルシューティングおよび診断出力

- トレースの有効化

- クラスタ検証ユーティリティの既知の問題

- クラスタ検証ユーティリティによってサポートされるデータベースのバージョン

- Linuxの共有記憶域アクセス性(ssa)チェックのレポートの制限

- Red Hat Linuxでの共有ディスクの検出

B Oracle Clusterwareのリソース・リファレンス

- リソース属性

- 構成可能なリソース属性

- ACL

- ACTION_SCRIPT

- ACTION_TIMEOUT

- ACTIONS

- ACTIVE_PLACEMENT

- AGENT_FILENAME

- ALERT_TEMPLATE

- AUTO_START

- CARDINALITY

- CHECK_INTERVAL

- CHECK_TIMEOUT

- CLEAN_TIMEOUT

- DELETE_TIMEOUT

- DESCRIPTION

- ENABLED

- FAILURE_INTERVAL

- FAILURE_THRESHOLD

- HOSTING_MEMBERS

- INSTANCE_FAILOVER

- INTERMEDIATE_TIMEOUT

- LOAD

- MODIFY_TIMEOUT

- NAME

- OFFLINE_CHECK_INTERVAL

- PLACEMENT

- RELOCATE_BY_DEPENDENCY

- RESTART_ATTEMPTS

- SCRIPT_TIMEOUT

- SERVER_CATEGORY

- SERVER_POOLS

- START_CONCURRENCY

- START_DEPENDENCIES

- START_TIMEOUT

- STOP_CONCURRENCY

- STOP_DEPENDENCIES

- STOP_TIMEOUT

- UPTIME_THRESHOLD

- USER_WORKLOAD

- USE_STICKINESS

- 読取り専用のリソース属性

- ACTION_FAILURE_EVENT_TEMPLATE

- INSTANCE_COUNT

- INTERNAL_STATE

- LAST_SERVER

- LAST_STATE_CHANGE

- PROFILE_CHANGE_EVENT_TEMPLATE

- RESTART_COUNT

- STATE

- STATE_CHANGE_EVENT_TEMPLATE

- STATE_DETAILS

- TARGET

- TARGET_SERVER

- TYPE

- 非推奨のリソース属性

- DEGREE

- サード・パーティ製アプリケーションのアクション・スクリプトの例

C OLSNODESのコマンド・リファレンス

- OLSNODESの使用

- 概要

- 使用上の注意

- OLSNODESコマンドのサマリー

- 構文

- 例

D Oracle Interface Configurationツール(OIFCFG)のコマンド・リファレンス

- OIFCFGコマンドライン・インタフェースの起動

- OIFCFGの使用方法の概要

- OIFCFGコマンドの書式

- OIFCFGコマンド

- OIFCFGコマンドのパラメータ

- OIFCFGの使用方法

- OIFCFGの例

E Oracle Clusterware制御(CRSCTL)ユーティリティ・リファレンス

- CRSCTLの概要

- クラスタ用に変更された(クラスタ対応)コマンド

- 使用上の注意

- 非推奨のサブプログラムまたはコマンド

- デュアル環境のCRSCTLコマンド

- crsctl add resource

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl add type

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl add wallet

- 構文

- 使用上の注意

- 例

- crsctl check css

- 構文

- 例

- crsctl check evm

- 構文

- 例

- crsctl delete resource

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl delete type

- 構文

- 使用上の注意

- 例

- crsctl delete wallet

- 構文

- 例

- crsctl eval add resource

- 構文

- パラメータ

- crsctl eval fail resource

- 構文

- パラメータ

- 例

- crsctl eval modify resource

- 構文

- パラメータ

- crsctl eval relocate resource

- 構文

- パラメータ

- crsctl eval start resource

- 構文

- パラメータ

- crsctl eval stop resource

- 構文

- パラメータ

- crsctl get hostname

- 構文

- 例

- crsctl getperm resource

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl getperm type

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl modify resource

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl modify type

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl modify wallet

- 構文

- 使用上の注意

- 例

- crsctl query wallet

- 構文

- 例

- crsctl relocate resource

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl restart resource

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl setperm resource

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl setperm type

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl start resource

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl status resource

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl status type

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl stop resource

- 構文

- パラメータ

- 使用上の注意

- 例

- Oracle RAC環境のCRSCTLコマンド

- crsctl add category

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl add crs administrator

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl add css votedisk

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl add policy

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl add serverpool

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl check cluster

- 構文

- 使用上の注意

- 例

- crsctl check crs

- 構文

- 例

- crsctl check resource

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl check ctss

- 構文

- 例

- crsctl config crs

- 構文

- 例

- crsctl create policyset

- 構文

- パラメータ

- 例

- crsctl delete category

- 構文

- パラメータ

- 例

- crsctl delete crs administrator

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl delete css votedisk

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl delete node

- 構文

- 使用上の注意

- 例

- crsctl delete policy

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl delete serverpool

- 構文

- 使用上の注意

- 例

- crsctl disable crs

- 構文

- 使用上の注意

- 例

- crsctl discover dhcp

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl enable crs

- 構文

- 使用上の注意

- 例

- crsctl eval activate policy

- 構文

- パラメータ

- crsctl eval add server

- 構文

- パラメータ

- 例

- crsctl eval add serverpool

- 構文

- パラメータ

- crsctl eval delete server

- 構文

- パラメータ

- crsctl eval delete serverpool

- 構文

- パラメータ

- crsctl eval modify serverpool

- 構文

- パラメータ

- 使用上の注意

- crsctl eval relocate server

- 構文

- パラメータ

- crsctl get clientid dhcp

- 構文

- パラメータ

- 例

- crsctl get cluster hubsize

- 構文

- 例

- crsctl get cluster mode

- 構文

- 使用上の注意

- crsctl get cpu equivalency

- 構文

- crsctl get css

- 構文

- 使用上の注意

- 例

- crsctl get css ipmiaddr

- 構文

- 使用上の注意

- 例

- crsctl get css leafmisscount

- 構文

- crsctl get node role

- 構文

- 使用上の注意

- 例

- crsctl get nodename

- 構文

- 例

- crsctl get resource use

- 構文

- 使用上の注意

- 例

- crsctl get server label

- 構文

- 例

- crsctl getperm serverpool

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl lsmodules

- 構文

- 使用上の注意

- 例

- crsctl modify category

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl modify policy

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl modify policyset

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl modify server

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl modify serverpool

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl pin css

- 構文

- 使用上の注意

- 例

- crsctl query crs administrator

- 構文

- 例

- crsctl query crs activeversion

- 構文

- 例

- crsctl query crs autostart

- 構文

- 例

- crsctl query crs releasepatch

- 構文

- 例

- crsctl query crs releaseversion

- 構文

- 例

- crsctl query crs softwarepatch

- 構文

- 例

- crsctl query crs softwareversion

- 構文

- 使用上の注意

- 例

- crsctl query css ipmiconfig

- 構文

- 使用上の注意

- 例

- crsctl query css ipmidevice

- 構文

- 使用上の注意

- 例

- crsctl query css votedisk

- 構文

- 例

- crsctl query dns

- 構文

- パラメータ

- 例

- crsctl query socket udp

- 構文

- 使用上の注意

- 例

- crsctl release dhcp

- 構文

- パラメータ

- 例

- crsctl relocate resource

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl relocate server

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl replace discoverystring

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl replace votedisk

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl request action

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl request dhcp

- 構文

- パラメータ

- 例

- crsctl set cluster hubsize

- 構文

- 例

- crsctl set cluster mode

- 構文

- 使用上の注意

- crsctl set cpu equivalency

- 構文

- crsctl set crs autostart

- 構文

- 例

- crsctl set css

- 構文

- 使用上の注意

- crsctl set css ipmiaddr

- 構文

- 使用上の注意

- 例

- crsctl set css ipmiadmin

- 構文

- 使用上の注意

- 例

- crsctl set css leafmisscount

- 構文

- 使用上の注意

- 例

- crsctl set node role

- 構文

- 使用上の注意

- 例

- crsctl set resource use

- 構文

- 使用上の注意

- 例

- crsctl set server label

- 構文

- 使用上の注意

- 例

- crsctl setperm serverpool

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl start cluster

- 構文

- 使用上の注意

- 例

- crsctl start crs

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl start ip

- 構文

- パラメータ

- 例

- crsctl start rollingpatch

- 構文

- 使用上の注意

- crsctl start rollingupgrade

- 構文

- 使用上の注意

- crsctl start testdns

- 構文

- パラメータ

- 例

- crsctl status category

- 構文

- パラメータ

- 例

- crsctl status ip

- 構文

- パラメータ

- 例

- crsctl status policy

- 構文

- パラメータ

- 使用上の注意

- crsctl status policyset

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl status server

- 構文

- パラメータ

- 例

- crsctl status serverpool

- 構文

- パラメータ

- 使用上の注意

- 例

- crsctl status testdns

- 構文

- パラメータ

- 例

- crsctl stop cluster

- 構文

- 使用上の注意

- 例

- crsctl stop crs

- 構文

- 使用上の注意

- 例

- crsctl stop ip

- 構文

- パラメータ

- 例

- crsctl stop rollingpatch

- 構文

- 使用上の注意

- crsctl stop testdns

- 構文

- パラメータ

- 例

- crsctl unpin css

- 構文

- 使用上の注意

- 例

- crsctl unset css

- 構文

- 使用上の注意

- 例

- crsctl unset css ipmiconfig

- 構文

- 使用上の注意

- 例

- crsctl unset css leafmisscount

- 構文

- Oracle Restart環境のCRSCTLコマンド

- crsctl check has

- 構文

- 例

- crsctl config has

- 構文

- 例

- crsctl disable has

- 構文

- 例

- crsctl enable has

- 構文

- 例

- crsctl query has releaseversion

- 構文

- 例

- crsctl query has softwareversion

- 構文

- 使用上の注意

- 例

- crsctl start has

- 構文

- 使用上の注意

- 例

- crsctl stop has

- 構文

- 使用上の注意

- 例

- トラブルシューティングおよび診断出力

- crsctl set logを使用した動的デバッグ

- 構文

- 使用上の注意

- 例

- コンポーネント・レベルのデバッグ

- Oracle Clusterwareモジュールのデバッグの有効化

- Oracle Clusterwareリソースのデバッグの有効化

- Oracle Clusterwareコンポーネントのための追加トレースの有効化

F 高速ホーム・プロビジョニングおよびサーバー制御コマンド・リファレンス

- RHPCTLのコマンド・リファレンス

- RHPCTLの概要

- RHPCTLヘルプの使用方法

- rhpctl add client

- 構文

- パラメータ

- 使用上の注意

- 例

- rhpctl add database

- 構文

- パラメータ

- 例

- rhpctl add image

- 構文

- パラメータ

- 例

- rhpctl add role

- 構文

- パラメータ

- 使用上の注意

- 例

- rhpctl add series

- 構文

- パラメータ

- 例

- rhpctl add workingcopy

- 構文

- パラメータ

- 使用上の注意

- 例

- rhpctl add diskgroup

- 構文

- 使用上の注意

- 例

- rhpctl remove diskgroup

- 構文

- 使用上の注意

- 例

- rhpctl allow

- rhpctl allow image

- 構文

- パラメータ

- 例

- rhpctl delete client

- 構文

- 使用上の注意

- 例

- rhpctl delete database

- 構文

- パラメータ

- 例

- rhpctl delete image

- 構文

- 使用上の注意

- 例

- rhpctl delete role

- 構文

- 使用上の注意

- 例

- rhpctl delete series

- 構文

- パラメータ

- 使用上の注意

- 例

- rhpctl delete user

- 構文

- パラメータ

- 使用上の注意

- 例

- rhpctl delete workingcopy

- 構文

- 使用上の注意

- 例

- rhpctl deleteimage series

- 構文

- パラメータ

- 例

- rhpctl disallow image

- 構文

- パラメータ

- 例

- rhpctl export client

- 構文

- パラメータ

- 使用上の注意

- 例

- rhpctl grant role

- 構文

- パラメータ

- 例

- rhpctl import image

- 構文

- パラメータ

- 例

- rhpctl insertimage series

- 構文

- パラメータ

- 例

- rhpctl move database

- 構文

- パラメータ

- 例

- rhpctl modify client

- 構文

- パラメータ

- 例

- rhpctl promote image

- 構文

- パラメータ

- 例

- rhpctl query client

- 構文

- 使用上の注意

- 例

- rhpctl query image

- 構文

- パラメータ

- 例

- rhpctl query role

- 構文

- 使用上の注意

- 例

- rhpctl query series

- 構文

- パラメータ

- 例

- rhpctl query server

- 構文

- 例

- rhpctl query workingcopy

- 構文

- パラメータ

- 例

- rhpctl revoke role

- 構文

- パラメータ

- 例

- SRVCTLのコマンド・リファレンス

- srvctl add asm

- 構文およびパラメータ

- 例

- srvctl add exportfs

- 構文およびパラメータ

- 使用上の注意

- 例

- srvctl add filesystem

- 構文およびパラメータ

- 使用上の注意

- 例

- srvctl add gns

- 構文およびパラメータ

- 使用上の注意

- 例

- srvctl add mgmtdb

- 構文およびパラメータ

- 例

- srvctl add mgmtlsnr

- 構文およびパラメータ

- 例

- srvctl add mountfs

- 構文およびパラメータ

- srvctl add rhpclient

- 構文およびパラメータ

- 使用上の注意

- 例

- srvctl add rhpserver

- 構文およびパラメータ

- 使用上の注意

- 例

- srvctl config asm

- 構文およびパラメータ

- 例

- srvctl config exportfs

- 構文およびパラメータ

- 例

- srvctl config filesystem

- 構文およびパラメータ

- 例

- srvctl config gns

- 構文およびパラメータ

- srvctl config mgmtdb

- 構文およびパラメータ

- srvctl config mgmtlsnr

- 構文およびパラメータ

- srvctl config mountfs

- 構文およびパラメータ

- srvctl config rhpclient

- 構文およびパラメータ

- 例

- srvctl config rhpserver

- 構文およびパラメータ

- 例

- srvctl disable asm

- 構文およびパラメータ

- 例

- srvctl disable exportfs

- 構文およびパラメータ

- 使用上の注意

- 例

- srvctl disable mountfs

- 構文およびパラメータ

- srvctl disable rhpclient

- 構文およびパラメータ

- 例

- srvctl disable rhpserver

- 構文およびパラメータ

- 例

- srvctl enable exportfs

- 構文およびパラメータ

- 使用上の注意

- 例

- srvctl enable mountfs

- 構文およびパラメータ

- srvctl enable rhpclient

- 構文およびパラメータ

- 例

- srvctl enable rhpserver

- 構文およびパラメータ

- 例

- srvctl modify exportfs

- 構文およびパラメータ

- 使用上の注意

- 例

- srvctl modify mountfs

- 構文およびパラメータ

- srvctl modify rhpclient

- 構文およびパラメータ

- 使用上の注意

- 例

- srvctl modify rhpserver

- 構文およびパラメータ

- 例

- srvctl relocate rhpclient

- 構文およびパラメータ

- 例

- srvctl relocate rhpserver

- 構文およびパラメータ

- 例

- srvctl remove exportfs

- 構文およびパラメータ

- 使用上の注意

- 例

- srvctl remove mountfs

- 構文およびパラメータ

- srvctl remove rhpclient

- 構文およびパラメータ

- srvctl remove rhpserver

- 構文およびパラメータ

- srvctl start exportfs

- 構文およびパラメータ

- 例

- srvctl start mountfs

- 構文およびパラメータ

- srvctl start rhpclient

- 構文およびパラメータ

- 例

- srvctl start rhpserver

- 構文およびパラメータ

- 例

- srvctl status exportfs

- 構文およびパラメータ

- 使用上の注意

- 例

- srvctl status mountfs

- 構文およびパラメータ

- srvctl status rhpclient

- 構文およびパラメータ

- 例

- srvctl status rhpserver

- 構文およびパラメータ

- 例

- srvctl stop exportfs

- 構文およびパラメータ

- 使用上の注意

- 例

- srvctl stop mountfs

- 構文およびパラメータ

- srvctl stop rhpclient

- 構文およびパラメータ

- 例

- srvctl stop rhpserver

- 構文およびパラメータ

- 例

G Oracle Clusterware C Application Program Interfaceエージェント・フレームワーク

- エージェント・フレームワークのデータ型

- エージェント・フレームワークのコンテキストの初期化および永続性

- CおよびC++エントリ・ポイント機能のプロトタイプ

- CおよびC++エントリ・ポイント・タイプおよびコード

- CおよびC++エントリ・ポイント・ファンクションの戻り値

- マルチスレッドに関する注意事項

- 非推奨のAPI

- APIリファレンス

- clsagfw_add_type()

- 構文

- 入力

- 注意

- clsagfw_check_resource()

- 構文

- パラメータ

- 注意

- clsagfw_create_attr_iterator()

- 構文

- 入力

- 注意

- clsagfw_delete_cookie()

- 構文

- 入力

- 注意

- clsagfw_exit2()

- 構文

- 入力

- 注意

- clsagfw_get_attr_from_iterator()

- 構文

- 入力

- 出力

- 注意

- clsagfw_get_attrvalue()

- 構文

- 入力

- 出力

- 注意

- clsagfw_get_check_type()

- 構文

- 入力

- 注意

- clsagfw_get_cmdid()

- 構文

- 入力

- 注意

- clsagfw_get_cookie()

- 構文

- 入力

- 注意

- clsagfw_get_request_action_name()

- 構文

- 入力

- 注意

- clsagfw_get_resource_id()

- 構文

- 入力

- 注意

- clsagfw_get_resource_name()

- 構文

- 入力

- 注意

- clsagfw_get_retry_count()

- 構文

- 入力

- 注意

- clsagfw_get_type_name()

- 構文

- 入力

- 注意

- clsagfw_init()

- 構文

- 入力

- 注意

- clsagfw_is_cmd_timedout()

- 構文

- 入力

- 注意

- clsagfw_log()

- 構文

- 入力

- 注意

- clsagfw_modify_attribute()

- 構文

- 入力

- 注意

- clsagfw_reset_attr_iterator()

- 構文

- 入力

- 注意

- clsagfw_send_status2()

- 構文

- 入力

- 注意

- clsagfw_set_cookie()

- 構文

- 入力

- 注意

- clsagfw_set_entrypoint()

- 構文

- 入力

- 注意

- clsagfw_set_exitcb()

- 構文

- 入力

- 注意

- clsagfw_set_resource_state_label()

- 構文

- 入力

- 注意

- clsagfw_startup()

- 構文

- 注意

- エージェントの例

H Oracle Clusterware C Application Program Interface

- Oracle Clusterwareのプログラミング・インタフェース(C API)について

- 概要

- 使用上の注意

- 非推奨のCLSCRS API

- 既存のCLSCRS APIの変更点

- 対話形式CLSCRS API

- 非対話形式CLSCRS API

- What-If API

- clscrs_whatif_register_resource

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_whatif_fail_resource

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_whatif_start_resource

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_whatif_stop_resource

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_whatif_relocate_resource

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_whatif_register_serverpool

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_whatif_unregister_serverpool

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_whatif_add_server

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_whatif_relocate_server

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_whatif_delete_server

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_whatif_set_activepolicy

- パラメータ

- 戻り値

- CLSCRS_STAT

- サーバーのカテゴリ化API

- clscrs_servercategory_create

- パラメータ

- 戻り値

- clscrsret

- clscrs_servercategory_destroy

- パラメータ

- 戻り値

- clscrsret

- clscrs_register_servercategory

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_unregister_servercategory

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_get_server_by_category

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_register_server

- パラメータ

- 戻り値

- CLSCRS_STAT

- STAT3 API

- clscrs_stat3

- パラメータ

- 戻り値

- CLSCRS_STAT

- その他のAPI

- clscrs_get_error_details

- パラメータ

- 戻り値

- clscrsret

- clscrs_request_action

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_stop_resource_in_pools

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_start_resource_in_pools

- パラメータ

- 戻り値

- CLSCRS_STAT

- clscrs_restart_resource

- パラメータ

- 戻り値

- CLSCRS_STAT

I Oracle Cluster Registryユーティリティ・リファレンス

- OCRCONFIGについて

- OCRCONFIGコマンド・リファレンス

- ocrconfig -add

- 構文

- 使用上の注意

- 例

- ocrconfig -backuploc

- 構文

- 使用上の注意

- 例

- ocrconfig -copy

- 構文

- 使用上の注意

- 例

- ocrconfig -delete

- 構文

- 使用上の注意

- 例

- ocrconfig -downgrade

- 構文

- 使用上の注意

- 例

- ocrconfig -export

- 構文

- 使用上の注意

- 例

- ocrconfig -import

- 構文

- 使用上の注意

- 例

- ocrconfig -manualbackup

- 構文

- 使用上の注意

- 例

- ocrconfig -overwrite

- 構文

- 使用上の注意

- 例

- ocrconfig -repair

- 構文

- 使用上の注意

- 例

- ocrconfig -replace

- 構文

- 使用上の注意

- 例

- ocrconfig -restore

- 構文

- 使用上の注意

- 例

- ocrconfig -showbackup

- 構文

- 使用上の注意

- 例

- ocrconfig -showbackuploc

- 構文

- 使用上の注意

- 例

- ocrconfig -upgrade

- Oracle Cluster Registryのトラブルシューティングおよび診断出力

- Oracle Cluster Registryのトラブルシューティング

- OCRCHECKユーティリティの使用

- 構文

- 例

- OCRDUMPユーティリティを使用したOracle Cluster Registryの内容の表示

- OCRDUMPユーティリティの構文およびオプション

- OCRDUMPユーティリティの例

- OCRDUMPユーティリティの出力例

J Oracle Clusterwareのトラブルシューティング

- Oracle Clusterwareの監視

- Oracle Enterprise Manager

- クラスタ状態モニター

- CHMサービス

- CHMデータの収集

- OCLUMONコマンドのリファレンス

- oclumon debug

- oclumon dumpnodeview

- oclumon manage

- oclumon version

- Oracle Clusterwareの診断およびアラート・ログ・データ

- ADRディレクトリ構造

- traceディレクトリのファイル

- Oracle Clusterwareアラート・ログ

- インシデント・トレース・ファイル

- その他の診断データ

- 診断収集スクリプト

- ローリング・アップグレードおよびドライバのインストールに関する問題

- ゾーン委任のテスト

- Oracleトレース・ファイル・アナライザ・コレクタ

- TFAデーモンの管理

- TFA制御ユーティリティのコマンド・リファレンス

- tfactl print

- tfactl purge

- tfactl directory

- tfactl host

- tfactl set

- tfactl diagcollect

- TFAでのデータ・リダクション

- Oracle Clusterwareアラート

- Diagnostic Record Unique IDを使用したアラート・メッセージ

用語集

索引

表一覧

- 1-1 Oracle Clusterwareコンポーネントに関連付けられたプロセスおよびサービスのリスト

- 2-1 ネットワーク・インタフェース、プライベートIPアドレスおよびプライベート・ホスト名の記憶域

- 3-1 サーバー・プール属性

- 3-2 サーバー・プール属性の構成例

- 3-3 処理後のサーバー・プール構成

- 3-4 サーバー構成属性

- 3-5 サーバー状態の属性

- 3-6 サーバー・カテゴリ属性

- 8-1 clone.plスクリプトのパラメータ

- 8-2 clone.plスクリプトに渡される環境変数

- 8-3 クローニングのログ・ファイルおよび説明

- 8-4 Oracleインベントリ・ディレクトリの場所の検索

- 9-1 エージェント・フレームワークの監視特性

- 9-2 予想されるリソースの状態

- A-1 CVUの様々な検証の実行

- A-2 cluvfy comp acfsコマンドのパラメータ

- A-3 cluvfy comp admprvコマンドのパラメータ

- A-4 cluvfy comp asmコマンドのパラメータ

- A-5 cluvfy comp baselineコマンドのパラメータ

- A-6 cluvfy comp clocksyncコマンドのパラメータ

- A-7 cluvfy comp clumgrコマンドのパラメータ

- A-8 cluvfy comp crsコマンドのパラメータ

- A-9 cluvfy comp dhcpコマンドのパラメータ

- A-10 cluvfy comp dnsコマンドのパラメータ

- A-11 cluvfy comp gnsコマンドのパラメータ

- A-12 cluvfy comp gpnpコマンドのパラメータ

- A-13 cluvfy comp healthcheckコマンドのパラメータ

- A-14 cluvfy comp nodeappコマンドのパラメータ

- A-15 cluvfy comp nodeconコマンドのパラメータ

- A-16 cluvfy comp nodereachコマンドのパラメータ

- A-17 cluvfy comp ocrコマンドのパラメータ

- A-18 cluvfy comp ohasdコマンドのパラメータ

- A-19 cluvfy comp olrコマンドのパラメータ

- A-20 cluvfy comp peerコマンドのパラメータ

- A-21 cluvfy comp softwareコマンドのパラメータ

- A-22 cluvfy comp spaceコマンドのパラメータ

- A-23 cluvfy comp ssaコマンドのパラメータ

- A-24 cluvfy comp sysコマンドのパラメータ

- A-25 cluvfy comp vdiskコマンドのパラメータ

- A-26 cluvfy stage [-pre | -post] acfscfgコマンドのパラメータ

- A-27 cluvfy stage [-pre | -post] cfsコマンドのパラメータ

- A-28 cluvfy stage [-pre | -post] crsinstコマンドのパラメータ

- A-29 cluvfy stage -pre dbcfgコマンドのパラメータ

- A-30 cluvfy stage -pre dbinstコマンドのパラメータ

- A-31 cluvfy stage [-pre | -post] hacfgコマンドのパラメータ

- A-32 cluvfy stage -post hwosコマンドのパラメータ

- A-33 cluvfy stage [-pre | -post] nodeaddコマンドのパラメータ

- A-34 cluvfy stage -post nodedelコマンドのパラメータ

- C-1 OLSNODESのコマンド・オプション

- D-1 OIFCFGコマンド

- E-1 非推奨のCRSCTLコマンドおよびその代替

- E-2 crsctl add resourceコマンドのパラメータ

- E-3 crsctl add typeコマンドのパラメータ

- E-4 crsctl add wallet

- E-5 crsctl delete resourceコマンドのパラメータ

- E-6 crsctl delete wallet

- E-7 crsctl eval add resourceコマンドのパラメータ

- E-8 crsctl eval fail resourceコマンドのパラメータ

- E-9 crsctl eval modify resourceコマンドのパラメータ

- E-10 crsctl getperm resourceコマンドのパラメータ

- E-11 crsctl getperm typeコマンドのパラメータ

- E-12 crsctl modify resourceコマンドのパラメータ

- E-13 crsctl modify typeコマンドのパラメータ

- E-14 crsctl modify wallet

- E-15 crsctl query wallet

- E-16 crsctl relocate resourceコマンドのパラメータ

- E-17 crsctl restart resourceコマンドのパラメータ

- E-18 crsctl setperm resourceコマンドのパラメータ

- E-19 crsctl setperm typeコマンドのパラメータ

- E-20 crsctl start resourceコマンドのパラメータ

- E-21 crsctl status resourceコマンドのパラメータ

- E-22 crsctl status typeコマンドのパラメータ

- E-23 crsctl stop resourceコマンドのパラメータ

- E-24 crsctl add categoryコマンドのパラメータ

- E-25 crsctl add crs administratorコマンドのパラメータ

- E-26 crsctl add css votediskコマンドのパラメータ

- E-27 crsctl add policyコマンドのパラメータ

- E-28 crsctl add serverpoolコマンドのパラメータ

- E-29 crsctl check resourceコマンドのパラメータ

- E-30 crsctl create policysetコマンドのパラメータ

- E-31 crsctl delete categoryコマンドのパラメータ

- E-32 crsctl delete crs administratorコマンドのパラメータ

- E-33 crsctl delete css votediskコマンドのパラメータ

- E-34 crsctl delete policyコマンドのパラメータ

- E-35 crsctl discover dhcpコマンドのパラメータ

- E-36 crsctl eval activate policyコマンドのパラメータ

- E-37 crsctl eval add serverコマンドのパラメータ

- E-38 crsctl eval add serverpoolコマンドのパラメータ

- E-39 crsctl eval delete serverコマンドのパラメータ

- E-40 crsctl eval delete serverpoolコマンドのパラメータ

- E-41 crsctl eval modify serverpoolコマンドのパラメータ

- E-42 crsctl eval relocate serverコマンドのパラメータ

- E-43 crsctl get clientid dhcpコマンドのパラメータ

- E-44 crsctl getperm serverpoolコマンドのパラメータ

- E-45 crsctl modify categoryコマンドのパラメータ

- E-46 crsctl modify policyコマンドのパラメータ

- E-47 crsctl modify policysetコマンドのパラメータ

- 表E-48 crsctl modify serverコマンド・パラメータ

- E-49 crsctl modify serverpoolコマンドのパラメータ

- E-50 crsctl query dnsコマンドのパラメータ

- E-51 crsctl query socket udpパラメータ

- E-52 crsctl release dhcpコマンドのパラメータ

- E-53 crsctl relocate resourceコマンドのパラメータ

- E-54 crsctl relocate serverコマンドのパラメータ

- E-55 crsctl replace discoverystringコマンドのパラメータ

- E-56 crsctl replace votediskコマンドのパラメータ

- E-57 crsctl request actionコマンドのパラメータ

- E-58 crsctl request dhcpコマンドのパラメータ

- E-59 crsctl set crs autostartコマンドのパラメータ

- E-60 crsctl setperm serverpoolコマンドのパラメータ

- E-61 crsctl start crsコマンドのパラメータ

- E-62 crsctl start ipコマンドのパラメータ

- E-63 crsctl start testdnsコマンドのパラメータ

- E-64 crsctl status categoryコマンドのパラメータ

- E-65 crsctl status ipコマンドのパラメータ

- E-66 crsctl status policyコマンドのパラメータ

- E-67 crsctl status policysetコマンドのパラメータ

- E-68 crsctl status serverコマンドのパラメータ

- E-69 crsctl status serverpoolコマンドのパラメータ

- E-70 crsctl status testdnsコマンドのパラメータ

- E-71 crsctl stop ipコマンドのパラメータ

- E-72 crsctl stop testdnsコマンドのパラメータ

- E-73 CRS、CSSおよびEVMモジュールのコンポーネント

- E-74 クラスタ同期サービス(CSS)・モジュールおよびその機能

- E-75 通信(COMM)モジュールおよびその機能

- E-76 Oracle Clusterware(CRS)モジュールおよびその機能

- E-77 Oracle Cluster Registry(OCR)コンポーネント名

- E-78 OCRCONFIGモジュールおよびその機能

- F-1 rhpctl add clientのパラメータ

- F-2 rhpctl add databaseのパラメータ

- F-3 rhpctl add imageのパラメータ

- F-4 rhpctl add roleのパラメータ

- F-5 rhpctl add seriesのパラメータ

- F-6 rhpctl add workingcopyのパラメータ

- F-7 rhpctl allow imageのパラメータ

- F-8 rhpctl delete databaseのパラメータ

- F-9 rhpctl delete seriesのパラメータ

- F-10 rhpctl delete userのパラメータ

- F-11 rhpctl deleteimage seriesのパラメータ

- F-12 rhpctl disallow imageのパラメータ

- F-13 rhpctl export clientのパラメータ

- F-14 rhpctl grant roleのパラメータ

- F-15 rhpctl import imageのパラメータ

- F-16 rhpctl insertimage seriesのパラメータ

- F-17 rhpctl move databaseのパラメータ

- F-18 rhpctl modify clientのパラメータ

- F-19 rhpctl promote imageのパラメータ

- F-20 rhpctl query imageのパラメータ

- F-21 rhpctl query seriesのパラメータ

- F-22 rhpctl query workingcopyのパラメータ

- F-23 rhpctl revoke roleのパラメータ

- F-24 srvctl add asmのパラメータ

- F-25 srvctl add exportfsのパラメータ

- F-26 srvctl add filesystemのパラメータ

- F-27 srvctl add gnsのパラメータ

- F-28 srvctl add mgmtdbのパラメータ

- F-29 srvctl add mgmtlsnrのパラメータ

- F-30 srvctl add mountfsコマンドのパラメータ

- F-31 srvctl add rhpclientのパラメータ

- F-32 srvctl add rhpserverのパラメータ

- A-33 srvctl config asmのパラメータ

- A-34 srvctl config exportfsのパラメータ

- A-35 srvctl config gnsのパラメータ

- A-36 srvctl config mgmtdbのパラメータ

- A-37 srvctl disable asmのパラメータ

- F-38 srvctl disable exportfsのパラメータ

- F-39 srvctl disable mountfsパラメータ

- F-40 srvctl disable rhpclientのパラメータ

- F-41 srvctl disable rhpserverのパラメータ

- F-42 srvctl enable exportfsのパラメータ

- F-43 srvctl enable mountfsパラメータ

- F-44 srvctl modify exportfsのパラメータ

- F-45 srvctl modify mountfsコマンドのパラメータ

- F-46 srvctl modify rhpclientコマンドのパラメータ

- F-47 srvctl modify rhpserverコマンドのパラメータ

- F-48 srvctl remove exportfsコマンドのパラメータ

- F-49 srvctl remove mountfsパラメータ

- F-50 srvctl start exportfsコマンドのパラメータ

- F-51 srvctl start mountfsパラメータ

- F-52 srvctl status exportfsコマンドのパラメータ

- F-53 srvctl stop exportfsコマンドのパラメータ

- F-54 srvctl stop mountfsパラメータ

- G-1 エージェント・フレームワークで使用されるOracleデータ型

- G-2 エントリ・ポイント・タイプ

- G-3 非推奨のエージェント・フレームワークAPI

- H-1 非推奨のCLSCRS API

- H-2 Oracle Clusterwareの対話形式CLSCRS APIのサマリー

- H-3 非対話形式CLSCRS API

- I-1 Oracle Cluster Registryの一般的な問題および解決策

- I-2 OCRDUMPのオプションおよびオプションの説明

- J-1 oclumon debugコマンドのパラメータ

- J-2 oclumon dumpnodeviewコマンドのパラメータ

- J-3 SYSTEMビューのメトリックの説明

- J-4 PROCESSESビューのメトリックの説明

- J-5 DEVICESビューのメトリックの説明

- J-6 NICSビューのメトリックの説明

- J-7 FILESYSTEMSビューのメトリックの説明

- J-8 PROTOCOL ERRORSビューのメトリックの説明

- J-9 CPUSビューのメトリックの説明

- J-10 oclumon manageコマンドのパラメータ

- J-11 diagcollection.plスクリプトのパラメータ

- J-12 tfactl printコマンドのパラメータ

- J-13 tfactl directoryコマンドのパラメータ

- J-14 tfactl setコマンドのパラメータ

- J-15 tfactl diagcollectコマンドのパラメータ

はじめに

『Oracle Clusterware管理およびデプロイメント・ガイド』では、Oracle Clusterwareのアーキテクチャと、この製品の概要について説明します。また、Oracle Clusterwareの管理とデプロイメントについても説明します。

このマニュアルの情報は、特に指定がないかぎり、すべてのプラットフォーム上で動作するOracle Clusterwareに適用されます。このマニュアルの内容は、他のOracleマニュアルにおけるシングル・インスタンスのOracle Databaseの管理およびデプロイメントに関する項目の説明を補足するものです。必要に応じて、プラットフォーム固有のマニュアルも参照してください。ここでは、次の項目について説明します。

- 対象読者

- ドキュメントのアクセシビリティについて

- 関連ドキュメント

- 表記規則

対象読者

『Oracle Clusterware管理およびデプロイメント・ガイド』は、次のタスクを実行するデータベース管理者、ネットワーク管理者およびシステム管理者を対象としています。

- Oracle Real Application Clusters(Oracle RAC)データベースのインストールおよび構成

- Oracle RACデータベースの管理

- Oracle RACを使用するクラスタおよびネットワークの管理およびトラブルシューティング

ドキュメントのアクセシビリティについて

Oracleのアクセシビリティへの取り組みについては、Oracle Accessibility ProgramのWebサイト(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc)にアクセスしてください。

Oracleサポートへのアクセス

サポートを購入したオラクル社のお客様は、My Oracle Supportを介して電子的なサポートにアクセスできます。詳細は、http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info、聴覚に障害があるお客様はhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=trsを参照してください。

関連ドキュメント

詳細は、次のOracleドキュメントを参照してください。

- プラットフォーム固有のOracle ClusterwareおよびOracle RACのインストレーション・ガイド
Oracle Database 11gのプラットフォーム固有の各インストール・メディアには、プラットフォーム固有のOracle ClusterwareおよびOracle RACのインストールおよび構成ガイド(HTML形式およびPDF形式)が含まれています。これらのインストール・ガイドには、Oracle ClusterwareおよびOracle RACが動作するUNIX、LinuxおよびWindowsの様々なプラットフォームに対するインストール前、インストールおよびインストール後の情報が記載されています。

- 『Oracle Database 2日でReal Application Clustersガイド』
このタスク指向型のガイドにより、Oracle Linux 5.0を使用した2ノード・システム上で、Oracle ClusterwareおよびOracle Real Application Clustersをインストール、構成、管理するための基本手順を理解できます。

- 『Oracle Real Application Clusters管理およびデプロイメント・ガイド』
このドキュメントは重要であり、インスタンスの管理、チューニング、バックアップとリカバリ、サービスの管理などについて説明しています。

- 『Oracle Database 2日でデータベース管理者』

- 『Oracle Database管理者ガイド』

- 『Oracle Database Net Services管理者ガイド』

- 『Oracle Databaseプラットフォーム・ガイドfor Microsoft Windows』

- 『Oracle Database管理者リファレンス for Linux and UNIX-Based Operating Systems』

- 『Oracle Databaseエラー・メッセージ』

表記規則

このドキュメントでは次の表記規則を使用します。

規則

意味

太字

太字は、操作に関連するGraphical User Interface要素、または本文中で定義されている用語および用語集に記載されている用語を示します。

イタリック体

イタリックは、ユーザーが特定の値を指定するプレースホルダー変数を示します。

固定幅フォント

固定幅フォントは、段落内のコマンド、URL、サンプル内のコード、画面に表示されるテキスト、または入力するテキストを示します。

『Oracle Clusterware管理およびデプロイメント・ガイド』に関するこのリリースにおける変更

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

- Oracle Clusterware 12cリリース1 (12.1)の変更点

Oracle Clusterware 12cリリース1 (12.1)の変更点

Oracle Clusterware 12cの『Oracle Clusterware管理およびデプロイメント・ガイド』の変更点は次のとおりです。

- Oracle Clusterware 12cリリース1 (12.1.0.2)の変更点

- Oracle Clusterware 12cリリース1 (12.1.0.1)の変更点

- 非推奨となった機能

- サポート対象外機能

Oracle Clusterware 12cリリース1 (12.1.0.2)の変更点

このリリースの新機能は次のとおりです。

関連項目:

Oracle Database 12cの機能の詳細は、『Oracle Database新機能ガイド』を参照してください。

- 高速ホーム・プロビジョニング
高速ホーム・プロビジョニングでは、事前作成済のソフトウェア・ホームのカタログに格納されたイメージに基づいてOracleホームをデプロイできます。

関連項目:

詳細は、「高速ホーム・プロビジョニング」を参照してください。

- Oracle Database QoS管理をアクティブにする必要がないメモリー・ガード
このリリースでは、Oracle Databaseサービスのクオリティ管理(Oracle Database QoS管理)を使用するかどうかに関係なく、メモリー・ガードがデフォルトで有効化されています。メモリー・ガードはノードのメモリー不足を検出し、既存のワークロードが縮小してメモリーが解放されるまで、新しいセッションを他のインスタンスに送ります。ノードの空きメモリーが増えると、自動的にサービスが再び新しい接続を受け入れられるようになります。

- Oracle Clusterwareでの診断能力フレームワークのサポート
診断能力フレームワークによって、Oracle製品が診断データの格納と分析に際して標準化かつ簡易化された方法を使用できるようになります。

関連項目:

詳細は、「Oracle Clusterwareの診断およびアラート・ログ・データ」を参照してください。

- Oracleトレース・ファイル・アナライザ・コレクタ
Oracleトレース・ファイル・アナライザ(TFA)コレクタは、Oracle Clusterware、Oracle Grid InfrastructureおよびOracle Real Application Clusters (Oracle RAC)システムの診断データ収集を簡素化し、診断を収集するためのユーティリティです。

関連項目:

詳細は、「Oracleトレース・ファイル・アナライザ・コレクタ」を参照してください

- グリッド・インフラストラクチャ管理リポジトリの自動インストール
グリッド・インフラストラクチャ管理リポジトリは、Oracle Grid Infrastructure 12cリリース1 (12.1.0.2)では自動的にインストールされます。グリッド・インフラストラクチャ管理リポジトリによって、クラスタ状態モニター、Oracle Database QoS管理、高速ホーム・プロビジョニングなどの機能が有効化され、過去のパフォーマンスや問題の診断を簡単に表示できる履歴メトリック・リポジトリが提供されます。この機能はOracle Enterprise Manager Cloud Controlに完全に組み込まれており、シームレスに管理できます。

Oracle Clusterware 12cリリース1 (12.1.0.1)の変更点

このリリースの新機能は次のとおりです。

関連項目:

Oracle Database 12cの機能の詳細は、『Oracle Database新機能ガイド』を参照してください。

- Oracle Flex Clustersに関するクラスタ状態モニターの拡張
クラスタ状態モニター(CHM)は、オペレーティング・システムおよびクラスタ・リソースに関連する劣化や障害の検出および分析の向上を実現する、可用性の高いサーバー監視サービスを提供するために拡張されました。さらに、CHMはOracle Flex Clustersの構成をサポートし(クラスタのすべてのノードから収集をするためのデータ・コレクタ機能を含む)、データに関して単一のクラスタ表示を提供します。

関連項目:

詳細は、「クラスタ状態モニター」を参照してください

- Oracle ACFSおよびOracle ADVMのクラスタ・リソース
Oracle Clusterwareリソースのサポートには、Oracle Automatic Storage Management Cluster File System (Oracle ACFS)、Gridホーム用のOracle ACFS汎用ファイル・システム、およびOracle ASM Dynamic Volume Manager (Oracle ADVM)のボリュームに格納されたOracleホームの拡張が含まれます。このようなリソースは、Oracle Clusterwareによって管理され、Oracle ACFS、Oracle ADVMおよびOKSドライバの自動的なロード、ディスク・グループのマウント、動的ボリュームの有効化および自動的なOracle ACFSファイル・システムのマウントをサポートします。

関連項目:

詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

- Oracle Flex Clusters
Oracle Flex Clustersは新しい概念であり、従来型の少ないノード数で密結合のクラスタと、多くのノード数で疎結合のクラスタを結合します。この新しい概念を使用して構築可能な様々な構成をサポートするために、SRVCTLは新しいコマンドおよびコマンドのオプションを提供して、インストールおよび構成を容易にします。

関連項目:

詳細は、「Oracle Flex Cluster」を参照してください。

- パブリック・ネットワークに関するIPv6サポート
Oracle Clusterware 12cは、IPv6ベースのパブリックIPアドレスおよびVIPアドレスをサポートします。

IPv6ベースのIPアドレスは、今日のデータ・センターにおける情報技術のインフラストラクチャに関する最新規格です。このリリースにおいて、Oracle RACおよびOracle Grid Infrastructureはこの規格をサポートしています。インストール中に、同じネットワーク上のIPv4アドレスまたはIPv6アドレスのいずれかで、クラスタ・ノードを構成できます。データベース・クライアントは、IPv4アドレスまたはIPv6アドレスのいずれかに接続できます。単一クライアント・アクセス名(SCAN)リスナーは、クライアント・リクエストのIPプロトコルに関する適切なデータベース・リスナーに、クライアント接続を自動的にリダイレクトします。

関連項目:

ネットワーク・アドレスの構成要件の理解

- 共有グリッド・ネーミング・サービス
グリッド・ネーミング・サービス(GNS)の1つのインスタンスによって、クラスタ数が非常に多い場合にも名前解決サービスが提供可能です。

関連項目:

詳細は、「Oracle Clusterwareのネットワーク構成の概念」を参照してください。

- Windows上のOracle Grid Infrastructureのユーザー・サポート
Oracle Database 12c以上では、Oracle Databaseは、Oracle Grid Infrastructureホームを所有するための、Oracle Grid Infrastructureインストール所有者のアカウント(グリッド・ユーザー)の使用をサポートしています(これについてはインストール時に指定できます)。グリッド・ユーザーは、組込みアカウントまたはWindowsユーザー・アカウントのいずれかになります。限られた権限セットをグリッド・ユーザーが保有するには、Windowsのグリッド・ユーザー・アカウントは、権限が低い(非管理者)アカウントである必要があります。グリッド・ユーザー・アカウントを使用してOracle Grid Infrastructureをインストールすることによって、Oracle DatabaseサービスがOracle製品を実行するために必要な権限のみを保有することが徹底されます。

Windowsオペレーティング・システム用の従来のリリースでは、Oracleサービスは、完全な権限を保有するローカル・システム権限として動作していました。この機能によってサービスは、さらに厳重なセキュリティ管理を可能とするユーザー権限で実行されます。オラクル社では、Oracle Grid Infrastructureのインストール時に指定されるWindowsユーザー(前のパラグラフで言及されているGridユーザー)のセキュリティ・コンテキストで、Oracle Grid Infrastructure管理リポジトリのWindowsデータベース・サービスを作成しています。

この機能のサポートにおいて、オラクル社は一部のクラスタ検証ユーティリティ(CVU)コマンドを拡張し、ウォレットを管理するためにCRSCTLコマンドを追加しました。

関連項目:

『Oracle Databaseプラットフォーム・ガイドfor Microsoft Windows』

- 個別パッチに関するOracle Grid Infrastructureのローリング移行
Oracle Grid Infrastructureの個別パッチのローリング移行およびOracle Automatic Storage Management (Oracle ASM)とOracle Clusterwareへのアップグレードにより、個別パッチによる、クラスタ化されたOracle Grid Infrastructureノードへのアップグレードまたはパッチ適用を、データベースの可用性に影響することなく、独立して実行することができます。この機能によって、稼働時間の増加および柔軟なパッチ適用が実現されます。また、このリリースでは、新しいクラスタ状態(「ローリング・パッチ」)が導入されています。パッチ静止状態で可能な操作は、既存のローリング・アップグレード・クラスタ状態と類似しています。

- ポリシーベースのクラスタ管理および運用
Oracle Grid Infrastructureでは、1つのクラスタで複数のアプリケーションを実行することができます。ポリシーベースの手法を利用して、これらのアプリケーションによって生じるワークロードが、クラスタ構成ポリシｰを使用するクラスタに割り当てられます。さらに、クラスタ構成ポリシー・セットによって、必要時に時間をかけてクラスタに異なるクラスタ構成ポリシｰを適用することが可能です。Webベースのインタフェースまたはコマンドライン・インタフェースを使用して、クラスタ構成ポリシｰを定義できます。

同じクラスタ内で様々なワークロードを受け入れることで、共有インフラストラクチャにワークロードを集約することができ、高可用性とスケーラビリティが実現されます。集中管理されたポリシーベースの方法を使用することで、要求の変化に応じてリソースを動的に再配分し、優先度付けが可能になります。

関連項目:

詳細は、「クラスタ構成ポリシーおよびポリシー・セットの概要」を参照してください。

Oracle Clusterware 12cには、すべてのタイプのアプリケーションで高速な統合や高可用性を実現するgeneric_applicationリソース・タイプが含まれています。

関連項目:

generic_applicationリソース・タイプの詳細は、「Oracleクラスタウェアのリソース・タイプ」を参照してください。

- Oracle Flex ASM
Oracle Flex ASMを使用すると、データベース・サーバーとは異なる物理サーバーでOracle ASMインスタンスを実行できます。Oracle ASMサーバー数が多い場合でも、大規模データベース・クライアントをサポートするためにクラスタ化が可能で、これによってシングル・ポイント障害を排除します。

関連項目:

Oracle Flex ASMの詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

- 有効なノードの確認によるサービス登録の制限
スタンドアロンのOracle Databaseリスナーは、クライアントの接続元であるサブネットなどの様々な条件を使用して、このリスナーに登録されたデータベースにクライアントがアクセスすることを制限します。したがってこの時点で、Oracle Grid Infrastructureが管理するリスナーは構成可能です。

- What-Ifコマンド評価
Oracle Clusterware 12cは、各操作が実際に実行される前に、特定の操作の影響を判断するための、一連の評価コマンドおよびAPIを提供します。

関連項目:

- 評価コマンドに関する詳細情報

- APIの詳細は、「What-If API」を参照してください。

- オンライン・リソース属性変更
Oracle Clusterwareでは、リソース・モデルを使用して、高可用性のためにハードウェアおよびソフトウェアを管理します。リソース属性を使用して、Oracle Clusterwareによるこれらのリソースの管理方法を定義します。オンライン・リソース属性変更を使用すると、リソースを再起動しないで、特定のリソース属性を変更したり、これらの変更を実装することができます。特定のSRVCTLおよびCRSCTLコマンドを使用して、オンライン・リソース属性変更を管理します。

- Oracle ASMディスク・グループ・サポートにおけるOracle Cluster Registryバックアップ
Oracle Cluster Registry (OCR)バックアップ・メカニズムによりOracle ASMディスク・グループでOCRのバックアップを格納することができます。Oracle ASMディスク・グループにOCRのバックアップを格納すると、OCRのリカバリが必要になった場合にクラスタの任意のノードからOCRバックアップへのアクセスを許可することによって、OCR管理が簡素化されます。

関連項目:

Oracle Cluster RegistryおよびOracle Local Registryの管理

非推奨となった機能

次の機能は今回のリリースで非推奨であり、今後のリリースではサポートされない可能性があります。

- 管理ユーザーに関して保存されているリストの使用による、クラスタ管理者の管理
この管理手法は、ポリシｰ・セットのアクセス制御リストを構成することによる、管理ユーザー・ロールのさらに包括的な管理によって代替されています。

- 単一文字SRVCTL CLIオプションの非推奨
すべてのSRVCTLコマンドは、単一文字オプションのかわりに完全単語オプションを受け入れるように拡張されました。このリリースで追加されたすべての新しいSRVCTLコマンド・オプションはフルワード・オプションのみをサポートしており、1文字のオプションはサポートしていません。この機能は、将来のリリースではサポート対象外になる可能性があります。

サポート対象外機能

関連項目:

『Oracle Databaseアップグレード・ガイド』

- WindowsのOracle Cluster File System
WindowsでのOracle Clusterファイル・システム(OCFS)はサポートされていません。

- Oracle Enterprise Manager Database Control
Oracle Enterprise Manager Database Controlは、Oracle Enterprise Manager Database Expressに置き換えられています。

- Oracle Database用のRAW (ブロック)記憶域デバイスおよび関連テクノロジ
Oracle Database 12cリリース1 (12.1)およびOracle Clusterwareなどの関連するグリッド技術は、RAWストレージ・デバイスまたはブロック・ストレージ・デバイスの直接使用を現在はサポートしていません。Oracle Clusterware 12cリリース1 (12.1)にアップグレードする前に、既存のファイルをRAWまたはブロック・デバイスからOracle ASMに移動する必要があります。

1 Oracle Clusterwareの概要

Oracle Clusterwareを使用すると、サーバーが相互に通信することが可能になるため、1つの集合ユニットとして機能しているように見えます。このようなサーバーの組合せは、一般にクラスタと呼ばれます。これらのサーバーはスタンドアロン・サーバーですが、各サーバーには他のサーバーと通信する追加のプロセスがあります。このように、個々のサーバーはアプリケーションおよびエンド・ユーザーから1つのシステムとして認識されます。

内容は次のとおりです。

- Oracle Clusterwareとは

- Oracle Clusterwareのシステム要件の理解

- Oracle Clusterwareのプラットフォーム固有のソフトウェア・コンポーネントの概要

- Oracle Clusterwareのインストールの概要

- Oracle Clusterwareのアップグレードおよびパッチ適用の概要

- Oracle Clusterware環境の管理の概要

- グリッド環境でのOracle Clusterwareのクローニングおよび拡張の概要

- Oracle Clusterwareの高可用性フレームワークおよびAPIの概要

- クラスタの時間管理の概要

Oracle Clusterwareとは

Oracle Clusterwareでは、Oracle Real Application Clusters(Oracle RAC)の実行に必要なインフラストラクチャが提供されます。Oracle Clusterwareでは、仮想IP(VIP)アドレス、データベース、リスナー、サービスなどのリソースも管理されます。これらのリソースは一般に、ora.mydb.dbなど、ora.entity_name.resource_type_abbreviationという名前を付けられます。これは、データベースであるリソースの名前です。(abbreviationのいくつかの例は、データベースのdb、リスナーのlsnr、およびVIPのvipです。)これらのリソースの編集は、My Oracle Supportからの明示的な指示がある場合を除いて、サポートされていません。

関連項目:

詳細は、「Oracle Clusterwareの管理」および「Oracle Clusterwareを使用したアプリケーションの高可用性の実現」を参照してください

図1-1に、Oracle Clusterwareを使用して基本的なシングル・インスタンスのOracle Databaseアーキテクチャを拡張する構成を示します。図1-1に示すクラスタは、Oracle Databaseを実行しており、アプリケーションおよびユーザーにアクティブにサービスを提供しています。Oracle Clusterwareを使用すると、同じ高可用性メカニズムを使用して、Oracle Databaseとカスタム・アプリケーションの高可用性を実現できます。

図1-1 Oracle Clusterwareの構成

クラスタの使用によるメリットは、次のとおりです。

- アプリケーションのスケーラビリティ実現

- スケーラブルなシステムを低コストの汎用ハードウェアと組み合せることで、インフラストラクチャの総所有コストを削減できます。

- フェイルオーバーの機能

- サーバーをクラスタに追加してクラスタ・リソースを増やすことによって、クラスタ対応アプリケーションのスループットが必要に応じて向上します。

- クラスタ内のすべてのノードでアプリケーションを実行できるため、クラスタ対応アプリケーションのスループットが向上します。

- 依存プロセスが適切な順序で確実に起動するように計画した順序でアプリケーションの起動をプログラムする機能

- プロセスの監視、およびプロセスが停止した場合に再起動する機能

- ハードウェアやソフトウェアの障害に起因する計画外停止時間を解消できます。

- ソフトウェア・メンテナンスのための計画停止時間を削減または解消できます。

Oracle Clusterwareをプログラムして、ユーザー・アプリケーションとOracle Databaseの可用性を管理できます。Oracle RAC環境では、Oracle Clusterwareによってすべてのリソースが自動的に管理されます。Oracle Clusterwareが管理するすべてのアプリケーションおよびプロセスは、クラスタ・リソースまたはローカル・リソースのいずれかです。

Oracle Clusterwareは、Oracle RACを使用するために必要であり、Oracle RACが動作するプラットフォームで必要とされる唯一のクラスタウェアです。Oracle RACでは、引き続き特定のプラットフォームにおいて多くのサード・パーティ製クラスタウェア製品がサポートされますが、Oracle Clusterwareもインストールして使用する必要があります。Oracle Clusterwareをインストールして実行する各サーバーでは、同じオペレーティング・システムを実行している必要があります。

Oracle Clusterwareの使用により、ベンダー固有のクラスタウェアが不要になり、Oracleソフトウェアのみを使用するメリットが発揮されます。オラクル社では、Oracle Automatic Storage Management(Oracle ASM)によるディスク管理から、Oracle DatabaseおよびOracle RACによるデータ管理までのあらゆるソフトウェア・ソリューションを提供しています。また、Oracle ServicesなどのOracle Database機能では、基礎となるOracle Clusterwareの高可用性フレームワークと組み合せて使用できる拡張機能を提供しています。

Oracle Clusterwareには、バイナリ以外に、ノードのメンバーシップ情報を記録する投票ファイルと、クラスタ構成情報を記録するOracle Cluster Registry(OCR)の2つのストアド・コンポーネントがあります。投票ファイルおよびOCRは、すべてのクラスタ・メンバー・ノードに使用可能な共有記憶域に存在する必要があります。

Oracle Clusterwareのシステム要件の理解

Oracle Clusterwareを使用するには、ハードウェアとソフトウェアの概念および要件を理解する必要があります。詳細は、次の項を参照してください。

- Oracle Clusterwareのハードウェアの概念および要件

- Oracle Clusterwareのオペレーティング・システムの概念および要件

- Oracle Clusterwareのソフトウェアの概念および要件

- Oracle Clusterwareのネットワーク構成の概念

- Oracle Clusterwareのアップグレードおよびパッチ適用の概要

Oracle Clusterwareのハードウェアの概念および要件

注意:

多くのハードウェア・ベンダーが、1つのクラスタに単一の製品を使用してクラスタ構成を検証しています。クラスタリングを扱うのが初めてのユーザーは、この項の情報を使用することで、クラスタを作成するためのハードウェアを購入する際に、ハードウェアの調達に関する作業を簡素化できます。

クラスタは、1つ以上のサーバーで構成されます。外部ネットワークへのアクセスは、クラスタのサーバー(クラスタ・メンバーまたはノードとも呼ばれる)の場合も、スタンドアロン・サーバーの場合と同じです。ただし、クラスタの一部であるサーバー(ノードまたはクラスタ・メンバーとも呼ばれる)には第2のネットワークが必要です。この第2のネットワークは、インターコネクトと呼ばれます。このため、クラスタ・メンバー・ノードには、2つ以上のネットワーク・インタフェース・カードが必要です(1つはパブリック・ネットワーク用、もう1つはプライベート・ネットワーク用)。インターコネクト・ネットワークは、クラスタ内のノードのみがアクセスできる単一のスイッチ(または複数のスイッチ)を使用するプライベート・ネットワークです。脚注1

注意:

Oracleでは、Oracle Clusterwareのインターコネクトとして、クロスオーバー・ケーブルの使用はサポートされていません。

クラスタのサイズは、クラスタで実行するワークロードの要件と、クラスタで構成したノードの数によって決まります。高可用性対応のクラスタを実装する場合は、インフラストラクチャのすべてのコンポーネントで次の冗長構成を使用します。

- パブリック・ネットワーク用で、1つのアドレスを提供するために搭載される2つ以上のネットワーク・インタフェース

- プライベート・インターコネクト・ネットワーク用の2つ以上のネットワーク・インタフェース

クラスタでは、クラスタ内の各サーバーに接続されたクラスタ対応ストレージ脚注2が必要です。これは、マルチホスト・デバイスと呼ばれることもあります。Oracle Clusterwareは、ネットワーク・ファイル・システム(NFS)、iSCSI、Direct Attached Storage (DAS)、Storage Area Network (SAN)ストレージおよびNetwork Attached Storage (NAS)をサポートしています。

ストレージの冗長性を確保するには、通常、各サーバーからクラスタ対応ストレージに対して最低2つの接続を用意します。実際のI/O要件によっては、さらに多くの接続を用意することもあります。ストレージ・サブシステムを選択する際に、クラスタ全体のI/O要件を考慮することは重要です。

ほとんどのサーバーには、内部に1つ以上のローカル・ディスクが含まれます。通常、このディスクは、オペレーティング・システム・バイナリ用に使用されますが、ユーザーはこのディスクをOracleソフトウェアのバイナリ用としても使用できます。各サーバーでOracleバイナリの独自コピーを保持することのメリットは、高可用性が向上することであり、このため1つのバイナリの破損が同時にクラスタ内のすべてのノードに影響を及ぼすことがなくなります。また、これによってローリング・アップグレードも可能になり、停止時間を削減できます。

脚注の凡例

脚注1:
Oracle Clusterwareでは、Oracle Database 10g リリース2 (10.2)以上のリリースが稼働する構成において、クラスタ内で最大100のノードがサポートされます。

脚注2:
クラスタ対応ストレージは、マルチホスト・デバイスと呼ばれることもあります。

Oracle Clusterwareのオペレーティング・システムの概念および要件

各サーバーには、インストールするOracle Clusterwareのリリースの動作が保証されたオペレーティング・システムが存在する必要があります。詳細は、ご使用のプラットフォームの『Oracle Grid Infrastructureインストレーション・ガイド』またはMy Oracle Support(以前のOracleMetaLink)の保証マトリックスを参照してください(次のURLから入手可能)。

http://www.oracle.com/technetwork/database/clustering/tech-generic-unix-new-166583.html

オペレーティング・システムをインストールして実行したら、Oracle Clusterwareをインストールしてクラスタを作成できます。Oracle Clusterwareは、Oracle Databaseとは別にインストールされます。Oracle Clusterwareのインストール後に、Oracle DatabaseまたはOracle RACをクラスタ内の任意のノードにインストールできます。

関連項目:

『Oracle Grid Infrastructureインストレーション・ガイド』

Oracle Clusterwareのソフトウェアの概念および要件

Oracle Clusterwareでは、投票ファイルを使用して、フェンシングの提供およびクラスタ・ノードのメンバーシップの判断が行われます。OCRではクラスタ構成情報が提供されます。Oracle ClusterwareファイルはOracle ASMまたは一般共有ディスク記憶域のいずれかに格納できます。ファイルの冗長性が提供されない記憶域でOracle Clusterwareを構成する場合は、OCRおよび投票ファイル用に複数の場所を構成することをお薦めします。次に、投票ファイルおよびOCRについて説明します。

- 投票ファイル
Oracle Clusterwareでは、投票ファイルを使用して、クラスタのメンバーであるノードを判断します。投票ファイルはOracle ASMまたは共有記憶域で構成できます。

投票ファイルをOracle ASMで構成する場合は、投票ファイルを手動で構成する必要はありません。ディスク・グループの冗長性に応じて、適切な数の投票ファイルが作成されます。

投票ファイルをOracle ASMで構成しない場合は、高可用性を確保するために、物理的に異なるストレージに3つ以上の投票ファイルを配置することをお薦めします。これによって、シングル・ポイント障害を回避できます。単一の投票ファイルを構成した場合、冗長性のために外部のミラー化を使用することをお薦めします。

最大15の投票ファイルがサポートされていても、6つ以上の投票ファイルを使用しないことをお薦めします。

- Oracle Cluster Registry
Oracle Clusterwareでは、Oracle Cluster Registry(OCR)を使用して、Oracle Clusterwareで制御するOracle RACデータベース、リスナー、仮想IPアドレス(VIP)、サービスと任意のアプリケーションなどのコンポーネントの情報を格納および管理します。OCRには、一連のキーと値のペアからなる構成情報がツリー構造に格納されます。クラスタの高可用性を確保するために、複数のOCRの場所を定義することをお薦めします。さらに、次もあります。

- 最大5つのOCRの場所を使用できます。

- 各OCRの場所は、クラスタ内のすべてのノードがアクセスできる共有記憶域に存在している必要があります。

- 障害が発生したOCRの場所がOCRの唯一の場所でないかぎり、オンラインで交換できます。

- OCRは、Oracle Enterprise Manager、Oracle Clusterware制御ユーティリティ(CRSCTL)、サーバー制御ユーティリティ(SRVCTL)、OCR構成ユーティリティ(OCRCONFIG)、Database Configuration Assistant(DBCA)などのサポートされているユーティリティを介して更新する必要があります。

関連項目:

投票ファイルとOCRの詳細は、「Oracle Clusterwareの管理」を参照してください。

Oracle Clusterwareのネットワーク構成の概念

Oracle Clusterwareを使用すると、クラスタのネットワーク要件の自己管理により、動的なOracle Grid Infrastructureが可能になります。Oracle Clusterware 12cは、Dynamic Host Configuration Protocol (DHCP)またはVIPアドレス用のステートレス・アドレス自動構成とSingle Client Access Name (SCAN)アドレスの使用をサポートしていますが、パブリック・アドレスの使用はサポートしていません。DHCPはIPv4 VIPアドレスの動的割当てを行い、ステートレス・アドレス自動構成はIPv6 VIPアドレスの動的割当てを行います。

Oracle RACを使用する場合、すべてのクライアントはデータベースにアクセスできる必要があります。これは、クライアントは、VIP名およびSCAN名をすべてのVIPアドレスおよびSCANアドレスにそれぞれ解決する必要があることを意味しています。この問題は、グリッド・ネーミング・サービス(GNS)をクラスタに追加することによって解決します。GNSは会社のドメイン名サービス(DNS)にリンクされるため、クライアントは、ホスト名をこれらの動的アドレスに解決し、クラスタおよびデータベースに透過的に接続できます。Oracle Clusterware 12cでは、DHCPまたはゾーン委任なしのGNSの使用がサポートされています(ゾーン委任または動的ネットワークなしで構成できるOracle Flex ASMサーバーと同様です)。

注意:

Windows上にDHCPまたはゾーン委任がない場合、GNSの使用はサポートされていません。

関連項目:

Oracle Flex ASMの詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

Oracle Clusterware 12cから、GNSインスタンスは、1つのクラスタのかわりに複数のクラスタにサービスを提供できるため、DNSのGNSに委任する必要があるのは1つのドメインのみです。GNSは引き続き、以前のバージョンのOracle Clusterwareと同じサービスを提供します。

GNSサーバーが実行されるクラスタは、サーバー・クラスタと呼ばれます。クライアント・クラスタは、サーバー・クラスタを使用して名前を通知します。サーバー・クラスタでは1つのGNSデーモン・プロセスのみを実行できます。Oracle Clusterwareは、可用性を維持するために、GNSデーモン・プロセスをクラスタ内のノードの1つの上に置きます。

以前の単一クラスタ・バージョンのGNSでは、単一クラスタは、その内部でGNSサービス・プロバイダを簡単に探すことができました。ただし、マルチクラスタ環境ではクライアント・クラスタは、サーバー・クラスタのGNSアドレスを知る必要があります。このアドレスが与えられている場合、クライアント・クラスタは、サーバー・クラスタで実行されているGNSサーバーを見つけることができます。

サーバー・クラスタでGNSを動作させるには、次のことが必要です。

- DNS管理者がゾーンをGNSで使用されるように委任すること

- GNSインスタンスがネットワーク上のどこかで稼働しており、ファイアウォールでブロックされていないこと

- GNSが提供するクラスタのセット内のすべてのノード名は一意である必要があります。

関連項目:

GNSの管理の詳細は、「グリッド・ネーミング・サービスの概要」を参照してください。

単一クライアント・アクセス名(SCAN)

SCANは、DNSまたはGNSのIPアドレス(1つ以上3つ以下)に登録されているドメイン名です。GNSおよびDHCPを使用している場合、Oracle Clusterwareでは、クラスタの構成時に指定されるSCAN名のVIPアドレスが構成されます。

ノードVIPおよび3つのSCAN VIPは、GNSを使用時している場合、DHCPサーバーから取得されます。新しいサーバーがクラスタに追加されると、Oracle Clusterwareでは、必要なVIPアドレスはDHCPサーバーから動的に取得されてクラスタ・リソースが更新され、GNSを介してサーバーにアクセスできるようになります。

注意:

SCANの詳細は、「SCANアドレスおよびクライアント・サービス接続の理解」を参照してください。

アドレスの手動構成

別の方法として、アドレスの手動構成も選択できます。この場合には次の内容を構成します。

- ノードごとに1つのパブリック・アドレスとホスト名。

- ノードごとに1つのVIPアドレス。
クラスタ内の各ノードにVIPアドレスを割り当てる必要があります。各VIPアドレスは、ノードのパブリックIPアドレスと同じサブネット上に存在し、DNSで名前を割り当てられているアドレスである必要があります。また、Oracle Clusterwareのインストール前は、各VIPアドレスがネットワーク内から使用されず、pingの実行も不可能であることが必要です。

- クラスタ全体で最大3つのSCANアドレス。

注意:

SCANは、パブリック・ネットワークの1つ以上のアドレスに解決される必要があります。高可用性およびスケーラビリティを確保するために、パブリック・ネットワーク上の3つのアドレスに解決されるようにSCANを構成することをお薦めします。

関連項目:

システム要件およびネットワーク・アドレスの構成の詳細は、ご使用のプラットフォーム固有の『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

Oracle Clusterwareのプラットフォーム固有のソフトウェア・コンポーネントの概要

Oracle Clusterwareの動作時には、プラットフォーム固有の一部のプロセスまたはサービスがクラスタ内の各ノードで実行されます。この項では、これらの様々なプロセスおよびサービスについて説明します。

Oracle Clusterware技術スタック

Oracle Clusterwareは、クラスタ・レディ・サービス(CRS)・デーモン(CRSD)によってアンカーされている上位技術スタックと、Oracle高可用性サービス・デーモン(OHASD)によってアンカーされている下位技術スタックという2つの別個の技術スタックで構成されています。これらの2つの技術スタックには、クラスタ操作を円滑化する複数のプロセスがあります。次の項では、これらの技術スタックについて詳細に説明します。

クラスタ・レディ・サービス技術スタック

次のリストでは、CRSを構成するプロセスについて説明します。

- クラスタ・レディ・サービス(CRS):クラスタで高可用性操作を管理する主要プログラム。
CRSDは、各リソースのOCRに格納されている構成情報に基づいて、クラスタ・リソースを管理します。これには、起動、停止、監視およびフェイルオーバー操作が含まれます。CRSDプロセスは、リソースのステータスが変更されるとイベントを生成します。Oracle RACをインストールしている場合、CRSDプロセスはOracle Databaseインスタンスやリスナーなどを監視し、障害が発生した場合にこれらのコンポーネントを自動的に再起動します。

- クラスタ同期サービス(CSS): クラスタのメンバーシップを管理し、ノードがクラスタに対して追加または削除された際にメンバーに通知することによって、クラスタ構成を管理します。保証されているサード・パーティ製クラスタウェアを使用している場合、CSSプロセスは、クラスタウェアとともに動作して、ノードのメンバーシップに関する情報を管理します。
cssdagentプロセスは、クラスタの監視およびI/Oフェンシングを実行します。このサービスは、以前はOracle Process Monitor Daemon(oprocd)(WindowsではOraFenceServiceとも呼ばれる)によって提供されていました。cssdagentで障害が発生した場合、Oracle Clusterwareによってノードが再起動されることがあります。

- Oracle ASM: Oracle ClusterwareおよびOracle Databaseのディスク管理が提供されます。

- クラスタ時刻同期化サービス(CTSS): Oracle Clusterwareのクラスタで時間管理が提供されます。

- イベント・マネージメント(EVM): Oracle Clusterwareによって作成されたイベントを発行するバックグラウンド・プロセス。

- グリッド・ネーミング・サービス(GNS): 外部DNSサーバーから送信されるリクエストを処理し、クラスタで定義されている名前の名前解決を実行します。

- Oracle Agent (oraagent): クラスタウェアを拡張して、Oracle固有の要件および複雑なリソースをサポートします。このプロセスは、FANイベントが発生した場合にサーバー・コールアウト・スクリプトを実行します。このプロセスは、Oracle Clusterware 11gリリース1(11.1)ではRACGと呼ばれていました。

- Oracle Notification Service (ONS): 高速アプリケーション通知(FAN)イベントの通信用のパブリッシュおよびサブスクライブ・サービス。

- Oracle Root Agent(orarootagent): rootが所有しているネットワークやグリッド仮想IPアドレスなどのリソースをCRSDが管理するのを支援する専用のoraagentプロセス。

クラスタ同期サービス(CSS)、イベント・マネージメント(EVM)およびOracle Notification Service (ONS)コンポーネントは、同じクラスタ・データベース環境で、他のノードのクラスタ・コンポーネント・レイヤーと通信します。また、これらのコンポーネントは、Oracle Database、アプリケーションおよびOracle Clusterwareの高可用性コンポーネント間における主要通信リンクです。さらに、これらのバックグラウンド・プロセスは、データベース操作を監視および管理します。

Oracle高可用性サービス技術スタック

次のリストでは、Oracle高可用性サービス技術スタックを構成するプロセスについて説明します。

- appagent: 以前のバージョンのOracle Clusterwareで使用されていたapplicationリソース・タイプのリソースを保護します。

関連項目:

appagentの詳細は、「Oracle Clusterwareのリソース」を参照してください。

- Cluster Logger Service (ologgerd): クラスタ内のすべてのノードから情報を受け取り、Oracle Grid Infrastructure管理リポジトリベースのデータベース内で持続します。このサービスは、クラスタ内の2つのノードのみで実行されます。

- グリッド・プロセス間通信(GIPC): 冗長なインターコネクトの使用を可能にするサポート・デーモン。

- グリッド・プラグ・アンド・プレイ(GPNPD): グリッド・プラグ・アンド・プレイ・プロファイルへのアクセスを提供し、クラスタのノード間でプロファイルの更新を調整して、すべてのノードで最新のプロファイルが保持されるようにします。

- マルチキャスト・ドメイン名サービス(mDNS): クラスタ内のプロファイルを特定するためにグリッド・プラグ・アンド・プレイによって使用され、名前解決を実行するためにGNSによって使用されます。mDNSプロセスは、Linux、UNIXおよびWindowsのバックグラウンド・プロセスです。

- Oracle Agent (oraagent): クラスタウェアを拡張して、Oracle固有の要件および複雑なリソースをサポートします。このプロセスは、Oracle Clusterware所有者として実行されるGIPC、GPNPD、GIPCなどのデーモンを管理します。

注意:

このプロセスは、Cluster Ready Servicesテクノロジ・スタックで実行する同じ名前のプロセスとはまったく異なります。

- Oracle Root Agent (orarootagent): rootが所有するCluster Health Monitor (CHM)などのリソースをCRSDが管理するのを支援する専用のoraagentプロセス。

注意:

このプロセスは、Cluster Ready Servicesテクノロジ・スタックで実行する同じ名前のプロセスとはまったく異なります。

関連項目:

CHMの詳細は、「Oracle Clusterware環境の管理の概要」を参照してください。

- scriptagent: シェル・スクリプトまたはバッチ・スクリプトを使用してアプリケーションを保護する場合に、application以外のリソース・タイプのリソースを保護します。

関連項目:

scriptagentの詳細は、「Oracle Clusterwareのリソース」を参照してください。

- システム監視サービス(osysmond): 監視して、データをクラスタ・ログ出力サービスに送信するオペレーティング・システム・メトリック収集サービス。このサービスは、クラスタ内のすべてのノードで実行されます。

表1-1に、Oracle Clusterwareコンポーネントに関連付けられたプロセスおよびサービスを示します。表1-1で、UNIXまたはLinuxシステムのプロセスに(r)とある場合、そのプロセスがrootユーザーとして実行されることを示します。

表1-1 Oracle Clusterwareコンポーネントに関連付けられたプロセスおよびサービスのリスト

Oracle Clusterwareコンポーネント

LinuxおよびUNIXのプロセス

Windowsのプロセス

Oracle ASM脚注1

CRS

crsd.bin (r)

crsd.exe

CSS

ocssd.bin, cssdmonitor, cssdagent

cssdagent.exe, cssdmonitor.exe ocssd.exe

CTSS

octssd.bin (r)

octssd.exe

EVM

evmd.bin, evmlogger.bin

evmd.exe

GIPC

gipcd.bin

GNS

gnsd (r)

gnsd.exe

グリッドのプラグ・アンド・プレイ

gpnpd.bin

gpnpd.exe

LOGGER

ologgerd.bin (r)

ologgerd.exe

マスターDiskmon

diskmon.bin

mDNS

mdnsd.bin

mDNSResponder.exe

Oracle Agent

oraagent.bin (Oracle Clusterware 12c リリース1 (12.1)および11g リリース2 (11.2))またはracgmainおよびracgimon (Oracle Clusterware 11g リリース1 (11.1))

oraagent.exe

Oracle高可用性サービス

ohasd.bin (r)

ohasd.exe

ONS

ons

ons.exe

Oracle Root Agent

orarootagent (r)

orarootagent.exe

SYSMON

osysmond.bin (r)

osysmond.exe

脚注1

Oracle ASMは1つのプロセスというだけではなく、インスタンスでもあります。Oracle Flex ASMの場合、Oracle ASMはすべてのクラスタ・ノードで必ずしも実行されるわけではなく、一部のクラスタ・ノードでのみ実行されます。

関連項目:

プロセス用に作成されるログ・ファイルの場所の詳細は、「Oracle Clusterwareの診断およびアラート・ログ・データ」を参照してください。

注意:

LinuxプラットフォームのOracle Clusterwareでは、複数のスレッドが、一意のプロセス識別子を持つ個別のプロセスとして表示される場合があります。

図1-2は、クラスタの起動を表しています。

図1-2 クラスタの起動

WindowsシステムでのOracle Clusterwareプロセス

Microsoft WindowsシステムでのOracle Clusterwareプロセスには、次のものが含まれます。

- mDNSResponder.exe: 所属するサブネット内で名前解決とサービス検出を管理します

- OracleOHService: すべてOracle Clusterwareデーモンを起動します

Oracle Clusterwareのインストールの概要

次の項では、Oracle Clusterwareのインストール・プロセスの概要について説明します。

注意:

Oracle Clusterwareは、Oracle Universal Installerを使用してインストールします。

Oracle Clusterwareのリリースの互換性

クラスタには、異なるリリースのOracle Clusterware、Oracle ASMおよびOracle Databaseをインストールできます。クラスタに異なるリリースのソフトウェアをインストールする場合、次のガイドラインに従ってください。

- クラスタ内で実行できるOracle Clusterwareのインストールは1つのみであり、Oracle Clusterwareは自身のホーム(Grid_home)にインストールする必要があります。使用するOracle Clusterwareのリリースは、クラスタ内で実行するOracle ASMおよびOracle RACのバージョン以上である必要があります。クラスタ内で実行するOracle Clusterwareのバージョンより後に公開されたOracle RACのバージョンをインストールすることはできません。つまり、次のことが必要です。

- Oracle Clusterware 12cは、Oracle ASM 12cのみをサポートしていますが、これは、Oracle ASMがOracle Grid Infrastructureホームにあり、これもOracle Clusterwareを含んでいるためです。

- Oracle Clusterware 12cは、Oracle Database 12c、Oracle Database 11gリリース2 (11.2)と11gリリース1 (11.1)、およびOracle Database 10gリリース2 (10.2)と10gリリース1 (10.1)をサポートしています。

- Oracle ASM 12cには、Oracle Clusterware 12cが必要で、Oracle Database 12c、Oracle Database 11gリリース2 (11.2)、Oracle Database 11gリリース1 (11.1)、Oracle Database 10gリリース2 (10.2)および10gリリース1 (10.1)をサポートしています。

- Oracle Database 12cには、Oracle Clusterware 12cが必要です。
次に例を示します。

- Oracle Clusterware 12cをクラスタウェアとしてインストールしている場合、1つのノードでOracle Database 10gリリース1 (10.1)単一インスタンス・データベースを実行し、またクラスタで別個のOracle Real Application Clusters 10gリリース1 (10.1)、10gリリース2 (10.2)、およびOracle Real Application Clusters 11gリリース1 (11.1)データベースも実行できます。ただし、Oracle Clusterware 10gリリース2(10.2)をクラスタにインストールして、Oracle Real Application Clusters 11gをインストールすることはできません。Oracle Clusterware 10gリリース2(10.2)のクラスタ内のノードにOracle Database 11g(シングル・インスタンス)をインストールすることは可能です。

- 異なるリリースのOracle ASMおよびOracle Databaseを使用する場合、各製品の機能は、より古いリリースのソフトウェア機能に依存します。したがって、Oracle Clusterware 11gをインストールし、後でOracle ASMを構成し、Oracle Clusterwareを使用して既存のOracle Database 10gリリース2 (10.2.0.3)インストールをサポートする場合、Oracle ASM機能は、10gリリース2 (10.2.0.3)リリース・バージョンで使用可能な機能にのみ相当します。ディスク・グループのcompatible属性は、使用されているソフトウェアの適切なリリースに設定します。

関連項目:

ディスク・グループのcompatible属性の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

- クラスタでは、Oracle Database(シングル・インスタンスおよびOracle RACの両方)の複数のOracleホームを使用できます。Oracle RACデータベースのすべてのノードのOracleホームは同じである必要があります。

- Oracle ClusterwareとOracle Databaseのホームでは、属しているプライマリ・グループが同じであれば異なるユーザーを使用できます。

- Oracle Clusterware 12cでは、クラスタ内で実行できるOracle ASMのインストールは1つのみです。Oracle ASMは常にOracle Clusterwareと同じバージョンであり、Oracle Clusterwareは、Oracle Databaseのリリースと同じか、それ以上のリリースである必要があります。

- Oracle9iが稼働するOracle RACでは、Oracle9iのクラスタを実行する必要があります。UNIXシステムでは、HACMP、Serviceguard、Sun ClusterまたはVeritas SFを使用します。WindowsおよびLinuxシステムでは、Oracle Cluster Managerを使用します。Oracle RAC 10gをインストールするには、Oracle Clusterwareもインストールする必要があります。

- 連携して動作する保証がないかぎり、同じサーバーでは異なるクラスタ・ソフトウェアを実行しないことをお薦めします。クラスタの一部であるサーバーにOracle RACを追加する場合は、Oracle Clusterwareに移行するか、次のことを確認します。

- 実行するクラスタウェアは、Oracle RAC 12cで動作するようにサポートされています。

- Oracle Clusterwareと他のベンダーのクラスタウェアが連携して動作するための適切なオプションをインストール済であることを確認します。

関連項目:

バージョンの互換性の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

Oracle Clusterwareのアップグレードおよびパッチ適用の概要

Oracleでは、アウトオブプレース・アップグレードがサポートされます。これは、Oracle Clusterware 12cが専用の新しいGridホームを持つ必要があるためです。Oracle Clusterware 12cの場合、Oracleでは、インプレースまたはアウトオブプレース・パッチ適用がサポートされます。Oracleでは、インプレース・パッチ適用についてはパッチ・バンドルおよび個別パッチがサポートされていますが、アウトオブプレース・アップグレードについてはパッチ・セットおよびメジャー・ポイント・リリースのみがサポートされています。

インプレース・パッチ適用によって、Oracle Clusterwareソフトウェアは同じGridホームの新しいバージョンに置き換えられます。アウトオブプレース・アップグレードの場合は、同じソフトウェアの両方のバージョンがノードに同時に存在しますが(Gridホームは異なる)、アクティブなバージョンは1つのみです。

ローリング・アップグレードでは、停止時間が回避され、ソフトウェアが新しいバージョンにアップグレードされる間、Oracle Clusterwareの連続的な可用性が確保されます。Oracle Clusterware 12cにアップグレードすると、Oracle ClusterwareおよびOracle ASMバイナリは、Oracle Grid Infrastructureという単一バイナリとしてインストールされます。Oracle Clusterwareは、Oracle Clusterware 10gおよびOracle Clusterware 11gからローリング方式でアップグレードできますが、Oracle ASMはOracle Database 11gリリース1(11.1)からの場合のみローリング方式でアップグレードできます。

Oracleでは、クラスタの一部のノードが停止している場合の強制アップグレードがサポートされます。

関連項目:

Oracle Clusterwareのアップグレード手順の詳細は、プラットフォーム固有の『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

Oracle Clusterware環境の管理の概要

次のリストに、Oracle Clusterware環境を管理するツールとユーティリティを示します。

- Cluster Health Monitor (CHM): Cluster Health Monitorは、オペレーティング・システムおよびクラスタ・リソースに関連した低下および障害を検出および分析して、ノードの削除など、Oracle ClusterwareおよびOracle RACの数多くの問題について詳細情報をユーザーに提供します。このツールは、オペレーティング・システム・リソースの消費状況を、ノード、プロセスおよびデバイス・レベルで継続的に追跡します。また、クラスタ全体のデータを収集し分析します。リアルタイム・モードでは、しきい値に達すると、ツールによってユーザーにアラートが表示されます。根本原因分析のため、履歴データを再生し、障害発生時に何が起きていたのかを理解できます。

関連項目:

CHMの詳細は、「クラスタ状態モニター」を参照してください

- クラスタ検証ユーティリティ(CVU): CVUは、クラスタとOracle RAC固有の様々なコンポーネントの検証に使用するコマンドライン・ユーティリティです。CVUを使用して、共有ストレージ・デバイス、ネットワーク構成、システム要件、Oracle Clusterware、およびオペレーティング・システムのグループやユーザーを検証します。
CVUをインストールして使用し、インストール前およびインストール後のクラスタ環境をチェックします。CVUは、Oracle ClusterwareおよびOracle RACコンポーネントのインストール前およびインストール時に特に役立ち、これによって、現在の構成がインストールの最小要件を満たしていることを確認できます。また、CVUを使用して、ノードの追加や削除などの管理タスクの完了後にその構成を検証できます。

関連項目:

CVUを手動でインストールする方法の詳細は、使用するプラットフォーム固有のOracle ClusterwareおよびOracle RACのインストレーション・ガイドを参照してください。CVUの使用方法の詳細は、「クラスタ検証ユーティリティのリファレンス」を参照してください。

- Oracle Cluster Registryコンフィギュレーション・ツール(OCRCONFIG): OCRCONFIGは、OCR管理のためのコマンドライン・ツールです。また、OCRCHECKおよびOCRDUMPユーティリティを使用して、OCRに影響を及ぼす構成の問題のトラブルシューティングを実行できます。

関連項目:

OCRの管理方法の詳細は、「Oracle Clusterwareの管理」を参照してください。

- Oracle Clusterware制御(CRSCTL): CRSCTLは、Oracle Clusterwareを管理するためのコマンドライン・ツールです。一般的なクラスタウェア管理、データベース以外のアプリケーション用の個々のリソース、構成ポリシーおよびサーバー・プールの管理には、CRSCTLを使用します。
Oracle Clusterware 12cには、クラスタ対応コマンドが導入されています。これらのコマンドを使用すると、操作に応じて、クラスタ内の別のノードに対して、またはクラスタ内のすべてのノードに対して、クラスタ内の任意のノードから操作を実行できます。

crsctlコマンドを使用すると、クラスタ・リソースを監視したり(crsctl status resource)、サーバー、および接頭辞ora.*を持つ名前のサーバー・プール以外のサーバー・プールを監視および管理できます(crsctl status server、crsctl status serverpool、crsctl modify serverpool、crsctl relocate serverなど)。ノード固有のオプション引数-nまたは-allを使用して、クラスタ全体でOracle高可用性サービスを管理することもできます(crsctl start | stop | enable | disable | config crs)。また、CRSCTLを使用して個々のノードでOracle Clusterwareを管理できます(crsctl start | stop | enable | disable | config crs)。

関連項目:

- crsctlコマンドを使用したOracle Clusterwareの管理の詳細は、「Oracle Clusterwareの管理」を参照してください。

- CRSCTLコマンドの詳細なリストは、「Oracle Clusterware制御(CRSCTL)ユーティリティ・リファレンス」を参照してください。

- Oracle Enterprise Manager: Oracle Enterprise Managerには、単一インスタンス環境とOracle RACデータベース環境の両方を管理するために、Cloud ControlインタフェースとGrid Control GUIインタフェースの両方があります。また、Oracle Clusterware、およびOracle Grid Infrastructureのインストールで構成したすべてのコンポーネントを管理するGUIインタフェースもあります。Oracle Enterprise Managerを使用して管理タスクを実行することをお薦めします。

関連項目:

Oracle Enterprise Managerを使用したOracle Clusterwareの管理の詳細は、『Oracle Database 2日でReal Application Clustersガイド』、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』およびOracle Enterprise Managerのオンライン・ドキュメントを参照してください。

- Oracle Interface Configurationツール(OIFCFG):OIFCFGシングル・インスタンスのOracle DatabaseとOracle RAC環境の両方のコマンドライン・ツールです。OIFCFGを使用して、ネットワーク・インタフェースのコンポーネントへの割当ておよび割当て解除を行います。また、OIFCFGを使用して、特定のネットワーク・インタフェースを使用するようにコンポーネントを設定したり、コンポーネントの構成情報を取得できます。

関連項目:

Oracle Interface Configurationツール(OIFCFG)のコマンド・リファレンス

- サーバー制御ユーティリティ(SRVCTL): SRVCTLは、クラスタ内のデータベース、サービス、リスナーなどのOracleリソースを管理するためのコマンドライン・インタフェースです。

注意:

接頭辞ora.*を持つ名前のサーバー・プールのみ、SRVCTLを使用して管理できます。

関連項目:

SRVCTLの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

グリッド環境でのOracle Clusterwareのクローニングおよび拡張の概要

ノードのクローニングは、新しいクラスタを作成する場合に推奨される方法です。クローニング・プロセスでは、Oracle Clusterwareソフトウェアのイメージが同様のハードウェアおよびソフトウェアを持つ他のノードにコピーされます。クローニングを使用して、同じ構成で複数のクラスタを迅速に作成します。クローニングを使用する前に、プラットフォーム固有のOracle Clusterwareのインストレーション・ガイドに記載された手順を使用して、1つ以上のノードにOracle Clusterwareホームを正常にインストールする必要があります。

新規インストールの場合またはインストールするクラスタが1つのみの場合は、Oracle Universal InstallerやOracle Enterprise ManagerのProvisioning Pack機能など、自動化された対話型のインストール方法を使用することをお薦めします。これらの方法ではインストールのチェックが実行されるため、正常にインストールできます。クラスタ内のノードに対してOracle Clusterwareを追加または削除するには、addnode.shスクリプトおよびrootcrs.plスクリプトを使用します。

関連項目:

- クローニング手順の詳細は、「Oracle Clusterwareのクローニング」を参照してください。

- Provisioning Packの詳細は、Oracle Enterprise Managerのオンライン・ヘルプを参照してください。

- クラスタ・ノードの追加および削除

Oracle Clusterwareの高可用性フレームワークおよびAPIの概要

Oracle Clusterwareでは、クラスタで実行されるアプリケーションまたはプロセスを管理できる、CLSCRS APIという多くの高可用性Application Program Interfaceが提供されます。このCLSCRS APIによって、すべてのアプリケーションで高可用性を実現できます。

関連項目:

CLSCRS APIの詳細は、「Oracle Clusterware C Application Program Interface」を参照してください。

アプリケーションが実行されているクラスタ内のノードとは関係なくユーザーがアプリケーションにアクセスできるように、アプリケーションのVIPアドレスを定義できます。これは、アプリケーションVIPとも呼ばれます。複数のアプリケーションVIPを定義できます。通常、実行中のアプリケーションごとに1つのアプリケーションVIPを定義します。アプリケーションVIPは、Oracle Clusterwareにより定義されたアプリケーション・リソースに依存することでアプリケーションに関連付けられます。

Oracle Clusterwareコンポーネントは、高可用性を維持するために、定義されている高可用性規則に従い、ステータスの変化に応じてアプリケーションおよびプロセスを再起動できます。アプリケーションをOracle Clusterwareに登録し、クラスタウェアがアプリケーション・プロセスを起動、停止または再配置できるように構成することによって、Oracle Clusterwareの高可用性フレームワークを使用できます。これを行うには、Oracle Clusterwareを使用して、アプリケーションを監視、再配置および再起動するプロファイルを作成し、カスタム・アプリケーションの高可用性を確保します。

クラスタの時間管理の概要

クラスタ時刻同期化サービス(CTSS)は、Oracle Clusterwareの一部としてインストールされ、有効にしろ破損しているにしろ、システム上で時刻同期化サービスまたは時刻同期化サービス構成が検出されると、オブザーバ・モードで実行されます。たとえば、etc/ntp.confファイルがクラスタ内の任意のノードに存在する場合、時刻同期化ソフトウェアが実行されていないときでも、CTSSはオブザーバ・モードで実行されます。

時刻同期化サービスまたは時刻同期化サービス構成がクラスタ内のどのノードにもないことをCTSSが検出した場合、CTSSはアクティブ・モードになり、クラスタの時刻管理を引き継ぎます。

CTSSがアクティブ・モードで実行されていて、NTP以外の別の時刻同期化ソフトウェアが実行されている場合、etc/ntp.confというファイルを作成することで、CTSSがオブザーバ・モードで実行されるように変更することができます。CTSSは、オブザーバ・モードの変更に関するアラート・ログにエントリを記録します。

ノードがクラスタに追加されると、CTSSではアクティブ・モードの場合、これらのノードの時刻がクラスタ内の1つのノードにある参照クロックと比較されます。2つの時刻の間に不一致があり、かつ、特定のステップ制限内に不一致がある場合、CTSSは、ステップ時間の同期を実行します。これは、基準と同期させるために、クラスタを結合するノードの時刻を前または後に移動させることです。

クラスタ内のノードのクロックは、様々な理由のために定期的に参照クロック(時刻CTSSが基準として使用し、クラスタ内で最初に起動するノードのクロック)と非同期になります。この場合、CTSSは時刻の同期化(Slew)を実行し、参照システムの時刻と同期するまで、ノードのシステムの時刻を速めたり、遅くします。この時刻の同期方法では、CTSSによって時刻が戻されることがないため、システムの時刻における単調増加が保証されます。

Oracle Clusterwareを起動したときに、CTSSがアクティブ・モードで実行されており、時刻の不一致が段階制限(制限は24時間)を超えている場合、CTSSはアラート・ログにアラートを生成して終了し、Oracle Clusterwareの起動は失敗します。クラスタに追加したノードの時刻をクラスタと同期するように手動で調整する必要があり、その後、Oracle Clusterwareを起動してCTSSでノードの時刻を管理することができます。

時刻の同期化(Slew)を実行する場合、CTSSでは参照クロックと同期するために時刻が戻されることはありません。CTSSによって定期的にアラート・ログにアラートが書き込まれ、これには、ノードが参照クロックと同期し続けるようにCTSSによって時刻が調整される頻度に関する情報が含まれます。

CTSSは、次の場合にOracle Clusterwareアラート・ログおよびsyslogにエントリを書き込みます。

- 時刻の変更を検出したとき

- 参照ノードとの大きな時間の違いを検出したとき

- モードがオブザーバからアクティブに切り替わるとき、またはその逆のとき

クラスタ内の時刻を同期させるためにCTSSを実行すると、Oracle Clusterwareの問題のトラブルシューティングに役立ちます。これは、様々なノードでのイベントの順序の時間オフセットを考慮に入れる必要がないためです。

クラスタの時間管理のアクティブ化および非アクティブ化

クラスタのCTSSをアクティブ化するには、クラスタ内のすべてのノードでベンダーの時刻同期サービスを停止し、構成を解除する必要があります。CTSSは、この操作を検出し、クラスタの時間管理を引き受けます。

たとえば、NTPの構成を解除するには、etc/ntp.confファイルを削除するか、名前を変更する必要があります。

同様に、クラスタのCTSSを非アクティブ化するには、次の手順を実行します。

1. クラスタ内のすべてのノードでベンダーの時刻同期サービスを構成します。CTSSは、この変更を検出し、オブザーバ・モードに戻ります。

2. crsctl check ctssコマンドを使用して、CTSSがオブザーバ・モードで動作していることを確認します。

3. クラスタ内のすべてのノードでベンダーの時刻同期サービスを起動します。

4. cluvfy comp clocksync -n allコマンドを使用して、時刻同期サービスが動作していることを検証します。

関連項目:

Oracle ClusterwareのNTP構成またはCTSSを使用するための無効化の詳細は、ご使用のプラットフォーム固有の『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

2 Oracle Clusterwareの管理

この章では、Oracle Clusterwareの管理方法について説明します。次のトピックが含まれています:

- ロール別管理

- グリッド・ネーミング・サービスの概要

- 構成ウィザードを使用したOracle Grid Infrastructureの構成

- 障害分離のためのIPMIの構成

- 手動構成ネットワーク上のネットワーク・アドレスの理解

- グリッド・ネーミング・サービスの管理

- DNSによるクラスタの名前解決をGNSにローリング変換

- 手動構成システム上のネットワーク・アドレスの変更

ロール別管理

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

- ロール別管理について

- クラスタ内のクラスタ管理者の管理

- 水平ロール区分の構成

ロール別管理について

ロール別管理は、必要に応じてリソースへのアクセスを提供したり制限するために、ユーザーが実装できる機能であり、サーバー・プールまたはリソースに対する権限を設定することで、複数のアプリケーションおよびデータベースが、同じクラスタ・リソースおよびハードウェア・リソースを協調的に共有できるようになります。デフォルトでは、この機能はインストール時に実装されません。

次の2つの方法のいずれかで、ロール別管理を実装できます。

- 垂直実装(レイヤー間)は、技術スタック内の様々なレイヤーで使用される異なるオペレーティング・システム・ユーザーおよびグループに基づいたロール区分手法です。サーバー・プールおよびリソースに対する権限は、アクセス制御リストを使用して、スタック内の各レイヤーの異なるユーザー(およびグループ)に付与されます。Oracle Automatic Storage Management(ASM)でのロール区分の設定は、Oracle Grid Infrastructureのインストールの一部として、特定のロールのオペレーティング・システム・グループの細かい割当てに基づいて提供されます。

- 水平実装(1つのレイヤー内)は、サーバー・プールおよびポリシー管理データベースまたはアプリケーションに割り当てられたアクセス制御リストを使用して付与されるリソースに対するアクセス権限を使用して、1つのレイヤー内のリソース・アクセスを制限するロール区分手法です。

たとえば、Oracle Grid Infrastructureのインストールおよび2つのデータベース・サーバー・プールの作成を実行するための、gridという名前のオペレーティング・システム・ユーザーと、プライマリ・オペレーティング・システム・グループoinstallを検討します。オペレーティング・システム・ユーザーouser1およびouser2は、サーバー・プール内で操作できる必要がありますが、サーバー・プールを変更できないようにして、他のサーバー・プールからハードウェア・リソースを誤って、または意図的に除去されないようにします。

各ポリシー・セットを構成して、データベース・ソフトウェアおよびデータベースを配備する前に、サーバー・プールを構成できます。

関連項目:

詳細は、「クラスタ構成ポリシーおよびポリシー・セットの概要」を参照してください。

Oracle Clusterwareのロール別管理は、現在はクラスタ管理者に依存していません(下位互換性は維持されています)。デフォルトでは、Oracle Grid Infrastructureホーム(Gridホーム)にOracle Clusterwareをインストールしたユーザーおよびrootは、永続的なクラスタ管理者となります。プライマリ・グループ権限(デフォルトではoinstall)により、データベース管理者はDatabase Configuration Assistant (DBCA)を使用して新しく作成したサーバー・プールにデータベースを作成できますが、ロール区分は有効になりません。

注意:

クラスタに最初にサーバー・プールを作成する前にロール区分を有効にすることをお薦めします。構成ポリシーおよび各ポリシー・セットを使用してサーバー・プールを作成および管理します。ACL属性に格納されている各サーバー・プールのアクセス権限の詳細は、表3-1を参照してください。

クラスタ内のクラスタ管理者の管理

クラスタにサーバー・プールを作成する機能は、クラスタ管理者に制限されています。以前のリリースでは、デフォルトでは、登録されているすべてのオペレーティング・システム・ユーザーがクラスタ管理者とみなされましたが、このデフォルトは必要に応じてcrsctl add | delete crs administratorコマンドを使用して変更できました。ただし、このリリースではこれらのコマンドの使用は非推奨であり、かわりに、ポリシー・セットのアクセス制御リスト(ACL)を使用してサーバー・プールの作成機能を制御する必要があります。

原則として、サーバー・プールを作成する権限を持つには、オペレーティング・システム・ユーザー、またはそのユーザーがメンバーとして属するオペレーティング・システム・グループの読取り、書込みおよび実行権限がACL属性に設定されている必要があります。crsctl modify policyset –attr "ACL=value"コマンドを使用して、オペレーティング・システム・ユーザーおよびグループの権限を追加したり削除します。

水平ロール区分の構成

crsctl setpermコマンドを使用して、サーバー・プール、リソースまたはその両方に割り当てられるACLを使用した水平ロール区分を構成します。CRSCTLユーティリティは、パスGrid_home/binにあります(Grid_homeは、クラスタ・ホームのOracle Grid Infrastructureです)。

コマンドには次の構文を使用し、アクセス制御(ACL)文字列はイタリックで示します。

crsctl setperm {resource | type | serverpool} name {-u acl_string |
-x acl_string | -o user_name | -g group_name}

フラグ・オプションは、次のとおりです。

- -u: エンティティACLの更新

- -x: エンティティACLの削除

- -o: エンティティ所有者の変更

- -g: エンティティ・プライマリ・グループの変更

ACL文字列は、次のとおりです。

{ user:user_name[:readPermwritePermexecPerm]   |
group:group_name[:readPermwritePermexecPerm] |
other[::readPermwritePermexecPerm] }

説明:

- user: ユーザーACL(指定したユーザーに付与されるアクセス権限)を指定します。

- group: グループACL(指定したグループ・メンバーに付与される権限)を指定します。

- other: 他のACL(特定のアクセス権限は付与されないユーザーまたはグループに付与されるアクセス権)を指定します。

- readperm: 読取り権限の場所(rは権限を付与、-は権限を禁止)

- writeperm: 書込み権限の場所(wは権限を付与、-は権限を禁止)

- execperm: 実行権限の場所(xは権限を付与、-は権限を禁止)

たとえば、グループpersonnelに対して、psftというサーバー・プール上の権限を設定し、管理ユーザーが読取り/書込み/実行権限を持ち、personnelグループのメンバーが読取り/書込み権限を持ち、グループ以外のユーザーにはアクセス権が付与されないようにするには、次のコマンドをrootユーザーとして入力します。

# crsctl setperm serverpool psft -u user:personadmin:rwx,group:personnel:rw-,
other::---

グリッド・ネーミング・サービスの概要

アドレス解決にグリッド・ネーミング・サービス(GNS)を使用するには、次の項を参照してください。

- GNSおよびGNS仮想IPアドレスのネットワーク管理タスク

- グリッド・ネーミング・サービス構成オプションの理解

GNSおよびGNS仮想IPアドレスのネットワーク管理タスク

GNSを実装するには、ネットワーク管理者がDNSを構成してクラスタのドメインを設定し、そのドメイン解決をGNS VIPに委譲する必要があります。別のドメインを使用するか、クラスタに既存のドメインのサブドメインを作成できます。

GNSは、そのクラスタ・ノードのホスト名の一部であるクラスタ名と個別のノード識別子を使用してノードを区別するため、クラスタAのクラスタ・ノード123とクラスタBのクラスタ・ノード123を区別することができます。

ただし、手動でホスト名を構成する場合、GNSに委譲するサブドメインにサブドメインがあってはなりません。たとえば、サブドメインmydomain.example.comをGNSに委譲して解決する場合、other.mydomain.example.comドメインがあってはなりません。GNSが排他的に使用するGNSにサブドメインを委譲することをお薦めします。

注意:

Oracle Flex ASMまたはOracle Flex Clusterなどで静的なアドレス変換を行う構成では、DNSに委譲せずにGNSを使用できます。ただし、DHCPを使用して住所を割り当てる場合、GNSには委譲先となるドメインが必要です。

例2-1は、myclustergns.example.comというドメインをGNS VIPアドレス10.9.8.7に委譲するために必要なDNSエントリを示しています。

関連項目:

GNSにおけるネットワーク・ドメインおよび委譲に関する詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

GNSデーモンおよびGNS VIPは、サーバー・クラスタの1つのノードに対して実行されます。GNSデーモンは、ポート53を使用しているGNS VIPでDNSリクエストをリスニングします。Oracle Clusterwareによって、GNSデーモンおよびGNS VIPはいつでも使用できるように管理されます。GNSデーモンを実行しているサーバーに障害が発生した場合、Oracle ClusterwareはGNSサーバーおよびGNS VIPを、正常に動作するクラスタ・メンバー・ノードにフェイルオーバーします。クラスタがOracle Flex Cluster構成である場合、Oracle Clusterwareは、GNSデーモンおよびGNS VIPをハブ・ノードにフェイルオーバーします。

注意:

Oracle Clusterwareは、GNSアドレスを他のクラスタにフェイルオーバーしません。フェイルオーバーは、同じクラスタのメンバーのみに実行されます。

関連項目:

Oracle Flex ClusterおよびGNSの詳細は、「Oracle Flex Cluster」を参照してください。

例2-1 DNSエントリ

# Delegate to gns on mycluster
mycluster.example.com NS myclustergns.example.com
#Let the world know to go to the GNS vip
myclustergns.example.com. 10.9.8.7

グリッド・ネーミング・サービス構成オプションの理解

GNSは、自動または標準のクラスタ・アドレス構成モードのいずれかで実行できます。自動構成は、IPv4アドレスのDynamic Host Configuration Protocol (DHCP)またはIPv6アドレスのStateless Address Autoconfiguration Protocol (autoconfig) (RFC 2462およびRFC 4862)のいずれかを使用します。

この項には次のトピックが含まれます:

- アドレスの自動構成オプション

- アドレスの静的な自動構成オプション

- アドレスの共有GNSオプション

アドレスの自動構成オプション

自動構成の場合、DNS管理者はGNSサブドメインを使用して解決するDNS上のドメインを委譲します。Oracle Universal Installerは、インストールまたは構成中にOracle Grid Infrastructureを使用できるよう、指定された各クラスタ・メンバー・ノード・インタフェースに名前を割り当てます。SCANおよびその他すべてのクラスタ名とアドレスは、DNS上ではなくクラスタ内で解決されます。

自動構成は次の方法のいずれかで実行されます。

- IPv4アドレスの場合、Oracle Clusterwareは、Oracle Grid Infrastructureに割り当てられた各クラスタ・メンバー・ノード・インタフェースに一意の識別子を割り当て、GNSに委譲されたサブドメイン内のこれらの識別子を使用して名前を生成します。DHCPサーバーはこれらのインタフェースにアドレスを割り当て、GNSは、IPv4 DHCP プールから借用したIPv4アドレスに関連する名前とアドレスを維持します。

- IPv6アドレスの場合、Oracle Clusterwareは、autoconfigを使用して自動的にアドレスを生成します。

アドレスの静的な自動構成オプション

静的な構成では、委譲されるサブドメインはありません。DNS管理者はGNS VIPを構成して、DNS上で構成された名前とアドレスに解決し、また、DNS管理者はSCAN名を構成して、クラスタのこれらの静的なアドレスに解決します。また、DNS管理者は、各クラスタ・メンバー・ノードに静的なパブリックIP名とアドレスおよび仮想IP名とアドレスを構成します。DNS管理者は、クラスタに追加された各ノードに新しいパブリックおよび仮想IP名とアドレスを構成する必要もあります。すべての名前とアドレスはDNSによって解決されます。

静的なVIPアドレスおよびSCANを使用したサブドメインの委譲がないGNSでは、クラスタ内に名前解決情報が必要なOracle Flex ClusterおよびCloudFS機能を使用できます。ただし、ノードを追加したり変更する場合は、手動で管理タスクを実行する必要があります。

アドレスの共有GNSオプション

動的な構成の場合、GNSを構成して、あるクラスタに名前解決をしたり、複数のクラスタに名前を通知できるため、単一のGNSインスタンスで、登録された複数のクラスタに対して名前解決を実行できます。このオプションは共有GNSと呼ばれます。

注意:

GNSが提供するクラスタのセット内のすべてのノード名は一意である必要があります。

共有GNSは標準的なGNSと同じサービスを提供し、名前解決を受け取るクライアント側でも同様に表示されます。相違点は、1つのクラスタで動作するGNSデーモンは、GNSに名前解決を委譲したドメイン内のすべてのクラスタに対して名前解決を提供するように構成される点、およびGNSをSRVCTLコマンドを使用して一元的に管理できる点です。共有GNS構成を使用すると、Oracle Grid Infrastructureクラスタのエンタープライズ全体に対するネットワーク管理者タスクを最小限に抑えることができます。

マルチクラスタ環境でのアドレス解決に共有GNSを使用するクラスタでは、静的なアドレス構成は使用できません。共有GNSには自動アドレス構成が必要であり、DHCPまたはIPv6ステートレス・アドレス自動構成のいずれかによって割り当てられるアドレスを使用します。

Oracle Universal Installerを使用すると、共有GNSクライアントまたはサーバーのGNSを使用して、あるいは検出に使用するGNSを使用して、静的アドレスを構成できます。

構成ウィザードを使用したOracle Grid Infrastructureの構成

Oracle Grid Infrastructureのソフトウェアのみのインストールを実行した後、構成ウィザードを使用してソフトウェアを構成できます。このウィザードでは、crsconfig_params構成ファイルを簡単に編集できます。構成ウィザードでは、Oracle Grid Infrastructureのインストーラと同様に、ユーザーがウィザードで操作を行う前後にGridホームと入力の様々な検証が実行されます。

構成ウィザードでは、1つ以上のノードに新しいOracle Grid Infrastructureを構成するか、またはアップグレードされたOracle Grid Infrastructureを構成することができます。また、構成ウィザードはサイレント・モードでも実行できます。

注意:

- 構成ウィザードを実行する前に、Oracle Grid Infrastructureホームがカレントであり、必要なすべてのパッチが適用されていることを確認します。

- 以降の手順で構成ウィザードを起動する場合は、次のようにします。
LinuxおよびUNIXの場合は、次のコマンドを実行します。

Oracle_home/crs/config/config.sh

Windowsの場合は、次のコマンドを実行します。

Oracle_home\crs\config\config.bat

この項には次のトピックが含まれます:

- 単一ノードの構成

- 複数ノードの構成

- Oracle Grid Infrastructureのアップグレード

- サイレント・モードでの構成ウィザードの実行

単一ノードの構成

構成ウィザードを使用して単一ノードを構成するには、次の手順を実行します。

1. 次のように、構成ウィザードを起動します。

$ Oracle_home/crs/config/config.sh

2. 「インストール・オプションの選択」ページで、「クラスタ用のOracle Grid Infrastructureの構成」を選択します。

3. 「クラスタ・ノードの情報」ページで、ローカル・ノードと、それに対応するVIP名のみを選択します。

4. 残りのウィザード・ページで、引き続き情報を追加します。

5. 「サマリー」ページで入力を確認して、「終了」をクリックします。

6. 構成ウィザードの指示に従って、root.shスクリプトを実行します。

複数ノードの構成

注意:

構成ウィザードを起動する前に、次の点を確認します。

- Oracle Grid Infrastructureのソフトウェアがすべてのターゲット・ノードにインストールされている。

- ソフトウェアが、すべてのノードに対して同じGrid_homeパスにインストールされている

- すべてのノードで、ソフトウェアの階層(パッチも含む)が同一である。

構成ウィザードを使用して複数ノードを構成するには、次の手順を実行します。

1. 次のように、構成ウィザードを起動します。

$ Oracle_home/crs/config/config.sh

2. 「インストール・オプションの選択」ページで、「クラスタ用のOracle Grid Infrastructureの構成」を選択します。

3. 「クラスタ・ノードの情報」ページで、構成するノードと、それに対応するVIP名を選択します。構成ウィザードは、選択されたノードを検証し、その準備が整っていることを確認します。

4. 残りのウィザード・ページで、引き続き情報を追加します。

5. 「サマリー」ページで入力を確認して、「終了」をクリックします。

6. 構成ウィザードの指示に従って、root.shスクリプトを実行します。

Oracle Grid Infrastructureのアップグレード

構成ウィザードを使用して、クラスタのOracle Grid Infrastructureをアップグレードする手順は次のとおりです。

1. 構成ウィザードを起動します。

$ Oracle_home/crs/config/config.sh

2. 「インストール・オプションの選択」ページで、「Oracle Grid Infrastructureのアップグレード」を選択します。

3. 「Oracle Grid Infrastructureノードの選択」ページで、アップグレードするノードを選択します。

4. 残りのウィザード・ページで、引き続き情報を追加します。

5. 「サマリー」ページで入力を確認して、「終了」をクリックします。

6. 構成ウィザードの指示に従って、rootupgrade.shスクリプトを実行します。

注意:

Oracle Restartは、構成ウィザードを使用してアップグレードできません。

関連項目:

Oracle Restartの手順の詳細は、ご使用のプラットフォームの『Oracle Databaseインストレーション・ガイド』を参照してください。

サイレント・モードでの構成ウィザードの実行

構成ウィザードをサイレント・モードで使用してノードを構成またはアップグレードするには、コマンドラインで-silent -responseFile file_nameを指定して構成ウィザードを起動します。ウィザードは、レスポンス・ファイルを検証して構成を行います。レスポンス・ファイルで無効な入力を検出すると、構成ウィザードはエラーを表示して終了します。指示に従って、rootおよびconfigToolAllCommandsスクリプトを実行します。

障害分離のためのIPMIの構成

この項では、次の項目について説明します。

- 障害分離のためのIPMIの使用について

- IPMI用のサーバー・ハードウェアの構成

- CRSCTLを使用したIPMIベース障害分離のインストール後の構成

障害分離のためのIPMIの使用について

障害分離は、障害が発生したノードをクラスタの残りのノードから分離させ、障害が発生したノードでデータが失われるのを防ぐプロセスです。理想的なフェンシングには、Oracle Clusterwareまたはそのノードで実行されているオペレーティング・システムとの連携がなくても問題のノードを再起動できる外部メカニズムが含まれます。この機能を提供するために、Oracle Clusterware 12cでは、業界標準の管理プロトコルであるIntelligent Platform Management Interface仕様(IPMI)(Baseboard Management Controller(BMC)とも呼ばれる)をサポートしています。

通常、IPMIを使用する障害分離は、Oracle Grid Infrastructureのインストール時の「障害の分離のサポート」画面でIPMI構成のオプションが提示されたときに構成します。インストール時にIPMIを構成しない場合は、Oracle Clusterware制御ユーティリティ(CRSCTL)を使用してインストール後に構成できます(「CRSCTLを使用したIPMIベース障害分離のインストール後の構成」を参照)。

障害分離用にIPMIを使用するには、各クラスタ・メンバー・ノードに、IPMIバージョン1.5(Local Area Network (LAN)を介してIPMIがサポートされます)に対応するファームウェアが動作するIPMIデバイスを装備する必要があります。IPMIバージョン1.5ではLANを介したIPMIがサポートされています データベースの操作中、障害分離は、削除を行うクラスタ同期サービス・デーモンから障害が発生したノードのIPMIデバイスへのLANを介した通信によって行われます。IPMI-over-LANプロトコルは、インストール時に管理者から取得したユーザー名およびパスワードで保護される認証セッションに引き継がれます。

DHCPを使用してIPMIの動的IPアドレス割当てをサポートするには、クラスタ同期サービス・デーモンは、クラスタ同期サービスの起動時にローカルのIPMIデバイスと直接通信を行いIPMIデバイスのIPアドレスを取得する必要があります。(ただし、これはHP-UXおよびSolarisプラットフォームにはあてはまりません。これらのプラットフォームでは、IPMIデバイスに静的IPアドレスを割り当てる必要があります。)これは、各クラスタ・システムにインストールする必要があるIPMIドライバを介してIPMIデバイスと通信するIPMIプローブ・コマンド(OSD)を使用して行われます。

IPMIデバイスに静的IPアドレスを割り当てた場合、IPMIドライバは、クラスタ同期サービス・デーモンにとって必須ではありません。ただし、ipmitoolまたはipmiutilを使用してIPMIデバイスを構成するにはドライバが必要ですが、一部のプラットフォームでは管理コンソールを使用してこれを行うこともできます。

IPMI用のサーバー・ハードウェアの構成

IPMIドライバをインストールして有効にし、IPMIデバイスを構成します(ご使用のプラットフォームの『Oracle Grid Infrastructureインストレーション・ガイド』を参照)。

CRSCTLを使用したIPMIベース障害分離のインストール後の構成

この項では、次の項目について説明します。

- Oracle ClusterwareでのIPMIインストール後の構成

- CRSCTLを使用したIPMI構成の変更

- CRSCTLを使用したIPMI構成の削除

Oracle ClusterwareでのIPMIインストール後の構成

Oracle Clusterwareのインストール時にIPMIをインストールする場合は、障害分離を2つのフェーズで構成します。インストールを開始する前に、サーバー・オペレーティング・システムにIPMIドライバをインストールして有効にし、各ノードでIPMIハードウェア(IPアドレス・モード、管理資格証明など)を構成する必要があります(『Oracle Grid Infrastructureインストレーション・ガイド』を参照)。Oracle Clusterwareをインストールすると、インストーラによって、IPMI管理者のユーザーIDおよびパスワードが収集され、ノードのローカル記憶域の(OLRにある)Oracle Walletに格納されます。

サーバーの構成が完了したら、各クラスタ・ノードで次の手順を実行し、ノードにIPMI管理者およびパスワードを登録します。

注意:

IPMIがDHCPを使用してIPアドレスを取得するように構成されている場合は、IPMIをリセットするか、またはノードを再起動して、アドレスを取得するようにする必要がある可能性があります。

1. Oracle Clusterwareを起動します(起動すると、IPMIから現在のIPアドレスを取得できます)。これにより、起動時に必要となるクラスタウェアとIPMIの通信が可能であることが確認されます。

IPMIが構成される前にOracle Clusterwareが実行されていた場合は、Oracle Clusterwareを停止して再起動できます。または、IPMI管理ユーティリティを使用してIPMIのIPアドレスを取得してから、CRSCTLを使用して次のようなコマンドを実行することで、OLRにIPアドレスを格納します。

crsctl set css ipmiaddr 192.168.10.45

2. CRSCTLを使用して、crsctl set css ipmiadminコマンドを実行し、プロンプトにパスワードを指定することで、装備されているIPMI用に以前に作成したユーザーIDおよびパスワードをOLRに格納します。次に例を示します。

crsctl set css ipmiadmin administrator_name
IPMI BMC password: password

このコマンドでは、指定した資格証明が検証され、これを使用して別のクラスタ・ノードがローカルIPMIにアクセスできない場合は失敗します。

ハードウェアおよびオペレーティング・システムの構成を完了し、Oracle ClusterwareにIPMI管理者を登録した後、IPMIベースの障害分離は完全に機能します。

CRSCTLを使用したIPMI構成の変更

既存のIPMIベースの障害分離構成を変更するには(IPMIパスワードを変更したり、既存のインストールで障害分離用にIPMIを構成する場合など)、ご使用のプラットフォームに適したIPMI構成ツールでCRSCTLを使用します。たとえば、IPMIの管理者パスワードを変更するには、まず『Oracle Grid Infrastructureインストレーション・ガイド』で説明しているようにIMPI構成を変更してから、CRSCTLを使用してOLR内のパスワードを変更します。

Oracle Clusterwareで必要なIPMIの構成データはOCRのOracle Walletに保存されています。構成情報はセキュアなストアに保持されるため、この情報はOracle Clusterwareインストールの所有者アカウント(グリッド・ユーザー)が書き込む必要があり、このインストールのユーザーとしてログインする必要があります。

既存のIPMI構成を変更するには、次の手順を実行します。

1. crsctl set css ipmiadmin administrator_nameコマンドを入力します。たとえば、ユーザーIPMIadmの場合は、次のようになります。

crsctl set css ipmiadmin IPMIadm

管理者パスワードを指定します。Oracle Clusterwareでは、ローカルIPMIの管理者の名前およびパスワードがOLRに格納されます。

新しい資格証明が格納されると、Oracle Clusterwareは新しい資格証明を取得し、必要に応じて配布することができます。

2. crsctl set css ipmiaddr bmc_ip_addressコマンドを入力します。次に例を示します。

crsctl set css ipmiaddr 192.0.2.244

このコマンドでは、ローカルIPMIの新しいIPMI IPアドレスがOLRに格納され、IPアドレスの格納後、Oracle Clusterwareは、新しい構成を取得し、必要に応じて配布することができます。

3. crsctl get css ipmiaddrコマンドを入力します。次に例を示します。

crsctl get css ipmiaddr

このコマンドでは、ローカルIPMIのIPアドレスがOLRから取得され、コンソールに表示されます。

4. 次のように、OLRからローカルIPMIのIPMI構成情報を削除して、レジストリ・エントリを削除します。

crsctl unset css ipmiconfig

関連項目:

これらのCRSCTLコマンドの詳細は、「Oracle RAC環境のCRSCTLコマンド」を参照してください。

CRSCTLを使用したIPMI構成の削除

IPMIの使用を完全に停止する場合、またはIPMIの最初の構成がOracle Clusterwareをインストールしたユーザー以外のユーザーによって行われていた場合は、CRSCTLを使用してクラスタからIPMI構成を削除できます。後者に該当する場合、Oracle ClusterwareはIPMI構成データにアクセスできず、Oracle ClusterwareソフトウェアはIPMIを使用できないため、Oracle ClusterwareをインストールしたユーザーとしてIPMIを再構成する必要があります。

IPMIを完全に削除するには、次の手順を実行します。Oracle ClusterwareをインストールしたユーザーとしてIPMIを再構成するには、手順3および4を実行し、「CRSCTLを使用したIPMI構成の変更」の手順2および3を繰り返します。

1. 次のように、IPMIドライバを無効にして、起動時のインストールを回避します。

/sbin/modprobe –r

関連項目:

IPMIドライバの詳細は、ご使用のプラットフォームの『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

2. LAN経由でのアクセスを防ぐためにipmitoolまたはipmiutilを使用してローカルIPMIのIPMI-over-LANを無効にするか、またはIPMI管理者のユーザーIDとパスワードを変更します。

3. Oracle Clusterwareが実行中であることを確認し、次のコマンドでCRSCTLを使用し、OLRからIPMI構成データを削除します。

crsctl unset css ipmiconfig

4. rootとして次のコマンドを実行し、Oracle Clusterwareを再起動して、IPMI構成なしで実行するようにします。

# crsctl stop crs
# crsctl start crs

手動構成ネットワーク上のネットワーク・アドレスの理解

この項では、次の項目について説明します。

- ネットワーク・アドレスの構成要件の理解

- SCANアドレスおよびクライアント・サービス接続の理解

- 有効なノード・チェックにおけるSCANリスナーおよびサービス登録制限

ネットワーク・アドレスの構成要件の理解

Oracle Clusterware構成には次の2つ以上のインタフェースが必要です。

- ユーザーとアプリケーション・サーバーがデータベース・サーバー上のデータにアクセスするために接続するパブリック・ネットワーク・インタフェース

- ノード間の通信用のプライベート・ネットワーク・インタフェース。

IPv4、IPv6または指定されたネットワーク上での両タイプのアドレスのいずれかにネットワーク・インタフェースを構成できます。冗長なネットワーク・インタフェース(ボンディングまたはチーミングされたインタフェース)を使用する場合、Oracleでは、1つのインタフェースがIPv4アドレスをサポートしていますが、別のインタフェースがIPv6アドレスをサポートするような構成はサポートしていないので注意してください。冗長なインタフェースのネットワーク・インタフェースは、同じIPプロトコルを使用して構成する必要があります。

クラスタ内のすべてのノードには、同じIPプロトコル構成を使用する必要があります。すべてのノードがIPv4を使用するか、すべてのノードがIPv6を使用するか、すべてのノードがIPv4およびIPv6の両方を使用するかのいずれかです。クラスタ内の一部のノードがIPv6アドレスのみをサポートするように構成し、その他のノードがIPv4アドレスのみをサポートするように構成することはできません。

VIPエージェントは、ステートレス・アドレス自動構成(RFC 2462)を使用したIPv6の生成をサポートしており、これらのアドレスをGNSで通知します。srvctl config networkコマンドを実行して、DHCPまたはステートレス・アドレス自動構成が使用されているかを識別します。

この項には次のトピックが含まれます:

- IPv6アドレスのフォーマットについて

- 名前解決およびネットワーク・リソースのアドレス・タイプ

IPv6アドレスのフォーマットについて

Oracle Grid Infrastructureクラスタの各ノードは、同一ネットワーク上でIPv4アドレスとIPv6アドレスの両方をサポートできます。推奨されるIPv6アドレス書式は次のとおりです(各xは、16進文字を表します)。

xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx

IPv6アドレス・フォーマットはRFC 2460によって定義されます。Oracle Grid Infrastructureでは次のIPv6アドレスがサポートされます。

- RFC 4193によって定義されるグローバルIPv6アドレスとサイトローカルのIPv6アドレス。

注意:

RFC 1884で定義されているリンクローカルとサイトローカルのIPv6アドレスはサポートされません。

- IPアドレスの各フィールドの先頭に圧縮されたゼロを使用。

- 圧縮されて、「::」セパレータでで表現された空のフィールド。たとえば、IPv6アドレス2001:0db8:0000:0000:0000:8a2e:0370:7334を2001:db8::8a2e:370:7334と表記できます。

- 8ビットの断片を含む下位4つのフィールド(標準的なIPv4アドレス・フォーマット)。たとえば、2001:db8:122:344::192.0.2.33です。

名前解決およびネットワーク・リソースのアドレス・タイプ

srvctl config network(構成の確認)またはsrvctl status network(動的なネットワークに割り当てられた現在のアドレスの確認)およびsrvctl modify network -iptypeコマンドを個別に使用すると、ネットワーク構成を確認して、ネットワーク・アドレス・タイプを制御できます。

srvctl modify network -nettypeコマンドを使用してアドレスの取得方法を構成できます。-nettypeパラメータの値をdhcpまたはstaticに設定して、IPv4ネットワーク・アドレスの取得方法を制御します。または、-nettypeパラメータの値をautoconfigまたはstaticを設定して、IPv6アドレスの生成方法を制御します。

-nettypeと-iptypeパラメータは直接関連していませんが、-iptype ipv4と-nettype dhcpを同時に使用したり、-iptype ipv6と-nettype autoconfigを同時に使用できます。

注意:

ネットワークがIPv4サブネットとIPv6サブネットの両方で構成されている場合、-nettypeがmixedに設定されていると両方のサブネットがサポートされません。

-nettypeをmixedに設定した場合、IPv4からIPv6への移行はサポートされません。最初にstaticからdhcpへの移行が完了してから、IPv6をサブネットに追加する必要があります。

同様に、-nettypeをmixedに設定した場合、IPv6からIPv4への移行の開始はサポートされません。最初にautoconfigからstaticへの移行が完了してから、IPv4をサブネットに追加する必要があります。

関連項目:

- srvctl modify networkコマンドの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

- SRVCTLを使用したネットワーク・リソース属性設定のレポートおよび管理の詳細は、「クラスタ内のネットワーク・アドレス構成」を参照してください。

SCANアドレスおよびクライアント・サービス接続の理解

パブリック・ネットワーク・アドレスはクライアントにサービスを提供するために使用します。クライアントで単一クライアント・アクセス名(SCAN)アドレスに接続している場合は、クラスタに対してノードを追加または削除する際にパブリックおよび仮想IPアドレスを変更する必要がある場合がありますが、クライアントを新しいクラスタ・アドレスで更新する必要はありません。

注意:

listener.oraファイルを編集して、SCANおよびノード・リスナーのOracle Netリスナー・パラメータを変更できます。たとえば、TRACE_LEVEL_listener_nameを設定できます。ただし、リスナー・エージェントは動的にリスナー・エンドポイントを管理するため、プロトコル・アドレス・パラメータを設定して、リスニング・エンドポイントを定義することはできません。

関連項目:

listener.oraファイルの編集の詳細は、『Oracle Database Net Servicesリファレンス』を参照してください。

SCANはクラスタの別名のように機能します。ただし、SCANはクラスタ内の任意のノードで解決され、ノードのVIPアドレスとは異なり、SCANに接続するクライアントでは、クラスタに対してノードを追加または削除する際に、更新されたVIPアドレスは必要なくなります。SCANアドレスはクラスタ内のノード・アドレスではなくクラスタに解決されるため、SCANアドレス構成に影響を与えることなく、クラスタでノードを追加または削除できます。

SCANは完全修飾名(ホスト名およびドメイン)で、SCANに割り当てられたすべてのアドレスに解決するように構成されています。SCANは、DNSサーバー上のSCAN名に構成された3つのアドレスのいずれかに解決するか、GNS構成のクラスタ内に解決します。SCANリスナーはクラスタ内の任意のノードで実行できます。SCANは、クライアント構成が特定のデータベースを実行するノードに依存する必要がないように、データベースに位置の独立性を提供します。

Oracle Database 11gリリース2 (11.2)以上のインスタンスは、SCANリスナーにのみリモート・リスナーとして登録されます。アップグレードしたデータベースは、リモート・リスナーとしてSCANリスナーに登録されるとともに、引き続きすべてのノード・リスナーにも登録されています。

注意:

インストール時にSCAN名を指定するというOracle Clusterwareのインストール要件により、サーバーの/etc/hostsファイルを使用して1つ以上のIPアドレスを解決してこのインストール要件を回避し、SCANに必要なインフラストラクチャがない場合は、インストール後、SCANを無視し、VIPを使用してクラスタ内のデータベースに接続できます。

Oracleでは、SCANアドレスの削除はサポートされていません。

有効なノード・チェックにおけるSCANリスナーおよびサービス登録制限

有効なノード・チェックを使用して、SCANリスナーが登録を受け入れるノードおよびサブネットを指定できます。SRVCTLを使用してノードおよびサブネット情報を指定できます。SRVCTLは、ノードおよびサブネット情報をSCANリスナー・プロファイルに格納します。SCANリスナー・エージェントは、リソース・プロファイルからその情報を読み出し、listener.oraファイルに書き込みます。

非クラスタ化(シングル・インスタンス)データベースの場合、ローカル・リスナーは、ローカル・ノード上にあるデータベース・インスタンスのサービス登録のみ受け入れます。Oracle RAC 11g リリース2 (11.2)より前のOracle RACリリースでは、SCANリスナーを使用せず、ローカル・リスナーおよびREMOTE_LISTENERS初期化パラメータで定義されたリスナーを使用してサービスの登録を試行します。これらのデータベース・インスタンスでのサービス登録をサポートするには、Oracle RAC 12cのローカル・リスナーのvalid_node_check_for_registration_aliasのデフォルトの値をローカル・ノードではなく、SUBNETに設定します。ノード・リスナーに対する有効なノード・チェックの設定を変更するには、listener.oraファイルを変更します。

SCANリスナーは、リモート・ノード上のインスタンスのサービス登録を受け入れる必要があります。SCANリスナーの場合、valid_node_check_for_registration_aliasの値を、listener.oraファイルのSUBNETに設定すると、対応するリスナーが、同じサブネットを元にするサービス登録を受け入れることができます。

リスナーを構成して、別のサブネットのサービス登録を受け入れることができます。たとえば、SCANリスナーが別々のクラスタのインスタンス間で共有されており、これらのクラスタのノードが別々のサブネットにあるときに、この環境を構成します。この環境にノードを含めるには、srvctl modfiy scan_listener -invitednodes -invitedsubnetsコマンドを実行します。

このクラスタのOracle Notification Serviceネットワークと、候補インスタンスを持つクラスタを接続するには、srvctl modify nodeapps -remoteservers host:port,...コマンドも実行する必要があります。

関連項目:

- 『Oracle Real Application Clusters管理およびデプロイメント・ガイド』のsrvctl add scan_listener、srvctl modify nodeappsおよびsvrctl modify scan_listenerコマンド

- 『Oracle Database Net Services管理者ガイド』

グリッド・ネーミング・サービスの管理

SRVCTLを使用して、シングルクラスタおよびマルチクラスタの両方の環境でグリッド・ネーミング・サービス(GNS)を管理します。

この項には次のトピックが含まれます:

- SRVCTLを使用したGNSの起動と停止

- GNSサーバーまたはGNSクライアント・クラスタへのクラスタの変換

- 別のクラスタへのGNSの移動

注意:

GNSサーバーおよびクライアントは、同じオペレーティング・システムおよびプロセッサ・アーキテクチャを使用しているコンピュータで実行する必要があります。コンピュータ上のオペレーティング・システムが異なる、プロセッサ・アーキテクチャが異なる、またはその両方が異なる場合、GNSは実行できません。

関連項目:

この項で説明する手順で使用されるSRVCTLコマンドの使い方については、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

SRVCTLを使用したGNSの起動と停止

サーバー・クラスタでのGNSの起動と停止は、次のそれぞれのコマンドをrootとして実行します。

# srvctl start gns
# srvctl stop gns

注意:

クライアント・クラスタではGNSを起動したり停止できません。

GNSサーバーまたはGNSクライアント・クラスタへのクラスタの変換

GNSを実行していないクラスタをGNSサーバーまたはクライアント・クラスタに変換したり、サーバーおよびクライアント・クラスタのGNSクラスタ・タイプの構成を変更できます。

この項でのクラスタ・コンバージョンの使用例は、次のとおりです。

- 非GNSクラスタのGNSサーバー・クラスタへの変換

- 非GNSクラスタのクライアント・クラスタへの変換

- GNSを実行しているシングル・クラスタのサーバー・クラスタへの変換

- GNSを実行しているシングル・クラスタのGNSクライアント・クラスタへの変換

非GNSクラスタのGNSサーバー・クラスタへの変換

GNSを実行していないクラスタをGNSサーバー・クラスタに変換するには、rootとして次のコマンドを実行し、有効なIPアドレスおよびドメインを提供します。

# srvctl add gns -vip IP_address -domain domain

注意:

- GNS VIPを追加するときに、ドメインを指定する必要はありません。

- 現在別のGNSインスタンスで使用されているIPアドレスを指定することはできません。

- 構成済クラスタがGNSサーバー・クラスタとなるためには、DNS委任が必要です。

非GNSクラスタのクライアント・クラスタへの変換

GNSを実行していないクラスタをGNSクライアント・クラスタに変換するには、次の手順を実行します。

1. rootとしてログインし、サーバー・クラスタで次のコマンドを実行して、GNSインスタンス・クライアント・データ構成をファイルにエクスポートします。

# srvctl export gns -clientdata path_to_file

ファイルの完全修飾パスを指定する必要があります。

注意:

Oracle Universal Installerで生成するGNS構成クライアント・データ・ファイルを、共有GNSクライアントを作成する入力ファイルとして使用できます。

2. 次のコマンドをrootとして実行して、前述の手順で作成したファイルをクラスタ内のノードにインポートして、そのクラスタをクライアント・クラスタにします。

# srvctl add gns -clientdata path_to_file

注意:

GNSデータを含むファイルを、サーバー・クラスタからこのコマンドを実行するクラスタのノードにコピーします。

3. 次のようにSCAN名を変更します。

$ srvctl modify scan -scanname scan.client_clustername.server_GNS_subdomain

GNSを実行しているシングル・クラスタのサーバー・クラスタへの変換

GNSを実行しているシングル・クラスタをGNSサーバー・クラスタに変換するためには、何もする必要がありません。クライアント・クラスタが追加されると、自動的にサーバー・クラスタであるとみなされます。

GNSを実行しているシングル・クラスタのGNSクライアント・クラスタへの変換

この変換が処理されている間、現在のGNSに接続した状態を維持する必要があるため、手順は、単一のクラスタをサーバー・クラスタに変換する場合の手順よりも複雑になります。

1. GNSクライアント情報をファイルにエクスポートするには、サーバー・クラスタでrootとして次のコマンドを実行します。

# srvctl export gns -clientdata path_to_client_data_file

ファイルの完全修飾パスを指定する必要があります。

2. クライアント・クラスタに変換するクラスタのGNSを停止します。

# srvctl stop gns

注意:

変換の進行中は、GNSを使用した名前解決は使用できません。

3. GNSインスタンスをエクスポートするには、サーバー・クラスタでrootとして次のコマンドを実行します。

# srvctl export gns -instance path_to_file

ファイルの完全修飾パスを指定する必要があります。

4. GNSインスタンス・ファイルをインポートするには、サーバー・クラスタでrootとして次のコマンドを実行します。

# srvctl import gns -instance path_to_file

ファイルの完全修飾パスを指定する必要があります。

5. GNSインスタンスを開始するには、GNSインスタンス・ファイルをインポートしたノードで、rootとして次のコマンドを実行します。

# srvctl start gns

GNSインスタンスを起動するノードの名前を指定しないと、インスタンスはランダム・モードで開始します。

6. 次のコマンドを使用してGNSクライアント・クラスタからGNSを削除します。

# srvctl remove gns

7. 次のように、前のクラスタをクライアント・クラスタにします。

# srvctl add gns -clientdata path_to_client_data_file

注意:

GNSデータを含むファイルを、サーバー・クラスタからこのコマンドを実行するクラスタのノードにコピーします。

8. GNSクライアント・クラスタのSCANを変更して、次のようにクライアント・クラスタ名で修飾されたGNSサブドメインを使用するようにします。

srvctl modify scan -scanname scan_name.gns_domain

このコマンドでは、gns_domainの形式はclient clustername.server GNS subdomainです

別のクラスタへのGNSの移動

注意:

この手順には、サーバー・クラスタおよびクライアント・クラスタのダウンタイムが必要です。また、GNSクライアント・データを新しいサーバー・クラスタからOracle Flex ASMおよびGridホーム・サーバーまたはクライアントにインポートする必要があります。

クラスタ障害または管理計画のいずれかが理由で、別のクラスタをGNSサーバー・クラスタにする必要が出た場合、次の手順を使用してGNS別のクラスタに移動できます。

1. 現在のサーバー・クラスタのGNSインスタンスを停止します。

# srvctl stop gns

2. GNSインスタンス構成をファイルにエクスポートします。

# srvctl export gns -instance path_to_file

ファイルへの完全修飾パスを指定します。

3. 以前のサーバー・クラスタからGNS構成を削除します。

# srvctl remove gns

4. GNSを新しいクラスタに追加します。

# srvctl add gns -domain domain_name -vip vip_name

別の方法として、VIPのIPアドレスを指定できます。

5. 手順2で作成したファイルに格納されているインスタンス情報を使用して、次のように新しいサーバー・クラスタのGNSインスタンスを構成します。

# srvctl import gns -instance path_to_file

注意:

以前のサーバー・クラスタのGNSデータを含むファイルが、srvctl import gnsコマンドを実行するクラスタのノードに存在する必要があります。

6. 新しいサーバー・クラスタのGNSインスタンスを起動します。

# srvctl start gns

DNSによるクラスタの名前解決をGNSにローリング変換

名前解決にDNSを使用しているOracle Grid Infrastructureクラスタ・ネットワークを、GNSで名前解決を取得するグリッド・ネーミング・サービス(GNS)を使用したクラスタ・ネットワークに変換できます。

次の手順を使用して、標準的なDNS名前解決ネットワークからGNS名前解決ネットワークにダウンタイムなしで変換します。

関連項目:

GNSを構成する事前インストール手順を実行するには、ご使用のプラットフォームの『Oracle Grid Infrastructureのインストレーション・ガイド』を参照してください。

1. グリッド・ユーザー(grid)としてログインし、次のCluster Verification Utilityを使用して、クラスタをGNSに移動させるためのステータスを確認します(ここで、nodelistは、クラスタ・メンバー・ノードのカンマ区切りのリストです)。

$ cluvfy stage –pre crsinst –n nodelist

2. グリッド・ユーザーとして、次のコマンドを使用してGNS構成の整合性を確認します(ここで、domainは、解決をGNSに委譲されるドメインで、gns_vipはGNS VIPです)。

$ cluvfy comp gns -precrsinst -domain domain -vip gns_vip

3. rootユーザーとしてログインし、次のSRVCTLコマンドを使用してGNSリソースを構成します(ここで、domain_nameは、ネットワーク管理者が解決をGNSに委譲するよう構成したドメインで、ip_addressは、GNSがDNSリクエストをリスニングするIPアドレスです)。

# srvctl add gns -domain domain_name -vip ip_address

4. GNSを起動するには、次のコマンドを使用します。

# srvctl start gns

GNSが起動され、VIPおよびSCAN名を登録します。

5. 静的およびDHCPネットワーク・アドレスが混在するモードをサポートするために、rootとして、次のコマンドを使用してネットワークCRSリソースを変更します。

# srvctl modify network -nettype MIXED

必要なVIPアドレスがDHCPサーバーから取得され、決定されます。

6. グリッド・ユーザーとして、次のコマンドを入力して、Oracle Clusterwareが新しいGNS、動的アドレスおよびリスナー・エンドポイントを使用していることを確認します。

cluvfy stage -post crsinst -n all

7. 検証が正常に終了した後、GNSで解決されるSCANおよびVIPを使用するために、DNSで解決されるSCANまたはVIPを以前に使用したリモート・エンドポイントを変更します。

SCANを使用する各クライアントで、クライアントが使用するSCANを変更して、クライアントがGNSに委譲されたドメイン内のSCANを使用するようにします。

VIP名を使用している各クライアントでは、クライアントが同じサーバーVIP名およびGNSに移譲されたドメインのドメイン名を使用するように、各クライアントのVIP名を変更します。

8. rootとして次のコマンドを入力して、GNSサブドメインのSCAN名でシステムを更新します。

# srvctl modify scan -scanname scan_name.gns_domain

このコマンド構文のgns_domainは、この手順の手順3で入力したドメイン名です。

9. すべてのクライアントで動的アドレスが使用されたら、次のように静的アドレスを無効化します。

$ srvctl modify network -nettype DHCP

手動構成システム上のネットワーク・アドレスの変更

この項には次のトピックが含まれます:

- SRVCTLを使用した仮想IPアドレスの変更

- Oracle Clusterwareのプライベート・ネットワーク構成の変更

- SRVCTLを使用したネットワークの作成

- クラスタ内のネットワーク・アドレス構成

- SRVCTLを使用した、静的IPv4アドレスの静的IPv6アドレスへの変更

- SRVCTLを使用した、動的IPv4アドレスの動的IPv6アドレスへの変更

- IPv4ネットワークのIPv4およびIPv6ネットワークへの変更

- SRVCTLを使用したVIPアドレスのネットワークのIPv4からIPv6への移行

SRVCTLを使用した仮想IPアドレスの変更

Oracle Database 11gリリース2(11.2)より前のOracle DatabaseリリースのパブリックVIPアドレスを使用するように構成されたクライアントは、既存の接続アドレスを引き続き使用できます。SCANを使用するようにクライアントを構成することをお薦めしますが、ユーザーがSCANを使用する必要はありません。以前のバージョンのOracle Databaseは、アップグレードされるとSCANに登録され、クライアントでは、SCANを使用してこのデータベースへの接続を開始するか、接続用のVIPアドレスの使用を継続することができます。

クライアント接続用のVIPアドレスの使用を継続する場合、Oracle DatabaseおよびOracle ASMの実行が継続している間にVIPアドレスを変更できます。ただし、アドレスを変更する間は、サービスを停止する必要があります。VIPアドレスを再起動すると、サービスもノードで再起動します。

この手順を使用して、静的パブリック・サブネットでDHCPを使用するように変更することはできません。srvctl add network -subnetコマンドは、DHCPネットワークを作成するだけです。

関連項目:

srvctl add networkコマンドの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

注意:

次の説明は、VIPアドレスのみを変更する方法を示すもので、VIPアドレスに関連付けられたホスト名は変更しないことを想定しています。GNSを使用していて、VIPがDHCPを使用して割り当てられている場合は、VIPアドレスを手動で更新する必要はありません。

VIPアドレスのみを変更する場合、DNSおよびクライアントのhostsファイルを更新します。また、サーバーのhostsファイルがVIPアドレスに対して使用されている場合は、それも更新します。

VIPアドレスを変更するには、次の手順を実行します。

1. 次のコマンド構文を使用して、変更するVIPアドレスのノードで実行されているすべてのサービスを停止します。database_nameはデータベースの名前、service_name_listは停止するサービスのリスト、およびmy_nodeは変更するVIPアドレスのノードの名前です。

srvctl stop service -db database_name -service "service_name_list" -node node_name

次の例では、-dbオプションでデータベース名(grid)を指定し、適切なノード(mynode)上のサービス(sales,oltp)を指定しています。

$ srvctl stop service -db grid -service "sales,oltp" -node mynode

2. srvctl config vipコマンドを実行して、VIPアドレスの現在のIPアドレスを確認します。このコマンドにより、ネットワーク・インタフェースの1つにバインドされた現在のVIPアドレスが表示されます。node03-vipという名前のVIPに構成されたVIPアドレスの例を次に示します。

$ srvctl config vip -vipname node03-vip
VIP exists: /node03-vip/192.168.2.20/255.255.255.0/eth0

3. srvctl stop vipコマンドを使用してVIPリソースを停止します。

$ srvctl stop vip -node node_name

4. LinuxまたはUNIXシステムでifconfig -aコマンドを実行(Windowsシステムの場合はipconfig /allコマンドを発行)して、VIPリソースが実行されていないことを確認し、インタフェース(この例ではeth0:1)が出力に表示されていないことを確認します。

5. LinuxおよびUNIXシステムではすべてのノードの/etc/hostsファイルに、Windowsシステムでは%windir%\system32\drivers\etc\hostsファイルに、必要なすべての変更を加え、DNSを適切に変更して、新しいIPアドレスを古いホスト名に関連付けます。

6. VIPリソースを変更する前に、デフォルト・ネットワークに異なるサブネットまたはネットワーク・インタフェース・カードを使用するには、srvctl modify network -subnet subnet/netmask/interfaceコマンドをrootとして使用して、ネットワーク・リソースを変更する必要があります(subnetは新しいサブネット・アドレス、netmaskは新しいネットマスク、interfaceは新しいインタフェースです)。サブネットの変更後、次の手順で説明するとおり、各ノードのVIPを新しいサブネットのIPアドレスに変更する必要があります。

7. 次のsrvctl modify nodeapps構文を使用して、ノード・アプリケーションを変更し、新しいVIPアドレスを指定します。

$ srvctl modify nodeapps -node node_name -address new_vip_address

コマンドには次のフラグおよび値が含まれます。

- -n node_nameはノード名です。

- -A new_vip_addressはノード・レベルのVIPアドレスで、次のようになります。name|ip/netmask/[if1[|if2|...]]
たとえば、rootユーザーとして次のコマンドを発行します。

srvctl modify nodeapps -node mynode -address 192.168.2.125/255.255.255.0/eth0

インストール所有者アカウントとしてこのコマンドを発行しようとすると、エラーが発生する場合があります。たとえば、インストール所有者がoracleの場合は、エラー「PRCN-2018: Current user oracle is not a privileged user」が表示される場合があります。このエラーを回避するには、rootまたはシステム管理者アカウントとしてコマンドを実行します。

8. 次のようにして、srvctl start vipコマンドを実行し、ノードVIPを起動します。

$ srvctl start vip -node node_name

次のコマンドの例では、mynodeという名前のノードでVIPを起動します。

$ srvctl start vip -node mynode

9. クラスタ内の各ノードでこの手順を繰り返します。

SRVCTLユーティリティはクラスタ全体の管理ツールであるため、各クラスタ・ノードにログインせずに、クラスタ内の任意のノードから特定のノードに対し、これらのタスクを完了することができます。

10. 次のコマンドを実行して、クラスタが構成されているすべてのノード間の接続性を確認します。このコマンドは、クラスタ・ノード上で使用可能なすべてのネットワーク・インタフェースを検出し、検出されたインタフェースからすべてのノードへの接続性を確認します。また、ノードで使用可能な、VIPアドレスとしての使用に適したすべてのインタフェースを表示します。

$ cluvfy comp nodecon -n all -verbose

Oracle Clusterwareのプライベート・ネットワーク構成の変更

この項では、次の項目について説明します。

- プライベート・ネットワークおよびネットワーク・インタフェースについて

- 冗長なインターコネクトの使用

- OIFCFGを使用したインタフェース名の変更結果

- ネットワーク・インタフェースの変更

プライベート・ネットワークおよびネットワーク・インタフェースについて

Oracle Clusterwareでは、各ノードが、(パブリック・ネットワークに加えて)プライベート・ネットワークに接続されている必要があります。プライベート・ネットワーク接続は、クラスタ・インターコネクトとも呼ばれます。表2-1に、ネットワーク・インタフェース・カードおよびプライベートIPアドレスがどのように格納されるかを示します。

すべてのノードが、同一のサブネットに接続された同一のネットワーク・インタフェース(oifcfgコマンドによりグローバル・インタフェースとして定義済)を使用しているクラスタのみをサポートしています。ノードごとに異なるネットワーク・インタフェース(ノード固有のインタフェース)を使用することはできません。グローバル・インタフェースおよびノード固有のインタフェースの詳細は、「Oracle Interface Configurationツール(OIFCFG)のコマンド・リファレンス」を参照してください。

表2-1 ネットワーク・インタフェース、プライベートIPアドレスおよびプライベート・ホスト名の記憶域

エンティティ

格納先

コメント

ネットワーク・インタフェース名

オペレーティング・システム

たとえば、eth1など

ネットワーク・インタフェース名を指定する場合、ワイルドカードを使用できます。

たとえば、eth*など

プライベート・ネットワーク・インタフェース

Oracle Clusterwareのグリッド・プラグ・アンド・プレイ(GPnP)・プロファイル内

インストール時にインタフェースを「プライベート」とすることによって、使用するインタフェースをプライベート・インタフェースとして構成するか、oifcfg setifコマンドを使用して、インタフェースをプライベート・インタフェースに指定します。

関連項目: oifcfg setifコマンドの詳細は、「OIFCFGコマンド」を参照してください。

冗長インターコネクトの使用

インストール時、またはインストール後にoifcfg setifコマンドを使用してインタフェースのロールをプライベートとして分類することにより、冗長なインターコネクトの使用に対して複数のインタフェースを定義できます。このようにすると、定義したインタフェースの数に応じて1つから4つの高可用性IP(HAIP)アドレスがOracle Clusterwareによって作成され、Oracle DatabaseおよびOracle ASMインスタンスは、これらのアドレスを使用して高可用性のロード・バランスされた通信を実現します。

デフォルトでは、Oracleソフトウェア(11gリリース2(11.2.0.2)以上のOracle RAC、Oracle ASMおよびOracle ACFSなど)は、そのすべてのトラフィックのHAIPアドレスとして、「プライベート」ロールを指定したインタフェースのHAIPアドレスを使用するので、提供されたクラスタ・インターコネクト・インタフェースのセット全体でロード・バランシングが可能になります。定義済のクラスタ・インターコネクト・インタフェースのいずれかに障害が発生するか、または通信できなくなった場合、Oracle Clusterwareは、機能している残りのインタフェースのいずれかに対応するHAIPアドレスを透過的に移動します。

たとえば、インストール後に新しいインタフェースを、サブネット番号が172.16.2.0のeth3というサーバーに追加する場合は、次のコマンドを使用して、このインタフェースをプライベート・インタフェースとしてOracle Clusterwareで使用できるようにします。

$ oifcfg setif -global eth3/172.16.2.0:cluster_interconnect

Oracle Clusterwareではeth3で169.254.*.*というHAIPアドレス(HAIP用の予約済サブネット)が使用され、データベースOracle ASMおよびOracle ACFSはそのアドレスを通信に使用しますが、Oracle Clusterwareは自身の通信に172.16.2.0アドレスも使用します。

注意:

HAIPサブネット(169.264.*.*)を分類するためにOIFCFGを使用しないでください。OIFCFGは、Oracle Clusterwareのインタフェース名、サブネットおよびタイプ(パブリック、クラスタ・インターコネクトまたはOracle ASM)を記録するために使用できます。ただし、OIFCFGを使用して各インタフェースの実際のIPアドレスを変更することはできません。

注意:

Oracle Clusterwareが使用するインタフェースは、定義されているインタフェースの数に関係なく、常に最大で4つです。あるインタフェースに障害が発生すると、HAIPアドレスは、定義されたセット内の別の構成済インタフェースに移動します。

HAIPアドレスが1つのみで、選択するインタフェースが複数ある場合、HAIPアドレスの移動先のインタフェースは、そのアドレスが構成された元のインタフェースではなくなります。Oracle Clusterwareは、HAIPアドレスの追加先として、数が最も小さいサブネットのインタフェースを選択します。

関連項目:

インタフェースの定義については、ご使用のプラットフォームの『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

OIFCFGを使用したインタフェース名の変更結果

インタフェース名の変更結果は、どの名前を変更するか、またIPアドレスも変更するかどうかによって異なります。インタフェース名のみを変更する場合、結果は、それほど重要ではありません。OCR内に格納されたパブリック・インタフェースの名前を変更する場合、クラスタのノード・アプリケーションも変更する必要があります。したがって、この変更を有効にするために、ノード・アプリケーションを停止する必要があります。

関連項目:

新しいパブリック・インタフェース名を使用するためのノード・アプリケーションの変更の詳細は、My Oracle Support(以前のOracleMetaLink)のNote 276434.1を参照してください。次のURLから入手できます。

https://metalink.oracle.com

ネットワーク・インタフェースの変更

次の手順を実行して、ネットワーク・インタフェースおよびそれに関連するサブネット・アドレスを変更できます。クラスタのすべてのノードでこの変更を実行する必要があります。

この手順では、Oracle ClusterwareおよびOracle Databaseが以前使用していたクラスタ内の各ノードで、ネットワーク・インタフェースおよびIPアドレスを変更します。

注意:

Oracle RAC(RDBMS)インターコネクトで使用されるインタフェースは、Oracle Clusterwareでホスト名に使用されるインタフェースと同じである必要があります。Oracle Clusterwareで監視されない別のインタフェースで、Oracle RACのプライベート・インターコネクトを構成しないでください。

1. 次のコマンドを実行し、Oracle Clusterwareがすべてのクラスタ・ノードで実行されていることを確認します。

$ olsnodes -s

このコマンドでは、次のような出力が戻され、Oracle Clusterwareがクラスタ内のすべてのノードで実行されていることが表示されます。

./olsnodes -s
myclustera Active
myclusterc Active
myclusterb Active

2. 代替インタフェースが構成され、すべてのノードのオペレーティング・システムで操作可能であることを確認します。ご使用のプラットフォームのifconfigコマンド(Windowsではipconfig)を使用します。たとえば、Linuxでは次のように使用します。

$ /sbin/ifconfig..

3. 次のコマンドを使用して、新しいインタフェースの名前およびサブネット・アドレスを指定して、新しいインタフェースをクラスタに追加します。

$ oifcfg setif -global if_name/subnet:cluster_interconnect

インタフェース名にはワイルドカードを使用できます。たとえば、oifcfg setif -global "eth*/192.168.0.0:cluster_interconnectは有効な構文です。ただし、他のクラスタ・インタフェースで使用している他のアドレスやマスクとまぎらわしくならないように注意してください。ワイルドカードを使用すると、次のような警告が表示されます。

eth*/192.168.0.0 global cluster_interconnect
PRIF-29: Warning: wildcard in network parameters can cause mismatch
among GPnP profile, OCR, and system

注意:

従来型ネットワーク構成ではワイルドカードがサポートされないため、ワイルドカードは更新の時点で現行のノード構成を使用して解決されます。

関連項目:

OIFCFGコマンドの使用方法の詳細は、「Oracle Interface Configurationツール(OIFCFG)のコマンド・リファレンス」を参照してください。

4. 前の手順が完了したら、次のように、以前のインタフェースの名前およびサブネット・アドレスを指定して、以前のサブネットを削除できます。

oifcfg delif -global if_name/subnet

次に例を示します。

$ oifcfg delif -global eth1/10.10.0.0

注意:

この手順は、代替インタフェースがグリッド・プラグ・アンド・プレイ構成に取り込まれた後でのみ実行する必要があります。有効な代替インタフェースを準備せずにクラスタのインタフェースを単純に削除すると、無効なクラスタ構成になる可能性があります。

5. 次のコマンドを使用して現行の構成を検証します。

oifcfg getif

次に例を示します。

$ oifcfg getif
eth2 10.220.52.0 global cluster_interconnect
eth0 10.220.16.0 global public

6. rootとして、各ノードで次のコマンドを実行し、すべてのノードのOracle Clusterwareを停止します。

# crsctl stop crs

注意:

クラスタのネットワーク構成が変更される場合、クラスタを完全に停止する必要があります。ローリング停止および再起動を使用しないでください。

7. Oracle Clusterwareが停止したら、ifconfigコマンドを使用して、削除したネットワーク・インタフェースをオペレーティング・システムで構成解除できます。次に例を示します。

$ ifconfig down

この時点で、ネットワーク・インタフェースからの古いサブネットのIPアドレスは、Oracle Clusterwareから構成解除されます。このコマンドは、オペレーティング・システムのIPアドレスの構成に影響しません。

ifconfigによる変更は、永続的ではないため、オペレーティング・システムの構成変更を更新する必要があります。

8. クラスタの各ノードでrootユーザーとして次のコマンドを実行し、Oracle Clusterwareを再起動します。

# crsctl start crs

変更は、Oracle Clusterwareの再起動時に有効になります。

CLUSTER_INTERCONNECTS初期化パラメータを使用している場合は、変更を反映するためにそれを更新する必要があります。

SRVCTLを使用したネットワークの作成

次の手順を使用して、クラスタ・メンバー・ノードにネットワークを作成し、アプリケーション構成情報を追加します。

1. rootとしてログインします。

2. 次の構文を使用してノードにノード・アプリケーションを追加します。

srvctl add nodeapps -node node_name -address {vip |
addr}/netmask[/if1[|if2|...]] [-pingtarget "ping_target_list"]

前の構文では:

- node_nameはノードの名前です。

- vipはVIP名で、addrはIPアドレスです。

- netmaskはネットマスクです。

- if1[|if2|...]は、アプリケーションが使用するために結合されたパイプ区切りのインタフェースのリストです。

- -ping_target_listは、pingの対象のIPアドレスまたはホスト名のカンマ区切りリストです。

注意:

- リンク・ステータスの監視が仮想マシン環境と同様に機能しない場合は-pingtargetパラメータを使用します。

- srvctl add nodeapps -helpコマンドを入力して、他の構文オプションを確認します。

次の例では、srvctl add nodeappsを使用してIPv4ノード・アプリケーションを構成しており、ノード名はnode1で、ネットマスクは255.255.252.0で、インタフェースはeth0です。

# srvctl add nodeapps -node node1 -address node1-vip.mycluster.example.com/255.255.252.0/eth0

関連項目:

この手順で使用されているSRVCTLコマンドの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

クラスタ内のネットワーク・アドレス構成

IPv4、IPv6または指定されたネットワーク上での両タイプのアドレスのいずれかにネットワーク・インタフェースを構成できます。サード・パーティーの技術を使用して冗長なネットワーク・インタフェースを構成する場合、Oracleでは、1つのインタフェースがIPv4アドレスをサポートし、別のインタフェースがIPv6アドレスをサポートするような構成はサポートしていません。冗長なインタフェースのネットワーク・インタフェースは、同じIPアドレス・タイプを使用して構成する必要があります。Oracle Clusterwareの冗長インターコネクト機能を使用する場合は、インタフェースにIPv4アドレスを使用する必要があります。

クラスタ内のすべてのノードには、同じIPプロトコル構成を使用する必要があります。すべてのノードがIPv4を使用するか、すべてのノードがIPv6を使用するか、すべてのノードがIPv4およびIPv6の両方を使用するかのいずれかです。クラスタ内の一部のノードがIPv6アドレスのみをサポートするように構成し、その他のノードがIPv4アドレスのみをサポートするように構成することはできません。

ローカル・リスナーは、ネットワーク・リソースに構成されたサブネットのアドレス・タイプに基づくエンドポイントでリスニングします。IPV4、IPV6または両方のタイプを使用できます。

SRVCTLを使用した、静的IPv4アドレスの静的IPv6アドレスへの変更

IPv4静的アドレスからIPv6静的アドレスに変更する場合は、静的IPv6アドレスのみを使用するように切り替える前に、IPv6アドレスを追加し、IPv4アドレスとIPv6アドレスの両方を短期間受け入れるようにネットワークを変更します。

注意:

IPv4ネットワークが、静的および動的アドレスの両方が混合したモードである場合、この手順は実行できません。最初にすべてのアドレスを静的に移行する必要があります。

静的IPv4アドレスを静的IPv6アドレスに変更するには、次の手順を実行します。

1. ネットワーク全体に対して次のコマンドをrootとして一度使用してIPv6サブネットを追加します。

# srvctl modify network –subnet ipv6_subnet/prefix_length

前述の構文のipv6_subnet/prefix_lengthは、変更後のIPv6アドレスのサブネットと、接頭辞の長さです(3001::/64など)。

2. 各ノードで、次のコマンドをrootとして使用してIPv6 VIPを一度追加します。

# srvctl modify vip -node node_name -netnum network_number -address vip_name/netmask

前の構文では:

- node_nameはノードの名前です。

- network_numberは、ネットワークの番号です。

- vip_name/netmaskは、IPv4アドレスとIPv6アドレスの両方に解決されるローカルVIPの名前です。
VIP名の後に続くIPv4ネットマスクまたはIPv6の接頭辞の長さは、次の2つの要件を満たす必要があります。

- ネットマスクをIPv4フォーマット(255.255.255.0など)で指定すると、VIP名はIPv4アドレスに解決されます(IPv6アドレスに解決することもできます)。同様に、IPv6の接頭辞の長さを指定すると(64など)、VIP名はIPv6アドレスに解決されます(IPv4アドレスに解決することもできます)。

- IPv4ネットマスクを指定する場合は、ネットワークの-iptypeがIPv6であるかどうかに関係なく、登録されているIPv4ネットワーク・サブネット番号のネットマスクに一致する必要があります。同様に、IPv6の接頭辞の長さを指定する場合は、ネットワークの-iptypeがIPv4であるかどうかに関係なく、登録されているIPv6ネットワーク・サブネット番号の接頭辞の長さに一致する必要があります。

3. 次のコマンドを使用してIPv6ネットワーク・リソースをOCRに追加します。

oifcfg setif -global if_name/subnet:public

4. IPv4アドレスと同じ数のIPv6アドレスを持つようDNSのSCANを更新します。ネットワーク全体に対して次のコマンドをrootとして一度使用して、IPv6アドレスをSCAN VIPに追加します。

# srvctl modify scan -scanname scan_name

scan_nameは、IPv4アドレスとIPv6アドレスの両方に解決するSCANの名前です。

5. ネットワーク全体に対して次のコマンドをrootとして一度使用して、ネットワークIPタイプをIPv4から、IPv4とIPv6の両方に変換します。

srvctl modify network -netnum network_number -iptype both

このコマンドにより、IPv6静的アドレスが決定します。

6. クラスタが提供するすべてのクライアントをIPv4のネットワークおよびアドレスからIPv6のネットワークおよびアドレスに変更します。

7. 次のコマンドを使用して、ネットワークの使用プロトコルを、両方のプロトコルからIPv6のみに移行します。

# srvctl modify network -iptype ipv6

8. 次のコマンドをrootとして実行して、IPv6に解決するVIP名でVIPを変更します。

# srvctl modify vip -node node_name -address vip_name -netnum network_number

これを各ノードに一度実行します。

9. 次のコマンドを実行して、IPv6に解決するSCAN名でSCANを変更します。

# srvctl modify scan -scanname scan_name

これをクラスタ全体に一度実行します。

関連項目:

この手順で使用されているSRVCTLコマンドの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

関連トピック

- OIFCFGコマンドの書式

SRVCTLを使用した、動的IPv4アドレスの動的IPv6アドレスへの変更

注意:

IPv4ネットワークが、静的および動的アドレスの両方が混合したモードである場合、この手順は実行できません。最初にすべてのアドレスを動的に移行する必要があります。

動的IPv4アドレスを動的IPv6アドレスに変更するには、次の手順を実行します。

1. srvctl modify networkコマンドを使用してIPv6サブネットを追加します。

IPv6サブネットを追加するには、rootとしてログインし、次のコマンド構文を使用します。

srvctl modify network -netnum network_number –subnet ipv6_subnet/
ipv6_prefix_length[/interface] -nettype autoconfig

前の構文では:

- network_numberは、ネットワークの番号です。

- ipv6_subnetは、変更先のIPv6アドレスのサブネットです(たとえば、2001:db8:122:344:c0:2:2100::)

- ipv6_prefix_lengthは、IPv6ネットワーク・アドレスを指定する接頭辞です(たとえば、64)

たとえば、次のコマンドは、IPv6サブネット(2001:db8:122:344:c0:2:2100::)および接頭辞長(64)を追加することで、ネットワーク3を変更します。

# srvctl modify network -netnum 3 -subnet
2001:db8:122:344:c0:2:2100::/64 -nettype autoconfig

2. 次のコマンドを使用してIPv6ネットワーク・リソースをOCRに追加します。

oifcfg setif -global if_name/subnet:public

関連項目:

このコマンドの使用方法の詳細は、「OIFCFGコマンドの書式」を参照してください

3. 次のように、IPv6動的アドレスを開始します。

srvctl modify network -netnum network_number -iptype both

たとえば、ネットワーク番号が3の場合は次のようになります。

# srvctl modify network -netnum 3 -iptype both

4. クラスタが提供するすべてのクライアントをIPv4のネットワークおよびアドレスからIPv6のネットワークおよびアドレスに変更します。

この時点で、GNSに委譲されたドメインscan_name.gns_domainのSCANは、3つのIPv4と3つのIPv6アドレスに解決されます。

5. 次のコマンドを使用して、クラスタの動的アドレスのIPv4の部分を無効にします。

# srvctl modify network -iptype ipv6

前述のコマンドを実行した後は、SCAN (scan_name.gns_domain)は、3つのIPv6アドレスのみに解決されます。

IPv4ネットワークのIPv4およびIPv6ネットワークへの変更

IPv4ネットワークをIPv4およびIPv6ネットワークに変更するには、「SRVCTLを使用した、静的IPv4アドレスの静的IPv6アドレスへの変更」で説明されている手順1から5と同様の手順で、IPv6ネットワークを既存のIPv4ネットワークに追加する必要があります。

これらの3つの手順を完了した後、グリッド・ユーザーとしてログインし、次のコマンドを実行する必要があります。

$ srvctl status scan

出力を確認して、SCAN VIPの変更を確認します。

SRVCTLを使用した、VIPアドレスのIPv4からIPv6ネットワークへの移行

次のコマンドを入力して、結合されたIPv4およびIPv6ネットワークからIPv4アドレス・タイプを削除します。

# srvctl modify network -iptype ipv6

このコマンドにより、クラスタに構成されたIPv4アドレスの削除プロセスが開始されます。

3 ポリシーベースでのクラスタおよび容量の管理

この章では、Oracle Databaseまたはアプリケーションで使用されるサーバーおよびリソースのOracle Clusterwareポリシーベース管理の概要について説明します。

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

- サーバー・プールおよびポリシー・ベース管理の概要

- デフォルト・サーバー・プール

- サーバーのカテゴリ化の概要

- サーバー・プールを使用した、Oracle Clusterwareでの新しいサーバーの割当て方法

- クラスタ構成ポリシーおよびポリシー・セットの概要

- サーバー構成およびサーバー状態の属性

- サーバー・プール属性

- サーバー・カテゴリ属性

- ポリシー・セット構成の例

サーバー・プールおよびポリシー・ベース管理の概要

Oracle Clusterware 11gリリース2 (11.2)では、サーバー・プールを導入しましたが、ここでは、Oracle Clusterwareが管理するリソースは、サーバー・プールと呼ばれるサーバーの論理グループに含まれます。リソースは共有インフラストラクチャ上でホスト指定され、サーバー・プールに格納されます。Oracle Clusterwareが管理するリソースの例は、データベース・インスタンス、データベース・サービス、アプリケーションVIPおよびアプリケーション・コンポーネントです。

Oracle Flex Clusterでは、ハブ・ノードおよびリーフ・ノードとともに、サーバー・プールを使用してクラスタ・メンバー・ノードで特定のタイプのワークロードを実行可能になり、その一方で管理者オプションが簡素化されています。クラスタ構成ポリシー・セットを使用して、クラスタ全体にわたってクラスタ・ポリシーを動的に管理できます。

関連項目:

Oracle Flex Cluster構成の詳細は、「Oracle Flex Clusters」を参照してください

Oracle Clusterware 11g リリース2 (11.2)のサーバー・プール・モデルを使用して、Oracle Clusterwareの標準クラスタでリソースの管理を継続することも、サーバー・プールを使用しない従来どおりの方法でリソースを手動で管理することもできます。

この項には次のトピックが含まれます:

- サーバー・プールおよびサーバーのカテゴリ化

- サーバー・プールおよびポリシーベース管理

- サーバー・プールの動作

- デフォルト・サーバー・プール

- サーバー・プール属性

- サーバー・プールを使用した、Oracle Clusterwareでの新しいサーバーの割当て方法

- デフォルト属性を使用したサーバー・プールの管理

サーバー・プールおよびサーバーのカテゴリ化

管理者は、特定の属性で区別されるサーバーを識別することによって(サーバーのカテゴリ化というプロセス)、サーバー・プールを使用してサーバーを動的にデプロイおよび管理できます。このようにして、異機種環境のノードで構成されるクラスタを作成できます。

関連項目:

サーバーのカテゴリ化の詳細は、「サーバーのカテゴリ化の概要」を参照してください

サーバー・プールおよびポリシーベース管理

管理者は、ポリシーベース管理で、サーバーを実行するサーバー・プールを指定します(汎用または空きプールを除く)。たとえば、データベース管理者はSRVCTLを使用して、データベースまたはデータベース・サービスをホスティングしているサーバーのサーバー・プールを作成します。クラスタウェア管理者はCRSCTLを使用して、アプリケーションをホストするサーバーのサーバー・プールの作成など、データベース以外の用途のサーバー・プールを作成します。

ポリシー・ベースの管理:

- 定義済のポリシーに基づいたオンライン・サーバーの再割当てを有効にして、ワークロード容量の要件を満たします。

- ポリシーの定義どおりに、重要な作業に必要なリソースの割当てが保証されます。

- 必要時には分離が保証され、アプリケーションとデータベースについて、クラスタの専用サーバーを指定できます。

- ビジネス・ニーズまたはアプリケーションの要求に応じてプールが変更されるようにポリシーを構成して、適切なときに必要な容量がプールから提供されるようにできます。

サーバー・プールはリソースを分離して、1つのサーバー・プールで実行されているアプリケーションが、別のサーバー・プールで実行されているリソースにアクセスできないようにします。Oracle Clusterwareでは、サーバー・プール間のロール区分を詳細に設定できます。この機能では、組織で別々のグループによって管理される環境をクラスタ化する場合に、これらのグループ間で必要となる管理ロール区分が維持されます。

関連項目:

リソース属性の詳細は、「Oracle Clusterwareのリソース・リファレンス」を参照してください。

Oracle Clusterwareは、クラスタ内のサーバーを効率的に割り当てます。サーバー・プールの作成時に定義されるサーバー・プール属性は、サーバーの配置および優先順位付けを、IMPORTANCEサーバー・プール属性に基づいて決定します。

関連項目:

ビジネスまたはアプリケーションの要求に対応するためのサーバー・プールの管理の詳細は、「クラスタ構成ポリシーおよびポリシー・セットの概要」を参照してください。

サーバー・プールの動作

サーバー・プールは、クラスタをシングルトン・アプリケーションおよび共通アプリケーションの両方をホスティングしているサーバーの論理グループに分割します。アプリケーションは、データベース・サービスまたはデータベース以外のアプリケーションに分類できます。アプリケーション・ワークロードをサーバー・プールのすべてのサーバーに分散させる場合、アプリケーションは共通です。アプリケーションがサーバー・プール内の1つのサーバーで実行される場合、アプリケーションはシングルトンです。Oracle Clusterwareのロール別管理では、サーバー・プールへのアクセスおよびサーバー・プールの使用が決定されます。

Oracle RACデータベースを含むサーバー・プールは、サーバー制御(SRVCTL)ユーティリティを使用して管理します。他のすべてのサーバー・プールを管理するには、Oracle Clusterware制御(CRSCTL)ユーティリティを使用します。最上位のサーバー・プールを作成する権限を所有しているのは、クラスタ管理者のみです。

データベース管理者は、サーバー制御(SRVCTL)ユーティリティを使用して、Oracle RACデータベースを含むサーバー・プールを作成して管理します。クラスタ管理者は、Oracle Clusterware制御(CRSCTL)ユーティリティを使用して、データベース以外のアプリケーションのサーバー・プールなど、他のサーバー・プールすべてを作成して管理します。最上位のサーバー・プールを作成する権限を所有しているのは、クラスタ管理者のみです。

最上位のサーバー・プール:

- クラスタを論理的に分割します。

- 常に排他的です。これは、1つのサーバーが特定の時期に1つの特定のサーバー・プールにのみ存在できることを意味します。

デフォルト・サーバー・プール

Oracle Clusterwareがインストールされると、汎用および空きという2つの内部サーバー・プールが自動的に作成されます。新規インストールのすべてのサーバーは、最初、空きサーバー・プールに割り当てられます。空きサーバー・プールにあるサーバーは、新しく定義したサーバー・プールに自動的に移動します。

空きサーバー・プール

空きサーバー・プールには、他のサーバー・プールに割り当てられていないサーバーが含まれています。空きサーバー・プールの属性は、次のように制限されます。

- SERVER_NAMES、MIN_SIZEおよびMAX_SIZEは、ユーザーが編集することはできません。

- IMPORTANCEおよびACLは、ユーザーが編集することができます。

汎用サーバー・プール

汎用サーバー・プールには、最上位のサーバー・プールには含まれておらず、ポリシー管理されていないサーバーが格納されます。ポリシー管理されていないアプリケーション(管理者管理データベースなど)をホスティングするサーバーは、汎用サーバー・プールに静的に割り当てられます。

汎用サーバー・プールの属性は、次のように制限されています。

- 汎用サーバー・プールの構成属性は誰も変更できません(すべての属性は読取り専用です)。

- 管理者管理データベースは、データベースの作成先のサーバーが次のいずれかである場合にのみ、汎用サーバー・プールに作成できます。

- オンラインで汎用サーバー・プールに存在する。

- オンラインで空きサーバー・プールに存在する。この場合、Oracle Clusterwareによってサーバーが汎用サーバー・プールに移動されます。

- オンラインで、他のサーバー・プールに存在し、ユーザーがクラスタ管理者であるか、またはサーバー・プールのサーバーの使用が許可されている場合(この場合、サーバーは汎用サーバー・プールに移動されます)。

- オフラインで、ユーザーがクラスタ管理者の場合

サーバー・プール属性

SRVCTLまたはCRSCTLを使用して、データベースおよびその他のアプリケーションのそれぞれにサーバー・プールを作成できます。SRVCTLを使用してサーバー・プールを作成する場合、この項で説明されているサーバー・プール属性のサブセットのみを使用できます。CRSCTLを使用してサーバー・プールを作成する場合、一連のサーバー・プール属性すべてを使用できます。

サーバー・プール属性は、サーバー・プールを作成および管理するために定義する属性です。

使用するユーティリティは、サーバー・プールでホスティングされているリソースのタイプによって決まります。Oracle Databaseをホスティングするサーバー・プールを作成するには、SRVCTLを使用する必要があります。中間層および中間アプリケーションなどのデータベース以外のリソースをホスティングするサーバー・プールを作成するには、CRSCTLを使用する必要があります。

SRVCTLを使用してサーバー・プールを作成するときに利用できるサーバー・プール属性は、次のとおりです。

- -category

- -importance

- -min

- -max

- -serverpool

- -servers

SRVCTLは、サーバー・プールの名前にora.を付加します。

関連項目:

詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

CRSCTLを使用してサーバー・プールを作成すると、表3-1のリストで説明されているすべての属性を利用できます。

関連項目:

詳細は、「crsctl add serverpool」を参照してください

表3-1 サーバー・プール属性

属性

値および書式

説明

ACL

次の書式の文字列を使用します。

owner:user:rwx,pgrp:group:rwx,other::r—

サーバー・プールの所有者、および様々なオペレーティング・システムのユーザーとグループに付与する権限を定義します。サーバー・プールの所有者には、所有者になるオペレーティング・システム・ユーザーとそのユーザーに付与する権限を定義します。

このオプション属性の値は、明示的に上書きされないかぎり、サーバー・プールを作成するユーザーのACLに基づいてサーバー・プールの作成時に移入されます。その後、サーバー・プールの既存の権限に基づいて変更を行うことができる場合、この値は変更できます。

文字列は次のように指定します。

- owner: サーバー・プール所有者になるオペレーティング・システム・ユーザーです。続いてその所有者の権限を指定します。

- pgrp: サーバー・プール所有者のプライマリ・グループであるオペレーティング・システム・グループです。続いてプライマリ・グループのメンバーの権限を指定します。

- other: 続いて他のメンバーの権限を指定します。

- r: 読取り専用です

- w: プールの属性を変更または削除します。

- x: このプールにリソースを割り当てます。

デフォルトでは、サーバー・プールを作成するクライアントのIDはownerです。また、デフォルトでは、root、およびownerに指定されたuserは完全な権限を持ちます。ACL属性に次の行を追加することで、必要なオペレーティング・システム・ユーザーおよびオペレーティング・システム・グループに権限を付与できます。

user:user_name:rwx

group:group_name:rwx

サーバー・プールを作成するオペレーティング・システム・ユーザーはサーバー・プールの所有者であり、このサーバー・プールのACL属性には、そのユーザー、プライマリ・グループ、グループなどのUNIX系の読取り、書込みおよび実行ACL定義が反映されます。

ACTIVE_SERVERS

サーバー名の文字列には次の書式を使用します。

server_name1 server_name2 ...

Oracle Clusterwareは、この属性を自動的に管理します。この属性には、現在サーバー・プールに割り当てられているサーバーの空白区切りのリストが含まれています。

EXCLUSIVE_POOLS

文字列

このオプション属性は、このサーバー・プールに割り当てられたサーバーが他のサーバー・プールと共有されるかどうかを示します。サーバー・プールは、この属性に同じ値を持つその他のサーバー・プールに対して相互に排他的であることを明示的に示すことができます。サーバー・プールに割り当てられたサーバーのセットに共通の単一サーバーがない場合、2つ以上のサーバー・プールは相互に排他的です。たとえば、サーバー・プールAおよびBの両方でこの属性の値がpools_A_Bなどの同じ文字列に設定されている場合、サーバー・プールAおよびBは相互に排他的となります。

最上位のサーバー・プールは、デフォルトでは、相互に排他的です。

IMPORTANCE

0から1000の任意の整数

サーバー・プールの相対的な重要度で、0が最低レベルの重要度、1000が最高レベルの重要度を示します。このオプション属性は、ノードがクラスタに追加されるか、またはクラスタから削除された場合にサーバー・プールを再構成する方法を判別するために使用されます。デフォルト値は0です。

MIN_SIZE

任意の負でない整数

サーバー・プールの最小サイズです。サーバー・プールに含まれるサーバーの数がこの属性で指定する数を下回る場合、Oracle Clusterwareは、この数が満たされるまで他のサーバー・プールからこのサーバー・プールにサーバーを自動的に移動します。

注意: このオプション属性の値によって、ハード制限は設定されません。クラスタが再構成されるたびにサーバー割当ての優先順位が制御されます。デフォルト値は0です。

MAX_SIZE

任意の負でない整数または-1(制限なし)

サーバー・プールに含めることができるサーバーの最大数です。この属性はオプションで、デフォルトでは、-1(制限なし)に設定されています。

注意: この属性の-1という値は、クラスタ全体に適用されます。

NAME

文字列

サーバー・プールの名前で、これはサーバー・プールの作成時に指定する必要があります。サーバー・プール名は、ユーザーが作成したエンティティ(リソース、タイプ、サーバーなど)の名前のドメイン内で一意である必要があります。サーバー・プール名には、254文字の制限があり、プラットフォームでサポートされているすべての文字(感嘆符(!)、チルダ(~)および空白を除く)を使用できます。サーバー・プール名の先頭をピリオドまたはoraにすることはできません。

注意: SRVCTLを使用してサーバー・プールを作成すると、ユーティリティによってサーバー・プールの名前の先頭に「ora.」が追加されます。

PARENT_POOLS

空白区切りのサーバー・プール名の文字列には次の書式を使用します。

sp1 sp2 ...

この属性を使用して、ネストされたサーバー・プールを作成することができます。この属性に示されているサーバー・プールは、親サーバー・プールと呼ばれます。親サーバー・プールに含まれているサーバー・プールは、子サーバー・プールと呼ばれます。

注意: SRVCTLを使用してサーバー・プールを作成する場合、この属性は指定できません。

SERVER_CATEGORY

文字列

登録されているサーバー・カテゴリの名前で、サーバーのカテゴリ化の一部として使用されます。Oracle Clusterwareの標準クラスタおよびOracle Flex Clusterには、デフォルトでhubおよびleafというカテゴリがあります。サーバー・プールの作成時にSERVER_CATEGORYに値を設定すると、SERVER_NAMESには値を設定できません。これらのパラメータの1つにのみ、空でない値を設定できます。

サーバー・プールに割り当てられるサーバーを、サーバー属性に基づいて分類するには、SERVER_CATEGORY属性を使用します。特定のワークロードをサーバーおよびサーバー・プールと釣り合せるために、定義したサーバー属性に基づいてクラスタ内のサーバーおよびサーバー・プールを編成できます。

関連項目: サーバー属性のリストは「crsctl status server」を参照してください

SERVER_NAMES

空白区切りのサーバー名の文字列には次の書式を使用します。

server1 server2 ...

サーバー・プールに関連付けられている可能性がある候補ノード名のリスト。このオプションの属性に対して一連のサーバー名を指定しない場合、PARENT_POOLSなどの他の属性の値で許容される範囲で任意のサーバが任意のサーバー・プールに割り当てられるように、Oracle Clusterwareは構成されます。

候補ノード名として識別されるサーバー名は、現在アクティブなクラスタ・メンバーであることを確認する検証が行われません。この属性を使用して、クラスタにまだ追加されていない候補としてサーバーを定義します。

SERVER_NAMESの値を設定する場合、SERVER_CATEGORYの値は設定できません。これらの属性の1つのみに、空でない値を指定できます。

注意: SERVER_CATEGORY属性を設定する場合、および個々のサーバーを指定する必要がある場合、EXPRESSIONサーバー・カテゴリ属性を使用して名前でサーバーをリストできます。

サーバー・プールを使用した、Oracle Clusterwareでの新しいサーバーの割当て方法

Oracle Clusterwareは、次の順序でサーバー・プールに新しいサーバーを割り当てます。

1. 汎用サーバー・プール

2. ユーザー作成のサーバー・プール

3. 空きサーバー・プール

次の条件が満たされるまで、Oracle Clusterwareはサーバー・プールへのサーバーの割当てを続行します。

1. 重要度順にすべてのサーバー・プールが最小値まで一杯になるまで(MIN_SIZE)。

2. 重要度順にすべてのサーバー・プールが最大値まで一杯になるまで(MAX_SIZE)。

3. デフォルトでは、サーバー・プールに配置されていないサーバーは、空きサーバー・プールに割り当てられます。
空きサーバー・プールのIMPORTANCE属性は変更できます。空きサーバー・プールのIMPORTANCE属性の値が、その他の1つ以上のサーバー・プールよりも大きく、これらのMIN_SIZE属性の値が満たされた時点で、残りのサーバーは空きサーバー・プールに割り当てられます。

サーバーをクラスタに追加する場合、いくつかの問題が発生します。

表3-2で構成されているサーバー・プールについて考えてみます。

表3-2 サーバー・プール属性の構成例

NAME

IMPORTANCE

MIN_SIZE

MAX_SIZE

PARENT_POOLS

EXCLUSIVE_POOLS

sp1

1

1

10

sp2

3

1

6

sp3

2

1

2

sp2_1

2

1

5

sp2

S123

sp2_2

1

1

5

sp2

S123

たとえば、クラスタ内にサーバーがなく、すべてのサーバー・プールが空であるとします。

server1というサーバーをクラスタに追加するには、次の手順を実行します。

1. サーバーからプールへの割当てを開始します。

2. Oracle Clusterwareは、最上位のサーバー・プール(親サーバー・プールがないサーバー・プール)のみを最初に処理します。この例では、最上位のサーバー・プールはsp1、sp2およびsp3です。

3. Oracle Clusterwareは、IMPORTANCEの順位に従ってsp2、sp3、sp1のようにサーバー・プールを表示します。

4. sp2のIMPORTANCEが最大値で、MIN_SIZE値は満たされていないため、Oracle Clusterwareはserver1をsp2に割り当てます。

5. Oracle Clusterwareは、残り2つのサーバー・プール(sp2_1およびsp2_2)を処理します。両方のサーバー・プールのサイズはMIN_SIZE属性の値(サーバー・プールは両方とも空で、MIN_SIZE値は1)を下回っています。

6. Oracle Clusterwareは、IMPORTANCEの順位に従ってsp2_1、sp2_2のように残り2つのサーバー・プールを表示します。

7. Oracle Clusterwareは、server1をsp2_1に割り当てますが、sp2_1はsp2_2に対して排他的であるように構成されているため、server1をsp2_2に割り当てることはできません。

処理後、クラスタ構成は次のように表示されます。

表3-3 処理後のサーバー・プール構成

サーバー・プール名

割り当てられたサーバー

sp1

sp2

server1

sp3

sp2_1

server1

sp2_2

サーバー・プールからサーバー・プールへのサーバーの移動

サーバー・プール内のサーバーの数がサーバー・プールのMIN_SIZE属性の値を下回る場合(サーバーで障害が発生した場合など)、Oracle Clusterwareは、すべてのサーバー・プールのMIN_SIZEおよびIMPORTANCE属性に設定した値に基づいて、他のサーバー・プールのサーバーをサーバーの数がMIN_SIZE値を下回るサーバー・プールに移動できます。Oracle Clusterwareは、他のサーバー・プールからサーバーを選択して、次の基準に該当する不十分なサーバー・プールに移動します。

- 不十分なサーバー・プールよりIMPORTANCEの値が低いサーバー・プールに対して、Oracle Clusterwareは、サーバーの数がMIN_SIZE属性の値を下回る場合でもそのサーバー・プールからサーバーを取得します。

- IMPORTANCEの値が同一以上のサーバー・プールに対して、Oracle Clusterwareは、サーバー・プール内のサーバーの数がMIN_SIZE属性の値より大きい場合にのみそのサーバー・プールからサーバーを取得します。

デフォルト属性を使用したサーバー・プールの管理

デフォルトでは各サーバー・プールは、サーバー・プールを管理するための次の属性オプションを使用して構成されます。

- MIN_SIZE: サーバー・プールに含まれるサーバーの最小数。
サーバー・プールのサーバーの数がこの属性の値を下回る場合、サーバーの数が属性の値になるまで、Oracle Clusterwareによって自動的に他の場所からサーバー・プールにサーバーが移動されます。

- MAX_SIZE: サーバー・プールに含まれるサーバーの最大数。

- IMPORTANCE: クラスタ内の他のすべてのサーバー・プール間でサーバー・プールをランク付けする0から1000(0の重要度が最低)の数値。

また、クラスタ構成ポリシーの一部として、サーバー・プールをより詳細に管理するために追加の属性を割り当てることもできます。EXCLUSIVE_POOLSやSERVER_CATEGORYなどの属性は、パフォーマンスを向上させるサーバー・プール用のポリシーを作成し、チューニング設計管理をサーバー・プールに組み込む場合に役立ちます。

サーバーのカテゴリ化の概要

Oracle Clusterware 11gリリース2 (11.2)では、リソースの配置を指定し、サーバーの割当てとアクセスを管理する手段として、サーバー・プールを導入しました。元々、サーバー・プールは、特定のプールに属するようにサーバーを特徴付ける一連の基本属性に制限されており、サーバーのタイプを区別する方法はなく、すべてのサーバーは、プロセッサ、物理メモリーおよび他の特性に関して等しいとみなされていました。

サーバーのカテゴリ化では、プロセッサ・タイプ、メモリー、他の顕著なシステム機能などの属性を使用して、サーバーを特定のカテゴリに分類できます。プールの適格なメンバーを、特定の一連の属性を共有するサーバーのカテゴリに制限するようにサーバー・プールを構成できます。

注意:

Oracle Database Quality of Service Management (Oracle Database QoS Management)でポリシーを作成する場合、サーバー・プールのディレクティブ・オーバーライドを設定することでサーバーを分類し、policyおよびpolicysetという語を使用するCRSCTLコマンドは無効になります。また、Oracle Clusterwareポリシーの使用からOracle Database QoS Managementポリシーの使用に切り替える場合、Oracle Clusterwareポリシーは置き換えられます。2つのポリシー・タイプは共存できないためです。ポリシーを切り替える前に、crsctl status policyset -file file_nameを使用してバックアップを作成することをお薦めします。

関連項目:

- ポリシー・セットの管理に使用できるCRSCTLコマンドの詳細は、「Oracle Clusterware制御(CRSCTL)ユーティリティ・リファレンス」を参照してください。

- サーバー・プールのディレクティブ・オーバーライドの詳細は、『Oracle Database Quality of Service Managementユーザーズ・ガイド』を参照してください。

クラスタ構成ポリシーおよびポリシー・セットの概要

クラスタ構成ポリシーとは、クラスタ構成ポリシー・セットが管理する各サーバー・プールに1つのみの定義を含むドキュメントです。クラスタ構成ポリシー・セットとは、クラスタ用に構成されているすべてのサーバー・プールの名前と、すべてのポリシーの定義を定義しているドキュメントです。

注意:

Oracle Clusterware 11gリリース2 (11.2)では、単一サーバー・プール構成のみをサポートしています。変更を有効にするときに、サーバー・プール構成を手動で変更する必要があります。

Oracle Clusterware 12cでは、サーバー・プールの指定および管理用のクラスタ構成ポリシー・セットで定義されているポリシーを使用し、Oracle Clusterwareは、ポリシー・セットのポリシーに従ってサーバー・プールを管理します。クラスタ構成ポリシー・セットの場合、たとえば、電子メールの要求に対応するため、週の業務時間中により多くのサーバーをOLTPワークロードに割り当てることができ、週末および夜間はより多くのサーバーをバッチ・ワークロードに割り当てることができ、サーバー・プール構成またはサーバー割当てのトランジションをアトミックに実行できます。

いつの時点においても、クラスタに対して有効なポリシーは1つのみです。ただし、いくつかの異なるポリシーを作成できます。このため、ビジネスのニーズや要求に基づいて、または暦日や時刻に基づいてクラスタの要件に違いを反映させるように、パラメータを使用してサーバーのプールを構成できます。

関連項目:

ポリシー・セット構成の例の詳細は、「ポリシー・セット構成の例」を参照してください。

サーバー構成およびサーバー状態の属性

サーバーをクラスタに追加するとすぐに、Oracle Clusterwareは、各サーバーに属性セットを割り当てます。サーバーの物理特性を記述する属性もあれば、サーバーの状態を記述する属性もあります。また、サーバーをさらに分類するために役立つ変更可能な他のサーバー属性もあります。クラスタからサーバーを削除すると、Oracle Clusterwareはサーバー・オブジェクトを削除します。

サーバーのカテゴリ化管理ポリシーの一部として、サーバー構成属性を使用してサーバーを分類します。

表3-4に、サーバー構成属性を示します。

表3-4 サーバー構成属性

属性

説明

ACTIVE_CSS_ROLE

サーバーによって実行されるロール。サーバーは、次のいずれかのロールを持つことができます。

- hub: Oracle Flex Cluster内のサーバーに指定されるロール、またはOracle Clusterwareの標準クラスタ内のノードに指定されるロール。

- leaf: サーバーは、Oracle Flex Cluster内のリーフ・ノードです。

注意: この属性は構成できません。

CONFIGURED_CSS_ROLE

サーバー用に構成されたロール。サーバーは次のいずれかにできます。

hub: Oracle Flex Cluster内のサーバーに指定されるロール、またはOracle Clusterwareの標準クラスタ内のノードに指定されるロール。

leaf: サーバーは、Oracle Flex Cluster内のリーフ・ノードです。

注意: この属性は構成できません。

CPU_CLOCK_RATE

メガヘルツ(MHz)単位のCPUクロック速度。

CPU_COUNT

プロセッサ数

CPU_EQUIVALENCY

サーバーで提供されるCPUパワーが、ベースライン(1000など)による物理的表現から正または負の方向に逸脱する可能性があることを説明するために、Oracle Clusterwareが使用する相対値(1以上の正の整数として表される)。値が1000より小さい場合は、CPU_COUNTおよびCPU_CLOCK_RATEパラメータの特定の値にもかかわらず、このサーバーで提供され相当パワーがそれぞれ小さいことを説明します。

ローカル・サーバーで次のコマンドを使用して、この属性をそれぞれ表示または変更します。

crsctl get cpu equivalency
crsctl set cpu equivalency

CPU_HYPERTHREADING

CPUのハイパー・スレッドのステータス。値0は、ハイパー・スレッドが使用されていないことを示しています。値1は、ハイパー・スレッドが使用されていることを示しています。

MEMORY_SIZE

メガバイト(MB)単位のメモリー・サイズ。

NAME

サーバーの名前。

RESOURCE_USE_ENABLED

サーバー・プール・リソース管理パラメータ。この属性の値が1の場合(デフォルト)、サーバーをリソースの配置に使用できます。値が0の場合、Oracle Clusterwareによってサーバーでのサーバー・プール・リソースの起動が禁止されます。サーバーが空きプールに残っています。

crsctl get resource useコマンドおよびcrsctl set resource useコマンドを使用すると、各クラスタ・メンバー・ノードの設定を見直し、この属性を制御できます。

SERVER_LABEL

サーバーにラベルを付けるために使用できる任意の値。サーバー・カテゴリを設定する場合にこの属性を使用できます。たとえば、場所(building_A、building_Bなど)を指定することが可能であり、これにより、場所が要件になっているプールにサーバーを配置することができます(適切なサーバー・カテゴリを作成し、それをサーバー・プールに使用します)。

ローカル・サーバーで次のコマンドを使用して、この属性をそれぞれ表示または変更します。

crsctl get server label
crsctl set server label

表3-5に、読取り専用のサーバー状態および構成属性を示します。

表3-5 サーバー状態の属性

属性

説明

ACTIVE_POOLS

サーバーが属しているサーバー・プールの名前の空白区切りのリストです。Oracle Clusterwareはこのリストを自動的に管理します。

STATE

サーバーは、次のいずれかの状態になります。

- ONLINE: サーバーは、クラスタのメンバーであり、リソースの配置に使用できます。

- OFFLINE: サーバーは、現在クラスタのメンバーではありません。したがって、リソースの配置に使用できません。

- JOINING: サーバーがクラスタに追加されると、Oracle Clusterwareは、サーバーを処理し、リソースの配置に有効であることを確認します。また、Oracle Clusterwareは、サーバーで実行されるように構成されているリソースの状態をチェックします。サーバーの妥当性およびリソースの状態が確認されると、サーバーはこの状態から遷移します。

- LEAVING: サーバーの計画停止が開始すると、サーバーの状態はLEAVINGに遷移し、サーバーをリソースの配置に使用できなくなります。

- VISIBLE: Oracle Clusterwareが実行されていて、クラスタ・レディ・サービス・デーモン(CRSD)が実行されてないサーバーは、VISIBLE状態になります。通常、これは、断続的な問題または障害が発生し、Oracle Clusterwareがデーモンのリカバリ(再起動)を試行していることを示します。サーバーがこの状態である間、Oracle Clusterwareはサーバーのリソースを管理できません。

- RECONFIGURING: サーバー・プールの再構成のためにサーバーがサーバー・プール間で移動する場合、現行のサーバー・プールのそのサーバー上で実行されるリソースを停止および再配置する必要があると、サーバーはこの状態になります。これは、サーバーで実行されるリソースは、サーバーの移動先サーバー・プールで実行されるように構成されない可能性があるためです。リソースが正常に再配置されるとすぐに、サーバーはONLINE状態に戻されます。

crsctl status serverコマンドを使用して、サーバー情報を取得します。

STATE_DETAILS

これは、Oracle Clusterwareで管理される読取り専用の属性です。属性ではサーバーの状態に関する追加の詳細が提供されます。サーバーの状態に関する追加の詳細には、次のものが含まれる場合があります。

サーバーの状態: ONLINE:

- AUTOSTARTING RESOURCES
(サーバーが再起動する場合またはOracle Clusterwareスタックが再起動される場合に実行される)リソース自動起動手順がサーバーに対して進行中であることを示します。

- AUTOSTART QUEUED
サーバーはリソース自動起動が開始するのを待機します。これが実行されると、属性値はAUTOSTARTING RESOURCESに変わります。

サーバーの状態: RECONFIGURING:

- STOPPING RESOURCES
新しいサーバー・プールでの実行が制限されるリソースが停止中です。

- STARTING RESOURCES
新しいサーバー・プールで実行できるリソースが開始中です。

- RECONFIG FAILED
1つ以上のリソースが停止しなかったため、サーバーはONLINE状態に遷移できません。この時点で、手動による介入は必須です。停止しなかったリソースを停止または登録解除する必要があります。その後、サーバーは自動的にONLINE状態に遷移します。

サーバーの状態: JOINING:

- CHECKING RESOURCES
サーバーが再起動、Oracle Clusterwareスタックが再起動、またはサーバーのCRSDが再起動するたびに、ポリシー・エンジンではサーバー上のリソースの現在の状態を確認する必要があります。この手順が進行中の間は、この値が戻されます。

データベース・サーバーのメモリー不足の管理

オープン・セッションまたはランナウェイ・ワークロードが多すぎるため、エンタープライズ・データベース・サーバーが使用可能メモリーをすべて使用することがあります。メモリーが不足すると、トランザクションが失敗することがあります。極端な場合には、サーバーが再起動し、アプリケーションの貴重なリソースが失われることもあります。Oracle Database QoS Managementは、サーバー上のメモリー不足をリアルタイムで検出し、新しいセッションを他のサーバーにリダイレクトして、メモリーが不足しているサーバー上のすべての使用可能メモリーが使用されることを防ぎます。

Oracle Database QoS Managementが有効になっていて、Oracle Clusterwareサーバー・プールを管理している場合、Cluster Health Monitorは、クラスタ・サーバーのメモリー・リソースに関するリアルタイム情報を提供するメトリック・ストリームをOracle Database QoS Managementに送信します。この情報の内容は次のとおりです。

- 使用可能メモリーの量

- 現在使用されているメモリーの量

ノードのメモリーが不足しているとOracle Database QoS Managementが判断した場合は、新しい接続が作成されないように、そのノード上のOracle Clusterwareで管理されているデータベース・サービスが停止されます。メモリー不足が緩和されると、そのノードのサービスが自動的に再開し、リスナーはそのサーバーへの新規接続の送信を開始します。メモリー不足は、いくつかの方法で緩和できます(たとえば、既存のセッションの終了やユーザーの介入など)。

新しいセッションを別のサーバーに再ルートすると、メモリーが不足しているサーバー上の既存のワークロードが保護され、サーバーを使用可能な状態に保つことができます。サーバーのメモリー不足の管理によって、Oracle RACデータベースにホストされているアプリケーションのサービス・レベルの管理に新しいリソース保護機能が追加されます。

サーバー・カテゴリ属性

サーバーを名前付きカテゴリに定義し、サーバーをカテゴリのメンバーとして定義する属性を割り当てます。カテゴリのメンバーを定義するために使用可能で、サーバーの状態を記述する属性もあれば、サーバーの物理特性を記述する属性もあります。独自の特性を作成して、特定カテゴリのメンバーとしてサーバーを定義することもできます。

注意:

EXPRESSIONサーバー・カテゴリ属性に表示されるサーバー属性の値を変更する場合、新しい値を有効にする前に影響を受けるサーバーのOracle Clusterware技術スタックを再起動する必要があります。

表3-6に、可能なサーバー・カテゴリ属性を示します。

表3-6 サーバー・カテゴリ属性

属性

値および書式

説明

NAME

文字列

サーバー・カテゴリの名前で、これはサーバー・カテゴリの作成時に指定する必要があります。サーバー・カテゴリ名は、ユーザーが作成したエンティティ(リソース、タイプ、サーバーなど)の名前のドメイン内で一意である必要があります。サーバー・プール名には、254文字の制限があり、プラットフォームでサポートされているすべての文字(感嘆符(!)およびチルダ(~)を除く)を使用できます。サーバー・プール名の先頭をピリオドまたはoraにすることはできません。

ACTIVE_CSS_ROLE

hub、leaf

サーバーのアクティブ・ロールで、次のいずれかにできます。

hub: サーバーは、Oracle Flex ClusterまたはOracle Clusterware標準クラスタのいずれかのハブ・ノードです。いずれの場合も、これがデフォルト値です。

leaf: サーバーは、Oracle Flex Cluster内のリーフ・ノードです。

EXPRESSION

次の書式の文字列を使用します。

(expression)

サーバーがカテゴリに属するかどうかを判断するために、各サーバーに対して評価できる一連のサーバー属性名、値および状態。表3-4に、サーバー属性を示します。

受け入れ可能な比較演算子は、次のとおりです。

- =: 等しい

- eqi: 等しい、大/小文字の区別なし

- >: より大きい

- <: より小さい

- !=: 等しくない

- co: 次を含む

- coi: 次を含む、大/小文字の区別なし

- st: 次で始まる

- en: 次で終わる

- nc: 含まない

- nci: 含まない、大/小文字の区別なし

受け入れ可能なブール演算子は、次のとおりです。

- AND

- OR

注意: EXPRESSION文字列で使用する演算子の前後には空白を入力する必要があります。

次に例を示します。

EXPRESSION='((NAME = server1) OR (NAME = server2))'"

ポリシー・セット構成の例

app1、app2およびapp3という3つの異なるアプリケーションで使用される4ノード・クラスタがあり、pool1、pool2およびpool3という3つのサーバー・プールを作成したと想定します。各アプリケーションは専用のサーバー・プールで動作するように割り当て、app1は2つのサーバーを希望し、app2とapp3はそれぞれ1つのサーバーを希望するように、サーバー・プールを構成します。サーバー・プールの構成は、次のようになります。

$ crsctl status serverpool pool1 -p
NAME=pool1
IMPORTANCE=0
MIN_SIZE=2
MAX_SIZE=2
SERVER_NAMES=
PARENT_POOLS=
EXCLUSIVE_POOLS=
ACL=owner:mjk:rwx,pgrp:g900:rwx,other::r--
SERVER_CATEGORY=

$ crsctl status serverpool pool2 -p
NAME=pool2
IMPORTANCE=0
MIN_SIZE=1
MAX_SIZE=1
SERVER_NAMES=
PARENT_POOLS=
EXCLUSIVE_POOLS=
ACL=owner:mjk:rwx,pgrp:g900:rwx,other::r--
SERVER_CATEGORY=

$ crsctl status serverpool pool3 -p
NAME=pool3
IMPORTANCE=0
MIN_SIZE=1
MAX_SIZE=1
SERVER_NAMES=
PARENT_POOLS=
EXCLUSIVE_POOLS=
ACL=owner:mjk:rwx,pgrp:g900:rwx,other::r--
SERVER_CATEGORY=

注意:

前述の例に示すcrsctl status serverpoolコマンドは、CRSCTLを使用してサーバー・プールを作成した場合にのみ機能します。

ただし、この構成では、一部のアプリケーションは日、週または月の様々なときにサーバー時間を必要とする事実を考慮しません。たとえば、電子メール・アプリケーションは通常、業務時間中はより多くのリソースを使用して、夜間および週末は使用するリソースは少なくて済みます。

また、app1は、業務時間中は2つのサーバーを必要とし、夜間は1つのみのサーバーを必要とし、週末はサーバーを必要としないと想定します。同時に、app2とapp3はそれぞれ、業務時間中は1つのサーバーを必要とし、夜間はapp2は2つのサーバーを必要とし、app3は1つのサーバーを必要とします。週末は、app2は1つのサーバーを必要とし、app3は3つのサーバーを必要とします。このシナリオは、クラスタに対して構成する必要がある3つの構成を示しています。

1. 昼間:

- app1は2つのサーバーを使用します。

- app2とapp3はそれぞれ1つのサーバーを使用します。

2. 夜間:

- app1は1つのサーバーを使用します。

- app2は2つのサーバーを使用します。

- app3は1つのサーバーを使用します。

3. 週末:

- app1は実行されません(0のサーバー)。

- app2は1つのサーバーを使用します。

- app3は3つのサーバーを使用します。

ポリシー・セットの作成

これらの前提を考えた場合、crsctl create policysetコマンドを実行して、Defaultという単一ポリシーを使用してポリシー・セットを作成します。これは、crsctl status serverpoolコマンドによって表示される構成を反映します。Defaultポリシーを使用すると、この例で想定されたニーズに対応するために他のポリシーを作成できます。crsctl create policysetコマンドによって、例3-1のようなテキスト・ファイルが作成されます。

例3-1 ポリシー・セットのテキスト・ファイル

SERVER_POOL_NAMES=Free pool1 pool2 pool3
POLICY
NAME=Default
SERVERPOOL
NAME=pool1
IMPORTANCE=0
MAX_SIZE=2
MIN_SIZE=2
SERVER_CATEGORY=
SERVERPOOL
NAME=pool2
IMPORTANCE=0
MAX_SIZE=1
MIN_SIZE=1
SERVER_CATEGORY=
SERVERPOOL
NAME=pool3
IMPORTANCE=0
MAX_SIZE=1
MIN_SIZE=1
SERVER_CATEGORY=

ポリシーの変更

この例で想定されているニーズに対応するように前述のポリシー・セットを変更するには、ポリシーの名前をDefaultからDayTimeに変更することによってテキスト・ファイルを編集し、すでに説明した3つのシナリオに対してポリシーを定義します。次に、ポリシーをコピーして2回貼付けを行って、2つのポリシーを作成します。これらには、例3-2に示すように、NightTimeとWeekendという名前を付けます。

例3-2 変更されたポリシー・セットのテキスト・ファイル

SERVER_POOL_NAMES=Free pool1 pool2 pool3
POLICY
NAME=DayTime
SERVERPOOL
NAME=pool1
IMPORTANCE=0
MAX_SIZE=2
MIN_SIZE=2
SERVER_CATEGORY=
SERVERPOOL
NAME=pool2
IMPORTANCE=0
MAX_SIZE=1
MIN_SIZE=1
SERVER_CATEGORY=
SERVERPOOL
NAME=pool3
IMPORTANCE=0
MAX_SIZE=1
MIN_SIZE=1
SERVER_CATEGORY=
POLICY
NAME=NightTime
SERVERPOOL
NAME=pool1
IMPORTANCE=0
MAX_SIZE=1
MIN_SIZE=1
SERVER_CATEGORY=
SERVERPOOL
NAME=pool2
IMPORTANCE=0
MAX_SIZE=2
MIN_SIZE=2
SERVER_CATEGORY=
SERVERPOOL
NAME=pool3
IMPORTANCE=0
MAX_SIZE=1
MIN_SIZE=1
SERVER_CATEGORY=
POLICY
NAME=Weekend
SERVERPOOL
NAME=pool1
IMPORTANCE=0
MAX_SIZE=0
MIN_SIZE=0
SERVER_CATEGORY=
SERVERPOOL
NAME=pool2
IMPORTANCE=0
MAX_SIZE=1
MIN_SIZE=1
SERVER_CATEGORY=
SERVERPOOL
NAME=pool3
IMPORTANCE=0
MAX_SIZE=3
MIN_SIZE=3
SERVER_CATEGORY=

個々のポリシーの名前の変更に加えて、各ポリシーの各サーバー・プールのMAX_SIZEポリシー属性とMIN_SIZEポリシー属性も、アプリケーションのニーズに従って変更されたことに注意してください。

次のコマンドによって、ファイルに格納されているポリシー・セットがOracle Clusterwareに登録されます。

$ crsctl modify policyset -file file_name

前述の例に示すのと同じ結果を得るには、crsctl modify policysetコマンドを使用してDefaultポリシー・セット全体を編集し、crsctl modify serverpoolコマンドを使用して、特定のポリシーに対する個々のサーバー・プール属性を変更します。

次のコマンドでは、3つのサーバー・プールを管理するようにDefaultポリシー・セットを変更します。

$ crsctl modify policyset –attr "SERVER_POOL_NAMES=Free pool1 pool2 pool3"

次のコマンドでは、3つのポリシーを追加します。

$ crsctl add policy DayTime
$ crsctl add policy NightTime
$ crsctl add policy Weekend

次のコマンドでは、ポリシーの要件に従って3つのサーバー・プールを構成します。

$ crsctl modify serverpool pool1 -attr "MIN_SIZE=2,MAX_SIZE=2" -policy DayTime
$ crsctl modify serverpool pool1 -attr "MIN_SIZE=1,MAX_SIZE=1" -policy NightTime
$ crsctl modify serverpool pool1 -attr "MIN_SIZE=0,MAX_SIZE=0" -policy Weekend

$ crsctl modify serverpool pool2 -attr "MIN_SIZE=1,MAX_SIZE=1" -policy DayTime
$ crsctl modify serverpool pool2 -attr "MIN_SIZE=2,MAX_SIZE=2" -policy NightTime
$ crsctl modify serverpool pool2 -attr "MIN_SIZE=1,MAX_SIZE=1" -policy Weekend

$ crsctl modify serverpool pool3 -attr "MIN_SIZE=1,MAX_SIZE=1" -policy DayTime
$ crsctl modify serverpool pool3 -attr "MIN_SIZE=1,MAX_SIZE=1" -policy NightTime
$ crsctl modify serverpool pool3 -attr "MIN_SIZE=3,MAX_SIZE=3" -policy Weekend

これで、3つのアプリケーションの要件に対応するためにサーバー・プールを管理する3つの個々のポリシーができます。

ポリシーのアクティブ化

これでポリシー・セットが構成され、3つの異なるポリシーを使用して3つのサーバー・プールを制御します。必要に応じてポリシーをアクティブ化でき、各ポリシーの構成に従ってOracle Clusterwareでサーバー・プールを再構成するように指示することができます。

次のコマンドでは、DayTimeポリシーをアクティブ化します。

$ crsctl modify policyset -attr "LAST_ACTIVATED_POLICY=DayTime"

リソースの現在のステータスは、次のとおりです。

$ crsctl status resource -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
app1
1        ONLINE  ONLINE       mjk_has3_2               STABLE
2        ONLINE  ONLINE       mjk_has3_0               STABLE
app2
1        ONLINE  ONLINE       mjk_has3_1               STABLE
app3
1        ONLINE  ONLINE       mjk_has3_3               STABLE

サーバー・プールのステータスは、次のとおりです。

$ crsctl stat serverpool
NAME=Free
ACTIVE_SERVERS=

NAME=Generic
ACTIVE_SERVERS=

NAME=pool1
ACTIVE_SERVERS=mjk_has3_0 mjk_has3_2

NAME=pool2
ACTIVE_SERVERS=mjk_has3_1

NAME=pool3
ACTIVE_SERVERS=mjk_has3_3

サーバーはDayTimeポリシーに従って割り当てられ、アプリケーションはそれぞれのサーバーで実行されます。

次のコマンドでは、Weekendポリシーをアクティブ化します(サーバー・プールには様々なサイズがあるため、サーバーがサーバー・プール間を移動するにつれて、停止するアプリケーションもあれば、起動するアプリケーションもあります)。

$ crsctl modify policyset -attr "LAST_ACTIVATED_POLICY=Weekend"
CRS-2673: Attempting to stop 'app1' on 'mjk_has3_2'
CRS-2673: Attempting to stop 'app1' on 'mjk_has3_0'
CRS-2677: Stop of 'app1' on 'mjk_has3_0' succeeded
CRS-2672: Attempting to start 'app3' on 'mjk_has3_0'
CRS-2677: Stop of 'app1' on 'mjk_has3_2' succeeded
CRS-2672: Attempting to start 'app3' on 'mjk_has3_2'
CRS-2676: Start of 'app3' on 'mjk_has3_2' succeeded
CRS-2676: Start of 'app3' on 'mjk_has3_0' succeeded

リソースの現在のステータスは、次のとおりです。

$ crsctl status resource -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
app1
1        ONLINE  OFFLINE                               STABLE
2        ONLINE  OFFLINE                               STABLE
app2
1        ONLINE  ONLINE       mjk_has3_1               STABLE
app3
1        ONLINE  ONLINE       mjk_has3_0               STABLE
2        ONLINE  ONLINE       mjk_has3_2               STABLE
3        ONLINE  ONLINE       mjk_has3_3               STABLE
--------------------------------------------------------------------------------

サーバー・プールのステータスは、次のとおりです。

$ crsctl status serverpool
NAME=Free
ACTIVE_SERVERS=

NAME=Generic
ACTIVE_SERVERS=

NAME=pool1
ACTIVE_SERVERS=

NAME=pool2
ACTIVE_SERVERS=mjk_has3_1

NAME=pool3
ACTIVE_SERVERS=mjk_has3_0 mjk_has3_2 mjk_has3_3

crsctl modify policysetコマンドを使用して、Oracle Clusterwareは、サーバー・プール構成を変更し、ポリシーの要件に従ってサーバーを移動し、アプリケーションの停止と起動を行いました。

関連項目:

この例に示すCRSCTLコマンドの詳細は、「Oracle Clusterware制御(CRSCTL)ユーティリティ・リファレンス」を参照してください。

4 Oracle Flex Clusters

Oracle Flex Clusterは、Oracle Clusterwareを多数のノードに拡張します。

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

- Oracle Flex Clusterの概要

- Oracle Flex Clusterの管理

Oracle Flex Clusterの概要

Oracle Flex Cluster構成にインストールされるOracle Grid Infrastructureは、拡張性のある動的で強力なノードのネットワークです。Oracle Flex Clusterは、多数のノードを持つOracle Real Application Clusters (Oracle RAC)データベースなどの様々なアプリケーションにプラットフォームを提供します。Oracle Flex Clusterでは、高可用性のために調整および自動化が必要な他のサービス・デプロイメントのプラットフォームも提供されます。

Oracle Flex Cluster内のすべてのノードは、単一のOracle Grid Infrastructureクラスタに属します。このアーキテクチャでは、様々なサービス・レベル、負荷、障害のレスポンス、およびリカバリに対処するために、アプリケーション・ニーズに基づいてリソースのデプロイメントに対するポリシー決定が集中管理されます。

Oracle Flex Clusterには、ハブおよびスポーク・アーキテクチャに配置される2つのタイプのノード(ハブ・ノードおよびリーフ・ノード)が含まれます。Oracle Flex Cluster内のハブ・ノードの最大数は64です。リーフ・ノードの数は、さらに多くできます。ハブ・ノードおよびリーフ・ノードでは、様々なタイプのアプリケーションをホストできます。

ハブ・ノードは、接続が強固であり、共有ストレージに直接アクセスできる点で、Oracle Clusterwareの標準クラスタ構成におけるOracle Grid Infrastructureノードに類似しています。Oracle Flex Cluster構成では、Oracle Grid Infrastructureに関係なく共有ストレージをリーフ・ノードに提供できます。

リーフ・ノードは、共有記憶域への直接アクセスが必要なく、かわりにハブ・ノードを介してデータを要求する点が、標準のOracle Grid Infrastructureノードと異なります。ハブ・ノードは、クラスタ・メンバー・ノードとしてリーフ・ノードを一切必要とせずにOracle Flex Cluster構成で実行できますが、リーフ・ノードは最低1つのハブ・ノードを含むクラスタのメンバーである必要があります。

注意:

Oracle Flex Clusterをアップグレードする場合、最初にハブ・ノードをアップグレードし、アップグレード・プロセスの一環としてアップグレード済のハブ・ノードを起動しておくことをお薦めします。

Oracle Flex Clusterの管理

この項では、小さいクラスタまたは大きいクラスタのいずれかにOracle Grid Infrastructureを正常にインストールした後のOracle Flex Cluster管理について説明しています。CRSCTLを使用してOracle Flex Clusterを管理します。

関連項目:

- Oracle Grid Infrastructureのインストールの詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle Flex Clusterの管理に使用する様々なCRSCTLコマンドの詳細は、「Oracle Clusterware制御(CRSCTL)ユーティリティ・リファレンス」を参照してください。

この項には次のトピックが含まれます:

- クラスタ・モードの変更

- ノード・ロールの変更

クラスタ・モードの変更

既存のOracle Clusterwareの標準クラスタをOracle Flex Clusterに変更できます。

注意:

- クラスタ・モードを変更する場合、ダウンタイムが発生します。

- Oracle Flex ClusterからのOracle Clusterwareの標準クラスタへの変更をサポートしていません。

- Oracle Flex Clusterではグリッド・ネーミング・サービス(GNS)が必要です。

- ゾーン委任は必要ありません。

Oracle Clusterwareの標準クラスタからのOracle Flex Clusterへの変更

既存のOracle Clusterwareの標準クラスタからOracle Flex Clusterに変更するには、次の手順を実行します。

1. 次のコマンドを実行して、クラスタの現在のモードを判断します。

$ crsctl get cluster mode status

2. 次のコマンドを実行して、グリッド・ネーミング・サービス(GNS)が固定VIPで構成されているかを確認します。

$ srvctl config gns

この手順は、GNSが固定のVIPで構成されていない場合は失敗します。GNSがない場合、次のようにrootとして1つ作成します。

# srvctl add gns -vip vip_name | ip_address

次のコマンドをrootとして実行して、GNSを起動します。

# srvctl start gns

3. Oracle Automatic Storage Management Configuration Assistant (ASMCA)を使用して、クラスタでOracle Flex ASMを有効にしてからクラスタ・モードを変更します。

関連項目:

Oracle Flex ASMの有効化の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

4. rootとして次のコマンドを実行して、クラスタのモードがOracle Flex Clusterになるよう変更します。

# crsctl set cluster mode flex

5. クラスタの各ノードでrootとして次のコマンドを実行し、Oracle Clusterwareを停止します。

# crsctl stop crs

6. クラスタの各ノードでrootとして次のコマンドを実行し、Oracle Clusterwareを起動します。

# crsctl start crs -wait

注意:

進捗状況およびステータス・メッセージを表示するには、-waitオプションを使用します。

ノード・ロールの変更

構成されているノードのロールは、それがハブ・ノードであるかリーフ・ノードであるかにかかわらずローカルに保存され、インストールのはじめに設定されます。起動時に、ノードは前回構成されたロールでの起動を試みます。

CRSCTLを使用して、次の手順でノードのロールを変更します。

1. 次のコマンドを実行して、ローカル・ノードの現在のロールを判断します。

$ crsctl get node role config

2. 次のコマンドをrootとして実行して、ローカル・ノードのロールを変更します。

# crsctl set node role {hub | leaf}

注意:

リーフ・ノードをハブ・ノードに変更する場合、VIPがすでにノードに存在していない場合は、srvctl add vipを実行してVIPを追加する必要がある場合があります。VIPを持つのにリーフ・ノードは必要ありません。

DHCP割当てVIPを含むクラスタをインストールした場合、手動でVIPを追加する必要はありません。

3. rootとして、ロールを変更したノードのOracle高可用性サービスを、次のように停止します。

# crsctl stop crs

4. リーフ・ノードをハブ・ノードに変更している場合は、次のようにOracle ASMフィルタ・ドライバをrootとして構成します。

# $ORACLE_HOME/bin/asmcmd afd_configure

関連項目:

asmcmd afd_configureコマンドの詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

5. rootとして、ロールを変更したノードのOracle高可用性サービスを、次のように再起動します。

# crsctl start crs -wait

注意:

進捗状況およびステータス・メッセージを表示するには、-waitオプションを使用します。

6. ローカル・ノードで手順3および5を実行します。

7. インベントリを手動で更新します。

ハブ・ノードをリーフ・ノードに変換する場合、残りのすべてのハブ・ノードで次のコマンドを実行します。

$ Grid_home/oui/bin/runInstaller -updateNodeList ORACLE_HOME=Oracle_home
"CLUSTER_NODES={comma_separated_Hub_Node_list}" -silent -local CRS=TRUE

新たに変換されたリーフ・ノードで、次のコマンドを実行します。

$ Grid_home/oui/bin/runInstaller -updateNodeList ORACLE_HOME=Oracle_home
"CLUSTER_NODES={Leaf_Node_name}" -silent -local CRS=TRUE

リーフ・ノードをハブ・ノードに変換する場合、すべてのハブ・ノードで次のコマンドを実行します。

$ Grid_home/oui/bin/runInstaller -updateNodeList ORACLE_HOME=Oracle_home
"CLUSTER_NODES={comma_separated_Hub_Node_list}" -silent -local CRS=TRUE

関連項目:

前述のCRSCTLコマンドの使用方法の詳細は、「Oracle RAC環境のCRSCTLコマンド」を参照してください。

5 高速ホーム・プロビジョニング

高速ホーム・プロビジョニングは、OracleホームのテンプレートをOracleソフトウェア(データベース、ミドルウェアおよびアプリケーションなど)のイメージ(ゴールド・イメージと呼ばれます)として作成、保存および管理している単一のクラスタから、クラウド・コンピューティング環境のノードにソフトウェア・ホームをデプロイする方法です。すべてのゴールド・イメージの作業用コピーを作成し、その作業用コピーをクラウドの任意のノードにプロビジョニングできます。

ゴールド・イメージは高速ホーム・プロビジョニング・サーバー上のリポジトリに格納されます。このサーバーは、高可用性プロビジョニング・システムである高速ホーム・プロビジョニング・サーバー・クラスタ内の1つのサーバーで実行されています。このプロビジョニング方法によってOracleホームへの迅速なパッチ適用を簡単に行えるようになり、停止時間が最小限に短縮され、場合によっては完全に解消します。

また、高速ホーム・プロビジョニングを使用すると、10.2.0.5 (Oracle Database 10g)、11.2.0.x (Oracle Database 11g)、12.1.0.1および12.1.0.2 (Oracle Database 12c)など、様々なバージョンのOracle DatabaseリリースのOracle Databaseソフトウェアをプロビジョニングできます。このようなソフトウェアをプロビジョニングするとき、高速ホーム・プロビジョニングによって、様々なタイプのデータベース(Oracle Real Application Clusters (Oracle RAC)、シングル・インスタンス、Oracle Real Application Clusters One Node (Oracle RAC One Node)データベースなど)を異なるタイプの記憶域に作成するための追加機能や、その他のオプション(テンプレートの使用やコンテナ・データベース(CDB)の作成など)が提供されます。高速ホーム・プロビジョニングの機能が向上し、データベース・ソフトウェアのパッチ適用の効率がよくなっています。このため、ソフトウェアのリモートでの高速パッチ適用が可能になり、ほとんどのケースでデータベースの停止時間が発生しません。

関連項目:

Oracle Databaseソフトウェアのプロビジョニングの詳細は、ご使用のプラットフォームの『Oracle Real Application Clustersインストレーション・ガイド』を参照してください。

注意:

- Windowsオペレーティング・システムでは高速ホーム・プロビジョニングはサポートされません。

- Oracle Database 12cリリース1 (12.1)の高速ホーム・プロビジョニング・サーバーでは、オペレーティング・システム・イメージやOracle Grid Infrastructureホームの管理は行われません。

高速ホーム・プロビジョニングによって大規模環境でのメンテナンスが簡略化されます。高速ホーム・プロビジョニング・サーバー上のソフトウェア・ホームを1回だけ更新すればよいためです。

この項には次のトピックが含まれます:

- 高速ホーム・プロビジョニングのアーキテクチャ

- 高速ホーム・プロビジョニングの実装

- 高速ホーム・プロビジョニング・クライアントの管理

高速ホーム・プロビジョニングのアーキテクチャ

高速ホーム・プロビジョニング・アーキテクチャは、高速ホーム・プロビジョニング・サーバーと高速ホーム・プロビジョニング・クライアントで構成されます。高速ホーム・プロビジョニング・サーバー・クラスタと高速ホーム・プロビジョニング・クラスタがあります。

高速ホーム・プロビジョニング・サーバー・クラスタはすべてのデータのリポジトリです。データは大きく分けて次の2つのタイプがあります。

- ゴールド・イメージ

- ユーザー、ロール、権限およびアイデンティティに関連するメタデータ

高速ホーム・プロビジョニング・サーバーは、Oracleホームのプロビジョニングでセントラル・サーバーとして動作し、高速ホーム・プロビジョニング・クライアント・クラスタでOracleホームを利用できるようにします。

ユーザーは、高速ホーム・プロビジョニング・サーバーまたは高速ホーム・プロビジョニング・クライアントのクラスタ・サイトで操作し、Oracleホームのデプロイメントをリクエストしたり、ゴールド・イメージを問い合せたりします。ユーザーがゴールド・イメージを指定してOracleホームをリクエストすると、高速ホーム・プロビジョニング・クライアントは、高速ホーム・プロビジョニング・サーバーと通信してそのリクエストを渡します。高速ホーム・プロビジョニング・サーバーが適切なアクションを実行してリクエストを処理します。具体的には、Oracle Automatic Storage Management Cluster File System (Oracle ACFS)、ネットワーク・ファイル・システム(NFS)、スナップショットなどのテクノロジを使用して、ゴールド・イメージのコピーをインスタンス化し、高速ホーム・プロビジョニング・クライアント・クラスタで利用できるようにします。

この項には次のトピックが含まれます:

- 高速ホーム・プロビジョニング・サーバー

- 高速ホーム・プロビジョニング・クライアント

- 高速ホーム・プロビジョニングのロール

- 高速ホーム・プロビジョニングのイメージ

高速ホーム・プロビジョニング・サーバー

高速ホーム・プロビジョニング・サーバーは、Oracle Automatic Storage Management (Oracle ASM)、Oracle Automatic Storage Management Cluster File System (Oracle ACFS)、Grid Naming Service (GNS)、およびその他のコンポーネントを使用する、高可用性ソフトウェア・プロビジョニング・システムです。高速ホーム・プロビジョニング・サーバーは、Oracleホームのプロビジョニングで主にセントラル・サーバーとして動作し、高速ホーム・プロビジョニング・クライアントがOracleホームを利用できるようにします。

高速ホーム・プロビジョニング・サーバーの機能:

- 管理ホームのゴールド・イメージを効率よく保存します(ユーザー、ロールおよび権限に関連する、個別のバイナリおよびメタデータを含む)。

- リモート・クラスタでマウントを使用してアクセスされるホームに、高可用性ネットワーク・ファイル・システム(HANFS)のエクスポートを提供します。

- リクエストに応じて、クライアントに利用可能なホームのリストを提供します。

- ソフトウェア・ホームにパッチを1回適用してから、そのホームを高速ホーム・プロビジョニング・クライアントにデプロイします。すべてのサイトにパッチを適用するのではありません。

- 既存のデプロイに関するレポートが可能となります。

高速ホーム・プロビジョニング・クライアント

高速ホーム・プロビジョニング・クライアントは、クラウド環境におけるすべてのサーバーにインストールされたOracle Grid Infrastructureの一部です。ユーザーは、Oracleホームのデプロイのリクエストや使用可能なゴールド・イメージのリスト表示といったタスクを実行するために、高速ホーム・プロビジョニング・クライアントで操作を行います。ユーザーがゴールド・イメージを指定してOracleホームをリクエストすると、高速ホーム・プロビジョニング・クライアントは、高速ホーム・プロビジョニング・サーバーと通信してそのリクエストを渡します。高速ホーム・プロビジョニング・サーバーがリクエストを処理します。具体的には、ゴールド・イメージの作業用コピーをインスタンス化し、Oracle ACFS (推奨)、別のローカル・ファイル・システムまたはNFSを使用して、高速ホーム・プロビジョニング・クライアントで利用できるようにします。

高速ホーム・プロビジョニング・クライアントの機能:

- Oracle ACFSを使用して、ローカル・ホームとして迅速にプロビジョニングできる作業用コピーを格納します。新しいホームは、Oracle ACFSスナップショットを使用してすぐに作成したり元に戻したりすることができます。

注意:

Oracle ACFS以外のローカル・ファイル・システムも使用できます。

- 高速ホーム・プロビジョニング・サーバーの使用可能なホームのリストを提供します。

- 高速ホーム・プロビジョニング・サーバーからの高可用性NFS (HANFS)マウントを、作業用コピーとして高速ホーム・プロビジョニング・クライアント・クラスタにプロビジョニングできます。

NFSホーム・クライアントは、Oracle ACFSがインストールされていない高速ホーム・プロビジョニング・クライアントですが、NFSプロトコルを介して高速ホーム・プロビジョニング・サーバーにアクセスすることもできます。NFSプロトコル環境では、高速ホーム・プロビジョニング・クライアントの可用性を高めるために、高速ホーム・プロビジョニング・サーバーに可用性の高いNFSサーバーを構成する必要があります。

関連項目:

詳細は、「高速ホーム・プロビジョニング・クライアントの作成」を参照してください

高速ホーム・プロビジョニングのロール

管理者は、ロールをゴールド・イメージのユーザーに割り当てます(各ロールにはアクセスレベル権限が定義されています)。高速ホーム・プロビジョニング・クライアントのユーザーにも、特定のロールが割り当てられます。高速ホーム・プロビジョニングには、基本組込みロールと複合組込みロールが含まれます。

基本組込みロール

基本組込みロールとその機能:

- GH_ROLE_ADMIN: ロールに関連するすべてのための管理ロール。このロールを割り当てられたユーザーは、rhpctl verb roleコマンドを実行できます。

- GH_SITE_ADMIN: 高速ホーム・プロビジョニング・クライアントに関連するすべてのための管理ロール。このロールを割り当てられたユーザーは、rhpctl verb clientコマンドを実行できます。

- GH_SERIES_ADMIN: イメージ・シリーズに関連するすべてのための管理ロール。このロールを割り当てられたユーザーは、rhpctl verb seriesコマンドを実行できます。

- GH_SERIES_CONTRIB: このロールを割り当てられたユーザーは、シリーズへのイメージの追加(rhpctl insertimage seriesコマンド使用)またはシリーズからのイメージの削除(rhpctl deleteimage seriesコマンド使用)を行うことができます。

- GH_WC_ADMIN: 作業用コピーに関連するすべてのための管理ロール。このロールを割り当てられたユーザーは、rhpctl verb workingcopyコマンドを実行できます。

- GH_WC_OPER: このロールでは、rhpctl add workingcopyコマンドを使用して、自分または他のユーザーのために作業用コピーを作成できるようになります。他のユーザーのために作成する場合は-userオプションを付けます。このロールが割り当てられたユーザーには管理権限はありません。自分が作成する作業用コピーのみ管理できます。

- GH_WC_USER: このロールでは、rhpctl add workingcopyコマンドを使用して作業用コピーを作成できるようになります。このロールが割り当てられたユーザーには管理権限はありません。自分で作成した作業用コピーのみ削除できます。

- GH_IMG_ADMIN: イメージに関連するすべてのための管理ロール。このロールを割り当てられたユーザーは、rhpctl verb imageコマンドを実行できます。

- GH_IMG_USER: このロールでは、rhpctl add | import imageを使用してイメージを作成できるようになります。このロールが割り当てられたユーザーには管理権限はありません。自分で作成したイメージのみ削除できます。

- GH_IMG_TESTABLE: このロールでは、イメージがTESTABLE状態のときに作業用コピーを追加できるようになります。このロールが割り当てられたユーザーが作業用コピーを追加するためには、GH_WC_ADMINロールまたはGH_WC_USERロールのいずれかの割当てが必要です。

- GH_IMG_RESTRICT: このロールでは、イメージがRESTRICTED状態のときに作業用コピーを追加できるようになります。このロールが割り当てられたユーザーが作業用コピーを追加するためには、GH_WC_ADMINロールまたはGH_WC_USERロールのいずれかの割当てが必要です。

- GH_IMG_PUBLISH: このロールが割り当てられたユーザーは、イメージを別の状態にプロモートするか、PUBLISHED状態のイメージをTESTABLEまたはRESTRICTED状態にリトラクトできます。

- GH_IMG_VISIBILITY: このロールが割り当てられたユーザーは、ghctl allow | disallow imageコマンドを使用して、プロモート済または公開済のイメージへのアクセスを変更できます。

複合組込みロール

複合組込みロールとその機能:

- GH_SA: 高速ホーム・プロビジョニング・サーバー上のOracle Grid Infrastructureユーザーは自動的にこのロールを継承します。
GH_SAロールに含まれる基本組込みロール: GH_ROLE_ADMIN、GH_SITE_ADMIN、GH_SERIES_ADMIN、GH_SERIES_CONTRIB、GH_WC_ADMIN、GH_IMG_ADMIN、GH_IMG_TESTABLE、GH_IMG_RESTRICT、GH_IMG_PUBLISHおよびGH_IMG_VISIBILITY。

- GH_CA: 高速ホーム・プロビジョニング・クライアント上のOracle Grid Infrastructureユーザーは自動的にこのロールを継承します。
GH_CAロールに含まれる基本組込みロール: GH_SERIES_ADMIN、GH_SERIES_CONTRIB、GH_WC_ADMIN、GH_IMG_ADMIN、GH_IMG_TESTABLE、GH_IMG_RESTRICT、GH_IMG_PUBLISHおよびGH_IMG_VISIBILITY。

- GH_OPER: このロールに含まれる基本組込みロール: GH_WC_OPER、GH_SERIES_ADMIN、GH_IMG_TESTABLE、GH_IMG_RESTRICTおよびGH_IMG_USER。このロールが割り当てられたユーザーのアクセス権は制限されています。イメージを削除することはできません。

GH_WC_USERユーザー・ロールで使用できる、高速ホーム・プロビジョニング・サーバー上のG1というゴールド・イメージについて考えてみます。このロールによってG1に対する読取り専用権限がユーザーに許可されます。

また、高速ホーム・プロビジョニング・クライアントCl1のユーザーU1がGH_WC_USERロールを持っているとします。U1がゴールド・イメージG1に基づくOracleホームのプロビジョニングをリクエストすると、GH_WC_USERロールによって付与される権限によりU1はそれを実行できます。このロールはG1にも割り当てられています。ただし、U1がG1の削除をリクエストした場合、GH_WC_USERロールには必要な権限が含まれないため、そのリクエストは拒否されます。

高速ホーム・プロビジョニング・サーバーは、高速ホーム・プロビジョニング・クライアントにユーザーとロールのマッピングを関連付けることができます。高速ホーム・プロビジョニング・サーバーがユーザーとロールのマッピングを委任した後で、高速ホーム・プロビジョニング・クライアントは、高速ホーム・プロビジョニング・クライアントに所属するすべてのユーザーについて、高速ホーム・プロビジョニング・サーバー上でユーザーとロールのマッピングを変更できます。これは、高速ホーム・プロビジョニング・サーバーのみが、高速ホーム・プロビジョニング・クライアントのサイトのユーザーIDをそのサイトのクライアント・クラスタ名で修飾するという事実によって暗黙に示されます。したがって、高速ホーム・プロビジョニング・クライアントCL1は、CL2上のユーザーのユーザー・マッピングを更新できません(CL2は別の高速ホーム・プロビジョニング・クライアントのクラスタ名)。

高速ホーム・プロビジョニングのイメージ

デフォルトでは、rhpctl import imageまたはrhpctl add imageを使用してゴールド・イメージを作成した場合、そのイメージを作業用コピーのプロビジョニングにすぐ使用できます。ただし、一定の条件の下では、イメージへのアクセスを制限してイメージのテストまたは検証を行ってから、一般に使用できるようにする必要があります。

イメージの状態

イメージの状態をTESTABLEまたはRESTRICTEDに設定すると、GH_IMG_TESTABLEまたはGH_IMG_RESTRICTロールを持つユーザーのみがこのイメージから作業用コピーをプロビジョニングできます。イメージのテストまたは検証が終了したら、rhpctl promote image -image image_name -state PUBLISHEDコマンドを実行して、状態を変更し、イメージを一般に使用できるようにします。新しいゴールド・イメージを追加したとき、また、rhpctl add imageまたはrhpctl import imageコマンドで状態を指定しなかった場合、デフォルトのイメージの状態はPUBLISHEDです。

イメージ・シリーズ

イメージ・シリーズの使用は、様々なイメージを論理的な順序でグループ化する方法として便利です。高速ホーム・プロビジョニングは、各イメージを他のイメージとは独立したエンティティとして扱います。イメージが特定の体系に沿っている場合でも、イメージ間に関係はないとみなされます。イメージ管理者は、ユーザー・コミュニティにとって意味がわかるようにイメージの名前を論理的に付けます。

rhpctl add seriesコマンドを使用して、イメージ・シリーズを作成し、1つ以上のイメージをそのシリーズに関連付けます。イメージ・シリーズ内のイメージのリストは、順序付きのリストです。rhpctl insertimage seriesとrhpctl deleteimage seriesを使用して、イメージ・シリーズに対してイメージを追加および削除します。これらのコマンドを使用してシリーズ内のイメージの順序を変更することもできます。

高速ホーム・プロビジョニングの実装

Oracle Clusterwareをインストールして構成した後で、高速ホーム・プロビジョニングの構成および起動ができます。

この項には次のトピックが含まれます:

- 高速ホーム・プロビジョニング・サーバーの作成

- 高速ホーム・プロビジョニング・サーバーへのゴールド・イメージの追加

- ソフトウェアのプロビジョニング

- 高速ホーム・プロビジョニング・クライアントの作成

高速ホーム・プロビジョニング・サーバーの作成

高速ホーム・プロビジョニング・サーバーは、Oracle ACFSファイル・システムに作成されたリポジトリを使用します。ここに、クライアントで利用できるようにするすべてのソフトウェア・ホームを格納します。

高速ホーム・プロビジョニング・サーバーを作成するには、次の手順を実行します。

1. Oracle ASM Configuration Assistant (ASMCA)を使用して、次のように、ソフトウェアを格納するOracle ASMディスク・グループを高速ホーム・プロビジョニング・サーバー上に作成します。

$ Grid_home/bin/asmca

このディスク・グループはソフトウェアの格納に使用されるため1 TB以上にすることをお薦めします。

注意:

このディスク・グループのOracle ASM Dynamic Volume Manager (Oracle ADVM)互換性設定は12.1に設定する必要があります。

関連項目:

Oracle ASMディスク・グループの互換性設定の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

2. クラスタのすべてのノードに存在するマウント・パスを指定します。高速ホーム・プロビジョニング・サーバーはこのパスを使用してゴールド・イメージをマウントします。

$ mkdir -p storage_path/images

3. rootとして、次のように高速ホーム・プロビジョニング・サーバーのリソースを作成します。

# Grid_home/bin/srvctl add rhpserver -storage storage_path
-diskgroup disk_group_name

4. 高速ホーム・プロビジョニング・サーバーを、次のように起動します。

$ Grid_home/bin/srvctl start rhpserver

関連項目:

この手順で使用されるSRVCTLコマンドの詳細は、「SRVCTLコマンド・リファレンス」を参照してください

高速ホーム・プロビジョニング・サーバーの起動後に、さらに高速ホーム・プロビジョニングを管理するには高速ホーム・プロビジョニング・コントロール(RHPCTL)ユーティリティを使用します。

関連項目:

RHPCTLの詳細は、「高速ホーム・プロビジョニングおよびサーバー制御コマンド・リファレンス」を参照してください

高速ホーム・プロビジョニング・サーバーへのゴールド・イメージの追加

高速ホーム・プロビジョニング・サーバーは、ソフトウェア・ホームのゴールド・イメージの保存および提供を行います。このようなイメージは、高速ホーム・プロビジョニング・サーバーでインスタンス化される必要があります。

注意:

イメージは読取り専用です。イメージからプログラムを実行することはできません。利用可能なソフトウェア・ホームをイメージから作成するには、作業用コピーを作成する必要があります。イメージをソフトウェア・ホームとして直接使用することはできません。ただし、イメージを使用して作業用コピー(ソフトウェア・ホーム)を作成できます。

次の方法の1つを使用して、高速ホーム・プロビジョニング・サーバーにソフトウェアをインポートできます。

- 次のコマンドを使用して、高速ホーム・プロビジョニング・サーバーにインストールされたホームからイメージをインポートできます。

rhpctl import image -image image_name -path path_to_installed_home
[-imagetype ORACLEDBSOFTWARE | SOFTWARE]

- 次のコマンドを使用して(高速ホーム・プロビジョニング・クライアントで実行)、高速ホーム・プロビジョニング・クライアントにインストールされたホームからイメージをインポートできます。

rhpctl import image -image image_name -path path_to_installed_home

- 次のコマンドを使用して、既存の作業用コピーからイメージを作成できます。

rhpctl add image –image image_name -workingcopy working_copy_name

これらのコマンドを実行すると、次のようなOracle ACFSファイル・システムが高速ホーム・プロビジョニングのルート・ディレクトリに作成されます。

/u01/rhp/images/images/RDBMS_121020617524

関連項目:

これらのRHPCTLコマンドの詳細は、「高速ホーム・プロビジョニングおよびサーバー制御コマンド・リファレンス」を参照してください

ソフトウェアのプロビジョニング

イメージをインポートしたら、作業用コピーを高速ホーム・プロビジョニング・サーバーまたは高速ホーム・プロビジョニング・クライアントに追加することで、ソフトウェアをプロビジョニングできます。その後、サーバーまたはクライアントでソフトウェア・プロビジョニング・コマンドを実行できます。

1. 高速ホーム・プロビジョニング・サーバーでソフトウェアをプロビジョニングするには、次のコマンドを使用します。

rhpctl add workingcopy -workingcopy working_copy_name -image image_name

2. 高速ホーム・プロビジョニング・クライアント上に作業用コピーを作成するには、次のコマンドを使用します。

rhpctl add workingcopy -workingcopy working_copy_name -image image_name
-storagetype storage_type -path path_to_software_home

3. 高速ホーム・プロビジョニング・サーバーから高速ホーム・プロビジョニング・クライアント上に作業用コピーを作成するには、次のコマンドを使用します。

rhpctl add workingcopy -workingcopy working_copy_name -image image_name
-path path_to_software_home -client client_cluster_name

注意:

- -pathパラメータに指定するディレクトリは空であることが必要です。

- システム・エラーまたはユーザー・エラーによって中断または失敗した場合には、プロビジョニング・コマンドを再実行できます。報告されたエラーを修正してからコマンドを再実行すると、失敗したところから再開します。

関連項目:

詳細は、「プロビジョニングされたソフトウェア用の記憶領域」を参照してください

この項には次のトピックが含まれます:

- プロビジョニングされたソフトウェア用の記憶領域

- 別のユーザーのプロビジョニング

プロビジョニングされたソフトウェア用の記憶領域

rhpctl add workingcopyコマンドの-storagetypeおよび-pathパラメータを使用して、プロビジョニングされたソフトウェア用の記憶領域を管理できます。-pathを指定すると、アプリケーション・ソフトウェアは指定したパスに常にプロビジョニングされます。ファイル・システムのこのパスがクラスタのすべてのノードで共有されている場合、作業用コピーはこの共有記憶域に作成されます。ファイル・システムが共有されていない場合は、クラスタの各ノードの指定パスにアプリケーション・ソフトウェア全体がコピーされます。

-pathパラメータに加えて-storagetypeを指定すると、このパラメータで指定する記憶域のタイプが使用されます。-storagetype NFSと指定すると、指定のパスがNFSマウント・ポイントとして使用されます。NFS記憶域では、ソフトウェアは高速ホーム・プロビジョニング・サーバー・クラスタに存在し、高速ホーム・プロビジョニング・クライアント・クラスタからNFSを介して読取り/書込みとしてアクセスできます。このケースでは、同じソフトウェアがリモート・クラスタのすべてのノードで認識され、すべてのノードで共有されます。ソフトウェアを高速ホーム・プロビジョニング・サーバー・クラスタにプロビジョニングするときは、NFS記憶域を指定できません。

-storagetype LOCALと指定すると、作業用コピーは、高速ホーム・プロビジョニングによって提供される記憶域ではなく、ユーザー提供のファイル・システムに格納されます。-pathパラメータを指定しなかった場合、-oraclebaseオプションの値に基づいてデフォルトのOracleホーム・パス(oracle_base_path/product/db_version/workingcopy_nameなど)がデータベース・ソフトウェアのプロビジョニングに使用されます。このパスは、共有の場合も非共有の場合もあります。

-storagetypeパラメータと-pathパラメータを指定しない場合、高速ホーム・プロビジョニング・サーバーはデフォルトの記憶域タイプRHP_MANAGEDを使用してOracle ACFS共有ファイル・システムを作成します。-pathパラメータを指定しない場合、高速ホーム・プロビジョニングはOracle ACFS共有ファイル・システムをターゲット・クラスタに作成し、このファイル・システムのユーザーがソフトウェアを使用できるようにします。高速ホーム・プロビジョニング・クライアント・クラスタでこのようにできるのは、Oracle ASMディスク・グループを含むように高速ホーム・プロビジョニング・クライアントを構成した場合のみです。

別のユーザーのプロビジョニング

別のユーザーがソフトウェアをプロビジョニングできるようにするには、rhpctl add workingcopyコマンドの-userパラメータと-clientパラメータを使用します。コマンドの実行元のクラスタに対してプロビジョニングする場合、-clientパラメータを指定する必要はありません。プロビジョニングが完了したとき、プロビジョニングされたソフトウェアのすべてのファイルとディレクトリは、指定したユーザーが所有します。リモートでプロビジョニングされたソフトウェアのファイルに対する権限は、そのアプリケーション・ソフトウェアのプロビジョニング元のゴールド・イメージに存在する権限と同じです。

高速ホーム・プロビジョニング・クライアントの作成

ユーザーは、Oracleホームのデプロイのリクエストやゴールド・イメージの問合せといったタスクを実行するために、高速ホーム・プロビジョニング・クライアントで操作を行います。

高速ホーム・プロビジョニング・クライアントを作成するには、次の手順を実行します。

1. 高可用性VIP (HAVIP)が高速ホーム・プロビジョニング・サーバーにない場合は、rootユーザーとして次のようにHAVIPを作成します。

# srvctl add havip -id id -address {host_name | ip_address}

ホスト名、IPv4またはIPv6 IPアドレスのいずれかを指定できます。HAVIPに指定するIPアドレス、または指定したホスト名から解決されるアドレスが、このコマンドを実行するときに使用中であってはいけません。

注意:

可用性の高いVIPは、高速ホーム・プロビジョニング・サーバー・クラスタで構成されているデフォルトのネットワークと同じサブネットに所属している必要があります。次のコマンドを実行することによって､サブネットを取得できます。

srvctl config network -netnum network_number

関連項目:

これらのSRVCTLコマンドの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

2. 高速ホーム・プロビジョニング・サーバー上で、Gridホームの所有者として、クライアント・データ・ファイルを次のように作成します。

$ rhpctl add client -client client_cluster_name -toclientdata path

RHPCTLによって、-toclientdataフラグの後に指定するディレクトリ・パスに、クライアント・データ・ファイルが作成されます。クライアント・データ・ファイルの名前はclient_cluster_name.xmlです。

注意:

client_cluster_nameは一意で、手順4を実行するクライアント・クラスタのクラスタ名と一致する必要があります。

関連項目:

rhpctl add clientコマンドの詳細は、「高速ホーム・プロビジョニングおよびサーバー制御コマンド・リファレンス」を参照してください。

3. 高速ホーム・プロビジョニング・クライアント上で、Gridホームの所有者が読取り/書込み権限を持つクライアント・クラスタ上のディレクトリに、前述の手順で作成したクライアント・データ・ファイルを、コピーします。

4. クライアント・クラスタで次のコマンドをrootとして実行し、高速ホーム・プロビジョニング・クライアントを作成します。

# srvctl add rhpclient -clientdata path_to_client_data
[-diskgroup disk_group_name -storage base_path]

作業用コピーをこのクラスタのOracle ACFS記憶域にプロビジョニングする場合、そのためのディスク・グループをすでに作成しているときは、そのディスク・グループを前のコマンドに指定します。このケースでは記憶域のパスも指定してください。これは、作業用コピーを格納するためのOracle ACFSファイル・システムを作成するときに、すべてのマウント・ポイントのベース・パスとして使用されます。

注意:

高速ホーム・プロビジョニング・クライアントでディスク・グループを一度構成すると、高速ホーム・プロビジョニング・クライアント構成からディスク・グループを削除したり変更したりすることはできません。いずれか(変更または削除)を実行するには、srvctl remove clientコマンドを使用して高速ホーム・プロビジョニング・クライアントを完全に削除するしかありません。その後、必要であれば別のディスク・グループを使用して追加します。高速ホーム・プロビジョニング・クライアントを削除する前には、そのクラスタから登録済のすべてのユーザーを削除し、そのクラスタにプロビジョニングされたすべての作業用コピーを削除してください。

5. 高速ホーム・プロビジョニング・クライアントを、次のように起動します。

$ srvctl start rhpclient

6. 高速ホーム・プロビジョニング・クライアントのステータスを、次のようにチェックします。

$ srvctl status rhpclient

高速ホーム・プロビジョニング・クライアントの管理

高速ホーム・プロビジョニング・クライアントの管理タスクは次のとおりです。

- 高速ホーム・プロビジョニング・クライアントの有効化と無効化

- 高速ホーム・プロビジョニング・クライアント・クラスタ・ユーザーのためのユーザーの作成とロールの割当て

- 高速ホーム・プロビジョニング・クライアント・パスワードの管理

高速ホーム・プロビジョニング・クライアントの有効化と無効化

高速ホーム・プロビジョニング・クライアントは、すべてのアクションについて高速ホーム・プロビジョニング・サーバーと通信します。高速ホーム・プロビジョニング・サーバーに接続せずにRHPCTLコマンドを実行することはできません。

高速ホーム・プロビジョニング・サーバーで、高速ホーム・プロビジョニング・サーバー・クラスタから次のコマンドを実行して、高速ホーム・プロビジョニング・クライアントを有効化または無効化できます。

$ rhpctl modify client -client client_name -enabled TRUE | FALSE

高速ホーム・プロビジョニング・クライアントを有効化するには、-enabled TRUEと指定します。逆に、クライアントを無効化するには-enabled FALSEを指定します。高速ホーム・プロビジョニング・クライアント・クラスタを無効化すると、クライアントを再び有効化しないかぎり、そのクライアント・クラスタからのすべてのRHPCTLコマンドは高速ホーム・プロビジョニング・サーバーによって拒否されます。

注意:

高速ホーム・プロビジョニング・クライアント・クラスタを無効化しても、そのクライアント・クラスタ上の既存の作業用コピーは無効化されません。作業用コピーは引き続き機能し、その作業用コピー内のデータベースも引き続き実行されます。高速ホーム・プロビジョニング・サーバー・クラスタのOracleホームの記憶域がNFSを使用している場合でも変わりません。

高速ホーム・プロビジョニング・クライアント・クラスタ・ユーザーのためのユーザーの作成とロールの割当て

-maprolesパラメータを???コマンドで使用して、ユーザーを作成し、ロールを高速ホーム・プロビジョニング・クライアント・ユーザーに割り当てます。このコマンドで、複数のユーザーをロールに関連付けたり、1ユーザーに複数のロールを割り当てたりすることができます。

高速ホーム・プロビジョニング・クライアント・パスワードの管理

高速ホーム・プロビジョニング・クライアントは、内部に格納されているパスワードを使用して、RHPサーバーに対して自らを認証します。このパスワードを問い合せることはできません。ただし、なんらかの理由によってこのパスワードをリセットする必要がある場合には、RHPサーバー・クラスタで次のように行うことができます。

1. 高速ホーム・プロビジョニング・サーバー・クラスタで次のコマンドを実行し、新しいパスワードを生成して、クライアント資格証明に格納します。

$ rhpctl modify client -client client_name -password

2. 高速ホーム・プロビジョニング・サーバー・クラスタで次のコマンドを実行し、資格証明ファイルを生成します。

$ rhpctl export client -client client_name -clientdata file_path

たとえば、高速ホーム・プロビジョニング・クライアントの資格証明ファイルmjk9394を生成するには、次のようにします。

$ rhpctl export client -client mjk9394 -clientdata /tmp/mjk9394.xml

3. 前の例に続いて、生成された資格証明ファイルを高速ホーム・プロビジョニング・クライアント・クラスタにセキュアに転送し、次のコマンドを高速ホーム・プロビジョニング・クライアント・クラスタの任意のノードで実行します。

$ srvctl modify rhpclient -clientdata path_to_mjk9394.xml

4. 次のコマンドを高速ホーム・プロビジョニング・クライアント・クラスタで実行して、高速ホーム・プロビジョニング・クライアント・デーモンを再起動します。

$ srvctl stop rhpclient
$ srvctl start rhpclient

6 Oracle Cluster Registryおよび投票ファイルの管理

Oracle Clusterwareには、構成およびノード・メンバーシップを管理する2つの重要なコンポーネントが含まれます(ローカル・コンポーネントのOracle Local Registry(OLR)も含むOracle Cluster Registry(OCR)および投票ファイル)。

- OCRは、Oracle ClusterwareおよびOracle RACデータベースの構成情報を管理します。

- OLRは、クラスタ内の各ノードに存在し、特定のノードごとにOracle Clusterwareの構成情報を管理します。

- 投票ファイルはノード・メンバーシップに関する情報を管理します。ノードがクラスタのメンバーになるためには、各投票ファイルに、クラスタ内のすべてのノードがアクセスできる必要があります。

OCRおよび投票ファイルは、Oracle Automatic Storage Management (Oracle ASM)または共有ファイル・システムに格納できます。

注意:

Oracle Clusterware 12cでは、RAWまたはブロック・デバイスの使用をサポートしていません。従来のOracle ClusterwareリリースでRAWまたはブロック・デバイスを使用していて、Oracle Clusterware 12cへのアップグレードを行うには、アップグレード前に、OCRおよび投票ファイルをOracle ASMまたは共有ファイル・システムに移行する必要があります。

可用性を向上させるために、Oracle Clusterwareのインストール時に複数の投票ファイルを構成することをお薦めします。投票ファイルをOracle ASMディスク・グループに配置することを選択すると、標準の、または高い冗長性のディスク・グループを使用する場合に、Oracle ASMによって複数の投票ファイルが確実に構成されます。投票ファイルを共有ファイル・システムに格納することを選択する場合は、複数の投票ファイルを構成するオプションを選択します(この場合、異なるディスクに基づく3つの異なるファイル・システムを指定する必要があります)。

必要に応じて、Oracle Clusterwareのインストール・プロセス完了後に、クラスタを停止することなく投票ファイルを動的に追加または置換することもできます。

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

- Oracle Cluster RegistryおよびOracle Local Registryの管理

- 投票ファイルの管理

Oracle Cluster RegistryおよびOracle Local Registryの管理

この項では、ユーティリティ(OCRCONFIG、OCRDUMPおよびOCRCHECK)を使用してOCRおよびOracle Local Registry(OLR)を管理する方法について説明します。

OCRには、クラスタ内のすべてのOracleリソースに関する情報が含まれます。

OLRは、クラスタ内の各ノードに配置されている、OCRに類似したレジストリですが、各ノードに固有の情報が含まれます。様々なサービス間の依存性など、Oracle Clusterwareに関する管理性情報が含まれます。Oracle高可用性サービスでこの情報が使用されます。OLRは、クラスタ内の各ノードのローカル記憶域に配置されています。デフォルトの場所は、パスGrid_home/cdata/host_name.olrにあり、Grid_homeはOracle Grid Infrastructureホームで、host_nameはノードのホスト名です。

この項では、OCRの管理について、次の内容を説明します。

- Oracle Automatic Storage ManagementへのOracle Cluster Registryの移行

- Oracle Cluster Registryの場所の追加、置換、修復および削除

- Oracle Cluster Registryのバックアップ

- Oracle Cluster Registryのリストア

- Oracle Cluster Registryの問題の診断

- エクスポート・コマンドおよびインポート・コマンドを使用したOracle Cluster Registryの管理

- Oracle Local Registry

- Oracle Cluster Registry構成のアップグレードおよびダウングレード

関連項目:

OCRCONFIGユーティリティの詳細は「OCRCONFIGについて」を参照し、OCRDUMPユーティリティおよびOCRCHECKユーティリティの詳細は「Oracle Cluster Registryのトラブルシューティング」を参照してください。

Oracle Automatic Storage ManagementへのOracle Cluster Registryの移行

Oracle Clusterwareの記憶域管理性を向上させるために、OCRは、Oracle Database 12cのOracle ASMを使用するようにデフォルトで構成されます。Oracle ASMディスク・グループに存在するOracle Clusterwareの記憶域では、Oracle Enterprise Managerを使用してデータベースとクラスタウェア記憶域の両方を管理できます。

ただし、以前のバージョンのOracle Clusterwareからアップグレードする場合に、OCRをOracle ASM上に存在するように移行でき、向上されたOracle Clusterwareの記憶域の管理性を利用できます。

注意:

以前のバージョンのOracle Clusterwareを12cにアップグレードしてOracle ASMディスク・グループにOCRを格納する場合は、「ASMの互換性」の互換性属性を11.2.0.2以降に設定する必要があります。

関連項目:

Oracle ASMの互換性属性の設定の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

OCRCONFIGを使用してOCRをOracle ASMに移行する方法

1. Oracle Clusterware 12cへのアップグレードが完了していることを確認します。次のコマンドを実行し、現在実行中のバージョンを検証します。

$ crsctl query crs activeversion

2. Oracle ASM Configuration Assistant(ASMCA)を使用し、クラスタ内のすべてのノードでOracle ASMを構成して起動します。

関連項目:

ASMCAの使用の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

3. ASMCAを使用して、既存のOCRのサイズと同じかそれ以上で、かつ通常以上の冗長性があるOracle ASMディスク・グループを作成します。

注意:

- OCRが外部冗長性でOracle ASMディスク・グループに格納されている場合に、ディスク・グループ内のディスクに障害が発生したときは、OCRの損失を回避するために別のOCR場所を別のディスク・グループに追加することをお薦めします。
Oracleでは、OCRをOracle ASMおよび共有ファイル・システムの両方に格納するなど、OCRを異なるストレージ・タイプに同時に格納することはできません(ただし、移行中はこのかぎりではありません)。

- あるノードでOracle ASMインスタンスに障害が発生すると、OCRはそのノードで使用できなくなります。
Oracle ASMインスタンス障害の影響を受けるノードで動作しているCRSDプロセスがOCRライターであり、過半数のOCRの場所がOracle ASMに格納されている場合、このノードのOracle ASMインスタンスの停止中にOCRに対してI/Oを試行すると、CRSDは停止して、操作不能になります。この時点で、このノードでのクラスタ管理に影響が及びます。

どのような場合であっても、1つのノードの1つのOracle ASMインスタンスの障害が、クラスタ全体に影響を及ぼすことはありません。

- 作成するOracle ASMディスク・グループが、クラスタ内のすべてのノードにマウントされることを確認します。

関連項目:

サイズ指定の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

4. OCRをOracle ASMディスク・グループに追加するには、Oracle Clusterwareスタックが実行されていることを確認し、rootとして次のコマンドを実行します。

# ocrconfig -add +new_disk_group

複数のOCRの場所を追加すると、このコマンドを複数回実行できます。OCRの場所は、5つまで保持できます。ただし、連続する各実行では、異なるディスク・グループを指す必要があります。

5. 使用されなくなったストレージ構成を削除するには、rootとして次のコマンドを実行します。

# ocrconfig -delete old_storage_location

構成したすべてのOCRに、このコマンドを実行します。

次の例は、OCRCONFIGを使用して2つのOCRをOracle ASMに移行する方法を示しています。

# ocrconfig -add +new_disk_group
# ocrconfig -delete /ocrdata/ocr_1
# ocrconfig -delete /ocrdata/ocr_2

注意:

- OCRではディスク・グループの冗長性が継承されます。OCRに高い冗長性が必要な場合は、作成時にディスク・グループを高い冗長性で構成する必要があります。

- この新規に作成されたOCRの場所にOracle ASMのSPFILEファイルを置くことを、お薦めします。

関連項目:

Oracle ASM SPFILEの場所設定の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

Oracle ASMから他のタイプの記憶域へのOracle Cluster Registryの移行

Oracle ASMから別の記憶域タイプにOCRを移行するには、次の手順を実行します。

1. Oracle Clusterware 12cへのアップグレードが完了していることを確認します。次のコマンドを実行し、現在実行中のバージョンを検証します。

$ crsctl query crs activeversion

2. ファイルを共有ファイル・システムまたはクラスタ・ファイル・システムにroot、oinstall、640の権限で作成します。

注意:

OCRのシングル・ポイント障害を排除するには、プライマリ・ストレージの場所の2つ以上のミラーを作成します。OCRは、最大5つの場所をサポートします。

3. マウント・パーティションに500MB以上の領域があることを確認します。

4. 作成したファイルがクラスタ内のすべてのノードから認識できることを確認します。

5. ファイルをOCRの場所として追加するには、Oracle Clusterwareスタックが実行されていることを確認し、rootとして次のコマンドを実行します。

# ocrconfig -add file_location

複数のOCRの場所を追加する場合は、このコマンドを複数回実行できます。このコマンドの後続の実行ではそれぞれ異なるファイルの場所を指定する必要があります。

6. OCRバックアップ場所がOracle ASMディスク・グループ上に構成されていないことを、確認します。

OCRバックアップ場所をファイル・システムに移行するには、次のコマンドをrootとして実行します。

# ocrconfig –backuploc file_location

7. 使用されなくなったストレージ構成を削除するには、rootとして次のコマンドを実行します。

# ocrconfig -delete +asm_disk_group

複数のOCRの場所が構成されている場合は、このコマンドを複数回実行できます。

次の例は、OCRCONFIGを使用してOCRをOracle ASMからNASに移行する方法を示しています。

# ocrconfig -add /nas/ocr

Oracle ASMに格納されていないOCRの場合は、異なるデバイスにOCRをミラー化することをお薦めします。

Oracle Cluster Registryの場所の追加、置換、修復および削除

Oracle ClusterwareでのOracleインストール・プロセスでは、OCRを自動的にミラー化するかどうかを選択できます。ミラー化されたOCRは、共有ネットワーク・ファイル・システム(NFS)、またはオラクル社が動作保証している任意のクラスタ・ファイル・システムに手動で配置できます。または、OCRをOracle ASMに配置し、選択する冗長性オプションに応じて、自動的にミラーを作成できるようにすることができます。

この項には次のトピックが含まれます:

- Oracle Cluster Registryの場所の追加

- Oracle Cluster Registryの場所の削除

- Oracle Cluster Registryの場所の置換

- ローカル・ノードのOracle Cluster Registry構成の修復

- Oracle Cluster Registryのデータ損失保護メカニズムの無効化

また、次のような場合は、OCRを手動でミラー化できます(「Oracle Cluster Registryの場所の追加」を参照)。

- Oracle Clusterware 12cへのアップグレード時に、OCRをミラー化することを選択しなかった場合

- Oracle Clusterwareのインストール時に、1つのみのOCRの場所を作成した場合

次のように構成することを薦めします。

- OCRがミラー化されていない、または冗長化されていない記憶域に構成されている場合は、3つ以上のOCRの場所。基礎となる記憶域がRAIDでない場合は、OCRをミラー化することをお薦めします。ミラー化することで、OCRがシングル・ポイント障害になることを防止できます。

- OCRがOracle ASMディスク・グループに構成されている場合は、2つ以上のOCRの場所。OCRは2つの独立したディスク・グループに構成する必要があります。通常、これは作業領域およびリカバリ領域です。

- OCRがミラー化されているハードウェアまたはサード・パーティのミラー化されたボリュームに構成されている場合は、2つ以上のOCRの場所。

注意:

- 元のOCRの場所が存在しない場合は、ocrconfig -addまたはocrconfig -replaceコマンドを実行する前に、適切な権限で空(0バイト)のOCRの場所を作成する必要があります。

- OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

- 指定したOracle ASMディスク・グループが存在し、マウントされていることを確認します。

- 新しいOCRファイル、デバイスまたはディスク・グループは、クラスタ内のすべてのアクティブ・ノードからアクセスできる必要があります。

関連項目:

- OCR作成の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

OCRの場所のミラー化に加えて、次のことができます。

- 構成ミスまたは他のタイプのOCRエラーがある場合は、OCRの場所を置換できます(「Oracle Cluster Registryの場所の置換」を参照)。

- Oracle Enterprise ManagerまたはOracle Clusterwareのアラート・ログ・ファイルにOCR障害のアラートが表示された場合には、OCRの場所を修復できます(「ローカル・ノードのOracle Cluster Registry構成の修復」を参照)。

- たとえば、OCRの処理が原因でシステムのパフォーマンスが低下した場合や、OCRをRAIDストレージ・デバイスに移行して、複数のOCRの場所を使用する必要がなくなった場合には、OCRの場所を削除します(「Oracle Cluster Registryの場所の削除」を参照)。

注意:

この項の操作を実行すると、OCRクラスタ全体が影響を受け、ocr.locファイル(LinuxおよびUNIXシステムの場合)およびレジストリ・キー(Windowsシステムの場合)のOCR構成情報が変更されます。ただし、ocrconfigコマンドを実行しても、停止しているノードやOracle Clusterwareが実行されていないノードのOCR構成情報は変更されません。

Oracle Cluster Registryの場所の追加

OCRの場所を追加するには、この項の手順を実行します。Oracle Clusterwareでは、最大5つの冗長なOCRの場所を管理できます。

注意:

OCRがクラスタ・ファイル・システムのファイルまたはネットワーク・ファイル・システムに存在している場合は、この項の手順を実行する前に、空(0バイト)のOCRの場所ファイルを作成してください。

Oracle ASMまたは他のストレージ・デバイスのいずれかにOCRの場所を追加するには、rootユーザーとして次のコマンドを実行します。

# ocrconfig -add +asm_disk_group | file_name

注意:

LinuxおよびUNIXシステムの場合、ocrconfigコマンドは、rootで実行する必要があります。Windowsシステムの場合、ユーザーは管理者グループのメンバーである必要があります。

Oracle Cluster Registryの場所の削除

OCRの場所または障害が発生したOCRの場所を削除するには、それ以外の1つ以上のOCRがオンライン状態である必要があります。OCRの場所の削除は、OCR関連のオーバーヘッドを軽減する場合や、OCRをRAIDなどの冗長な記憶域に移動してOCRのミラー化を中止する場合に実行します。

Oracle Clusterware環境からOCRの場所を削除するには、rootユーザーとして次の手順を実行します。

1. 削除するOCRの場所の他に、1つ以上のOCRの場所がオンライン状態になっていることを確認します。

注意:

他の1つ以上のOCRの場所がアクティブでオンラインになっていない場合は、OCRの削除手順は実行しないでください。

2. クラスタ内の任意のノードで次のコマンドを実行し、Oracle ASMまたは他の場所のいずれかからOCRの場所を削除します。

# ocrconfig -delete +ASM_disk_group | file_name

file_name変数は、デバイス名またはファイル名です。このコマンドを実行すると、Oracle Clusterwareが実行中のすべてのノードでOCR構成が更新されます。

注意:

構成済の唯一のOracle ASM OCRの場所は、Oracle ASM OCRバックアップの場所とは異なるOracle ASMディスク・グループにあり、削除することはできません。

Oracle Cluster Registryの場所の置換

既存のOCRの場所を変更する必要があるか、または障害のあるOCRの場所を正常に機能する場所に変更する必要がある場合は、残りのすべてのOCRファイルの場所がオンライン状態のままであれば、次の手順を使用できます。ocrconfig -replaceコマンドでは、2つ以上のOCRの場所が構成されている必要があります。

Oracle Cluster Registryの場所を変更する方法

次の手順を実行します。

1. OCRCHECKユーティリティを使用して、置換しようとしているOCR以外のOCRのコピーがオンラインであるかどうかを検証します(使用するコマンドは次のとおりです)。

$ ocrcheck

OCRCHECKでは、登録されているすべてのOCRの場所、およびそれらが使用可能(オンライン)かどうかが表示されます。OCRの場所が突然使用できなくなった場合は、Oracle Clusterwareがステータスの変更を示すまでにしばらく時間がかかる場合があります。

注意:

置換するOCRの場所は、オンラインまたはオフラインのいずれの状態でもかまいません。

2. 次のコマンドを使用して、置換操作を実行しようとしているノードでOracle Clusterwareが実行されていることを確認します。

$ crsctl check crs

3. rootとして次のコマンドを実行し、destination_fileまたは+ASM_disk_groupのいずれかを使用して、現行のOCRの場所を、現行のターゲットのOCRの場所を示すように置換します。

# ocrconfig -replace current_OCR_location -replacement new_OCR_location

前述のコマンドは、オンラインである構成済のOCRの場所が2つ未満の場合は失敗します。

構成済でオンラインのOCRの場所が1つのみである場合は、次のように、最初に新しい場所を追加してから、障害が発生した場所を削除する必要があります。

# ocrconfig -add new_OCR_location
# ocrconfig -delete current_OCR_location

注意:

OCRが存在するノードが停止し、Oracle Clusterwareスタックが他のノードで実行中であるときにクラスタ構成が変更されると、OCRは構成変更を検出して、ocr.locファイルの内容を変更して構成を自己修正します。

関連項目:

記憶域の移行の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

ローカル・ノードのOracle Cluster Registry構成の修復

ノードが停止し、このノードがクラスタの唯一のメンバーであるときにクラスタ構成を変更した場合は、OCRを修復する必要がある場合があります。OCRの修復は、OCRの場所の追加、削除または置換のいずれかに関連します。たとえば、現行のOracle RACクラスタの一部であるノードのいずれかが停止している場合、停止しているノードでOCR構成を更新し、そのノードが再起動された後に再びクラスタに参加できるようにする必要があります。再起動されたノードでrootとして次のコマンド構文を使用し、destination_fileまたは+ASM_disk_groupのいずれかを使用して、現行のターゲットのOCRの場所を示します。

ocrconfig -repair -replace current_OCR_location -replacement target_OCR_location

この操作では、このコマンドを実行したノードのOCRのみが変更されます。たとえば、OCRの場所が/dev/sde1である場合、ノードでコマンド構文ocrconfig -repair -add /dev/sde1を実行すると、そのノードのOCRが修復されます。

注意:

- Oracleクラスタ・レディ・サービス・デーモンが実行されているノードでは、OCR構成を修復できません。

- ocrconfig -repairを使用して、停止しているノードのOCRを修復する場合、他のノードのOCRファイル名と同様の(大/小文字が区別される)OCRファイル名を指定する必要があります。

- ocrconfig -add | -repair | -replaceコマンドを実行する場合は、追加するデバイス、ファイルまたはOracle ASMディスク・グループにアクセスできる必要があります。これはデバイスが存在する必要があることを意味します。空(0バイト)のOCRの場所を作成するか、またはOracle ASMディスク・グループが存在し、マウントされている必要があります。

関連項目:

- OCRCONFIGコマンドの詳細は、「OCRCONFIGコマンド・リファレンス」を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

Oracle Cluster Registryのデータ損失保護メカニズムの無効化

OCRには、不測の上書きによるデータの損失を防止するメカニズムが存在します。ミラー化されたOCRが構成されている場合、Oracle Clusterwareでは、ミラー化されたOCRの場所にアクセスできず、使用可能なOCRの場所に最新の構成が含まれていることが確認できなかった場合、使用可能なOCRの場所に対してそれ以上の変更は行われません。また、この処理により、1つのOCRのみが使用可能なノードでOracle Clusterwareの起動が禁止され、上書きが行われなくなります。このような場合には、Oracle Enterprise ManagerまたはOracle Clusterwareのアラート・ログ・ファイル(あるいはその両方)で、アラート・メッセージが表示されます。ある1つのノードに限って問題が発生している場合は、他のノードでクラスタ・データベースを起動できます。

ただし、環境内のすべてのクラスタ・ノードが起動できず、OCRの修復もすべてのOCRの場所へのアクセスのリストアもできない場合は、この保護メカニズムを無効にできます。次のリストに示した手順により、使用可能なOCRの場所を使用してクラスタを起動できます。ただし、保護メカニズムを無効にすると、以前の正常な状態のときに使用可能でなかったデータは失われる場合があります。

注意:

次の手順を実行してOCRを無効にした場合、現在アクセス可能なOCRに対して最後に正常なOCRの更新が実行された時点から、この上書きを実行するまでの間に行われたOCRへの更新は失われる可能性があります。すなわち、上書きを行うOCRの場所にクラスタ環境に対する構成の最新の更新が含まれていない場合は、ocrconfig -overwriteコマンドを実行すると、データが失われる場合があります。

ノードが起動できず、アラート・ログにCLSD-1009メッセージおよびCLSD-1011メッセージが含まれている場合は、次の手順を実行して、OCRを上書きします。

1. CLSD-1009メッセージおよびCLSD-1011メッセージの原因の解決を試行します。

ノードのOCR構成(LinuxおよびUNIXシステムのocr.locおよびWindowsシステムのレジストリ)をOracle Clusterwareが実行中の他のノードと比較します。

- 構成の内容が一致しない場合は、ocrconfig -repairを実行します。

- 構成の内容が一致している場合は、LinuxおよびUNIXシステムのlsコマンドを実行して、ノードから構成済のすべてのOCRにアクセスできることを確認します。Windowsでは、OCRの場所がファイルの場合はdirコマンドを使用して、GuiOracleObjectManager.exeを実行し、名前付きのクラスタの一部が存在することを確認します。

2. 最新のOCRに、OCRの最新の更新が含まれていることを確認します。

ocrdumpコマンドの出力を確認して、最新の更新が含まれているかどうかを確認します。

3. CLSDメッセージの原因となっている問題を解決できない場合は、ocrconfig -overwriteコマンドを実行してノードを起動します。

Oracle Cluster Registryのバックアップ

この項では、OCRの内容をバックアップし、それをリカバリに使用する方法について説明します。第1の方法では自動的に生成されたOCRのコピーを使用し、第2の方法では手動でバックアップ・コマンドを発行できます。

- 自動バックアップ: OCRのバックアップは、Oracle Clusterwareによって、4時間ごとに自動的に作成されます。バックアップが作成されるごとに、OCRの最後の3つのバックアップのコピーが常に保存されます。また、バックアップを作成するCRSDプロセスによって、毎日および各週の終わりにもOCRのバックアップが作成され、保存されます。バックアップの頻度またはOracle Databaseで保存されるファイルの数はカスタマイズできません。

- 手動バックアップ: Oracle Clusterwareスタックが稼働しているノードでocrconfig -manualbackupコマンドを実行して、自動バックアップを待たずに、Oracle Clusterwareによって任意の時刻にOCRのバックアップが実行されるようにします。このコマンドは、管理権限を持つユーザーとして実行する必要があります。-manualbackupオプションは、OCRを変更する前など、必要に応じてバイナリ・バックアップを取得する場合に、特に役立ちます。OLRでは手動バックアップのみがサポートされています。

クラスタウェア・スタックがクラスタ内のすべてのノードで停止している場合、ocrconfig -showbackupコマンドによって示されるバックアップは、ノードごとに異なる場合があります。

注意:

ノードでOracle Clusterwareをインストールまたはアップグレードした後、または、クラスタにノードを追加した後、root.shスクリプトが終了すると、OLRがバックアップされます。

この項には次のトピックが含まれます:

- バックアップ・ファイルのリスト

- バックアップ場所の変更

バックアップ・ファイルのリスト

次のコマンドを実行し、バックアップ・ファイルをリストします。

ocrconfig -showbackup

ocrconfig -showbackupコマンドにより、バックアップ場所、タイムスタンプおよびOracle Clusterwareで作成されたバックアップ・ファイルの元のノード名が表示されます。デフォルトでは、-showbackupオプションによって、自動および手動の両方のバックアップに関する情報が表示されますが、autoフラグまたはmanualフラグを含めると、自動バックアップまたは手動バックアップのいずれかの情報のみを表示することができます。

次のコマンドを実行し、内容を検査してバックアップ・ファイルの整合性を検証します。

ocrdump -backupfile backup_file_name

1日に1つ以上のバックアップ・ファイルが自動的に生成されますが、これらのファイルは、任意のバックアップ・ソフトウェアを使用して、プライマリOCRが存在するデバイスとは別のデバイスにコピーすることもできます。

LinuxまたはUNIXシステムでバックアップが生成されるデフォルトの場所は、Grid_home/cdata/cluster_name(cluster_nameはクラスタ名)です。Windowsでバックアップが生成されるデフォルトの場所は、同じパス構造を使用します。デフォルトのバックアップはローカル・ファイル・システム上にあるため、標準のオペレーティング・システムまたはサード・パーティのツールを使用して、OCRCONFIGユーティリティによって作成されたバックアップ・ファイルをオペレーティング・システム・バックアップの一部に含めることをお薦めします。

バックアップ場所の変更

次のコマンドを実行して、OCRがバックアップを作成する場所を変更します。

ocrconfig -backuploc file_name

前述のコマンドのfile_name変数には、すべてのノードからアクセス可能なディレクトリのフル・パス名またはすべてのノードにマウントされるOracle ASMディスク・グループを指定できます。OCRバックアップの場所をOracle ASMディスク・グループに変更する前に、OCRをOracle ASMに移行する必要があります。別個のディスク・グループに1つ以上のOracle ASM OCRの場所がある場合のみ、OCRバックアップの場所をOracle ASMディスク・グループに変更できます。

たとえば、ディレクトリ内のOCRのバックアップ場所を指定するには、次のコマンドを実行します。

# ocrconfig -backuploc Grid_home/cdata/cluster3

OCRバックアップの場所をOracle ASMディスク・グループに指定するには、次のようにします。

# ocrconfig –backuploc +bkupdg

注意:

LinuxおよびUNIXシステムでは、ocrconfigコマンド・オプションのほとんど(すべてではない)を実行するためにrootユーザーである必要があります。Windowsシステムの場合、ユーザーは管理者グループのメンバーである必要があります。

関連項目:

- 手動で作成したOCRエクスポート・ファイルを使用してOCRの内容をコピーし、それをリカバリに使用する方法は、「エクスポート・コマンドおよびインポート・コマンドを使用したOracle Cluster Registryの管理」を参照してください。

- OCRCONFIGコマンドの詳細は、「OCRCONFIGコマンド・リファレンス」を参照してください。

Oracle Cluster Registryのリストア

リソースで問題が発生した場合、OCRのリストアを実行する前にリソースを再起動します。OCRでの障害の発生を確認するには、ocrcheckを実行し、このコマンドによって障害メッセージが戻された場合は、プライマリOCRとOCRミラーの両方で障害が発生しています。問題を解決するには、プラットフォーム固有のOCRリストア手順を実行します。

注意:

- -importオプションを使用してOCRバックアップ・ファイルから構成をリストアすることはできません(「エクスポート・コマンドおよびインポート・コマンドを使用したOracle Cluster Registryの管理」を参照)。かわりに、次の項で説明するとおり、-restoreオプションを使用する必要があります。

- OCRをOracle ASMディスク・グループに格納していて、ディスク・グループが使用できない場合は、Oracle ASMディスク・グループをリカバリし、マウントする必要があります。

関連項目:

Oracle ASMディスク・グループの管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

- LinuxまたはUNIXシステムでのOracle Cluster Registryのリストア

- WindowsシステムでのOracle Cluster Registryのリストア

- Oracle Restart環境でのOracle Cluster Registryのリストア

LinuxまたはUNIXシステムでのOracle Cluster Registryのリストア

OCRをOracle ASMディスク・グループに格納していて、そのディスク・グループが破損している場合は、Oracle ASMユーティリティを使用してOracle ASMディスク・グループをリストアし、OCRをリカバリする前にこのディスク・グループを再びマウントする必要があります。次の手順の指示に従って、ocrconfig -restoreコマンドを実行し、OCRをリカバリします。

注意:

元のOCRの場所が存在しない場合は、ocrconfig -restoreコマンドを実行する前に、元のOCRの場所と同じ名前の空(0バイト)のOCRの場所を作成する必要があります。

関連項目:

Oracle ASMディスク・グループのリストア方法の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

LinuxまたはUNIXシステムでOCRをリストアするには、次の手順を実行します。

1. 1つのノードで次のコマンドを実行して、クラスタのノードをリストします。

$ olsnodes

2. OCRがOracle ASMディスク・グループまたはNetwork Attached Storage (NAS)のどちらにあるかに応じて、すべてのノードでrootとして次のいずれかのコマンドを実行し、Oracle Clusterwareを停止します。

OCRがOracle ASMディスク・グループにある場合は、Oracle Clusterwareデーモンを次のコマンドで停止します。

# crsctl stop crs

前述のコマンドでOCRの破損のためエラーが戻される場合は、rootとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを強制的に停止します。

# crsctl stop crs -f

3. OCRをクラスタ・ファイル・システムまたはネットワーク・ファイル・システムにリストアする場合は、rootとして次のコマンドを実行して、「バックアップ・ファイルのリスト」で特定できるOCRバックアップでOCRをリストアします。

# ocrconfig -restore file_name

注意:

OCRバックアップ・ファイルがOracle ASMディスク・グループにある場合、ディスク・グループが存在し、マウントされていることを確認します。

この手順の完了後、手順11に進みます。

OCRをクラスタ・ファイル・システムまたはネットワーク・ファイル・システムにリストアしていない場合は、次の手順に進みます。

4. rootとして次のコマンドを実行し、1つのノードでOracle Clusterwareスタックを排他モードで起動します。

# crsctl start crs -excl -nocrs

-nocrsオプションは、残りのOracle ClusterwareスタックでCRSDプロセスおよびOCRが起動されないようにします。

表示されるエラーは無視します。

5. 次のコマンドを実行して、CRSDが実行しているかどうかを確認します。

$ crsctl status resource ora.crsd -init

CRSDが実行している場合は、rootとして次のコマンドを実行して停止します。

# crsctl stop resource ora.crsd -init

注意:

My Oracle Supportで指示されないかぎり、他のすべてのコマンドでは-initフラグを使用しないでください。

6. OCRをOracle ASMディスク・グループにリストアするには、SQL*Plusを使用して、リストアするディスク・グループと同じ名前のディスク・グループを最初に作成し、これをローカル・ノードにマウントする必要があります。

ディスク・グループをローカルでマウントできない場合は、次のSQL*Plusコマンドを実行します。

SQL> drop diskgroup disk_group_name force including contents;

7. rootとして次のコマンドを実行して、「バックアップ・ファイルのリスト」で特定できるOCRバックアップでOCRをリストアします。

# ocrconfig -restore file_name

注意:

- 元のOCRの場所が存在しない場合は、ocrconfig -restoreコマンドを実行する前に空(0バイト)のOCRの場所を作成する必要があります。

- OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

- OCRをOracle ASMディスク・グループに構成した場合は、Oracle ASMディスク・グループが存在し、マウントされていることを確認します。

- OCRバックアップ・ファイルがOracle ASMディスク・グループにある場合、ディスク・グループが存在し、マウントされていることを確認します。

関連項目:

- OCR作成の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

8. 次のコマンドを実行して、OCRの整合性を検証します。

# ocrcheck

9. 次のコマンドを実行して、ノードで排他モードで実行されているOracle Clusterwareを停止します。

# crsctl stop crs -f

10. ocrconfig -restoreコマンドを実行しなかった、クラスタ内のすべてのノードでrootとしてocrconfig -repair -replaceコマンドを実行します。たとえば、4ノードのクラスタのノード1でocrconfig -restoreコマンドを実行した場合は、ノード2、3および4でocrconfig -repair -replaceコマンドを実行する必要があります。

11. rootとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを起動します。

# crsctl start crs

12. 次のCVUコマンドを実行して、クラスタの一部として構成されているすべてのクラスタ・ノードのOCRの整合性を検証します。

$ cluvfy comp ocr -n all -verbose

関連項目:

CVUの有効化および使用方法の詳細は、「クラスタ検証ユーティリティのリファレンス」を参照してください。

WindowsシステムでのOracle Cluster Registryのリストア

OCRをOracle ASMディスク・グループに格納していて、そのディスク・グループが破損している場合は、Oracle ASMユーティリティを使用してOracle ASMディスク・グループをリストアし、OCRをリカバリする前にこのディスク・グループを再びマウントする必要があります。ocrconfig -restoreコマンドを実行して、OCRをリカバリします。

注意:

元のOCRの場所が存在しない場合は、ocrconfig -restoreコマンドを実行する前に、元のOCRの場所と同じ名前の空(0バイト)のOCRの場所を作成する必要があります。

関連項目:

Oracle ASMディスク・グループのリストア方法の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

WindowsシステムでOCRをリストアするには、次の手順を実行します。

1. 1つのノードで次のコマンドを実行して、クラスタのノードをリストします。

C:\>olsnodes

2. 管理者グループのメンバーとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを停止します。

C:\>crsctl stop crs

前述のコマンドでOCRの破損のためエラーが戻される場合は、管理者グループのメンバーとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを停止します。

C:\>crsctl stop crs -f

3. 管理者グループのメンバーとして次のコマンドを実行し、1つのノードでOracle Clusterwareスタックを排他モードで起動します。

C:\>crsctl start crs -excl -nocrs

-nocrsオプションは、残りのOracle ClusterwareスタックでCRSDプロセスおよびOCRが起動されないようにします。

表示されるエラーは無視します。

4. 管理者グループのメンバーとして次のコマンドを実行して、「バックアップ・ファイルのリスト」で特定したOCRバックアップ・ファイルでOCRをリストアします。

C:\>ocrconfig -restore file_name

OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

注意:

- OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

- 指定したOracle ASMディスク・グループが存在し、マウントされていることを確認します。

関連項目:

- OCR作成の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

5. 次のコマンドを実行して、OCRの整合性を検証します。

C:\>ocrcheck

6. 次のコマンドを実行して、ノードで排他モードで実行されているOracle Clusterwareを停止します。

C:\>crsctl stop crs -f

7. 管理者グループのメンバーとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを起動します。

C:\>crsctl start crs

8. 次のクラスタ検証ユーティリティ(CVU)・コマンドを実行して、クラスタ・データベース内のすべてのノードのOCRの整合性を検証します。

C:\>cluvfy comp ocr -n all -verbose

関連項目:

CVUの有効化および使用方法の詳細は、「クラスタ検証ユーティリティのリファレンス」を参照してください。

Oracle Restart環境でのOracle Cluster Registryのリストア

注意:

- OCRは、下位互換性のために存在します。

- 作成されたOCRの場所は、Oracle Restart環境では更新されません。

- Oracle Restartホームがバックアップされている場合、障害が発生したときに、Oracle RestartホームをリストアするとOCRがリストアされます。

Oracle Restart環境でOCRを復元するには、次の手順を使用します。

1. rootとして、すべてのノードで次のコマンドを実行し、Oracle高可用性サービスを停止します。

# crsctl stop has [-f]

2. ocrcheck -configコマンドを実行して、OCRの場所を特定し、適切な権限を使用してその場所で空(0バイト)のOCRの場所を作成します。

3. rootとして次のコマンドを実行し、OCRをリストアします。

# crsctl pin css -n host_name

注意:

OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

関連項目:

OCR作成の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

4. ocrcheckコマンドを実行して、OCRの整合性を検証します。

5. すべてのノードで次のコマンドを実行し、Oracle高可用性サービスを起動します。

$ crsctl start has

Oracle Cluster Registryの問題の診断

OCRDUMPユーティリティおよびOCRCHECKユーティリティを使用して、OCRの問題を診断できます。

関連項目:

- OCRDUMPユーティリティの詳細は、「OCRDUMPユーティリティの構文およびオプション」を参照してください。

- OCRCHECKユーティリティの詳細は、「OCRCHECKユーティリティの使用」を参照してください。

エクスポート・コマンドおよびインポート・コマンドを使用したOracle Cluster Registryの管理

自動的に作成されたOCRバックアップ・ファイルを使用するのみでなく、環境のノードの追加や削除、Oracle Clusterwareリソースの変更、データベースのアップグレード、ダウングレードまたは作成などの重要な構成変更を行う前と後には、OCRの内容をエクスポートする必要もあります。これは、OCRの内容をファイル形式でエクスポートするocrconfig -exportコマンドを使用して実行します。

注意:

OCRのリストアでは次の制限事項に注意してください。

- ocrconfig -restoreで生成されるファイル形式は、ocrconfig -exportで生成されるファイル形式と互換性がありません。ocrconfig -exportコマンドとocrconfig -importコマンドには互換性があります。ocrconfig -manualbackupコマンドとocrconfig -restoreコマンドには互換性があります。2つのファイル形式には互換性がないため、交換して使用しないでください。

- OCRをエクスポートする場合は、名前の文字列にocr、クラスタ名およびタイムスタンプを含めることをお薦めします。次に例を示します。

ocr_mycluster1_20090521_2130_export

また、ocrconfig -exportコマンドを使用すると、構成の変更によってエラーが発生した場合に、-importオプションを使用してOCRをリストアできるようになります。たとえば、構成に解決できない問題がある場合や、構成の変更後にOracle Clusterwareを再起動できない場合は、プラットフォームに応じた手順を使用して、構成をリストアします。

OCRをリストアするには、次の理由から、自動バックアップまたは手動バックアップのいずれかとocrconfig -restoreコマンドを使用し、ocrconfig -exportコマンドおよびocrconfig -importコマンドは使用しないことをお薦めします。

- バックアップはOCRの一貫したスナップショットですが、エクスポートは、そうではありません。

- バックアップはシステムがオンライン状態の場合に作成されます。ocrconfig -exportコマンドを使用して一貫したスナップショットを取得するには、クラスタ内のすべてのノードでOracle Clusterwareを停止する必要があります。

- OCRDUMPユーティリティを使用して、バックアップを検査できます。エクスポートの内容は検査できません。

- ocrconfig -showbackupコマンドを使用してバックアップをリストできますが、生成されたすべてのエクスポートはユーザーが追跡する必要があります。

この項には次のトピックが含まれます:

- LinuxまたはUNIXシステムでのOracle Cluster Registryの内容のインポート

- WindowsシステムでのOracle Cluster Registryの内容のインポート

注意:

構成を変更すると、ほとんどの場合は、OCRの内容が変更されるのみでなく、ファイルおよびデータベース・オブジェクトが作成されます。OCRをリストアしても、このような変更はリストアされない場合があります。これらの構成の変更のリストアが一部でも失敗した場合は、以前の正しい構成に戻すためにOCRをリストアしないでください。実行した場合、OCRの場所の内容がシステムの他の部分の状態と一致しなくなる可能性があります。

LinuxまたはUNIXシステムでのOracle Cluster Registryの内容のインポート

注意:

この手順では、クラスタ内のすべてのノードでのOracle Clusterwareのデフォルトのインストールを前提としています。この場合、Oracle Clusterwareの自動起動は有効になります。

LinuxまたはUNIXシステムでOCRをインポートするには、次の手順を実行します。

1. 1つのノードで次のコマンドを実行して、クラスタのノードをリストします。

$ olsnodes

2. rootとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを停止します。

# crsctl stop crs

前述のコマンドでOCRの破損のためエラーが戻される場合は、rootとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを停止します。

# crsctl stop crs -f

3. rootとして次のコマンドを実行し、1つのノードでOracle Clusterwareスタックを排他モードで起動します。

# crsctl start crs -excl

表示されるエラーは無視します。

CRSDが動作しているかどうかをチェックします。実行されている場合は、rootとして次のコマンドを実行して停止します。

# crsctl stop resource ora.crsd -init

注意:

-initフラグは他のコマンドでは使用しないでください。

4. rootとして次のコマンドを実行し、OCRをインポートします。

# ocrconfig -import file_name

クラスタまたはネットワーク・ファイル・システムにOCRをインポートしている場合は、手順7に進みます。

注意:

- 元のOCRの場所が存在しない場合は、ocrconfig -importコマンドを実行する前に空(0バイト)のOCRの場所を作成する必要があります。

- OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

- OCRをOracle ASMディスク・グループに構成した場合は、Oracle ASMディスク・グループが存在し、マウントされていることを確認します。

関連項目:

- OCR作成の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

5. 次のコマンドを実行して、OCRの整合性を検証します。

# ocrcheck

6. 次のコマンドを実行して、ノードで排他モードで実行されているOracle Clusterwareを停止します。

# crsctl stop crs -f

7. rootとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを起動します。

# crsctl start crs

8. 次のCVUコマンドを実行して、クラスタの一部として構成されているすべてのクラスタ・ノードのOCRの整合性を検証します。

$ cluvfy comp ocr -n all -verbose

注意:

インポートできるのは、エクスポートしたOCRのみです。バックアップからOCRをリストアするには、「Oracle Cluster Registryのバックアップ」で説明するとおり、かわりに-restoreオプションを使用する必要があります。

関連項目:

CVUの有効化および使用方法の詳細は、「クラスタ検証ユーティリティのリファレンス」を参照してください。

WindowsシステムでのOracle Cluster Registryの内容のインポート

注意:

この手順では、クラスタ内のすべてのノードでのOracle Clusterwareのデフォルトのインストールを前提としています。この場合、Oracle Clusterwareの自動起動は有効になります。

WindowsシステムでOCRをインポートするには、次の手順を実行します。

1. 1つのノードで次のコマンドを実行して、クラスタのノードをリストします。

C:\>olsnodes

2. 管理者グループのメンバーとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを停止します。

C:\>crsctl stop crs

前述のコマンドでOCRの破損のためエラーが戻される場合は、管理者グループのメンバーとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを停止します。

C:\>crsctl stop crs -f

3. 管理者グループのメンバーとして次のコマンドを実行し、1つのノードでOracle Clusterwareスタックを排他モードで起動します。

C:\>crsctl start crs -excl

表示されるエラーは無視します。

CRSDが動作しているかどうかをチェックします。実行されている場合は、管理者グループのメンバーとして次のコマンドを実行して停止します。

C:\>crsctl stop resource ora.crsd -init

注意:

-initフラグは他のコマンドでは使用しないでください。

4. 管理者グループのメンバーとして次のコマンドを実行してOCRをインポートします。

C:\>ocrconfig -import file_name

OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

注意:

- 元のOCRの場所が存在しない場合は、ocrconfig -importコマンドを実行する前に空(0バイト)のOCRの場所を作成する必要があります。

- OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

- 指定したOracle ASMディスク・グループが存在し、マウントされていることを確認します。

関連項目:

- OCR作成の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

5. 次のコマンドを実行して、OCRの整合性を検証します。

C:\>ocrcheck

6. 次のコマンドを実行して、ノードで排他モードで実行されているOracle Clusterwareを停止します。

C:\>crsctl stop crs -f

7. 管理者グループのメンバーとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを起動します。

C:\>crsctl start crs

8. 次のクラスタ検証ユーティリティ(CVU)・コマンドを実行して、クラスタ・データベース内のすべてのノードのOCRの整合性を検証します。

C:\>cluvfy comp ocr -n all -verbose

関連項目:

CVUの有効化および使用方法の詳細は、「クラスタ検証ユーティリティのリファレンス」を参照してください。

Oracle Local Registry

Oracle Clusterware 12cでは、クラスタ内の各ノードに、Oracle ClusterwareによるOCRのインストール時にインストールおよび構成される、Oracle Local Registry (OLR)というノード固有のリソースのローカル・レジストリがあります。Oracle Clusterwareが実行されているかどうか、または完全に機能しているかどうかに関係なく、各ノードの複数のプロセスには、それらのプロセスが存在するノードに固有のOLRに対する同時読取りおよび書込みアクセス権があります。

デフォルトでは、OLRは各ノードのGrid_home/cdata/host_name.olrに格納されています。

OLRは、-localオプションを指定したOCRCHECK、OCRDUMPおよびOCRCONFIGユーティリティをrootとして使用して管理します。

- OCRCHECKユーティリティを次のように使用すると、ローカル・ノードのOLRのステータスをチェックできます。

# ocrcheck -local

Status of Oracle Cluster Registry is as follows :
Version                  :          3
Total space (kbytes)     :     262132
Used space (kbytes)      :       9200
Available space (kbytes) :     252932
ID                       :  604793089
Device/File Name         : /private2/crs/cdata/localhost/dglnx6.olr
Device/File integrity check succeeded

Local OCR integrity check succeeded

- OCRDUMPユーティリティを次のように使用すると、プログラムを起動したテキスト端末にローカル・ノードのOLRの内容を表示できます。

# ocrdump -local -stdout

- OCRCONFIGユーティリティを使用すると、ローカル・ノードのOLRで管理タスクを実行できます。

- OLRをファイルにエクスポートするには、次のようにユーティリティを使用します。

# ocrconfig –local –export file_name

注意:

- -manualbackupコマンドおよび-restoreコマンドを使用し、-importコマンドおよび-exportコマンドは使用しないことをお薦めします。

- OLRをエクスポートする場合は、名前の文字列にolr、ホスト名およびタイムスタンプを含めることをお薦めします。次に例を示します。

olr_myhost1_20090603_0130_export

- 指定したファイルをOLRにインポートするには、次のようにユーティリティを使用します。

# ocrconfig –local –import file_name

- OLRを手動でバックアップするには、次のようにユーティリティを使用します。

# ocrconfig –local –manualbackup

注意:

OLRは、インストールまたはアップグレードの後にバックアップされます。その後は、手動でのみOLRをバックアップできます。自動バックアップはOLRではサポートされていません。OCRをOracle ASMから他の記憶域に移行する場合、またはOCRを他の記憶域からOracle ASMに移行する場合は、新しいバックアップを作成する必要があります。

OLRのデフォルトのバックアップ場所は、パスGrid_home/cdata/host_nameにあります。

- OLRバックアップ・ファイルの内容を表示するには、次のようにユーティリティを使用します。

ocrdump -local -backupfile olr_backup_file_name

- OLRのバックアップの場所を変更するには、次のようにユーティリティを使用します。

ocrconfig -local -backuploc new_olr_backup_path

- OLRをリストアするには、次のようにユーティリティを使用します。

# crsctl stop crs
# ocrconfig -local -restore file_name
# ocrcheck -local
# crsctl start crs
$ cluvfy comp olr

Oracle Cluster Registry構成のアップグレードおよびダウングレード

Oracle Clusterwareをアップグレードすると、ocrconfig -upgradeコマンドが自動的に実行されます。ダウングレードする場合は、各コンポーネントのダウングレード手順に従い、ocrconfig -downgradeコマンドを使用してOCRもダウングレードします。OCRをアップグレードする場合は、OCRCHECKユーティリティを使用してOCRの整合性を検証できます。

投票ファイルの管理

この項では、クラスタ内の投票ファイルの管理について、次のトピックで説明します。

- Oracle ASMでの投票ファイルの格納

- 投票ファイルのバックアップ

- 投票ファイルのリストア

- 投票ファイルの追加、削除または移行

注意:

以前のバージョンのOracle Clusterwareで投票ファイルのバックアップおよびリカバリに使用されたddコマンドは、Oracle Clusterware 12cではサポートされていません。ddコマンドまたはcpコマンドを使用してコピーされた投票ファイルをリストアすると、Oracle Clusterware 12cスタックが起動されない場合があります。この章で説明されているバックアップおよびリストア手順を使用して、適切な投票ファイルの機能を確保します。

注意:

- 投票ファイルの管理には有効かつ動作中のOCRが必要です。投票ファイルを追加、削除、置換またはリストアする前に、ocrcheckコマンドをrootとして実行します。OCRが使用できない場合、または破損している場合は、「Oracle Cluster Registryのリストア」で説明するとおり、OCRをリストアする必要があります。

- 以前のバージョンのOracle ClusterwareをOracle Clusterware 12cにアップグレードしてOracle ASMディスク・グループに投票ファイルを格納する場合は、「ASMの互換性」(COMPATIBLE.ASM)の互換性属性を12.1.0.0に設定する必要があります。

関連項目:

Oracle ASMの互換性属性の設定の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

Oracle ASMでの投票ファイルの格納

Oracle ASMでは、投票ファイルは、格納されている他のファイルとは異なる方法で管理されます。投票ファイルをOracle ASMに格納するようにすると、Oracle ASMは、選択したディスク・グループにクラスタのすべての投票ファイルを格納します。Oracle ASMに格納される投票ファイルとOracle ASMに格納されない投票ファイルは、同じクラスタ内で使用できません。

Oracle ASMで投票ファイルを構成した後、投票ファイルの構成に変更を加えることができるのは、crsctl replace votediskコマンドを使用する場合のみです。これは、作業投票ファイルがない場合にもあてはまります。crsctl query css votediskによって使用中の投票ディスクがないと報告されても、Oracle ClusterwareはOracle ASMが使用中だったことを記憶しているため、replaceが必要になります。replaceを使用して、Oracle ASM以外の記憶域に投票ファイルを移動した後でのみ、add css votediskおよびdelete css votediskが再び使用可能になります。

特定のOracle ASMディスク・グループに格納できる投票ファイルの数は、ディスク・グループの冗長性に依存します。

デフォルトでは、Oracle ASMが、ディスク・グループ内のそれ自体の障害グループに各投票ファイルを配置します。障害グループは、ディスク・グループ内のディスクのサブセットです。障害グループは、あるディスクに障害が発生し、コンポーネントを共有する他のディスクにも障害が発生した場合などに、コンポーネントを共有するディスクを定義します。障害グループとして定義する可能性のある対象の例として、同じSCSIコントローラを共有しているSCSIディスク・セットがあります。障害グループは、冗長データの格納に使用するOracle ASMディスクを決定するために使用されます。たとえば、ファイルに2方向のミラー化が指定されている場合、ファイル・エクステントの冗長コピーは別の障害グループに格納される必要があります。

Oracle ASMディスク・グループに選択した冗長レベルによって、Oracle ASMでディスク・グループ内のファイルをミラー化する方法および必要となるディスク数とディスク領域が決まります。投票ファイルがディスク・グループにある場合、Oracle Clusterwareファイル(OCRおよび投票ファイル)があるディスク・グループの障害グループの最小数は、投票ファイルが定数障害グループに格納されているため、他のディスク・グループよりも多くなります。

クォーラム障害グループは特殊なタイプの障害グループで、Oracle Clusterware投票ファイルを格納するために使用されます。定数障害グループは、指定した障害グループの定数が使用可能であることを確認するために使用されます。Oracle ASMでOracle Clusterwareファイルが含まれるディスク・グループがマウントされるときに、1つ以上の障害グループが失われた場合にこのディスク・グループをマウントできるかどうかを判別するために、クォーラム障害グループが使用されます。定数障害グループ内のディスクにはユーザー・データが含まれないため、ユーザー・データを格納するための冗長性要件を決定するときには、このグループは考慮されません。

冗長性レベルには次のものがあります。

- 外部冗長: 外部冗長ディスク・グループでは、最小で1台のディスク・デバイスが必要です。外部冗長のディスク・グループで有効なディスク領域は、全デバイスのディスク領域の合計です。
Oracle ASMは外部冗長ディスク・グループ内のデータをミラー化しないため、RAIDなどのストレージ・デバイスによる外部冗長を使用するか、または独自のデータ保護メカニズムを持つ類似デバイスを使用することをお薦めします。

- 標準冗長: 標準冗長ディスク・グループでは、最小で2台のディスク・デバイス(または2つの障害グループ)が必要です。標準冗長のディスク・グループで有効なディスク領域は、すべてのデバイスのディスク領域の合計の半分です。
Oracle Clusterwareファイルの場合、標準冗長のディスク・グループは最小で3台のディスク・デバイス(3台のうち2台は障害グループにより使用され、3台すべてがクォーラム障害グループにより使用されます)を必要とし、3つの投票ファイル、1つのOCRおよびOCRのミラーを提供します。標準冗長のディスク・グループを使用すると、クラスタは障害グループを1つ失っても存続できます。

- 高冗長: 高冗長ディスク・グループでは、Oracle ASMはデフォルトで3方向のミラー化を使用してパフォーマンスを向上させ、最高レベルの信頼性を提供します。高冗長ディスク・グループでは、最小で3台のディスク・デバイス(または3つの障害グループ)が必要です。高冗長のディスク・グループで有効なディスク領域は、全デバイスのディスク領域の合計の3分の1です。
Oracle Clusterwareファイルの場合、高冗長ディスク・グループは最小で5台のディスク・デバイス(5台のうち3台は障害グループにより使用され、5台すべてがクォーラム障害グループにより使用されます)を必要とし、5つの投票ファイル、1つのOCRおよび2つのOCRミラーを提供します。高冗長のクラスタは、障害グループを2つ失っても存続できます。

crsctl replace votediskコマンドを使用すると、特定の投票ファイル・セットを、あるOracle ASMディスク・グループから別のOracle ASMディスク・グループに、または動作保証されているファイル・システムに移動できます。あるOracle ASMディスク・グループから別のOracle ASMディスク・グループに投票ファイルを移動する場合は、以前のディスク・グループとは異なる冗長レベルのディスク・グループに投票ファイルを配置することで、投票ファイルの数を変更できます。

注意:

- 1つのディスク・グループで、投票ファイルの数を直接変更することはできません。

- Oracle ASMではディスク・グループの冗長性レベルに従って投票ファイルの数が管理されるため、 Oracle ASMディスク・グループに格納されている投票ファイルに対してcrsctl add | delete votediskコマンドを使用することはできません。

- 投票ファイルがOracle ASMディスク・グループに格納されている場合は、クラスタ・ファイル・システムに投票ファイルを追加できません。Oracle ASM、および同じクラスタのクラスタ・ファイル・システム上に直接、投票ファイルを同時に格納することはサポートされていません。

関連項目:

- ディスク・グループの冗長性の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

- 投票ファイルの移行の詳細は、「投票ファイルの追加、削除または移行」を参照してください。

投票ファイルのバックアップ

Oracle Clusterwareは、構成変更の一部として投票ファイルのデータを自動的にOCRにバックアップし、追加された任意の投票ファイルにデータを自動的にリストアします。ただし、すべての投票ファイルが破損した場合は、「投票ファイルのリストア」で説明するとおり、それをリストアできます。

投票ファイルのリストア

すべての投票ファイルが破損している場合は、次のようにリストアできます。

1. 必要に応じて、「Oracle Cluster Registryのリストア」で説明するとおり、OCRをリストアします。

この手順が必要なのは、OCRがOracle ASM上に存在し、ディスク・グループが使用できなくなっている場合など、OCRも破損しているか、または使用できない場合のみです。

関連項目:

Oracle ASMディスク・グループの管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

2. 次のコマンドを1つのノードのみからrootとして実行し、Oracle Clusterwareスタックを排他モードで起動します。この場合、投票ファイルが存在したり、使用可能である必要はありません。

# crsctl start crs -excl

3. crsctl query css votediskコマンドを実行して、現在定義されている、次のような投票ファイルのリストを取得します。

$ crsctl query css votedisk
--  -----    -----------------                --------- ---------
##  STATE    File Universal Id                File Name Disk group
1. ONLINE   6f57843d89464c46ea747362e8a3fa43 (/dev/sdb1) [DATA]
2. ONLINE   7c54856e98474f61bf349401e7c9fb95 (/dev/sdc1) [DATA]
3. ONLINE   9c46232b76234f61fc934673d5c8ec59 (/dev/sdd1) [DATA]

このリストは、すべての投票ファイルが破損していたり、投票ファイルにステータス3またはOFFとマーク付けされているエントリが存在する可能性がある場合は、空であることがあります。

4. 投票ファイルの格納場所に応じて、次のいずれかの方法を実行します。

- 投票ファイルがOracle ASMに格納される場合は、次のコマンドを実行して、指定したOracle ASMディスク・グループに投票ファイルを移行します。

crsctl replace votedisk +asm_disk_group

投票ファイルの移行先のOracle ASMディスク・グループは、Oracle ASMに存在する必要があります。このコマンドは、投票ファイルがOracle ASMに格納されていても、他のストレージ・デバイスに格納されていても使用できます。

- Oracle ASMに投票ファイルを格納していなかった場合は、前の手順で取得したファイル・ユニバーサル識別子(FUID)を使用して、次のコマンドを実行します。

$ crsctl delete css votedisk FUID

次のコマンドを実行して、投票ファイルを追加します。

$ crsctl add css votedisk path_to_voting_disk

5. rootとしてOracle Clusterwareスタックを停止します。

# crsctl stop crs

注意:

Oracle Clusterwareスタックが排他モードで実行されている場合は、-fオプションを使用してスタックを強制的に停止します。

6. rootとしてOracle Clusterwareスタックを通常モードで再起動します。

# crsctl start crs

投票ファイルの追加、削除または移行

Oracle Clusterwareのインストール後に、投票ファイルを追加、削除および移行できます。これを行うために使用するコマンドは、投票ファイルがOracle ASMに存在するか、別の記憶域オプションに存在するかによって異なります。

Oracle ASMに格納されている投票ファイルの変更

- 投票ファイルのFUIDと現在の各投票ファイルのファイル・パスを表示するには、crsctl query css votediskコマンドを実行して、次のような出力を表示します。

$ crsctl query css votedisk
--  -----    -----------------                --------- ---------
##  STATE    File Universal Id                File Name Disk group
1. ONLINE   6f57843d89464c46ea747362e8a3fa43 (/dev/sdb1) [DATA]
2. ONLINE   7c54856e98474f61bf349401e7c9fb95 (/dev/sdc1) [DATA]
3. ONLINE   9c46232b76234f61fc934673d5c8ec59 (/dev/sdd1) [DATA]

このコマンドでは、ディスク順序番号、ディスクのステータス、FUID、ディスクのパス、およびディスクが格納されているOracle ASMディスク・グループの名前が戻されます。

- Oracle ASMから代替ストレージ・デバイスに投票ファイルを移行するには、次のコマンドを使用して、Oracle ASMディスク・グループと置き換えるOracle ASM以外のストレージ・デバイスまでのパスを指定します。

$ crsctl replace votedisk path_to_voting_disk

クラスタ内の任意のノードでこのコマンドを実行できます。

- Oracle ASMに格納されていないすべての投票ファイルを、Oracle ASMディスク・グループでOracle ASMにより管理される投票ファイルに置き換えるには、次のコマンドを実行します。

$ crsctl replace votedisk +asm_disk_group

Oracle ASMに格納されていない投票ファイルの変更

- 投票ファイルFUIDおよび現行の各投票ファイルのファイル・パスを表示するには、次のコマンドを実行します。

$ crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
1. ONLINE   7c54856e98474f61bf349401e7c9fb95 (/cfs/host09_vd3) []

このコマンドでは、ディスク順序番号、ディスクのステータス、FUID、およびディスクのパスが戻され、Oracle ASMディスク・グループの名前は戻されません。

- 1つ以上の投票ファイルを追加するには、次のコマンドを実行します。path_to_voting_disk変数は、追加する投票ファイルの1つ以上の空白区切りの完全パスで置き換えます。

$ crsctl add css votedisk path_to_voting_disk [...]

- 投票ファイルAを投票ファイルBと置き換えるには、投票ファイルBを追加してから投票ファイルAを削除する必要があります。新しいディスクを追加して既存のディスクを削除するには、次のコマンドを実行します(path_to_voting_diskB変数は投票ファイルBの完全修飾パス名に置き換えます)。

$ crsctl add css votedisk path_to_voting_diskB -purge

-purgeオプションを使用すると、既存の投票ファイルが削除されます。

- 投票ファイルを削除するには、次のコマンドを実行します。1つ以上の空白区切りの投票ファイルFUIDまたは削除する投票ファイルのカンマ区切りのディレクトリ・パスを指定します。

$ crsctl delete css votedisk {FUID | path_to_voting_disk[...]}

注意:

クラスタが停止し、失われた投票ファイルのために再起動できない場合は、rootとして次のコマンドを実行してCSSを排他モードで起動する必要があります。

# crsctl start crs -excl

CSSを排他モードで起動したら、次のコマンドを使用して投票ファイルを置換できます。

# crsctl replace votedisk path_to_voting_disk

Oracle ASMへの投票ファイルの移行

Oracle ASMに投票ファイルを移行するには、次のコマンドにOracle ASMディスク・グループ名を指定します。

$ crsctl replace votedisk +asm_disk_group

クラスタ内の任意のノードでこのコマンドを実行できます。

投票ファイルの場所の確認

投票ファイルの変更後、次のコマンドを使用して投票ファイルの場所を確認します。

$ crsctl query css votedisk

関連項目:

CRSCTLコマンドの詳細は、「Oracle Clusterware制御(CRSCTL)ユーティリティ・リファレンス」を参照してください。

7 クラスタ・ノードの追加および削除

この章では、既存のクラスタにノードを追加する方法、およびクラスタからノードを削除する方法について説明します。この章では、Linux、UNIXおよびWindowsシステムでこれらのタスクを実行する手順を説明しています。

注意:

- 特に指定がないかぎり、Oracle Clusterwareをインストールしたユーザーとしてノードの追加および削除のすべての手順を実行します。

- クラスタを作成する場合は、「Oracle Clusterwareのクローニング」に記載されているクローニング手順を使用することをお薦めします。

内容は次のとおりです。

- クラスタ・ノードを追加するための必須手順

- LinuxおよびUNIXシステムでのクラスタ・ノードの追加および削除

- Windowsシステムでのクラスタ・ノードの追加および削除

クラスタ・ノードを追加するための必須手順

注意:

クラスタにノードを追加する前に、『Oracle Grid Infrastructureインストレーション・ガイド』に示す前処理を実行してください。

Oracle Clusterwareはインストールしないでください。ソフトウェアはクラスタにノードを追加したときに既存のノードからコピーされます。

次の手順を実行して、クラスタに追加するノードを準備します。

1. 物理的な接続を確立します。
ノードのハードウェアをクラスタのネットワーク・インフラストラクチャに接続します。この作業には、電気的な接続の確立、ネットワーク・インターコネクトの構成、共有ディスク・サブシステム接続の構成などが含まれます。この手順の詳細は、ハードウェア・ベンダーのマニュアルを参照してください。

2. オペレーティング・システムをインストールします。
クラスタの他のノード上のオペレーティング・システムと一致するオペレーティング・システムのクローン・イメージをインストールします。これには、必要なサービス・パッチ、更新およびドライバのインストールも含まれます。この手順の詳細は、オペレーティング・システム・ベンダーのマニュアルを参照してください。

注意:

クローン・イメージを使用することをお薦めします。ただし、インストール要件が満たされている場合は、ベンダーのドキュメントに従ってオペレーティング・システムをインストールしてください。

3. Oracleユーザーを作成します。
既存ノードに存在すべてのOracleユーザーを新規ノードで作成する必要があります。たとえば、2つのノードを持つクラスタにノードを追加する際、これら2つのノードでOracle Grid InfrastructureホームとOracleホームに異なる所有者が存在する場合は、新規ノードにOracleホームをインストールする予定がなくても、新規ノードでこれらの所有者を作成する必要があります。

注意:

この手順は、LinuxおよびUNIXシステムに対してのみ実行します。

rootとして、既存ノードと同じユーザーIDおよびグループIDを使用してOracleユーザーおよびグループを作成します。

4. SSHがノードに構成されていることを確認します。

注意:

Oracle Clusterware 12cをインストールすると、SSHが構成されます。SSHが構成されない場合は、SSHの構成について、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

5. クラスタ検証ユーティリティ(CVU)を使用して、ハードウェアおよびオペレーティング・システムのインストールを確認します。
追加対象ノードにハードウェアおよびオペレーティング・システムを構成した後、次のコマンドを実行して、クラスタ内の他のノードから追加対象ノードへの到達可能性を検査できます。また、このコマンドで、ローカル・ノードから指定されたすべてのノードへのユーザー等価関係、指定されたすべてのノード間のノード接続性、指定されたすべてのノードからの共有記憶域へのアクセス可能性などを検査することもできます。

a. 既存ノードで、Grid_home/binディレクトリからCVUコマンドを実行して、参照ノードのプロパティと、現在のクラスタ環境に含まれるその他のすべてのノードのプロパティとの詳細な比較情報を取得します。ref_nodeを、CVUで追加対象ノードと比較する既存クラスタ内のノードの名前に置き換えます。-nオプションの後に、カンマ区切りのノードのリストを指定します。次の例では、orainventory_groupはOracle Inventoryグループの名前、osdba_groupはOSDBAグループの名前です。

$ cluvfy comp peer [-refnode ref_node] -n node_list
[-orainv orainventory_group] [-osdba osdba_group] [-verbose]

b. グリッド・インフラストラクチャ管理リポジトリに、前述の4つの手順で追加された各ノードに対して500MB以上の追加領域があることを確認します。

$ oclumon manage -get repsize

必要な場合は、次のように追加領域を追加します。

$ oclumon manage -repos changerepossize total_in_MB

関連項目:

OCLUMONの使用方法の詳細は、「OCLUMONコマンドのリファレンス」を参照してください

注意:

参照ノードについては、CVUによる比較を行うクラスタ・ノードを選択します。たとえば、-nオプションで指定して追加するノードなどです。

この項の手順を完了すると、ノードをクラスタに追加できるようになります。

注意:

Oracle Clusterwareインストールの完了後は、ホスト名の変更(ドメイン修飾の追加または削除を含む)はしないでください。ホスト名を変更されたノードはクラスタから削除され、新しい名前で追加されます。

LinuxおよびUNIXシステムでのクラスタ・ノードの追加および削除

この項では、LinuxおよびUNIXシステムでのクラスタ・ノードの追加および削除について説明します。この項のノードの追加の手順は、「クラスタ・ノードを追加するための必須手順」の項の手順を完了していることを前提としています。

ノード追加プロセスの最後の手順には、既存のノード上のOracle Clusterwareホームから追加対象ノードへのOracle Clusterwareホームの拡張が含まれます。

この項には次のトピックが含まれます:

- LinuxおよびUNIXシステムでのクラスタ・ノードの追加

- LinuxおよびUNIXシステムでのクラスタ・ノードの削除

注意:

Oracle Clusterware 11g リリース2 (11.2)以降では、ノードの追加時、Oracle Universal Installerはデフォルトでサイレント・モードになっています。

LinuxおよびUNIXシステムでのクラスタ・ノードの追加

この手順では、クラスタにノードを追加する方法について説明します。この手順では、次の項目を前提としています。

- node1およびnode2という2つのノードを持つクラスタが存在する

- DHCPおよびグリッド・ネーミング・サービス(GNS)を使用していない場合は、node3-vipという仮想ノード名を使用して、IPアドレスに解決される、node3という名前のノードを追加する

- Oracle Clusterwareがnode1およびnode2のローカルの非共有ホームにインストールされており、Grid_homeは正常にインストールされたホームを表す

ノードを追加するには、次の手順を実行します。

1. クラスタ環境内で1つ以上のノードにOracle Clusterwareを正常にインストールしていることを確認します。次の手順を実行するには、Grid_homeが、正常にインストールされたOracle Clusterwareホームを指している必要があります。

関連項目:

Oracle Clusterwareのインストール手順については、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

2. クラスタおよびnode3の整合性を検証します。

$ cluvfy stage -pre nodeadd -n node3 [-fixup] [-verbose]

検証が失敗した場合、クラスタまたはノードの修正を試行するための-fixupオプションを指定できます。

3. Oracle Grid Infrastructureホームをnode3に拡張するには、node1のGrid_home/addnodeディレクトリに移動して、Oracle Clusterwareをインストールしたユーザーとしてaddnode.shスクリプトを実行します。
addnode.shを相互モードで実行するには、Grid_home/addnodeからaddnode.shを実行します。

Oracle Clusterwareの標準クラスタおよびOracle Flex Clusterでは、サイレント・モードでaddnode.shを実行することもできます。

Oracle Clusterwareの標準クラスタの場合:

./addnode.sh -silent "CLUSTER_NEW_NODES={node3}" "CLUSTER_NEW_VIRTUAL_
HOSTNAMES={node3-vip}"

Oracle Flex Clusterにnode3を追加する場合、コマンドラインで次のようにノード・ロールを指定できます。

./addnode.sh -silent "CLUSTER_NEW_NODES={node3}" "CLUSTER_NEW_VIRTUAL_
HOSTNAMES={node3-vip}" "CLUSTER_NEW_NODE_ROLES={hub}"

注意:

ハブ・ノードには常にVIPがありますが、リーフ・ノードにはない場合があります。前述の構文を使用して複数のノードをクラスタに追加する場合、node3がハブ・ノードでnode4がリーフ・ノードである次のような構文を使用できます。

./addnode.sh -silent "CLUSTER_NEW_NODES={node3,node4}" "CLUSTER_NEW_VIRTUAL_HOSTNAMES={node3-vip,}" "CLUSTER_NEW_NODE_ROLES={hub,leaf}"

4. プロンプトに従い、orainstRoot.shスクリプトをrootとして実行して、/etc/oraInst.locファイルに中央インベントリの場所を移入します。次に例を示します。

# /opt/oracle/oraInventory/orainstRoot.sh

5. Oracle RACまたはOracle RAC One Nodeデータベースをクラスタで構成した場合で、ローカルのOracleホームを持つ場合は、次を実行してOracle Databaseホームをnode3に拡張します。

a. node1のOracle_home/addnodeディレクトリに移動し、次の構文を使用してOracle RACをインストールしたユーザーとしてaddnode.shスクリプトを実行します。

$ ./addnode.sh "CLUSTER_NEW_NODES={node3}"

b. rootとしてnode3でOracle_home/root.shスクリプトを実行します。Oracle_homeはOracle RACホームです。

Oracle Automatic Storage Management Cluster File System (Oracle ACFS)を使用して共有されている共有Oracleホームを持つ場合は、次の手順を実行し、Oracle Databaseホームをnode3に拡張します。

a. rootとして、node3に対しGrid_home/root.shスクリプトを実行します。Grid_homeはOracle Grid Infrastructureホームです。

b. Oracle RACをインストールしたユーザーとして、追加したノードのOracle_home/oui/binディレクトリから次のコマンドを実行し、Oracle RACデータベース・ホームを追加します。

$ ./runInstaller -attachHome ORACLE_HOME="ORACLE_HOME" "CLUSTER_NODES={node3}"
LOCAL_NODE="node3" ORACLE_HOME_NAME="home_name" -cfs

c. node1のOracle_home/addnodeディレクトリに移動し、次の構文を使用してOracle RACをインストールしたユーザーとしてaddnode.shスクリプトを実行します。

$ ./addnode.sh -noCopy "CLUSTER_NEW_NODES={node3}"

注意:

宛先ノードのOracleホームはすでにソフトウェアに完全に移入されているため、-noCopyオプションを使用します。

Oracle ACFS以外の共有ファイル・システムで共有Oracleホームを持つ場合は、まずターゲット・ノードでOracle RACデータベース・ホームのマウント・ポイントを作成し、Oracle RACデータベース・ホームをマウントおよびアタッチし、次のようにOracle Inventoryを更新します。

a. クラスタ内の既存ノードでsrvctl config database -db db_nameコマンドを実行して、マウント・ポイント情報を取得します。

b. 次のコマンドをrootとしてnode3で実行し、マウント・ポイントを作成します。

# mkdir -p mount_point_path

c. Oracle RACデータベース・ホームをホストするファイル・システムをマウントします。

d. Oracle RACをインストールしたユーザーとして、追加したノードのOracle_home/oui/binディレクトリから次のコマンドを実行し、Oracle RACデータベース・ホームを追加します。

$ ./runInstaller -attachHome ORACLE_HOME="ORACLE_HOME" "CLUSTER
_NODES={local_node_name}" LOCAL_NODE="node_name" ORACLE_HOME_NAME="home_name" -cfs

e. node1のOracle_home/addnodeディレクトリに移動し、次の構文を使用してOracle RACをインストールしたユーザーとしてaddnode.shスクリプトを実行します。

$ ./addnode.sh -noCopy "CLUSTER_NEW_NODES={node3}"

注意:

宛先ノードのOracleホームはすでにソフトウェアに完全に移入されているため、-noCopyオプションを使用します。

注意:
addnode.shの実行後、Grid_home/network/admin/samplesディレクトリの権限が750に設定されていることを確認します。

6. rootとして、node3でGrid_home/root.shスクリプトを実行し、指示に従って後続のスクリプトを実行します。

注意:

- 手順5でroot.shスクリプトを実行した場合は、再度実行する必要はありません。

- ポリシー管理データベースを使用している場合、必ずOracleホームを新しいノードにクローニングしてからroot.shスクリプトを実行してください。

7. rootとしてGrid_home/binディレクトリから次のコマンドを実行して、新しいノードでOracle ACFSリソースを起動します。

# srvctl start filesystem -device volume_device_name -node node3

注意:

Oracleホームが格納されているOracle ACFSレジストリ・リソースおよびOracle ACFSファイル・システム・リソースを含むOracle ACFSリソースが、新しく追加されたノードでオンラインであることを確認します。

8. Oracle Clusterwareをインストールしたユーザーとして次のCVUコマンドを実行して、クラスタの整合性をチェックします。このコマンドで、指定した任意の数のノードがネットワーク、共有記憶域およびクラスタウェアの各レベルでクラスタに正常に追加されていることを確認します。

$ cluvfy stage -post nodeadd -n node3 [-verbose]

関連項目:

このCVUコマンドの詳細は、「cluvfy stage [-pre | -post] nodeadd」を参照してください。

ポリシー管理Oracle RACデータベースまたは管理者管理Oracle RACデータベースのいずれかがnode3(新しく追加されたノード)で実行されるように構成されているかどうかを確認します。管理者管理Oracle RACデータベースを構成した場合、DBCAを使用してデータベースにインスタンスを追加し、この新しく追加されたノードで実行します。

関連項目:

- DBCAを使用した管理者管理Oracle RACデータベース・インスタンスの追加の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

- ポリシー管理Oracle RACデータベースを構成した場合のターゲット・ノードへのOracle RACデータベース・インスタンスの追加の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

LinuxおよびUNIXシステムでのクラスタ・ノードの削除

この項では、クラスタからノードを削除する手順について説明します。

注意:

- クラスタからノードを削除する前にノードからOracle RACデータベース・インスタンスを削除することができますが、この手順は必須ではありません。インスタンスを削除しない場合、インスタンスは構成されたままですが、実行されることはありません。クラスタからノードを削除しても、クラスタからノードの構成情報が削除されることはありません。残った構成情報がクラスタの操作を妨害することはありません。
関連項目: Oracle RACデータベース・インスタンスの削除の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

- GNSが提供するクラスタの最後のノードを削除する場合、GNSからそのクラスタのエントリを削除する必要があります。

- 固定解除されているクラスタにノードがある場合、しばらくするとOracle Clusterwareはそれらのノードを無視するため、ユーザーが削除する必要はありません。

- (特定のノードでサービスを無効にしたり、サーバー・プールの候補リストにノードを追加するなどして)あるノードにノード固有の構成を作成すると、ノードがクラスタから削除されても、ノード固有の構成は削除されません。このようなノード固有の構成は、手動で削除する必要があります。

- クラスタに変更を行うと、投票ファイルは自動的にOCRにバックアップされます。

- Oracle Flex Clusterからリーフ・ノードを削除する場合は、次の手順の手順1から4のみを実行します。

クラスタからノードを削除するには、次の手順を実行します。

1. Grid_homeが各ノード上のOracle Clusterwareホームへの完全なディレクトリ・パスを正しく指定していることを確認します。Grid_homeは、Oracle Clusterwareソフトウェアをインストールした場所です。

2. rootとしてまたはOracle Clusterwareをインストールしたユーザーとして次のコマンドを実行し、削除対象のノードがアクティブであることおよび固定されているかどうかを確認します。

$ olsnodes -s -t

ノードが固定されている場合は、crsctl unpin cssコマンドを実行します。それ以外の場合は、次の手順に進みます。

3. 削除対象のノードで、Oracle ClusterwareをインストールしたユーザーとしてGrid_home/oui/binディレクトリから次のコマンドを実行します。node_to_be_deletedは、削除対象のノードの名前です。

$ ./runInstaller -updateNodeList ORACLE_HOME=Grid_home "CLUSTER_NODES=
{node_to_be_deleted}" CRS=TRUE -silent -local

4. 削除対象のノードで、共有Oracleホームを持つかローカルOracleホームを持つかによって、Oracle Clusterwareをインストールしたユーザーとして、次のいずれかの手順を実行します。

- ローカル・ホームの場合は、次のコマンドを実行し、削除対象のノードからOracle Clusterwareホームを削除します。Grid_homeは、Oracle Clusterwareホームに定義されているパスです。

$ Grid_home/deinstall/deinstall -local

注意:

- -localフラグを指定しない場合は、コマンドによって、クラスタ内のすべてのノードからOracle Grid Infrastructureホームが削除されます。

- 前述のコマンドラインをカット・アンド・ペーストする場合は、このドキュメントに含まれている書式設定を削除するために、テキスト・エディタにペーストしてからコマンドラインにペーストしてください。

- 共有ホームがある場合は、削除するノードで次のコマンドを次の順序で実行します。
Oracle Clusterwareを構成解除するには、次のコマンドを実行します。

$ Grid_home/perl/bin/perl Grid_home/crs/install/rootcrs.pl -deconfig -force

Gridホームをデタッチするには、次のコマンドをGrid_home/oui/binディレクトリから実行します。

$ ./runInstaller -detachHome ORACLE_HOME=Grid_home -silent -local

インストール・ユーティリティの指示に従って、構成ファイルがあれば手動で削除します。

5. 削除対象でない任意のノードで(Oracle Flex Clusterのリーフ・ノードを除く)、Grid_home/oui/binディレクトリから次のコマンドを実行します。remaining_nodes_listは、クラスタの一部として残すノードのカンマ区切りのリストです。

$ ./runInstaller -updateNodeList ORACLE_HOME=Grid_home "CLUSTER_NODES=
{remaining_nodes_list}" CRS=TRUE -silent

注意:

- 次のように、このコマンドをもう一度Oracle RACホームから実行する必要があります(構文からは、ORACLE_HOME=ORACLE__RAC_HOME、およびCRS=TRUE -silentが省略されています)。

$ ./runInstaller -updateNodeList ORACLE_HOME=ORACLE_HOME
"CLUSTER_NODES={remaining_nodes_list}"

- Oracle Flex Cluster,からリーフ・ノードを削除する場合、このコマンドを実行する必要はないため、remaining_nodes_listにはハブ・ノードのみが表示される必要があります。

- Oracle Grid Infrastructureホームが共有ホームの場合は、この手順のコマンド例に-cfsオプションを追加し、クラスタ・ファイル・システムの完全なパス位置を指定します。

6. 削除対象ではない任意のノードから、rootとしてGrid_home/binディレクトリで次のコマンドを実行して、クラスタからノードを削除します。

# crsctl delete node -n node_to_be_deleted

7. 指定したノードがクラスタから正常に削除されたことを確認するには、次のCVUコマンドを実行します。

$ cluvfy stage -post nodedel -n node_list [-verbose]

関連項目:

このCVUコマンドの詳細は、「cluvfy stage -post nodedel」を参照してください。

8. Oracle Clusterwareが停止しているクラスタ・ノードを削除した場合、次のようにして、削除したノードのVIPが削除されずに残っていないかどうか確認します。

$ srvctl config vip -node deleted_node_name

VIPがまだ残っている場合、次のようにして削除します。

$ srvctl stop vip -node deleted_node_name
$ srvctl remove vip -node deleted_node_name

Windowsシステムでのクラスタ・ノードの追加および削除

この項では、Windowsシステムでのクラスタ・ノードの追加および削除について説明します。この項には次のトピックが含まれます:

- Windowsシステムでのクラスタへのノードの追加

- Windowsシステムでのクラスタ・ノードの削除

関連項目:

クラスタ全体の削除の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

Windowsシステムでのクラスタへのノードの追加

ノードを追加する前に、「クラスタ・ノードを追加するための必須手順」にリストされている前提条件を満たしておく必要があります。

この手順では、クラスタにノードを追加する方法について説明します。この手順では、次の項目を前提としています。

- node1およびnode2という2つのノードを持つクラスタが存在する

- node3という名前のノードを追加する

- Oracle Clusterwareがnode1およびnode2のローカル・ホームにインストールされており、Grid_homeは正常にインストールされたホームを表す

注意:

WindowsシステムでOracle DatabaseがOracle Database 10gリリース1(10.1)からアップグレードされている構成の場合は、クラスタ・ノードの追加に、この項で説明する手順を使用しないでください。

ノードを追加するには、次の手順を実行します。

1. クラスタおよびnode3の整合性を検証します。

C:\>cluvfy stage -pre nodeadd -n node3 [-fixup] [-verbose]

-fixupオプションと、検証が失敗した場合にクラスタまたはノードを修正するための指示がCVUによって出力されるディレクトリを指定できます。

2. node1でGrid_home\addnodeディレクトリに移動し、addnode.batスクリプトを次のように実行します。

C:\>addnode.bat "CLUSTER_NEW_NODES={node3}"
"CLUSTER_NEW_VIRTUAL_HOSTNAMES={node3-vip}"

3. 新規ノードで次のコマンドを実行します。

C:\>Grid_home\crs\config\gridconfig.bat

4. Oracle ACFSを使用するようにデータベース・ホームを構成した場合にのみ、次の手順を実行する必要があります。

a. Oracle ACFSを使用するように構成した各データベースに対して、Oracle RACデータベース・ホームから次のコマンドを実行します。

C:\> ORACLE_HOME/bin/srvctl stop database -db database_unique_name

注意:

Oracle Clusterwareで構成されているすべてのデータベースをリストするには、srvctl config databaseコマンドを実行します。データベースの詳細を検索するには、srvctl config database -db database_unique_nameを使用します。ORACLE_HOMEのパスがOracle ACFSのマウント・パスにつながる場合、データベースはOracle ACFSを使用します。このコマンドの出力から、新しく追加されたノードで実行するように構成されたデータベース・インスタンス名を見つけます。

b. Windows Server Manager Controlを使用して、サービスを停止して削除します。

c. 手順4.aで収集したデータベースおよびデータベース・ホームのそれぞれに対して、次のコマンドを実行します。

C:\> ORACLE_HOME/bin/srvctl start database -db database_unique_name

5. 次のコマンドを実行し、構成済のすべてのノード(既存のノードと追加したノードの両方)でOracle Clusterwareコンポーネントの整合性を検証します。

C:\>cluvfy stage -post crsinst -n all [-verbose]

この項のノードの追加手順を完了してから、必要に応じてOracle RACコンポーネントを含むOracle Databaseを新規ノードに拡張し、新規ノードを既存のOracle RACデータベースのメンバーにすることも可能です。

関連項目:

Oracle RACを含むOracle Databaseの新規ノードへの拡張の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

OraMTS Service for Microsoft Transaction Serverの作成

Oracle Services for Microsoft Transaction Server (OraMTS)を使用すると、Microsoftアプリケーションで調整されるトランザクション内で、リソース・マネージャとしてOracle Databaseを使用できます。OraMTSは、Microsoft分散トランザクション・コーディネータ(MSDTC)に対するOracle Databaseのプロキシとして機能します。この結果、OraMTSによってクライアント側の接続プールが提供され、Oracleを利用するクライアント・コンポーネントを昇格可能なトランザクションおよび分散トランザクションに使用できるようになります。また、サービス自体がWindowsで実行される場合、OraMTSは、任意のオペレーティング・システム上で実行されているOracle Databaseと連携して動作できます。

Oracle Database 12cより前のリリースでは、OraMTSはソフトウェアのみのインストールの一部として作成されました。Oracle Database 12c以上では、構成ツールを使用してこのサービスを作成する必要があります。

ノードの追加後、またはOracle RACのソフトウェアのみのインストールを実行した後でOraMTSサービスを作成するには、次の手順を実行します。

1. コマンド・ウィンドウを開きます。

2. ディレクトリを%ORACLE_HOME%\binに変更します。

3. OraMTSCtlユーティリティを実行してOraMTSサービスを作成します(ここで、host_nameはサービスが作成されるノードのリストです)。

C:\..bin> oramtsctl.exe -new -host host_name

関連項目:

分散されるトランザクション内で、リソース・マネージャとしてOracle Databaseを使用できるOraMTSの詳細は、『Oracle Services for Microsoft Transaction Server開発者ガイドfor Microsoft Windows』を参照してください。

Windowsシステムでのクラスタ・ノードの削除

この項では、Windowsシステムでクラスタ・ノードを削除する方法について説明します。この手順は、Oracle Clusterwareがnode1、node2およびnode3にインストールされており、クラスタからnode3を削除すると想定しています。

注意:

- Oracleでは、WindowsシステムでOracle Enterprise Managerを使用してノードを削除することはサポートしていません。

- GNSが提供するクラスタの最後のノードを削除する場合、GNSからそのクラスタのエントリを削除する必要があります。

- クラスタからノードを削除する前にノードからOracle RACデータベース・インスタンスを削除することができますが、この手順は必須ではありません。インスタンスを削除しない場合、インスタンスは構成されたままですが、実行されることはありません。クラスタからノードを削除しても、クラスタからノードの構成情報が削除されることはありません。残った構成情報がクラスタの操作を妨害することはありません。
関連項目: Oracle RACデータベース・インスタンスの削除の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

Windowsシステムでクラスタ・ノードを削除するには、次の手順を実行します。

1. ローカル・ホームを持つ場合のみ、削除対象のノードで次のコマンドを-localオプションで実行し、ノード・リストを更新します。

C:\>Grid_home\oui\bin\setup.exe -updateNodeList ORACLE_HOME=Grid_home "CLUSTER_NODES=
{node_to_be_deleted}" CRS=TRUE -local

注意:

Oracle Flex Clusterからリーフ・ノードを削除する場合、このコマンドを実行する必要はありません。

2. 次のように、削除するノードで削除ツールを実行して、Oracle Clusterwareホームを削除して構成解除します。

C:\Grid_home\deinstall\>deinstall.bat -local

注意:

- -localフラグを指定しない場合は、コマンドによって、クラスタ内のすべてのノードからOracle Grid Infrastructureホームが削除されます。

- 前述のコマンドラインをカット・アンド・ペーストする場合は、このドキュメントに含まれている書式設定を削除するために、テキスト・エディタにペーストしてからコマンドラインにペーストしてください。

3. 削除対象でない任意のノードで、Grid_home\oui\binディレクトリから次のコマンドを実行します(remaining_nodes_listは、クラスタの一部として残すノードのカンマ区切りのリストです)。

C:\>setup.exe –updateNodeList ORACLE_HOME=Grid_home
"CLUSTER_NODES={remaining_nodes_list}" CRS=TRUE -silent

注意:

- 次のように、このコマンドをもう1回(ORACLE_HOME=ORACLE_HOMEで、CRS=TRUE -silentが構文から省略されている)実行する必要があります。

C:\>setup.exe -updateNodeList ORACLE_HOME=ORACLE_HOME
"CLUSTER_NODES={remaining_nodes_list}"

- Oracle Grid Infrastructureホームが共有ホームの場合は、この手順のコマンド例に-cfsオプションを追加し、クラスタ・ファイル・システムの完全なパス位置を指定します。

4. 削除対象のノードで、次のコマンドを実行します。

C:\>Grid_home\bin\crsctl delete node -n node_to_be_deleted

5. 指定したノードがクラスタから正常に削除されたことを確認するには、次のCVUコマンドを実行します。

C:\>cluvfy stage -post nodedel -n node_list [-verbose]

関連項目:

cluvfy stage -post nodedel

6. Oracle Clusterwareが停止しているクラスタ・ノードを削除した場合、次のようにして、削除したノードのVIPが削除されずに残っていないかどうか確認します。

C:\> ORACLE_HOME/bin/srvctl config vip -node deleted_node_name

VIPがまだ残っている場合、次のようにして削除します。

C:\> ORACLE_HOME/bin/srvctl srvctl stop vip -node deleted_node_name
C:\> ORACLE_HOME/bin/srvctl srvctl remove vip -node deleted_node_name

8 Oracle Clusterwareのクローニング

この章では、Oracle Grid Infrastructureホームをクローニングする方法およびクローニングされたホームを使用してクラスタを作成する方法について説明します。この章のクローニング手順を実行するには、サイレント・モードでスクリプトを使用します。クローニング手順は、LinuxおよびUNIXシステムに適用できます。この章の例ではLinuxおよびUNIXのコマンドを使用しますが、通常、クローニングの概念および手順はすべてのプラットフォームに適用されます。

注意:

この章は、次のように構成されたOracle Clusterware 12cインストールをクローニングすることを前提としています。

- グリッド・ネーミング・サービス(GNS)なし

- Intelligent Platform Management Interface仕様(IPMI)なし

- 投票ファイルおよびOracle Cluster Registry(OCR)がOracle Automatic Storage Management(Oracle ASM)に格納されている

- 単一クライアント・アクセス名(SCAN)はDNSで解決される

この章のトピックは、次のとおりです:

- Oracle Clusterwareのクローニングの概要

- Oracle Grid Infrastructureホームをクローニングするための準備

- Oracle Clusterwareのクローニングによるクラスタの作成

- クローニングを使用したクラスタへのノードの追加

- クローニング時に生成されたログ・ファイルの検索および表示

Oracle Clusterwareのクローニングの概要

クローニングとは、既存のOracle Clusterwareインストールを別の場所にコピーし、その後、コピーしたインストールを新しい環境で動作するよう更新するプロセスです。クローニング元のOracle Grid Infrastructureホームに適用済の個別パッチによる変更は、クローニング後も継承されます。クローニング中には、Oracle Grid Infrastructureホームのインストールで実行された操作を再実行するスクリプトを実行します。

クローニングには、正常にインストールされたOracle Grid Infrastructureホームを使用することが必要です。このホームを、Oracle Grid Infrastructureホームを拡張するスクリプト実装のベースにして、元のGridホームに基づくクラスタを作成します。

手動でのクローニング・スクリプトの作成では、入力を検証する対話形式のチェックを使用せずにスクリプトを準備するため、エラーが発生しやすくなる場合があります。ただし、数十または数百のクラスタに対して単一スクリプトを実行するような場合には、この最初の作業は意味があります。インストールするクラスタが1つのみの場合は、Oracle Universal Installer(OUI)またはOracle Enterprise ManagerのProvisioning Pack機能など、従来の自動化された対話形式のインストール方法を使用してください。

注意:

クローニングは、Provisioning Packに含まれるOracle Enterprise Managerクローニングにかわるものではありません。Oracle Enterprise Managerによるクローニングでは、プロビジョニング・プロセスによってOracleホームの詳細が対話形式で確認されることで、クローニングが単純化されています。対話時の質問では、クローニングされた環境のデプロイ先、Oracle Databaseホームの名前、クラスタ内のノードのリストなどが確認されます。

Oracle Enterprise Manager Grid ControlのProvisioning Pack機能では、ノードおよびクラスタのプロビジョニングを自動化するフレームワークが提供されています。多数のクラスタを持つデータ・センターの場合、既存のクラスタに新規クラスタおよび新規ノードをプロビジョニングするためのクローニング手順を作成する作業は、その労力に見合った価値があります。

次のリストに、クローニングが有効ないくつかの状況を示します。

- クローニングにより、Oracle Grid Infrastructureホームを1回準備するだけで、多数のホストに同時にデプロイされます。非対話形式のプロセスとして、サイレント・モードでインストールを完了できます。グラフィカル・ユーザー・インタフェース(GUI)のコンソールを使用する必要がなく、必要に応じて、セキュア・シェル(SSH)・ターミナル・セッションからクローニングを実行できます。

- クローニングにより、すべてのパッチが適用されたインストール(本番、テスト、または開発用インストールのコピー)を1回の手順で作成できます。ベース・インストールを実行してソース・システムにすべてのパッチ・セットとパッチを適用した後は、クローニングにより、それらの個別の手順はすべて単一の手順で実行されます。これにより、クラスタの各ノードですべてのインストール・プロセスを通して行い、インストール、構成およびパッチ適用を個別の手順で実行するのとは、対照的な効果が得られます。

- クローニングによるOracle Clusterwareのインストールでは、非常に短時間で処理を完了できます。たとえば、3つ以上のノードを持つクラスタにOracle Grid Infrastructureホームをクローニングする場合、必要な時間は、Oracleソフトウェアのインストールにかかる数分間と各ノードにかかる数分間を合わせた時間(合計時間はroot.shスクリプトの実行にかかる時間とほぼ等しい)となります。

- クローニングでは、複数のクラスタで同一のOracle Clusterwareインストールを正確に繰り返すための確実な方法が提供されます。

クローニングされたインストールは、クローニング元のインストールと同じ動作をします。たとえば、クローニングされたOracle Grid Infrastructureホームは、OUIを使用して削除したり、OPatchを使用してパッチを適用することができます。また、クローニングされたOracle Grid Infrastructureホームを、別のクローニング操作のソースとして使用できます。コマンドラインのクローニング・スクリプトを使用して、テスト用、開発用または本番用のインストールをクローニングしたコピーを作成できます。

多くの場合、デフォルトのクローニング手順で十分です。ただし、カスタム・ポート割当ての指定、またはカスタム設定の保持など、クローニングのいくつかの側面をカスタマイズすることもできます。

たとえば、リスナーのカスタム・ポートを、次のように指定できます。

$ export ORACLE_HOME=/u01/app/12.1.0/grid
$ $ORACLE_HOME/bin/srvctl modify listener -endpoints tcp:12345

クローニング・プロセスでは、クローニング元のOracle Grid Infrastructureホームからクローニング先のOracle Grid Infrastructureホームにすべてのファイルをコピーします。Oracle Grid Infrastructureホームは、ローカル(非共有)ホームまたは共有ホームのどちらの場合でもクローニングできます。したがって、ソース・インスタンスで使用されているファイルの中で、クローニング元のOracle Grid Infrastructureホームのディレクトリ構造の外部に置かれているものがある場合、それはクローニング先にコピーされません。

ソースおよび宛先のバイナリ・ファイルのサイズは異なる場合がありますが、これはクローニング操作の一部としてこれらのファイルが再リンクされており、これら2つの位置のオペレーティング・システムのパッチ・レベルが異なっていることがあるためです。また、いくつかのファイルがソースからコピーされることによって、特にインスタンス化されたファイルはクローン操作の一部としてバックアップされるため、クローン・ホームのファイルの数が増える場合があります。

Oracle Grid Infrastructureホームをクローニングするための準備

クローニング元のOracle Grid Infrastructureホームでクローニングを準備するには、インストール済のOracle Grid Infrastructureホームのコピーを作成し、別のノードでクローニング手順を実行する際に使用します。次の段階ごとの手順に従って、Oracle Grid Infrastructureホームのコピーを準備します。

- 手順1: Oracle Clusterwareのインストール

- 手順2: 実行中のソフトウェアの停止

- 手順3: Oracle Grid Infrastructureホームのコピーの作成

手順1: Oracle Clusterwareのインストール

『Oracle Grid Infrastructureインストレーション・ガイド』の詳細指示に従って、ソース・ノードで、次の手順を実行します。

1. Oracle Clusterware 12cをインストールします。このインストールによって、Oracle Cluster Registry(OCR)および投票ファイルがOracle Automatic Storage Management(Oracle ASM)に配置されます。

注意:

クラスタ用のOracle Grid Infrastructureをインストールして構成するか、Oracle Clusterwareソフトウェアのみをインストールしてください(ご使用のプラットフォーム固有の『Oracle Grid Infrastructureインストレーション・ガイド』を参照)。

クラスタ用のOracle Grid Infrastructureをインストールして構成した場合は、クローニング手順を実行する前にOracle Clusterwareを停止する必要があります。ソフトウェアのみのインストールを実行する場合は、Oracle Clusterwareを停止する必要はありません。

2. 必要に応じて、適切なパッチ(Oracle Grid Infrastructureバンドル・パッチなど)をインストールします。

3. 必要に応じて、1回限りのパッチを適用します。

関連項目:

Oracle Clusterwareのインストール手順については、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

手順2: 実行中のソフトウェアの停止

クローニング元のOracle Grid Infrastructureホームをコピーする前に、ノードで実行されているサービス、データベース、リスナー、アプリケーション、Oracle ClusterwareおよびOracle ASMインスタンスをすべて停止します。サーバー制御(SRVCTL)ユーティリティを使用してデータベースを停止してから、Oracle Clusterware制御(CRSCTL)ユーティリティを使用して残りのコンポーネントを停止することをお薦めします。

関連項目:

- CRSCTLの詳細は、「Oracle Clusterware制御(CRSCTL)ユーティリティ・リファレンス」を参照してください。

- SRVCTLの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

手順3: Oracle Grid Infrastructureホームのコピーの作成

インストールしたOracle Grid Infrastructureホームを作業ホームとして保持するために、クローニング元のOracle Grid Infrastructureホームの全体コピーを作成します。

ヒント:

コピーの作成時には、ファイル名にリリース番号を含めることをお薦めします。

次の方法のいずれかを使用してOracle Grid Infrastructureホームの圧縮コピーを作成します(Grid_homeはすべてのファイルを含む元のノードの元のOracle Grid Infrastructureホームであり、copy_pathは不要なファイルが削除されるコピーされたOracle Grid Infrastructureホームへのディレクトリ・パスです)。

方法1: Oracle Grid Infrastructureホームのコピーを作成し、そのコピーから不要なファイルを削除する

1. ソース・ノードで、Oracle Grid Infrastructureホームのコピーを作成します。インストールしたOracle Grid Infrastructureホームを作業ホームとして保持するために、クローニング元のOracle Grid Infrastructureホームの全体コピーを作成し、そのコピーから不要なファイルを削除します。たとえば、Linuxシステムでは、rootユーザーとしてcpコマンドを実行します。

# cp -prf Grid_home copy_path

2. コピーから不要なファイルを削除します。

Oracle Grid Infrastructureホームには、ソース・ノードにのみ関連するファイルが含まれているため、log、crs/init、crfおよびcdataディレクトリのOracle Grid Infrastructureホームのコピーから不要なファイルを削除できます。次に、LinuxおよびUNIXシステムでOracle Grid Infrastructureホームのコピーから不要なファイルを削除する場合に実行するコマンドの例を示します。

[root@node1 root]# cd copy_path
[root@node1 grid]# rm -rf log/host_name
[root@node1 grid]# rm -rf gpnp/host_name
[root@node1 grid]# find gpnp -type f -exec rm -f {} \;
[root@node1 grid]# rm -rf cfgtoollogs/*
[root@node1 grid]# rm -rf crs/init/*
[root@node1 grid]# rm -rf cdata/*
[root@node1 grid]# rm -rf crf/*
[root@node1 grid]# rm -rf network/admin/*.ora
[root@node1 grid]# rm -rf crs/install/crsconfig_params
[root@node1 grid]# find . -name '*.ouibak' -exec rm {} \;
[root@node1 grid]# find . -name '*.ouibak.1' -exec rm {} \;
[root@node1 grid]# rm -rf root.sh*
[root@node1 grid]# rm -rf rdbms/audit/*
[root@node1 grid]# rm -rf rdbms/log/*
[root@node1 grid]# rm -rf inventory/backup/*

3. LinuxおよびUNIXシステムではtarまたはgzipを使用して、前述のコピー済Oracle Grid Infrastructureホームの圧縮コピーを作成します。使用するツールによって、権限およびファイル・タイムスタンプが保持されることを確認してください。次に例を示します。

LinuxおよびUNIXシステムの場合:

[root@node1 root]# cd copy_path
[root@node1 grid]# tar -zcvpf /copy_path/gridHome.tgz .

前述の例で、cdコマンドは、この手順の最初の2つの手順で作成したOracle Grid Infrastructureのホームのコピー(不要なファイルは削除済み)に場所を変更し、tarコマンドはgridHome.tgzという名前のファイルを作成します。tarコマンドで、copy_pathは、Oracle Grid Infrastructureホームのコピーの場所を表します。

AIXまたはHPUXシステムの場合は、次のコマンドを発行します。

uncompress gridHome.tar.Z
tar xvf gridHome.tar

Windowsシステムで、WinZipを使用してzipファイルを作成します。

方法2: -Xオプションを使用してOracle Grid Infrastructureホームの圧縮コピーを作成する

1. Oracle Grid Infrastructureホーム内の不要なファイルを示すファイルを作成します。たとえば、excludeFileListというファイルに、アスタリスク(*)のワイルドカードを使用して次のファイル名を示します。

Grid_home/host_name
Grid_home/log/host_name
Grid_home/gpnp/host_name
Grid_home/crs/init/*
Grid_home/cdata/*
Grid_home/crf/*
Grid_home/network/admin/*.ora
Grid_home/root.sh*
*.ouibak
*.ouibak1

2. tarコマンドまたはWinzipを使用して、Oracle Grid Infrastructureホームの圧縮コピーを作成します。たとえば、LinuxおよびUNIXシステムでは、次のコマンドを実行して、クローニング元のOracle Grid Infrastructureホームをアーカイブおよび圧縮します。

tar cpfX - excludeFileList Grid_home | compress -fv > temp_dir/gridHome.tar.Z

注意:

Oracle Grid Infrastructureホームをコピーおよび圧縮するために、jarユーティリティは使用しないでください。

Oracle Clusterwareのクローニングによるクラスタの作成

この項では、正常にインストールされたOracle Clusterware環境をクローニングし、それをクローニング先のクラスタ上のノードにコピーすることにより、クラスタを作成する方法を説明します。この項の手順では、Linux、UNIXおよびWindowsシステムでクローニングを使用する方法について説明します。クローニングでクラスタを正常に作成した後、OCRおよび投票ファイルは2つのクラスタ間で共有されません。

たとえば、クローニングを使用して、正常にインストールされたOracle Clusterware環境を複製し、クラスタを作成することができます。図8-1では、クローニング手順の最終結果を示しており、ここでは、ノード1上のOracle Grid Infrastructureホームがクラスタ2上のノード2およびノード3にクローニングされ、クラスタ2が新規の2ノード・クラスタとして作成されています。

図8-1 クローニングによるOracle Clusterware環境の作成

クローニングでクラスタを作成する手順は次のとおりです。

- 手順1: 新規クラスタ・ノードの準備

- 手順2: 宛先ノードでのOracle Grid Infrastructureホームのデプロイ

- 手順3: 各宛先ノードでのclone.plスクリプトの実行

- 手順4: 構成ウィザードの起動

手順1: 新規クラスタ・ノードの準備

各宛先ノードで、次のインストール前の手順を実行します。

- カーネル・パラメータの指定

- Oracle Clusterwareデバイス用のブロック・デバイスの構成

- ブロック・デバイスの権限が正しく設定されていることの確認

- /etc/hostsファイル内のすべての名前に対する短い非ドメイン修飾の名前の使用

- pingコマンドによる、インターコネクト・インタフェースが到達可能かどうかのテスト

- pingコマンドによる、クローニング・プロセスの開始時にVIPアドレスがアクティブでないことの検証(VIPアドレスのpingコマンドは失敗する必要があります)

- ベンダーのクラスタウェアを実行しているAIXシステムおよびSolaris x86-64-bitシステムでクラスタにノードを追加する場合は、クラスタにノードを追加する前に、ノードでrootpre.shスクリプト(DVDからOracle Clusterwareをインストールした場合はマウント・ポイント、ソフトウェアをダウンロードした場合はtarファイルを解凍したディレクトリにあります)を実行する必要があります。

- CVUの実行によるハードウェアおよびオペレーティング・システム環境の検証

インストール前の全チェックリストは、ご使用のプラットフォーム固有のOracle Clusterwareインストレーション・ガイドを参照してください。

注意:

従来のインストール方法とは異なり、クローニング・プロセスでは、準備フェーズ中に入力が検証されません。(これと比較して、OUIを使用した従来のインストール方法では、インタビュー・フェーズ中に様々なチェックが実行されます。)したがって、ハードウェア設定または準備フェーズ中にミスをすると、クローニング・インストールは失敗します。

手順2: 宛先ノードでのOracle Grid Infrastructureホームのデプロイ

この項で説明しているクローニング手順を開始する前に、Oracle Grid Infrastructureホームのコピーを作成するための必須タスクを完了していることを確認してください(「Oracle Grid Infrastructureホームをクローニングするための準備」を参照)。

1. 各宛先ノードに、「手順3: Oracle Grid Infrastructureホームのコピーの作成」で作成したOracle Grid Infrastructureホームのコピーを次のようにデプロイします。

Oracle Grid Infrastructureホームが共有ホームでない場合は、Oracle Grid Infrastructureホームのコピーを宛先クラスタの各ノードにリストアします。ソース・ノードのOracle Grid Infrastructureホームで使用されているディレクトリ構造と同じディレクトリ構造を使用します。Oracle Grid Infrastructureホームが共有ホームの場合、この手順はスキップします。

たとえば、LinuxまたはUNIXシステムで、次のようなコマンドを実行します。

[root@node1 root]# mkdir -p location_of_the_copy_of_the_Grid_home
[root@node1 root]# cd location_of_the_copy_of_the_Grid_home
[root@node1 crs]# tar -zxvf /gridHome.tgz

この例で、location_of_the_copy_of_the_Grid_homeは、/u01/app/12.1.0/gridなどのOracle Grid Infrastructureホームのインストール先のディレクトリ構造を表します。クローニング・プロセスでは、Gridホームの場所を変更できます。

Windowsシステムの宛先ノードで、Oracle Grid Infrastructureホームを解凍します。ディレクトリ構造は、Oracle Grid Infrastructureホームが存在するソース・ノードのディレクトリ構造と同じにします。

2. Oracle Grid Infrastructureホームから不要なファイルを削除していない場合は、「方法2: -Xオプションを使用してOracle Grid Infrastructureホームの圧縮コピーを作成する」の手順2を繰り返します。

3. 宛先ノードでOracle Inventory用のディレクトリを作成し、必要に応じてOracle Grid Infrastructureホームのすべてのファイルの所有権をOracle Grid Infrastructureインストール所有者およびOracle Inventory(oinstall権限)グループによって所有されるように変更します。次の例では、Oracle Grid Infrastructureインストール所有者がoracleで、Oracle Inventoryグループがoinstallの場合にLinuxシステムでこれを行うコマンドを示します。

[root@node1 crs]# chown -R oracle:oinstall /u01/app

Gridホームで前述のコマンドを実行すると、Oracleバイナリからsetuidとsetgidの情報が消去されます。想定どおり、このコマンドによって、次のバイナリからsetuidも消去されます。

Grid_home/bin/extjob
Grid_home/bin/jssu
Grid_home/bin/oradism

setuid情報は、クローニング手順の最後にroot.shスクリプトを実行した後で適切に設定されます。

4. 処理を続行する前に、ソースおよび宛先の両方のノードのGrid_homeディレクトリからすべてのOracleネットワーク・ファイルを削除することも重要です。

関連項目:

クローニング時に生成されたログ・ファイルの検索および表示

手順3: 各宛先ノードでのclone.plスクリプトの実行

新しいOracle Clusterware環境を設定する場合、clone.plスクリプトではいくつかの設定値の指定が必要となります。変数の値を指定するには、clone.plスクリプトの実行時にコマンドライン上で入力値を指定するか、またはファイルを作成してそこでクローン変数に値を割り当てるかのいずれかの方法があります。次の説明では、これらの方法を示します。

注意:

clone.plを実行した後、スクリプトによりorainstRoot.shおよびroot.shを実行するプロンプトが表示されます。orainstRoot.shのみを実行し、「手順4: 構成ウィザードの起動」に進んでください。この構成ウィザードにより、root.shを実行するプロンプトが表示されます。

コマンドライン上でのclone.plスクリプトの入力値の指定

Oracle Grid Infrastructureホームが共有ホームでない場合は、各宛先ノードのGrid_home/clone/binディレクトリに移動して、clone.plスクリプトを実行します(これによって、Oracle Clusterwareの主要なクローニング・タスクが実行されます)。スクリプトを実行するには、複数のパラメータへの入力が必要です。表8-1で、clone.plスクリプトのパラメータについて説明します。

表8-1 clone.plスクリプトのパラメータ

パラメータ

説明

ORACLE_BASE=ORACLE_BASE

クローニング元のOracleベースの完全パス。無効なパスを指定すると、スクリプトは終了します。このパラメータは必須です。

ORACLE_HOME=GRID_HOME

クローニングするためのOracle Grid Infrastructureホームへの完全なパスです。無効なパスを指定すると、スクリプトは終了します。このパラメータは必須です。

[ORACLE_HOME_NAME=
Oracle_home_name |
-defaultHomeName]

クローニング元のホームのOracleホーム名。必要に応じて、-defaultHomeNameフラグを指定できます。このパラメータは必須です。

[ORACLE_HOME_USER=
Oracle_home_user_name]

WindowsでのOracleホーム・ユーザー。Oracle Databaseソフトウェアのクローニングを実行する際にこのパラメータを渡すことをお薦めします。このパラメータはオプションです。

INVENTORY_LOCATION=
location_of_inventory

Oracleインベントリの場所。

OSDBA_GROUP=
OSDBA_privileged_group

OSDBA権限が付与されたグループとして使用するオペレーティング・システム・グループを指定します。デフォルト値を必要としない場合、このパラメータはオプションです。

"CLUSTER_
NODES={node_
name,node_
name,...}"

この新しいクラスタに含まれるノードの短縮名のカンマ区切りリスト(空白なし)。

データベース・ホームをクローニングする場合にのみ次のことが適用されます。

- Oracle Flex Cluster構成のハブ・ノードでclone.plを実行する場合、このリストには、クラスタのすべてのハブ・ノードを含める必要があります。

- Oracle Flex Cluster構成のリーフ・ノードでclone.plを実行する場合、ローカル・ホスト名のみを指定する必要があります。

"LOCAL_NODE=node_name"

clone.plを実行するノードの短縮名。

CRS=TRUE

このパラメータは、Oracle Universal Installerインベントリでこのプロパティを設定するために必要です。

OSASM_GROUP=
OSASM_privileged_group

OSASM権限が付与されたグループとして使用するオペレーティング・システム・グループを指定します。デフォルト値を必要としない場合、このパラメータはオプションです。

OSOPER_GROUP=
OSOPER_privileged_group

OSOPER権限が付与されたグループとして使用するオペレーティング・システム・グループを指定します。デフォルト値を必要としない場合、このパラメータはオプションです。

-debug

デバッグ・モードでclone.plスクリプトを実行するにはこのオプションを指定します。

-help

このオプションは、clone.plスクリプトのヘルプを表示する場合に指定します。

たとえば、LinuxおよびUNIXシステムで次のように指定します。

$ perl clone.pl -silent ORACLE_BASE=/u01/app/oracle ORACLE_HOME=
/u01/app/12.1/grid ORACLE_HOME_NAME=OraHome1Grid
INVENTORY_LOCATION=/u01/app/oraInventory LOCAL_NODE=node1 CRS=TRUE

Windowsシステムの場合:

C:\>perl clone.pl ORACLE_BASE=D:\u01\app\grid ORACLE_HOME=D:\u01\app\grid\12.1
ORACLE_HOME_NAME=OraHome1Grid ORACLE_HOME_USER=Oracle_home_user_name
"LOCAL_NODE=node1" "CLUSTER_NODES={node1,node2}" CRS=TRUE

Windowsプラットフォームの場合は、他のすべてのノードで、追加の引数(PERFORM_PARTITION_TASKS=FALSE)を指定して同じコマンドを実行します。

次に例を示します。

C:\>perl clone.pl ORACLE_BASE=D:\u01\app\grid ORACLE_HOME=D:\u01\app\grid\12.1
ORACLE_HOME_NAME=OraHome1Grid ORACLE_HOME_USER=Oracle_home_user_name
"LOCAL_NODE=node1" "CLUSTER_NODES={node1,node2}" CRS=TRUE PERFORM_PARTITION_TASKS=FALSE

前述の例に示す様々なパラメータの詳細は、表8-1を参照してください。

Oracle Grid Infrastructureホームが共有ホームの場合は、この手順のコマンド例に-cfsオプションを追加し、クラスタ・ファイル・システムの完全なパス位置を指定します。

ファイル内でのclone.plスクリプトの入力値の指定

clone.plスクリプトは取得したパラメータの値に依存するため、括弧、一重引用符および二重引用符は正確に使用する必要があります。エラーの発生を回避するために、start.shスクリプトに類似したファイルを作成(例8-1を参照)して、そこでclone.plスクリプトに対する環境変数およびクローニング・パラメータを指定できます。

例8-1は、clone.plスクリプトをコールするstart.shというサンプル・スクリプトからの抜粋を示しており、例はcrsclusterというクラスタ用に構成されています。Oracle Clusterwareをインストールしたオペレーティング・システム・ユーザーとしてスクリプトを実行します。

注意:

Solarisシステムでは、hostnameの後の-sはありません。

start.shスクリプトでは、表8-2に示すように、いくつかの環境変数およびクローニング・パラメータが設定されます。表8-2に、環境変数E01、E02、E03、E04(例8-1では太字でしめされている)、およびC01およびC02を示します。

表8-2 clone.plスクリプトに渡される環境変数

記号

変数

説明

E01

ORACLE_BASE

Oracleベース・ディレクトリの場所。

E02

ORACLE_HOME

Oracle Grid Infrastructureホームの場所。このディレクトリの場所は存在している必要があり、Oracleオペレーティング・システム・グループのOINSTALLによって所有されている必要があります。

E03

ORACLE_HOME_NAME

Oracle Grid Infrastructureホームの名前。Oracleインベントリに格納されています。

E04

INVENTORY_LOCATION

Oracleインベントリの場所。このディレクトリの場所は存在している必要があり、最初にOracleオペレーティング・システム・グループのOINSTALLによって所有されている必要があります。

C01

CLUSTER_NODES

クラスタ内のノードの短縮名のカンマ区切りリスト。

C02

LOCAL_NODE

ローカル・ノードの短縮名。

例8-1 Oracle Clusterwareをクローニングするstart.shスクリプトの抜粋

#!/bin/sh
ORACLE_BASE=/u01/app/oracle
GRID_HOME=/u01/app/12.1/grid
THIS_NODE=`hostname -s`

E01=ORACLE_BASE=${ORACLE_BASE}
E02=ORACLE_HOME=${GRID_HOME}
E03=ORACLE_HOME_NAME=OraGridHome1
E04=INVENTORY_LOCATION=${ORACLE_BASE}/../oraInventory

#C00="-debug"

C01="CLUSTER_NODES={node1,node2}"
C02="LOCAL_NODE=$THIS_NODE"

perl ${GRID_HOME}/clone/bin/clone.pl -silent $E01 $E02 $E03 $E04 $C01 $C02 CRS=TRUE

手順4: 構成ウィザードの起動

構成ウィザードでは、crsconfig_paramsファイルを簡単に準備することができます。また、(rootcrs.plスクリプトをコールする)root.shスクリプトを実行するように求められ、Oracleバイナリの再リンクとクラスタ検証が実行されます。

次のように、構成ウィザードを起動します。

Linux/UNIXの場合:

$ Oracle_home/crs/config/config.sh

Windowsの場合:

C:\>Oracle_home\crs\config\config.bat

オプションで、次のようにレスポンス・ファイルを指定して、構成ウィザードを暗黙的に実行できます。

$ Oracle_home/crs/config/config.sh -silent -responseFile file_name

Windowsの場合:

C:\>Oracle_home\crs\config\config.bat -silent -responseFile file_name

関連項目:

レスポンス・ファイルの準備の詳細は、お使いのプラットフォームの『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

クローニングを使用したクラスタへのノードの追加

また、クローニングを使用してクラスタにノードを追加することもできます。図8-2では、クローニング手順の最終結果を示しており、ここでは、ノード1上のOracle Grid Infrastructureホームが同じクラスタ上のノード2にクローニングされ、クラスタ2が2ノード・クラスタとして作成されています。クラスタへ新しく追加されたノードは、同じOCRおよび投票ファイルを共有します。

図8-2 クラスタにノードを追加するためのクローニング

図8-2を例とし、次の手順では、クローニングを使用してクラスタへノードを追加する方法を説明します。この手順では、最初にノード1を作成するために使用したイメージ(クローン)をノード2にコピーします。

1. 「手順1: 新規クラスタ・ノードの準備」で説明されているように、ノード2を準備します。

2. 「手順2: 宛先ノードでのOracle Grid Infrastructureホームのデプロイ」で説明されているように、ノード2でOracle Grid Infrastructureホームをデプロイします。

tarユーティリティを使用してノード1でOracle Grid Infrastructureホームのアーカイブを作成し、それをノード2にコピーします。ノード1のOracle Grid Infrastructureホームの場所が$ORACLE_HOMEである場合は、これと同じディレクトリをノード2のコピー先として使用する必要があります。

3. ノード2のGrid_home/clone/binディレクトリに格納されているclone.plスクリプトを実行します。

関連項目:

clone.plスクリプトで使用されるパラメータの詳細は、表8-1を参照してください。

次の例は、LinuxまたはUNIXシステムの場合です。

$ perl clone.pl ORACLE_HOME=/u01/app/12.1/grid ORACLE_HOME_NAME=OraHome1Grid
ORACLE_BASE=/u01/app/oracle "'CLUSTER_NODES={node1, node2}'"
"'LOCAL_NODE=node2'" CRS=TRUE INVENTORY_LOCATION=/u01/app/oraInventory

root.shの実行を求めるプロンプトが表示されたら、そのプロンプトを無視して、次の手順に進みます。

次の例は、Windowsシステムの場合です。

C:\>perl clone.pl ORACLE_BASE=D:\u01\app\grid ORACLE_HOME=D:\u01\app\grid\12.1.0
ORACLE_HOME_NAME=OraHome1Grid '"CLUSTER_NODES={node1,node2}"'
'"LOCAL_NODE=node2"' CRS=TRUE

注意:

前述のコマンドでは、ノードをクローニングしてノードを追加するときに、ORACLE_HOME_NAMEが必要です。ノードのレジストリからクローニングしているノードの正確な値は、次のように取得できます。

HKEY_LOCAL_MACHINE\SOFTWARE\oracle\KEY_OraCRs12c_home1

ORACLE_HOME_NAMEパラメータ・キーを探して値を取得します。前述のコマンドのORACLE_HOME_NAMEパラメータの値が、クローニングするノードの値と一致しない場合、新しいノードを追加すると失敗します。

4. この手順はWindowsには適用されません。

ノード2の中央インベントリ・ディレクトリで、rootとしてorainstRoot.shスクリプトを実行します。このスクリプトは、/etc/oraInst.locディレクトリに中央インベントリの場所を移入します。次に例を示します。

[root@node2 root]# /opt/oracle/oraInventory/orainstRoot.sh

複数の宛先ノードで同時にスクリプトを実行することができます。

5. 次のように、ノード1のGrid_home/addnodeディレクトリに格納されているaddnode.sh(Windowsではaddnode.bat)スクリプトを実行します。

$ addnode.sh -silent -noCopy ORACLE_HOME=Grid_home "CLUSTER_NEW_NODES={node2}"
"CLUSTER_NEW_VIRTUAL_HOSTNAMES={node2-vip}" "CLUSTER_NEW_NODE_ROLES={HUB}"

注意:

- ノード2ではclone.plスクリプトをすでに実行してあるため、この手順では、ノードでインベントリを更新し、ローカル・ノードでスクリプトをインスタンス化するのみです。

- addnode.shスクリプトで-noCopyオプションを使用する場合、パスワード・ファイルのコピーはノード2に存在しない可能性があり、この場合、ノード2に正しいパスワード・ファイルをコピーする必要があります。

- addnode.shスクリプトは、cluvfy stage -pre nodeadd検証を実行します。

- 追加するノードがハブ・ノードかリーフ・ノードであるかをOracle Flex Clusterで示すには、CLUSTER_NEW_NODE_ROLESパラメータを使用します。

次のように、複数のノードを追加できます。

$ addnode.sh -silent -noCopy ORACLE_HOME=Grid_home "CLUSTER_NEW_NODES={node2,node3,node4}"
"CLUSTER_NEW_VIRTUAL_HOSTNAMES={node2-vip,node3-vip,}"
"CLUSTER_NEW_NODE_ROLES={HUB,HUB,LEAF}"

前述の構文例で、ノード4はリーフ・ノードとして指定されているため、VIPが含まれている必要はありません。

6. 次のファイルをaddnode.shを実行したノード1からノード2へコピーします。

Grid_home/crs/install/crsconfig_addparams
Grid_home/crs/install/crsconfig_params
Grid_home/gpnp

7. ノード2で、Grid_home/root.shスクリプトを実行します。

注意:

- root.shまたはgridconfig.batスクリプトを実行する前に、すべてのデータベース・ホームを展開したことを確認します。

- この例のクラスタのノードは2つのみです。クラスタに複数のノードを追加する場合、すべてのノードでroot.shを同時に実行することができます。

次の例はLinuxまたはUNIXシステム用の例です。ノード2で、次のコマンドを実行します。

[root@node2 root]# Grid_home/root.sh

root.shスクリプトは、Oracle Cluster Registry (OCR)に仮想IP (VIP)リソースを自動的に構成します。

Windowsでは、ノード2で次のコマンドを実行します。

C:\>Grid_home\crs\config\gridconfig.bat

8. ノード1で次のクラスタ検証ユーティリティ(CVU)・コマンドを実行します。

$ cluvfy stage -post nodeadd -n destination_node_name [-verbose]

関連項目:

このCVUコマンドの詳細は、「cluvfy stage [-pre | -post] nodeadd」を参照してください。

クローニング時に生成されたログ・ファイルの配置と表示

クローニング・スクリプトは、それぞれがログ・ファイルを生成できる複数のツールを実行します。clone.plスクリプトの実行が終了した後、これらのログ・ファイルを参照して、クローニング手順のステータスに関する詳細情報を入手することができます。表8-3では、クローニング時に生成される、診断に重要なログ・ファイルを示します。

注意:

表8-3のCentral_inventoryは、Oracle Inventoryディレクトリを表します。

表8-3 クローニングのログ・ファイルおよび説明

ログ・ファイルの名前および場所

説明

Central_inventory/logs/cloneActions/timestamp.log

クローニングのOUI部分で行われたアクションの詳細ログが含まれます。

Central_inventory/logs/oraInstall/timestamp.err

OUIの実行中に発生したエラーに関する情報が含まれます。

Central_inventory/logs/oraInstall/timestamp.out

その他の情報が含まれます。

表8-4は、様々なプラットフォーム用のOracle Inventoryディレクトリの場所を示しています。

表8-4 Oracleインベントリ・ディレクトリの位置の確認

システムのタイプ

Oracleインベントリ・ディレクトリの位置

LinuxおよびIBM AIXを除くすべてのUNIXコンピュータ

/var/opt/oracle/oraInst.loc

IBM AIXおよびLinux

/etc/oraInst.loc

Windows

C:\Program Files\Oracle\Inventory

9 Oracle Clusterwareを使用したアプリケーションの高可用性の実現

クラスタ内でアプリケーション、プロセスまたはサーバーに障害が発生した場合、その影響をユーザーにまったく気付かれないようにすることはできないまでも、できるかぎり短時間に抑える必要があります。たとえば、サーバーでアプリケーションに障害が発生した場合、そのアプリケーションをクラスタ内の別のサーバーで再起動して、そのアプリケーションの使用に対する影響を最小限にするか、またはなくしてしまうことができることを意味します。同様に、クラスタ内のサーバーで障害が発生した場合、そのサーバーで実行されているすべてのアプリケーションおよびプロセスを別のサーバーにフェイルオーバーして、ユーザーへのサービスの提供を継続できる必要があります。Oracle Clusterwareでは、組込みのgeneric_applicationリソース・タイプまたはカスタマイズ可能なスクリプトおよびアプリケーション・エージェント・プログラムと、アプリケーションとプロセスに割り当てられるリソース属性を使用することで、これらすべてのエンティティを管理し、高可用性を確保します。

この章では、Oracle Clusterwareを使用して、アプリケーションの起動、停止、監視、再起動および再配置を行う方法について説明します。Oracle Clusterwareは、Oracle Real Application Clusters(Oracle RAC)の基礎となるクラスタ・ソリューションです。Oracle RACデータベースを管理する場合と同じ機能および方針がアプリケーションの管理に適用されます。

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

- Oracle Clusterwareリソースおよびエージェント

- Oracle Clusterwareを使用した高可用性の実現の概要

- リソースとしてのアプリケーションの登録

- リソースの管理

- Oracle Clusterwareによるリソースの自動再起動の管理

Oracle Clusterwareリソースおよびエージェント

この項では、アプリケーションの高可用性を確保するために、Oracle Clusterwareでリソースの監視および管理に使用されるフレームワークについて説明します。

この項には次のトピックが含まれます:

- Oracle Clusterwareのリソース

- Oracle Clusterwareのリソース・タイプ

- Oracle Clusterwareのエージェント

- アクション・スクリプト

- エージェントの作成

- Oracle Clusterwareへのリソースの登録

Oracle Clusterwareのリソース

Oracle Clusterwareでは、アプリケーションおよびプロセスはOracle Clusterwareに登録するリソースとして管理されます。アプリケーションを管理するためにOracle Clusterwareに登録するリソースの数は、アプリケーションによって異なります。1つのプロセスでのみ構成されるアプリケーションは、ほとんどの場合、1つのリソースでのみ表されます。複数のプロセスまたはコンポーネント上に構築されたより複雑なアプリケーションでは、複数のリソースが必要な場合があります。

Oracle Clusterwareのリソースとしてアプリケーションを登録する場合は、リソースの特徴を示すリソース属性を使用してOracle Clusterwareでのアプリケーションの管理方法を定義します。リソース属性の例としては、リソースのチェック頻度、障害が発生してから別のサーバーで起動が試行される(フェイルオーバー)までの間に同じサーバーでリソースの再起動が試行される回数などがあります。また、登録情報には、アクション・スクリプトへのパス、またはアプリケーションの起動、停止、チェックおよびクリーンアップを実行するためにOracle Clusterwareによってコールされるアプリケーション固有のアクション・プログラムも含まれています。

アクション・スクリプトは、Oracle Clusterwareで提供されている汎用スクリプト・エージェントがコールするシェル・スクリプト(Windowsのバッチ・スクリプト)です。アプリケーション固有のエージェントは、ほとんどの場合、Oracle Clusterwareで提供されているAPIを直接コールするCまたはC++プログラムです。

関連項目:

アクション・スクリプトの例は、「Oracle Clusterwareのリソース・リファレンス」を参照してください

Oracle Clusterwareのリソース・タイプ

通常、すべてのリソースは一意ですが、共通属性を持つリソースもあります。Oracle Clusterwareでは、これらの類似リソースの編成にリソース・タイプが使用されます。リソース・タイプのメリットは次のとおりです。

- 必要なリソース属性のみの管理

- リソース・タイプに基づくすべてのリソースの管理

Oracle Clusterwareに登録するすべてのリソースには、特定のリソース・タイプが必要です。Oracle Clusterware制御(CRSCTL)ユーティリティを使用して、Oracle Clusterwareに含まれているリソース・タイプに加えて、カスタム・リソース・タイプを定義できます。含まれているリソース・タイプは次のとおりです。

- ローカル・リソース: ローカル・リソースのインスタンス(タイプ名はlocal_resource)は、クラスタの各サーバーで実行されるか(デフォルト)、または特定のサーバー・カテゴリに属しているサーバーで実行されるように制限できます。サーバーをクラスタに追加すると、Oracle Clusterwareではローカル・リソースが自動的に拡張され、インスタンスは新しいサーバーに関連付けられます。サーバーをクラスタから削除すると、Oracle Clusterwareでは、削除するサーバーで実行されていたローカル・リソースのインスタンスが自動的に削除されます。ローカル・リソースのインスタンスは、対応するサーバーに固定されており、あるサーバーから別のサーバーにフェイルオーバーされることはありません。

- クラスタ・リソース: タイプ名がcluster_resourceのクラスタ対応リソース・タイプで、クラスタ環境を認識し、カーディナリティおよびサーバー間のスイッチオーバーとフェイルオーバーの対象となります。

- 汎用的なアプリケーション: このリソース・タイプ(タイプ名はgeneric_application)を使用すると、スクリプトを追加しなくても汎用的なアプリケーションを保護できます。アプリケーションの高可用性は、リソースをgeneric_applicationリソース・タイプで定義し、リソースの重要な属性に価値を提供することで実現されます。generic_applicationリソース・タイプは、cluster_resourceリソース・タイプから取得されるため、generic_applicationリソース・タイプのすべてのリソースは、クラスタ対応のリソースです。属性は次のとおりです。

- START_PROGRAM: アプリケーションを起動する実行可能ファイルの完全なパスで、適切なすべての引数が含まれています。実行可能ファイルは、Oracle Grid Infrastructureを構成してアプリケーションを実行する各サーバーに存在する必要があります。この属性は必須です。次に例を示します。

/opt/my_app –start

また、実行可能ファイルは、アプリケーションが正常に起動してオンラインになっていることを示すために、アプリケーションが起動したらゼロ(0)の終了ステータス値を返すことを確認する必要もあります。実行可能ファイルがアプリケーションの起動に失敗した場合、実行可能ファイルは、ゼロ以外のステータス・コードで終了します。

- STOP_PROGRAM: アプリケーションを停止する実行可能ファイルの完全なパスで、適切なすべての引数が含まれています。実行可能ファイルは、Oracle Grid Infrastructureを構成してアプリケーションを実行する各サーバーに存在する必要があります。属性値を指定しない場合、Oracle Clusterwareは、オペレーティング・システムのkillに相当するコマンドを使用します。次に例を示します。

/opt/my_app –stop

また、実行可能ファイルは、アプリケーションが正常に停止したことを示すために、アプリケーションが停止したらゼロ(0)の終了ステータス値を戻すことを確認する必要もあります。実行可能ファイルがアプリケーションの停止に失敗した場合、実行可能ファイルは、ゼロ以外のステータス・コードで終了し、Oracle Clusterwareはリソースのクリーンアップを開始します。

- CLEAN_PROGRAM: アプリケーションをクリーンアップする実行可能ファイルの完全なパスで、適切なすべての引数が含まれています。実行可能ファイルは、Oracle Grid Infrastructureを構成してアプリケーションを実行する各サーバーに存在する必要があります。この属性に値を指定しない場合、Oracle Clusterwareは、オペレーティング・システムのkill -9に相当するコマンドを使用します。次に例を示します。

/opt/my_app –clean

注意:

STOP_PROGRAMおよびCLEAN_PROGRAMとの違いは、CLEAN_PROGRAMは、アプリケーションを不正に停止する強制停止で、アプリケーションをいつでも停止できる必要があり、停止できない場合はアプリケーションが管理不能になります。

- PID_FILES: アプリケーションによって記述される、ファイルへの完全なパスのカンマ区切りのリストで、監視するためのプロセスID(PID)を含みます。プロセスに1回でも障害が起きると、完全なリソース障害として取り扱われます。次に例を示します。

/opt/app.pid

注意:

PID_FILES属性で指定するファイルは、STARTアクションが完了し、ファイルにリストされているPIDの監視が開始された直後に読み込まれます。

- EXECUTABLE_NAMES: 実行可能ファイルの名前のカンマ区切りのリストで、これは、アプリケーションが起動し、その後実行可能ファイルの状態が監視されると作成されます。実行可能ファイルに1回でも障害が起きると、完全なリソース障害として取り扱われます。次に例を示します。

my_app

注意:

実行可能ファイルの完全な名前のみを指定する必要があります。この属性は実行可能ファイルまたはワイルド・カードのパスを受け入れません。STARTアクションが完了した後すぐに、実行可能ファイル名に一致するPIDがキャッシュされます。

- CHECK_PROGRAMS: 実行可能ファイルへの完全なパスのリストで、アプリケーションの状態を判断します。いずれのアプリケーションでも動作していない状態がレポートされると、リソース全体の障害として取り扱われます。次に例を示します。

/opt/my_app –check

- ENVIRONMENT_FILE: アプリケーションの起動時にソースへの環境変数を含んでいるファイルへの完全なパスです。ファイルは、1行に1つのname=valueのペアを含んでいるテキスト・ファイルである必要があります。次に例を示します。

/opt/my_app.env

- ENVIRONMENT_VARS: アプリケーションの起動時の環境に含まれるname=valueのペアのカンマ区切りのリストです。次に例を示します。

USE_FILES=No, AUTO_START=Yes

- SEND_OUTPUT_ALWAYS: この属性は、STDOUTに送られるアプリケーション出力を送り、表示する役割を果たします。値が0の場合、アクションが失敗しないかぎり、いずれのアプリケーション出力も表示されません。アクションが失敗すると、エージェントによって保存されたアプリケーション出力が表示されます。値が0より大きい場合、すべてのアプリケーション出力を表示します。デフォルト値は0 (ゼロ)です。次に例を示します。

SEND_OUTPUT_ALWAYS=1

注意:

STOP_PROGRAM、CHECK_PROGRAMSおよびCLEAN_PROGRAM属性を指定しない場合、PID_FILESまたはEXECUTABLE_NAMESのいずれかを指定する必要があり、これを行わない場合は、Oracle Clusterwareでこのタイプのリソースを登録することはできません。

すべての属性を指定する場合、次のルールが適用されます。

1. リソースを停止する場合、STOP_PROGRAMを指定すると、Oracle ClusterwareはSTOP_PROGRAMをコールします。それ以外の場合では、Oracle Clusterwareは、PID_FILESまたはEXECUTABLE_NAMES属性のいずれかから取得されたPIDでオペレーティング・システムのkill -9に相当するコマンドを使用します。

2. アプリケーションの現在の状態を確立する必要がある場合、CHECK_PROGRAMSを指定すると、Oracle ClusterwareはCHECK_PROGRAMSをコールします。それ以外の場合では、Oracle Clusterwareは、PID_FILESまたはEXECUTABLE_NAMES属性のいずれかから取得されたPIDでオペレーティング・システムのps -pに相当するコマンドを使用します。

3. リソースをクリーンアップする場合、CLEAN_PROGRAMを指定すると、Oracle ClusterwareはCLEAN_PROGRAMをコールします。それ以外の場合では、Oracle Clusterwareは、PID_FILESまたはEXECUTABLE_NAMES属性のいずれかから取得されたPIDでオペレーティング・システムのkill -9に相当するコマンドを使用します。

関連項目:

- CRSCTLを使用してリソースを追加する例の詳細は、「crsctl add resource」を参照してください

- リソースの状態の詳細は、「リソースの状態」を参照してください

- 「generic_applicationリソース・タイプを使用するリソースの作成」

Oracle Clusterwareのエージェント

アプリケーションがOracle Clusterwareにリソースとして登録されると、Oracle Clusterwareでそれらのアプリケーションが管理されます。Oracle Clusterwareでは、特定のリソースを起動、停止および監視できるアプリケーション固有のプリミティブにアクセスできます。Oracle Clusterwareでは、リソース固有のすべてのコマンドはエージェントと呼ばれるエンティティを介して実行されます。

エージェントは、リソースを管理するためのエージェント・フレームワークおよびユーザー・コードを含むプロセスです。エージェント・フレームワークは、アプリケーション固有のコードを組み込んで、カスタマイズされたアプリケーションを管理できるライブラリです。アプリケーションの起動、停止、状態のチェックなど、実際のアプリケーション管理機能のすべてをエージェントにプログラムします。これらの機能はエントリ・ポイントと呼ばれます。

Oracle Clusterwareにかわって、エージェント・フレームワークによりこれらのエントリ・ポイント機能が起動されます。エージェントの開発者は、これらのエントリ・ポイントを使用して、リソースの起動、停止および監視方法に関する、機能を特定のリソースに必要な機能を組み込むことができます。エージェントで複数のリソースを管理できます。

エージェントの開発者は、コードへのコールバックとして次のエントリ・ポイントを設定できます。

- ABORT: エージェント・フレームワークでは、他のエントリ・ポイントがハングした場合にABORTエントリ・ポイントがコールされ、進行中のアクションを停止します。エージェントの開発者によって停止機能が指定されていない場合、エージェント・フレームワークによってエージェント・プログラムが終了します。

- ACTION: ACTIONエントリ・ポイントは、カスタム・アクションがcrsctl request actionコマンドのclscrs_request_action APIを使用して起動されたときに起動されます。

- CHECK: CHECK (モニター)エントリ・ポイントは、リソースの状態をモニターします。エージェント・フレームワークでは、このエントリ・ポイントが定期的にコールされます。エージェント・フレームワークでは、このアクションで状態変更が検出されると、特定のリソースの状態における変更についてOracle Clusterwareに通知が行われます。

- CLEAN: CLEANエントリ・ポイントは、リソースのクリーンアップが必要な場合に機能します。ユーザーがリソースを強制終了する必要がある場合に起動される操作で、正常な場合の操作ではありません。このコマンドによってリソース固有の環境がクリーンアップされ、リソースを再起動できます。

- DELETE: DELETEエントリ・ポイントは、リソースが未登録のときにリソースを実行できるすべてのノードで起動されます。

- MODIFY: MODIFYエントリ・ポイントは、リソース・プロファイルが変更されているときにリソースを実行できるすべてのノードで起動されます。

- START: STARTエントリ・ポイントは、リソースをオンラインにします。エージェント・フレームワークでは、Oracle Clusterwareからstartコマンドを受信するたびにこのエントリ・ポイントがコールされます。

- STOP: STOPエントリ・ポイントは、リソースを正常に停止します。エージェント・フレームワークでは、Oracle Clusterwareからstopコマンドを受信するたびにこのエントリ・ポイントがコールされます。

START、STOP、CHECKおよびCLEANエントリ・ポイントは必須であり、エージェントの開発者はエージェントの作成時にこれらのエントリ・ポイントを指定する必要があります。エージェントの開発者には、C、C++、スクリプトの使用を含め、これらのエントリ・ポイントを実装するいくつかのオプションがあります。CまたはC++とスクリプト・タイプのエントリ・ポイントの両方を使用するエージェントを開発することもできます。エージェント・フレームワークの初期化時に、必須エントリ・ポイントのいずれかが指定されていない場合、エージェント・フレームワークではACTION_SCRIPTリソース属性が指すスクリプトが起動されます。

関連項目:

このリソース属性の詳細は、「ACTION_SCRIPT」を参照してください。

エージェント・フレームワークでは、各アプリケーションに対して常に1つのエントリ・ポイントのみが起動されます。エントリ・ポイントがハングした場合、エージェント・フレームワークによってABORTエントリ・ポイントがコールされ、現在の操作を終了します。エージェント・フレームワークによってCHECKエントリ・ポイントが定期的に起動され、リソースの状態が確認されます。このエントリ・ポイントによって、リソースの状態として次のいずれかが戻されます。

- CLSAGFW_ONLINE: リソースが正常に起動されて現在動作中の状態である場合には、CHECKエントリ・ポイントによってONLINEが戻されます。リソースがこの状態である場合、エージェント・フレームワークで引き続き監視されます。この状態では、scriptagentの数値は0です。

- CLSAGFW_UNPLANNED_OFFLINEおよびCLSAGFW_PLANNED_OFFLINE: OFFLINE状態は、リソースが現在実行されていないことを示します。これら2つの状態では、scriptagentの数値はそれぞれ1および2です。
plannedおよびunplannedの2つのカテゴリによってリソースのOFFLINE状態が示されます。

リソースの状態がOracle Clusterwareを介してOFFLINEに遷移すると、CHECKエントリ・ポイントから戻される値にかかわらず、このリソースはオフライン(TARGET=OFFLINE)になるように意図されているとみなされます。ただし、Oracle以外のインタフェースを使用してリソースが停止されたなど、Oracle Clusterwareに関係なくリソースの状態が変更されたことをエージェントで検出した場合、この意図はエージェントからクラスタ・レディ・サービス・デーモン(CRSD)に引き継がれる必要があります。この意図が次を決定する要因となります。

- リソースのTARGETリソース属性の値をそのままにしておくか、変更するか。PLANNED_OFFLINEは、リソースがそれまで実行されていた場合にのみTARGETリソース属性をOFFLINEに変更する必要があることを示します。リソースが実行されていなかった場合(STATE=OFFLINE、TARGET=OFFLINE)、リソースを起動するリクエストが着信すると、TARGETリソース属性の値はONLINEに変更されます。その後、エージェントにこの起動リクエストが送られ、エージェントはリソースの状態PLANNED_OFFLINEをOracle Clusterwareにレポートし、TARGETリソース属性の値はONLINEのままになります。TARGET属性はUNPLANNED_OFFLINEによって変更されません。

- リソースの状態をUNPLANNED_OFFLINEのままにしておくか、ローカルで再起動することによってリソースのリカバリを試行するか、クラスタ内の別のサーバーにフェイルオーバーするか。PLANNED_OFFLINE状態では、リソースはCRSDによってそのままにされますが、UNPLANNED_OFFLINE状態では、リソースのリカバリが求められます。

- CLSAGFW_UNKNOWN: リソースの現在の状態が判別できない場合は、CHECKエントリ・ポイントによってUNKNOWNが戻されます。この状態に対して、Oracle Clusterwareではフェイルオーバーまたはリソースの再起動は試行されません。リソースの以前の状態がONLINEまたはPARTIALのいずれかであった場合、エージェント・フレームワークでは引き続きリソースが監視されます。この状態では、scriptagentの数値は3です。

- CLSAGFW_PARTIAL: リソースが部分的にオンラインで、一部のサービスが使用可能であることが認識された場合は、CHECKエントリ・ポイントによってPARTIALが戻されます。Oracle Clusterwareでは、この状態は部分的にオンラインとみなされ、フェイルオーバーまたはリソースの再起動は試行されません。エージェント・フレームワークでは、この状態のリソースが引き続き監視されます。この状態では、scriptagentの数値は4です。

- CLSAGFW_FAILED: リソースが動作中の状態ではなく、一部のコンポーネントが失敗し、リソースを再起動するためにクリーンアップが必要であることが検出された場合は、CHECKエントリ・ポイントによってFAILEDが戻されます。この状態に対して、Oracle ClusterwareでCLEANアクションがコールされ、リソースがクリーンアップされます。CLEANアクションが終了したら、リソースの状態はOFFLINEになります。リソースのポリシーによっては、次に、Oracle Clusterwareでフェイルオーバーまたはリソースの再起動が試行される場合があります。エージェント・フレームワークで、障害が発生したリソースが監視されることはありません。この状態では、scriptagentの数値は5です。

エージェント・フレームワークでは、表9-1に示す状態のリソースが、CHECK_INTERVALリソース属性またはOFFLINE_CHECK_INTERVALリソース属性で指定される一定の間隔で暗黙的に監視されます。

関連項目:

これらのリソース属性の詳細は、「CHECK_INTERVAL」および「OFFLINE_CHECK_INTERVAL」を参照してください。

表9-1 エージェント・フレームワークの監視特性

状態

条件

頻度

ONLINE

常時

CHECK_INTERVAL

PARTIAL

常時

CHECK_INTERVAL

OFFLINE

OFFLINE_CHECK_INTERVALリソース属性の値が0より大きい場合のみ。

OFFLINE_CHECK_INTERVAL

UNKNOWN

監視されるのは、リソースが前述のいずれかの条件のために以前に監視されていた場合のみ。

ONLINEのときにのみ状態がUNKNOWNになる場合は、CHECK_INTERVALの値が使用されています。それ以外の場合は、監視されていません。

エージェントが起動されるたびに、エージェントが監視するすべてのリソースの状態はUNKNOWNに設定されます。エージェント・フレームワークでは、Oracle Clusterwareからの最初のプローブ・リクエストを受信すると、すべてのリソースに対してCHECKエントリ・ポイントが実行され、現在の状態が確認されます。

リソースのCHECKアクションが正常に完了すると、リソースの状態は前述の状態のいずれかに遷移します。次に、エージェント・フレームワークによって、Oracle Clusterwareから発行されるコマンドに基づいてリソースが起動されます。エージェント・フレームワークでは、すべてのアクションが完了するとCHECKアクションが起動され、リソースの現在の状態が確認されます。エージェント・フレームワークでは、リソースが表9-1に示す監視対象の状態のいずれかである場合、CHECKエントリ・ポイントが定期的に実行され、リソースの状態に変更がないかどうかが確認されます。

デフォルトでは、エージェント・フレームワークでオフラインのリソースは監視されません。ただし、OFFLINE_CHECK_INTERVAL属性の値が0より大きい場合、エージェント・フレームワークでオフラインのリソースが監視されます。

Oracle Clusterwareの組込みエージェント

Oracle Clusterwareでは、リソースの管理にエージェント・プログラム(エージェント)を使用しており、アプリケーションを保護する次の組込みエージェントが含まれています。

- appagent: このエージェントは(Windowsではappagent.exe)、generic_applicationリソース・タイプのリソースおよびapplicationリソース・タイプの以前のバージョンのOracle Clusterwareのリソースを自動的に保護します。

注意:

非推奨であるapplicationリソース・タイプは、以前のOracle Clusterware 11g リリース2 (11.2)リソースのサポートのみを目的として提供しているため使用しないことをお薦めします。

- scriptagent: このエージェント(Windowsではscriptagent.exe)は、シェル・スクリプトまたはバッチ・スクリプトを使用してアプリケーションを保護する場合に使用します。cluster_resourceとlocal_resourceの両方のリソース・タイプは、この・エージェントを使用するように構成されており、また、これらのタイプのリソースは、このエージェントを自動的に利用します。

また、任意の方法でリソースを管理するために独自のエージェントを作成することもできます。

関連項目:

リソース・タイプの詳細は「Oracle Clusterwareのリソース・タイプ」を、カスタム・エージェントの作成の詳細は「エージェントの作成」を参照してください。

アクション・スクリプト

アクション・スクリプトは、リソースを開始、停止、確認またはクリーンアップする1つ以上のアクションを定義します。エージェント・フレームワークは、C/C++アクションなしに、これらのアクションを起動します。アクション・スクリプトを使用すると、C/C++エントリ・ポイントおよびスクリプト・エントリ・ポイントを含むエージェントを作成できます。すべてのアクションがアクション・スクリプトに定義されている場合、スクリプト・エージェントを使用して、アクション・スクリプトに定義されているアクションを起動できます。

アクション・スクリプトに定義されているアクションを起動する前に、エージェント・フレームワークは、必要なすべての属性をリソース・プロファイルから環境にエクスポートします。アクション・スクリプトは、stdout/stderrにメッセージを記録でき、エージェント・フレームワークは、エージェント・ログにこれらのメッセージを出力します。ただし、アクション・スクリプトは、stdout/stderrに出力されるメッセージに次のいずれかのタグを接頭辞として追加することで、特別なタグを使用して、進捗、警告またはエラーのメッセージをcrs*クライアント・ツールに送信できます。

CRS_WARNING:
CRS_ERROR:
CRS_PROGRESS:

エージェント・フレームワークは、最終メッセージをcrs*クライアントに送信するときに、接頭辞として追加されたタグを削除します。

リソース属性は、接頭辞_CRS_を持つ環境変数としてアクション・スクリプト内からアクセス可能です。たとえば、START_TIMEOUT属性は、_CRS_START_TIMEOUTという環境変数になります。

関連項目:

- -envオプションを1つのstartアクションまたはstopオプションの属性値を上書きする方法として使用する場合の詳細は、それぞれ「crsctl start resource」および「crsctl stop resource」を参照してください。

- エージェントのアクション・スクリプトの例は、例B-3を参照してください。

エージェントの作成

特定のアプリケーションのエージェント作成では、次の手順が実行されます。

1. スクリプト、CまたはC++のいずれかでエージェント・フレームワークのエントリ・ポイントを実装します。

2. エージェントの実行可能ファイルを作成します(CエージェントおよびC++エージェントの場合)。

3. エントリ・ポイントで必要なすべてのパラメータを収集し、新しいリソース・タイプを定義します。AGENT_FILENAME属性を、新しく作成した実行可能ファイルの絶対パスに設定します。

CおよびC++エージェントの作成およびデプロイ

Oracle Clusterwareには、アプリケーションに高可用性エージェントを実装するエージェント・フレームワークを使用したCおよびC++エージェントの例が含まれています。付録Fは、demoagent1.cppというエージェントの例を説明しています。このエージェントは、ディスク上のファイルを表す単純なリソースを管理し、次のタスクを実行します。

- 起動時: ファイルを作成します

- 停止時: ファイルを正常に削除します

- チェック時: ファイルが存在するかどうかをチェックします

- クリーンアップ時: ファイルを強制的に削除します

Oracle Clusterwareに対するこの特定のリソースを記述するには、このリソース・クラスのすべての特徴的な属性を含むリソース・タイプを最初に作成する必要があります。この場合、記述する必要のある属性は、管理するファイルの名前のみです。次の手順は、リソースおよびそのエージェントを設定して、リソースの機能をテストする方法を示しています。

1. 提供されるdemoagent1.cppソース・ファイルおよびmakefileを使用してC++エージェントをコンパイルします。ローカルのコンパイラ、リンカーのパスおよびインストール場所に基づいたmakefileを変更します。出力は、demoagent1という実行可能ファイルです。この例は、実行可能ファイルが、クラスタの各ノードの/path/to/というディレクトリにあることを想定しています。

2. CRSCTLを使用して、次のように新しいリソース・タイプを追加します。

crsctl add type hotfile_type -basetype cluster_resource -attr
"ATTRIBUTE=PATH_NAME,TYPE=string,DEFAULT_VALUE=default.txt,
ATTRIBUTE=AGENT_FILENAME,TYPE=string,DEFAULT_VALUE=/path/to/demoagent1"

前述のコマンドの例では、PATH_NAMEがこのタイプの各ノードのディレクトリ・パスです。PATH_NAMEの値をディスク上の適切なディレクトリ場所に変更します。

AGENT_FILENAME属性は、このリソース・タイプのリソース管理コマンドを実装するエージェント・バイナリの場所を指定します。この手順により、Oracle Clusterwareに新しいリソース・タイプが追加されます。

3. 上記手順で定義されているタイプに基づいて、次のように新しいリソースを作成します。

$ crsctl add res file1 -type hotfile_type -attr "PATH_NAME=/var/log/file1.txt"
$ crsctl add res file2 -type hotfile_type -attr "PATH_NAME=/var/log/file2.txt"

前述のコマンドにより、Oracle Clusterwareが管理および監視するfile1およびfile2というリソースが追加されます。

4. CRSCTLを使用して、次のようにリソースを起動および停止します。

$ crsctl start res file1
$ crsctl start res file2
$ crsctl relocate res file1
$ crsctl stop res file2

リソースが起動および停止されると、Oracle Clusterwareはディスク・ファイルを作成および削除します。

関連項目:

エージェント・フレームワーク、エージェント・フレームワークAPIリファレンスおよびエージェントの例の詳細は、「Oracle Clusterware C Application Program Interfaceエージェント・フレームワーク」を参照してください。

Oracle Clusterwareへのリソースの登録

crsctl add resourceコマンドを使用して、Oracle Clusterware 12cにリソースを登録します。

注意:

CRS_REGISTERおよびCRS_PROFILEコマンドは、Oracle Clusterwareホームでも引き続き使用可能ですが、このリリースでは非推奨です。

アプリケーションをリソースとして登録するには、次の手順を実行します。

$ crsctl add resource resource_name -type resource_type [-file file_path] | [-attr "attribute_name='attribute_value', attribute_name='attribute_value', ..."]

リソースの作成対象のアプリケーションに基づいて、そのリソースの名前を選択します。たとえば、Apache Webサーバーのリソースを作成する場合は、このリソースの名前をmyApacheとします。

リソース・タイプの名前は-typeオプションの後に指定します。リソース属性は、-fileオプションで指定されたテキスト・ファイル、または-attrオプションの後の二重引用符("")で囲まれたリソース属性/値ペアのカンマ区切りのリストで指定できます。空白文字またはカンマで区切られた属性名およびカッコで囲まれた値は一重引用符('')で囲む必要があります。

属性ファイルの例を次に示します。

PLACEMENT=favored
HOSTING_MEMBERS=node1 node2 node3
RESTART_ATTEMPTS@CARDINALITYID(1)=0
RESTART_ATTEMPTS@CARDINALITYID(2)=0
FAILURE_THRESHOLD@CARDINALITYID(1)=2
FAILURE_THRESHOLD@CARDINALITYID(2)=4
FAILURE_INTERVAL@CARDINALITYID(1)=300
FAILURE_INTERVAL@CARDINALITYID(2)=500
CHECK_INTERVAL=2
CARDINALITY=2

-attrオプションの使用例を次に示します。

$ crsctl add resource resource_name -type resource_type [-attr "PLACEMENT='favored', HOSTING_MEMBERS='node1 node2 node3', ..."]

関連項目:

- crsctl add resourceコマンドを使用した例は、「ユーザー定義のリソースの追加」を参照してください

- crsctl add resourceコマンドの使用例および詳細は、「crsctl add resource」を参照してください。

- リソース属性の詳細は、「リソース属性」を参照してください

Oracle Clusterwareを使用した高可用性の実現の概要

Oracle Clusterwareでは、可用性が向上するリソースの構成方法に基づいてリソースが管理されます。Oracle Clusterwareで次の操作が実行されるようにリソースを構成できます。

- クラスタまたはノードの起動時のリソースの起動

- 障害が発生した場合のリソースの再起動

- 各サーバーへのリソースの再配置(他のサーバーを使用できる場合)

Oracle Clusterwareを使用してアプリケーションを管理するには、次の手順を実行します。

1. generic_applicationリソース・タイプを使用するか、スクリプト・エージェントにカスタム・スクリプトを記述するか、新しいエージェントを作成します。

2. アプリケーションをOracle Clusterwareにリソースとして登録します。
単一のアプリケーションで複数のリソースを登録する必要がある場合、リソース間の関連する依存性の定義が必要な場合があります。

3. 適切な権限をリソースに割り当てます。

4. リソースを起動または停止します。

リソースで障害が発生すると、Oracle Clusterwareは、アプリケーションまたはプロセスをリソースとして登録したときに指定した属性値に基づいて、リソースの再起動を試行します。クラスタ内のサーバーで障害が発生した場合、障害が発生したサーバーで実行されるように指定されていたプロセスが別のサーバーで再起動されるようにリソースを構成できます。Oracle Clusterwareでは、様々なリソース属性に基づいて様々な構成可能な例がサポートされています。

リソースをOracle Clusterwareに登録すると、アプリケーション関連の情報およびリソース関連の情報がOracle Cluster Registry(OCR)に格納されます。次のような情報があります。

- アクション・スクリプトまたはアプリケーション固有のエージェントへのパス: これは、Oracle Clusterwareによってアプリケーションで実行されるstartアクション、stopアクション、checkアクションおよびcleanアクションを定義するスクリプトまたはアプリケーション固有のエージェントへの絶対パスです。

関連項目:

これらのアクションの詳細は、「Oracle Clusterwareのエージェント」を参照してください。

- 権限: Oracle Clusterwareには、高可用性操作のために、アプリケーションのすべてのコンポーネントの制御に必要な権限(他のユーザーIDでプロセスを起動する権限を含む)があります。Oracle Clusterwareは、権限を持つユーザーとして実行し、正しい起動および停止プロセスでアプリケーションを制御する必要があります。

- リソース依存性: 操作の順序を示したり、クラスタ内のサーバーのリソース配置に影響するリソース間の関係を作成することができます。たとえば、他のリソースが実行されている場合、Oracle Clusterwareは別のリソースに対するhard起動依存性が定義されているリソースのみを起動できます。Oracle Clusterwareでは、停止対象のリソースに依存する他のリソースが実行されている場合、そのリソースは停止されません。ただし、crsctl stop resource -fコマンドを使用して、停止対象のリソースに依存するすべてのリソースを最初に停止し、そのリソースを強制終了することができます。

この項には次のトピックが含まれます:

- リソース属性

- リソースの状態

- リソース依存性

- リソースの配置

リソース属性

リソース属性は、Oracle Clusterwareで特定のリソース・タイプのリソースを管理する方法を定義します。各リソース・タイプには一意の属性セットがあります。一部のリソース属性はリソースの登録時に指定されますが、その他のリソース属性はOracle Clusterwareによって内部的に管理されます。

注意:

新しいリソース属性を定義できる場合でも、使用できる文字はUS-7 ASCIIのみです。

関連項目:

リソース属性の詳細は、「Oracle Clusterwareのリソース・リファレンス」を参照してください。

リソースの状態

クラスタ内のすべてのリソースは、いつでも特定の状態になっています。その状態は、特定のアクションまたはイベントによって変更される可能性があります。

表9-2に、予想されるリソースの状態を示します。

表9-2 予想されるリソースの状態

状態

説明

ONLINE

リソースは実行されています。

OFFLINE

リソースは実行されていません。

UNKNOWN

リソースの停止の試行に失敗しました。Oracle Clusterwareでは、この状態のリソースはアクティブに監視されません。アプリケーション固有のアクション(プロセスの停止など)を実行してリソースをオフラインにし、crsctl stop resourceコマンドを実行してリソースの状態をOFFLINEに再設定する必要があります。

INTERMEDIATE

次の2つのイベントのいずれかにより、リソースがINTERMEDIATE状態になる場合があります。

1. Oracle Clusterwareでリソースの状態を判別できませんが、リソースはオンラインになろうとしていたか、または最後に正確に認識されたときのリソースの状態はオンラインでした。通常、checkアクションを阻止する条件が適用されなくなるため、リソースは時間の経過とともにこの状態から遷移します。

2. リソースが部分的にオンラインになっています。たとえば、Oracle Database VIPリソースのホーム・サーバーがクラスタから削除された場合、Oracle Database VIPリソースは別のサーバーにフェイルオーバーされます。ただし、このVIPがホーム・サーバー以外のサーバーに存在する間、アプリケーションはこのVIPを使用してデータベースにアクセスすることはできません。同様に、Oracle Databaseインスタンスが起動されていても、オープンされていない場合も、リソースは部分的にオンラインになり、このリソースは実行されていますが、サービスを提供することはできません。

Oracle Clusterwareでは、INTERMEDIATE状態のリソースはアクティブに監視され、通常、ユーザーの介入は必要ありません。前述の理由1のためリソースがINTERMEDIATE状態になっている場合、Oracle Clusterwareは、リソースの状態が確立されるとすぐにリソースをINTERMEDIATE状態から遷移させます。

前述の理由2のためリソースがINTERMEDIATE状態になっている場合、リソースは、部分的にオンラインであるかぎり、この状態のままになります。たとえば、VIPのホーム・サーバーは、VIPがスイッチオーバーできるようにクラスタに再度参加する必要があります。データベース管理者は、データベース・インスタンスをオープンするコマンドを発行する必要があります。

ただし、いずれの場合も、Oracle Clusterwareでは、リソースは適切になるとすぐにINTERMEDIATE状態から自動的に遷移します。STATE_DETAILSリソース属性を使用して、リソースがINTERMEDIATE状態である理由を説明し、リソースをこの状態から遷移させるための解決策を提供します。

リソース依存性

リソースは他のリソースに依存するように構成でき、これによって、依存先リソースの特定の条件が満たされる場合にのみ、依存リソースを起動または停止できます。たとえば、Oracle Clusterwareでリソースを起動しようとする場合、初期リソースが依存するリソースは実行中で、同じ場所に存在する必要があります。Oracle Clusterwareでリソースをオンラインにすることができない場合は、初期(依存)リソースをオンラインにすることもできません。Oracle Clusterwareによってリソースが停止された場合またはリソースで障害が発生した場合は、依存リソースも停止されます。

一部のリソースでは、他のリソースより起動に必要な時間が長くなります。一部のリソースはサーバーが起動されるたびに起動する必要がありますが、その他のリソースは手動のstartアクションが必要です。これらのリソース固有の動作の例および他の多くの例は、各リソースを予測される動作および他のリソースとの関連から説明する必要があることを示しています。

リソースがOracleリソースに依存するように構成できます。ただし、リソースを作成する際、リソース名に接頭辞oraを使用しないでください。この接頭辞は、Oracleでのみ使用するために予約されています。

以前のバージョンのOracle Clusterwareには、REQUIRED_RESOURCESリソース属性およびOPTIONAL_RESOURCESリソース属性という2つの依存性仕様のみが含まれていました。REQUIRED_RESOURCESリソース属性は、リソースの起動依存性および停止依存性の両方に適用されます。

注意:

REQUIRED_RESOURCESおよびOPTIONAL_RESOURCESリソース属性はapplicationタイプのリソースの場合のみ引き続き使用可能です。これらを使用してOracle Clusterware 12cのリソース依存性を定義することは非推奨です。

リソース依存性は、起動および停止カテゴリに分類されます。この分割によって、リソースとリソース・タイプ間の起動依存性および停止依存性が向上され、拡張されます。

この項には次のトピックが含まれます:

- 起動依存性

- 停止依存性

起動依存性

Oracle Clusterwareでは、リソースの起動試行の評価が開始されると、そのリソースのプロファイルに含まれる起動依存性が考慮されます。START_DEPENDENCIESリソース属性を使用して、リソースの起動依存性を指定します。各依存性で修飾子を使用して、依存性をさらに詳細に構成できます。

関連項目:

リソース属性、修飾子および使用方法の詳細は、「START_DEPENDENCIES」を参照してください。

この項では、次の起動依存性について説明します。

- attraction

- dispersion

- exclusion

- hard

- pullup

- weak

attraction

リソースBに対するattraction依存性がリソースAに定義されている場合、Oracle ClusterwareはリソースBをホスティングしているサーバーにリソースAを配置します。この場合のリソースAのような依存リソースは、依存リソースでattraction依存性が定義されている依存先リソースが実行されているサーバーで実行される傾向があります。Oracle Clusterwareは、依存リソースが誘引されるリソースのサーバーに依存リソースを配置します。

次の制約を使用して、attraction起動依存性を構成できます。

- START_DEPENDENCIES=attraction(intermediate:resourceB)
intermediate修飾子を使用すると、INTERMEDIATE状態になっているリソースにリソースが誘引されるかどうかを指定できます。

- START_DEPENDENCIES=attraction(type:resourceB.type)
type修飾子を使用すると、特定のリソース・タイプに対して依存性を有効にするかどうかを指定できます。依存リソースは特定のタイプのリソースを最も多くホスティングしているサーバーに誘引されます。

注意:

以前のバージョンのOracle Clusterwareでは、現在非推奨のOPTIONAL_RESOURCES属性を使用してattraction依存性が表現されています。

dispersion

リソースにdispersion起動依存性を指定すると、Oracle Clusterwareは、このリソースでdispersionが定義されているリソースが最も少ないサーバーでこのリソースを起動します。dispersionを使用するリソースでも、リソースを分散する十分なサーバーがない場合、同じサーバーで実行されることがあります。

次の修飾子を使用して、dispersion起動依存性を構成できます。

- START_DEPENDENCIES=dispersion(intermediate:resourceB)
intermediate修飾子を使用すると、リソースBがONLINE状態またはINTERMEDIATE状態のいずれであっても、Oracle ClusterwareによってリソースAが分散されるように指定できます。

- START_DEPENDENCIES=dispersion:active(resourceB)
通常、dispersionはリソースの起動時にのみ適用されます。リソースの起動時に十分なサーバーがないために、相互に分散するリソースが同じサーバーで起動される場合、サーバーがクラスタに追加されてもリソースが実行されていれば、Oracle Clusterwareはそのリソースを変更しません。active修飾子を指定する場合、Oracle Clusterwareは、新しいサーバーがクラスタに追加されると、リソースに対してdispersionを再適用します。

- START_DEPENDENCIES=dispersion(pool:resourceB)
Oracle Clusterwareがリソースを別のサーバーではなく別のサーバー・プールに分散させるように指定するにはpool修飾子を使用します。

exclusion

exclusion起動依存性には、起動中にリソース間の排他的関係を定義する句が含まれています。exclusion起動依存性が定義されているリソースは、同一のノード上で実行できません。たとえば、リソースBに対するexclusion起動依存性がリソースAに定義されている場合、CRSDポリシーは、リソースAを起動する必要があるサーバー上でリソースBが既に実行されていると、次のオプションを提供します。

- リソースBが既に実行されている場合、リソースAの起動を拒否します。

- リソースBに割り込んでリソースAを起動します。割込み操作には2種類あります。

- リソースBが停止され、可能であれば、別のノードで再起動されます。続いてリソースAが起動されます。

- リソースAが最初に起動されます。続いてリソースBが停止され、可能であれば、別のノードで再起動されます。

次の修飾子を使用して、exclusion起動依存性を構成できます。

- START_DEPENDENCIES=exclusion([[preempt_pre: | preempt_post:]] target_resource_name | type:target_resource_type]*)
指定されているすべての修飾子は、リソースまたはリソース・タイプに基づきます。Oracle Clusterwareは、リソース依存性ツリーに基づいて、1つのexclusion依存性のみを許可します。preempt修飾子がない場合、CRSDは、そのターゲット・リソースがオフラインのときにのみ起動しようとします。

- preempt_pre: この割込み修飾子を選択すると、CRSDは、指定したターゲット・リソースまたは特定のリソース・タイプが定義するリソースを起動してから、ソースのリソースを起動します。停止されたリソースの再起動が可能な場合、CRSDは、割込みリソースを起動するのと同時にこれを実行できます。

- preempt_post: この割込み修飾子を選択すると、CRSDはソースのリソースを起動した後に停止し、可能であれば、指定のターゲットのリソースまたは特定のリソース・ライプが定義するリソースを再配置します。

CRSDがターゲットのリソースを停止できない場合、またはソースのリソースを起動できない場合、すべての操作が失敗します。次にOracle Clusterwareは、可能であれば、問題のあるリソースを元の状態に戻そうとします。

hard

依存リソースを起動する前に別のリソースが実行されている必要がある場合は、そのリソースにhard起動依存性を定義します。たとえば、リソースBに対するhard起動依存性がリソースAに定義されている場合は、リソースAを起動する前にリソースBが実行されている必要があります。

注意:

hard起動依存性を持つリソースにはpullup起動依存性も定義することをお薦めします。

次の制約を使用して、hard起動依存性を構成できます。

- START_DEPENDENCIES=hard(global:resourceB)
デフォルトでは、リソースAおよびBを同じサーバーに配置する必要があります。global修飾子を使用してリソースを同じ場所に配置する必要がないように指定します。たとえば、リソースBに対するhard(global:resourceB)起動依存性がリソースAに定義されている場合は、リソースBがクラスタ内のノードで実行されていると、リソースAを起動できます。

- START_DEPENDENCIES=hard(intermediate:resourceB)
intermediate修飾子を使用すると、依存先リソースの状態がONLINEまたはINTERMEDIATEのいずれかの場合に依存リソースを起動できるように指定できます。

- START_DEPENDENCIES=hard(type:resourceB.type)
type修飾子を使用すると、hard起動依存性を特定のリソースに対して有効にするか、リソース・タイプに対して有効にするかを指定できます。たとえば、resourceB.typeタイプに対するhard起動依存性がリソースAに定義されている場合は、resourceB.typeタイプのリソースが実行されているとリソースAを起動できます。

- START_DEPENDENCIES=hard(uniform:resourceB)
uniform修飾子を使用して、リソースBのすべてのインスタンスの起動を試行しますが、最低1つのインスタンスが起動されて依存性を満たす必要があります。

- START_DEPENDENCIES=hard(resourceB, intermediate:resourceC, intermediate:global:type:resourceC.type)
修飾子を組み合せて、START_DEPENDENCIESリソース属性に複数のリソースを指定できます。

注意:

修飾子句は、カンマで区切ります。type修飾子句は必ずリストの最後の修飾子句である必要があり、type修飾子を必ずタイプの直前に指定する必要があります。

pullup

リソースBが起動するたびにリソースAを自動的に起動するには、pullup起動依存性を使用します。この依存性は、リソースAが実行されていない場合にのみリソースAに影響します。他の依存性の場合と同様に、pullupによって、依存リソースがすべてのサーバーで起動することがあります。リソースAがリソースBに依存し、リソースBが失敗した後リカバリした場合に、リソースAが再起動されるように、hard停止依存性がある場合は必ずpullup依存性を使用します。

注意:

hard起動依存性を持つリソースにはpullup起動依存性も定義することをお薦めします。

次の制約を使用して、pullup起動依存性を構成できます。

- START_DEPENDENCIES=pullup(intermediate:resourceB)
intermediate修飾子を使用すると、リソースBがONLINE状態またはINTERMEDIATE状態のいずれかの場合にリソースAを起動できるように指定できます。

複数のリソースに対するpullup依存性がリソースAに定義されている場合、リソースAが依存するすべてのリソースが起動されたときにのみリソースAが起動されます。

- START_DEPENDENCIES=pullup:always(resourceB)
always修飾子を使用して、リソースAが依存するリソースのTARGET属性の値がONLINE またはOFFLINE のいずれであっても、Oracle ClusterwareでリソースAを起動するかどうかを指定できます。デフォルトでは、always修飾子を使用せず、依存先リソースのTARGET属性の値がONLINEの場合にのみpullupによってリソースが起動されます。

- START_DEPENDENCIES=pullup(type:resourceB.type)
type修飾子を使用すると、特定のリソース・タイプに対して依存性を有効にするように指定できます。

weak

リソースBに対するweak起動依存性がリソースAに定義されており、リソースBが実行されていない場合は、リソースAの起動を試行すると、リソースBの起動が試行されます。ただし、リソースBの起動の試行結果は、リソースAの起動結果に影響しません。

次の制約を使用して、weak起動依存性を構成できます。

- START_DEPENDENCIES=weak(global:resourceB)
デフォルトでは、リソースAおよびBは同じ場所に配置する必要があります。global修飾子を使用してリソースを同じ場所に配置する必要がないように指定します。たとえば、リソースBに対するweak(global:resourceB)起動依存性がリソースAに定義されている場合は、リソースBがクラスタ内のノードで実行されていると、リソースAを起動できます。

- START_DEPENDENCIES=weak(concurrent:resourceB)
concurrent修飾子を使用すると、リソースBが先に起動するのを待機するのではなく、リソースAおよびリソースBが同時に起動できるように指定できます。

- START_DEPENDENCIES=weak(type:resourceB.type)
type修飾子を使用すると、resourceB.typeなど、特定のリソース・タイプのリソースに対して依存性を有効にすることを指定できます。

- START_DEPENDENCIES=weak(uniform:resourceB)
uniform修飾子を使用して、リソースBのすべてのインスタンスの起動を試行します。

停止依存性

Oracle Clusterwareでは、リソースが停止される(リソースの状態がONLINEから他の状態に変更される)たびに、リソース間の停止依存性が考慮されます。

hard

リソースBに対するhard停止依存性がリソースAに定義されている場合は、リソースBの実行が停止されるときにリソースAも停止される必要があります。2つのリソースは、構成方法に応じて、起動または別のサーバーへの再配置を試行する場合があります。hard停止依存性を持つリソースにはhard起動依存性も定義することをお薦めします。

次の修飾子を使用して、hard停止依存性を構成できます。

- STOP_DEPENDENCIES=hard(intermedite:resourceB)
intermediate修飾子を使用すると、リソースAをオンラインのままにするために、リソースBをONLINEまたはINTERMEDIATE状態のいずれかにする必要があるかどうかを指定できます。

- STOP_DEPENDENCIES=hard(global:resourceB)
global修飾子を使用すると、リソースAをオンラインのままにするために、リソースBが同じサーバーまたはクラスタ内の任意のサーバーに存在する必要があるかどうかを指定できます。この制約が指定されていない場合、リソースAおよびBは同じサーバーで実行されている必要があります。この条件が満たされなくなると、リソースAはOracle Clusterwareによって停止されます。

- STOP_DEPENDENCIES=hard(shutdown:resourceB)
crsctl stop crsコマンドまたはcrsctl stop clusterコマンドのどちらかを使用してOracle Clusterwareスタックを停止する場合にのみshutdown修飾子を使用してリソースを停止します。

関連項目:

修飾子の詳細は、「STOP_DEPENDENCIES」を参照してください。

リソース状態のリカバリに対するリソース依存性の影響

リソースの実行を続行する計画である場合に、リソースが実行されている状態から実行されていない状態に遷移する場合、この遷移はリソース障害と呼ばれます。この時点で、Oracle Clusterwareでは、リソース状態のリカバリ手順(リソースの高可用性ポリシーおよびその時点のエンティティの状態に応じて、リソースのローカルでの再起動、別のサーバーへの再配置または依存リソースの停止が試行される)が適用されます。

複数のリソースが相互に依存している場合、そのいずれかの障害が原因で他のリソースにも障害が発生することがあります。ほとんどの場合、障害が検出される順序を制御または予測することは困難です。たとえば、リソースAがリソースBに依存する場合でも、Oracle Clusterwareでは、リソースBの障害がリソースAの障害よりも後で検出されることがあります。

このように、障害の順序が予測可能でない場合、Oracle Clusterwareでは依存リソースの再起動がパラレルで試行される可能性があり、これによって、依存先リソースが不適切な順序で再起動されるため、最終的に一部のリソースの再起動に失敗します。

この場合、hard停止依存性およびpullup依存性のいずれかまたはその両方が使用されていると、Oracle Clusterwareでは依存リソースのローカルでの再起動が再試行されます。たとえば、リソースAにリソースBに対するhard停止依存性またはpullup依存性のいずれかあるいはその両方が定義されている場合、リソースBで障害が発生したためにリソースAでも障害が発生すると、Oracle Clusterwareではその両方のリソースの再起動が同時に試行される可能性があります。リソースAの再起動の試行に失敗した場合、Oracle Clusterwareでは、リソースBが正常に再起動されるとすぐにリソースAの再起動が試行されます。

リソースの配置

起動試行の評価の一部としてOracle Clusterwareで最初に決定される必要があるのは、リソースを起動(または配置)する場所です。コール元がターゲットのサーバーを名前で指定する場合、これは容易に決定されます。ただし、ターゲットのサーバーが指定されない場合、Oracle Clusterwareでは、リソースの構成およびクラスタの現在の状態で配置に最適なサーバーの検索が試行されます。

Oracle Clusterwareでは、最初にリソースの配置ポリシーが考慮され、ポリシーに適合しないサーバーは除外されます。Oracle Clusterwareでは、リソースのPLACEMENTリソース属性の値に応じた特定の順序で残りのサーバーがソートされます。

関連項目:

PLACEMENTリソース属性の詳細は、「アプリケーションの配置ポリシー」を参照してください。

これが考慮された結果、Oracle Clusterwareによってリソースを起動できる候補サーバーのリストが最大2つ作成されます。一方のリストには優先サーバーが含まれ、もう一方のリストには配置可能なサーバーが含まれます。リソースのPLACEMENTリソース属性の値がbalancedまたはrestrictedに設定されている場合、優先サーバーのリストは空になります。リソースの配置ポリシーによって、リソースを実行するサーバーが決定します。Oracle Clusterwareでは、優先リストにサーバーが示される場合、配置可能なサーバーよりも優先サーバーが考慮されます。

次に、リソースの依存性がある場合は、Oracle Clusterwareで考慮されてリソースの配置場所が判断されます。attraction起動依存性およびdispersion起動依存性は、一部の依存性修飾子と同様にリソースの配置決定に影響を及ぼします。Oracle Clusterwareによってこれらの配置ヒントが適用され、前述の2つのリストでサーバーがさらに順序付けられます。Oracle Clusterwareでは、リソースの配置ポリシーの影響と依存性の影響とを区別するために、サーバーの各リストが別々に処理されることに注意してください。

最後に、Oracle Clusterwareでは、優先サーバーがリストされている場合はそのリストから最初のサーバーが選択されます。Oracle Clusterwareでは、優先サーバーのリストにサーバーが示されていない場合、配置可能なサーバーがリストされていれば、その配置可能なサーバーのリストから最初のサーバーが選択されます。どちらのリストにもサーバーがない場合、Oracle Clusterwareではリソース配置エラーが生成されます。

注意:

Oracle Clusterwareで起動を試行しているリソースに関連する配置ポリシーまたはリソースの依存性のいずれも配置の決定に影響を及ぼしません。

リソースとしてのアプリケーションの登録

この項では、アプリケーションをOracle Clusterwareのリソースとして登録する手順の例を示します。この手順では、Apache WebサーバーをOracle Clusterwareにリソースとして追加する方法を示します。

この項の例では、Oracle ClusterwareおよびOracle Clusterwareで管理されるアプリケーションを所有するユーザーまたはグループに対する完全な管理権限がOracle Clusterware管理者に付与されていることを前提とします。登録処理が完了すると、オペレーティング・システム・ユーザーのかわりにOracle Clusterwareでアプリケーションを起動できます。

Oracle Clusterwareでは、登録されたリソースの所有者とユーザーは区別されます。リソースの所有者は、エージェントが実行されるオペレーティング・システム・ユーザーです。ユーザーおよび所有者の権限は、リソースのACLリソース属性によって定義されます。リソースを変更できるのは、rootのみです。

関連項目:

ロール別管理

注意:

- 接頭辞にcrs_を持つOracle Clusterwareコマンドは、このリソースでは非推奨です。これらのコマンドは、CRSCTLコマンドによって置換されます。CRSCTLコマンドのリストおよび対応するcrs_コマンドは、「Oracle Clusterware制御(CRSCTL)ユーティリティ・リファレンス」を参照してください。

- My Oracle Supportで指示された場合を除き、接頭辞oraを持つ名前のリソースで(Oracleリソースであるため)CRSCTLコマンドを使用しないでください。
Oracleリソースを構成するには、サーバー制御ユーティリティ(SRVCTL)を使用します。SRVCTLによって、すべての構成可能なオプションが提供されます。

この項には次のトピックが含まれます:

- Oracle Clusterwareで管理されるアプリケーションVIPの作成

- ユーザー定義のリソースの追加

- リソース権限の変更

- アプリケーションの配置ポリシー

- アプリケーションおよびアプリケーション・リソースの登録解除

Oracle Clusterwareで管理されるアプリケーションVIPの作成

アプリケーションのクライアントがネットワークを介してアプリケーションにアクセスし、アプリケーションの配置ポリシーによって別のノードへのフェイルオーバーが可能である場合は、アプリケーションが依存する仮想インターネット・プロトコル・アドレス(VIP)を登録する必要があります。アプリケーションVIPは、Oracle Clusterwareによって管理されるクラスタ・リソースです(Oracle ClusterwareではアプリケーションVIP用の標準VIPエージェントが提供されます)。システムで、クラスタにデプロイされたすべてのVIPの動作の一貫性が保持されるように、新しいアプリケーションVIPはこのVIPタイプに基づく必要があります。

Oracle Clusterwareが管理するその他のリソースを追加するときと同じ方法でVIPを追加することができますが、Oracleでは、Grid_home/bin/appvipcfgコマンドライン・ユーティリティを使用して、ora.net1.networkがデフォルトで作成されるデフォルトのネットワークにアプリケーションVIPを作成または削除することをお薦めします。

アプリケーションVIPを作成するには、次の構文を使用します。

appvipcfg create -network=network_nummber -ip=ip_address -vipname=vip_name
-user=user_name [-group=group_name] [-failback=0 | 1]

注意:

VIP名は、リソースをオンラインにしたまま、リソースを再起動せずに変更できます。

デフォルトのネットワークにVIPを作成する場合、-network=1を設定します。

デフォルト以外のネットワークにアプリケーションVIPを作成するには、場合によって、最初にsrvctl add networkコマンドを使用してネットワークを作成する必要があります。その後、-network=non-default_network_numberを設定してアプリケーションVIPを作成できます。

Oracle Flex Clusterでは、srvctl add networkコマンドを次の構文で使用して、アプリケーションをリーフ・ノード上で実行できるように、アプリケーションVIPのリーフ・ノード・ネットワーク・リソースを追加することもできます。

srvctl add network -netnum=network_number -subnet subnet/netmask[/if1[|if2|...]] -leaf

関連項目:

- srvctl add networkコマンドの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

- リーフ・ノードの詳細は、「Oracle Flex Cluster」を参照してください。

アプリケーションVIPを削除するには、次の構文を使用します。

appvipcfg delete -vipname=vip_name

前述の構文の例で、network_numberはネットワークの番号、ip_addressはIPアドレス、vip_nameはVIPの名前、user_nameはOracle Databaseをインストールしたユーザーの名前、group_nameはグループの名前です。-failbackオプションのデフォルト値は0です。オプションを1に設定すると、VIP(および、VIPに依存するすべてのリソース)は、元のノードが再び使用可能になると、元のノードにフェイルバックします。

注意:

-ip=ip_addressパラメータは必須ですが、グリッド・プラグ・アンド・プレイおよびDHCPとGNSが構成されている場合、このパラメータでは常にDHCPサーバーからのIPアドレスが取得され、コマンドで指定されたIPアドレスは無視されます。DHCPを使用する場合、-vipname=vip_nameパラメータの値も無視されます。

たとえば、rootとして次のコマンドを実行します。

# Grid_home/bin/appvipcfg create -network=1 -ip=148.87.58.196 -vipname=appsVIP -user=root

スクリプトには、アプリケーションVIPリソースを所有するユーザーのほか、ネットワーク番号、IPアドレス、VIPリソースの名前のみが必要です。VIP関連の操作にはroot権限が必要であるため、通常、VIPリソースはrootが所有します。

アプリケーションVIPを削除するには、deleteオプションで同じスクリプトを使用します。このオプションはVIPの名前をパラメータとして受け入れます。次に例を示します。

# Grid_home/bin/appvipcfg delete -vipname=appsVIP

この構成スクリプトを使用してアプリケーションVIPを作成したら、次のコマンドを使用してVIPプロファイルを表示できます。

Grid_home/bin/crsctl status res appsVIP -p

Grid_home/bin/crsctl modify resコマンドを使用して次のパラメータの検証と、必要に応じて変更を行います。

関連項目:

CRSCTLコマンドの使用の詳細は、「Oracle Clusterwareのリソース・リファレンス」を参照してください。

appvipcfgスクリプトは、-network=1に設定されていても-networkオプションを指定する必要があります。

Oracle Databaseインストール所有者として、VIPリソースを起動します。

$ crsctl start resource appsVIP

Oracle Enterprise ManagerによるアプリケーションVIPの追加

Oracle Enterprise Managerを使用してアプリケーションVIPを追加するには、次の手順を実行します。

1. Oracle Enterprise Manager Cloud Controlにログインします。

2. 変更するクラスタ・ターゲットを選択します。

3. クラスタ・ターゲットのメニューから、「管理」→「リソース」→「管理」を選択します。

4. クラスタ管理者のユーザー名およびパスワードを入力して、「リソースの管理」ページを表示します。

5. 「アプリケーションVIPの追加」をクリックします。

6. 「名前」フィールドにVIPの名前を入力します。

7. 「ネットワーク番号」フィールドにネットワークの番号を入力します。

8. 「インターネット・プロトコル・アドレス」フィールドにVIPのIPアドレスを入力します。

9. 「プライマリ・ユーザー」フィールドにrootと入力します。Oracle Enterprise Managerは、ログイン時に使用するユーザー名をデフォルト値とします。

10. VIPをすぐに起動する場合は、「作成後にリソースを開始」を選択します。

11. 「続行」をクリックして「確認: VIPリソースの追加」ページを表示します。

12. クラスタの資格証明としてrootおよびルート・パスワードを入力します。

13. 「続行」をクリックしてアプリケーションVIPを作成します。

ユーザー定義のリソースの追加

Oracle Clusterwareにはいつでもリソースを追加できます。ただし、別のリソースに依存しているリソースを追加する場合は、最初にそのリソースが依存しているリソースを追加します。

この項の例では、クラスタへのリソースの追加を簡単にするために、アクション・スクリプトmyApache.scrが各ノードの/opt/cluster/scriptsディレクトリに存在していると想定しています。また、アプリケーションをホストするために複数のプールが作成されていると想定します。このサーバー・プールは汎用のサブプールではありませんが、かわりに、最上位のサーバー・プールでアプリケーションをホスティングするために使用されます。

関連項目:

アクション・スクリプトの例は、「サード・パーティ製アプリケーションのアクション・スクリプトの例」を参照してください。

注意:

スクリプトのメンテナンスを軽減するために、Oracle Automatic Storage Management Cluster File System (Oracle ACFS)などの共有ストレージを使用してアクション・スクリプトを格納することをお薦めします。

この項には次のトピックが含まれます:

- デプロイメント・スキームの決定

- 特定のサーバー・プールへのリソースの追加

- サーバー固有のデプロイメントを使用したリソースの追加

- generic_applicationリソース・タイプを使用するリソースの作成

デプロイメント・スキームの決定

アプリケーションの管理者またはポリシー管理を使用するかどうかを決定する必要があります。管理者管理は、クラスタ構成が変更される可能性が低い、小規模な2ノード構成に使用します。ポリシー管理は、クラスタが3つ以上のノードで構成されている場合に、より動的な構成に使用します。たとえば、リソースがノード1およびノード2のみで実行されている場合、これらのノードにのみ必要なファイルが存在するため、管理者管理がより適切である可能性があります。

Oracle Clusterwareでは、匿名サーバーで構成され、必要なプール・サイズに厳密に基づく、アクセス制御されたサーバー・プールでのアプリケーションのデプロイメントがサポートされています。この場合、管理者定義のクラスタ・ポリシーを使用して、必要なサイズおよび重要度のレベルで、サーバー割当てを制御する必要があります。または、厳密なサーバー割当てまたは優先サーバー割当てを使用することもでき、この場合、リソースは具体的な名前が指定されたサーバーで実行されます。これは、以前のリリースのOracle Clusterwareで使用可能な既存のモデル(現在の管理者管理)を表します。

概念上、両方のデプロイメント・スキームで開発およびデプロイされたアプリケーションをホスティングするクラスタは、サーバーの、論理的に分割された2つのグループと考えることができます。一方のサーバー・グループはサーバー・プールに使用され、ロールの分離およびサーバーの容量制御が可能になります。もう一方のサーバー・グループでは、クラスタ内の名前付きのサーバーに基づく固定割当てが想定されます。

いずれかのデプロイメント・スキームを使用してアプリケーションを管理するには、クラスタにリソースを追加する前にサーバー・プールを作成する必要があります。Genericという名前の組込みサーバー・プールは、管理者ベース管理のアプリケーションによって使用されるサーバーを常に所有します。汎用サーバー・プールは論理的な分割で、異なる管理スキームを使用してクラスタの2つの部分を分割するために使用できます。

サード・パーティの開発者がこのモデルを使用してアプリケーションをデプロイするには、サーバー・プールを使用する必要があります。名前付きのサーバーに基づく、既存のアプリケーション開発およびデプロイメント・モデルを利用するには、汎用サブプール(汎用プールが親であるサーバー・プールで、サーバー・プール属性のPARENT_POOLSで定義される)を使用する必要があります。親として汎用を使用するサブプールを作成し、サーバーをサブプール定義に名前で列挙することによって、名前付きのサーバーが、汎用内に存在すること、および名前付きのサーバー・モデルを使用するアプリケーション専用に使用されることがアプリケーションで保証されます。

特定のサーバー・プールへのリソースの追加

crsctl add resourceコマンドを使用して、リソースをサーバー・プールに追加します。

ポリシー・ベースのデプロイメント・スキームを使用して、特定のサーバー・プールにApache Webサーバーをリソースとして追加するには、Apacheサーバーを実行するユーザーとして次のコマンドを実行します(Apache Serverの場合、これは通常rootユーザーです)。

$ crsctl add resource myApache -type cluster_resource -attr
"ACTION_SCRIPT=/opt/cluster/scripts/myapache.scr,
PLACEMENT=restricted,
SERVER_POOLS=server_pool_list,
CHECK_INTERVAL=30,
RESTART_ATTEMPTS=2,
START_DEPENDENCIES=hard(appsvip),
STOP_DEPENDENCIES=hard(appsvip)"

関連項目:

サード・パーティ製アプリケーションのアクション・スクリプトの例

前述の例では、クラスタに追加されるリソースの名前はmyApacheです。

注意:

- エラーにならないように、カンマ区切りまたはスペース区切りの属性値は単一引用符(' ')で囲む必要があります。単独の属性値を単一引用符で囲んだ場合、引用符は無視されてエラーは発生しません。

- リソース名の先頭をピリオドまたはoraという文字列にすることはできません。

リソースは次のように構成されます。

- このリソースはcluster_resourceタイプです。

- ACTION_SCRIPT=/opt/cluster/scripts/myapache.scr: 必要なアクション・スクリプトへのパスです。

- PLACEMENT=restricted

関連項目:

PLACEMENTリソース属性の詳細は、「アプリケーションの配置ポリシー」を参照してください。

- SERVER_POOLS=server_pool_list: このリソースは、空白区切りリストで指定されているサーバー・プールでのみ実行できます。

- CHECK_INTERVAL=30: Oracle Clusterwareによって、リソースのステータスの確認のために30秒ごとにリソースがチェックされます。

- RESTART_ATTEMPTS=2: Oracle Clusterwareによって、リソースが別のノードにフェイルオーバーされる前に、リソースの再起動が2回試行されます。

- START_DEPENDENCIES=hard(appsvip): このリソースには、appsvipリソースに対するhard起動依存性が定義されています。myApacheを起動するには、appsvipリソースがオンライン状態である必要があります。

- STOP_DEPENDENCIES=hard(appsvip): このリソースには、appsvipリソースに対するhard停止依存性が定義されています。appsvipリソースがオフラインになると、myApacheリソースは停止します。

サーバー固有のデプロイメントを使用したリソースの追加

名前付きのサーバー・デプロイメントを使用するリソースとしてApache Webサーバーを追加する場合、定義上、汎用サーバー・プールのサブプールであるサーバー・プールにリソースが追加されていると想定します。crsctl add serverpoolコマンドを使用して、汎用サブプールであるサーバー・プールを作成します。これらのサーバー・プールでは、汎用サーバー・プールはPARENT_POOLSサーバー・プール属性で親として定義されます。また、SERVER_NAMESパラメータにはサーバー名のリストが含められ、それぞれのプールに割り当てる必要があるサーバーが指定されます。次に例を示します。

$ crsctl add serverpool myApache_sp -attr
"PARENT_POOLS=Generic, SERVER_NAMES=host36 host37"

サブプールを作成した後、Apache Webサーバー・リソースを次のように追加します。

$ crsctl add resource myApache -type cluster_resource -attr
"ACTION_SCRIPT=/opt/cluster/scripts/myapache.scr,
PLACEMENT='restricted',
SERVER_POOLS=myApache_sp,
CHECK_INTERVAL='30',
RESTART_ATTEMPTS='2',
START_DEPENDENCIES='hard(appsvip)',
STOP_DEPENDENCIES='hard(appsvip)'"

注意:

リソース名の先頭をピリオドまたはoraという文字列にすることはできません。

また、サーバー固有のデプロイメントを使用してリソースを追加する場合、SERVER_POOLSリソース・パラメータにリストされたサーバー・プールは、汎用サーバー・プールの下位プールである必要があることに注意してください。

関連項目:

ポリシー・ベースのクラスタおよび容量の管理

generic_applicationリソース・タイプを使用するリソースの作成

高可用性が必要で、アクション・スクリプトの作成が不要なタイプのアプリケーションのモデル化する場合は、crsctl add resourceコマンドでgeneric_applicationリソース・タイプを使用してリソースを作成します。この項には、generic_applicationリソース・タイプを使用するリソースをLinux/UNIXプラットフォームで作成する2つの例が示されています。

関連項目:

generic_applicationリソース・タイプの詳細は、「Oracleクラスタウェアのリソース・タイプ」を参照してください。

次のコマンドの例では、高可用性のSambaサーバー・リソースが作成されます。

$ crsctl add resource samba1 -type generic_application -attr
"START_PROGRAM='/etc/init.d/smb start',
STOP_PROGRAM='/etc/init.d/smb stop',
CLEAN_PROGRAM='/etc/init.d/smb stop',
PID_FILES='/var/run/smbd.pid,/var/run/nmbd.pid'"

前述の例で、リソースを定義する属性は次のように構成されます。

- START_PROGRAM='/etc/init.d/smb start': この属性には、Sambaサーバーを起動するスクリプトへの完全なパスおよび引数が含まれています

- STOP_PROGRAM='/etc/init.d/smb stop': この属性には、Sambaサーバーを停止するスクリプトへの完全なパスおよび引数が含まれています

- CLEAN_PROGRAM='/etc/init.d/smb stop': この属性には、Sambaサーバーの起動または停止に障害が起きた場合に、サーバーを強制的に終了し、クリーンアップするスクリプトの完全なパスおよび引数が含まれています

- PID_FILES='/var/run/smbd.pid,/var/run/nmbd.pid': この属性には、プロセスID (PID)をリストしているテキスト・ファイルのパスが含まれており、このリストを監視して、Sambaサーバーおよびそのコンポーネントすべてが実行されているようにする必要があります

注意:

- このSambaサーバー構成にスクリプト・ベースの監視が必要な場合、次のように、PID_FILESの代わりに、CHECK_PROGRAMS属性を使用できます。

CHECK_PROGRAMS='/etc/init.d/smb status'

- Sambaサーバー・リソースのHOSTING_MEMBERS、SERVER_POOLS、PLACEMENTおよびCARDINALITY属性を構成して、標準的なOracle Clusterwareの配置およびカーディナリティ・プロパティを指定できます。

2番目のコマンドの例では、高可用性のデータベース・ファイル・サーバー(DBFS)リソースが作成されます。DBFSは、Oracle Databaseに格納されたデータにアクセスできるFilesystem in Userspace (FUSE)ファイル・システムを提供します。

関連項目:

DBFSの詳細は、『Oracle Database SecureFilesおよびラージ・オブジェクト開発者ガイド』を参照してください。

generic_applicationリソース・タイプを使用してDBFSファイル・システムに相当するリソースを定義できます。このDBFSリソースを使用して、DBFSファイル・システム・マウント・ポイントを起動、停止、監視およびフェイルオーバーすることができます。このリソースを作成するコマンドの構文は、次のとおりです。

$ crsctl add resource dbfs1 -type generic_application -attr
"START_PROGRAM='/app/oracle/12.1/bin/dbfs_client -o wallet
/@inst1 /scratch/mjkeenan/data/dbfs_mount',
STOP_PROGRAM='/bin/fusermount -u /scratch/mjkeenan/data/dbfs_mount',
CHECK_PROGRAMS='ls /scratch/mjkeenan/data/dbfs_mount/dbfsdata1',
ENVIRONMENT_VARS='ORACLE_HOME=/app/oracle/12.1,
LD_LIBRARY_PATH=/app/oracle/12.1/lib:/app/oracle/12.1/rdbms/lib,
TNS_ADMIN=/app/oracle/12.1/network/admin',
CLEAN_PROGRAM='/bin/fusermount -u -z /scratch/mjkeenan/data/dbfs_mount',
START_DEPENDENCIES='hard(ora.inst1_srv.svc)',
STOP_DEPENDENCIES='hard(ora.inst1_srv.svc)'"

上記の例には、必須のSTART_PROGRAM、STOP_PROGRAM、CHECK_PROGRAMSおよびCLEAN_PROGRAM属性の他に、次のような属性が含まれています。

- ENVIRONMENT_VARS属性は、プログラムを起動したり停止するときに渡されるカスタム環境変数を指定します。

- START_DEPENDENCIESおよびSTOP_DEPENDENCIES依存属性は、DBFSファイル・システムのデータベース・ストアの基になっているデータベース・サービスに起動依存性および停止依存性を作成します。
DBFSファイル・システムのアプリケーション要件に基づいた上位レベルのアプリケーション・リソースのDBFSリソースに依存性を作成できます。

注意:

- 前述の構文に示されているORACLE_HOMEディレクトリは例です。

- DBFSファイル・システム・リソースのHOSTING_MEMBERS、SERVER_POOLS、PLACEMENTおよびCARDINALITY属性を構成して、Oracle Clusterware標準の配置およびカーディナリティ・プロパティを指定できます。

Oracle Enterprise Managerを使用したリソースの追加

Oracle Enterprise Managerを使用してOracle Clusterwareにリソースを追加するには、次の手順を実行します。

1. Oracle Enterprise Manager Cloud Controlにログインします。

2. 変更するクラスタ・ターゲットを選択します。

3. クラスタ・ターゲットのメニューから、「管理」→「リソース」→「管理」を選択します。

4. クラスタ管理者のユーザー名およびパスワードを入力して、「リソースの追加」ページを表示します。

5. 「名前」フィールドにリソースの名前を入力します。

注意:

リソース名の先頭をピリオドまたはoraという文字列にすることはできません。

6. 「リソース・タイプ」ドロップダウン・リストからcluster_resourceまたはlocal_resourceのいずれかを選択します。

7. 必要に応じて、「説明」フィールドにリソースの説明を入力します。

8. リソースをすぐに起動する場合は、「作成後にリソースを開始」を選択します。

9. 「配置」セクションのオプションのパラメータは、Oracle Clusterwareによってリソースが配置されるクラスタ内の場所を定義します。

関連項目:

配置の詳細は、「アプリケーションの配置ポリシー」を参照してください。

この項の属性は、「Oracle Clusterwareのリソース・リファレンス」で説明されている属性に対応しています。

10. 「アクション・プログラム」セクションの「アクション・プログラム」ドロップダウン・リストから、リソースを管理するためにOracle Clusterwareでアクション・スクリプトをコールするか、エージェント・ファイルをコールするか、またはその両方をコールするかを選択します。

また、ドロップダウン・リストでの選択に応じて、スクリプト、ファイルまたはその両方へのパスを指定する必要があります。

「アクション・スクリプト」を選択した場合、「新規アクション・スクリプトの作成」をクリックし、Oracle Enterprise Managerアクション・スクリプト・テンプレートを使用してリソース用のアクション・スクリプトを作成することができます(作成済でない場合)。

11. これ以上のリソースの構成を行うには、「属性」をクリックします。このページでは、開始属性、停止属性、ステータス属性、オフライン監視および定義した属性を構成できます。

12. 「拡張設定」をクリックし、より詳細なリソース属性の構成を有効にします。

13. 「依存性」をクリックして、リソース間の起動および停止の依存性を構成します。

関連項目:

依存性の詳細は、「リソース依存性」を参照してください。

14. リソースの構成が終了したら、「発行」をクリックします。

リソース権限の変更

Oracle Clusterwareでは、リソースを追加したユーザーの権限に基づいてリソースが管理されます。最初にリソースを追加したユーザーがリソースを所有し、リソースはリソースの所有者として実行されます。特定のリソースはrootとして管理する必要があります。root以外のユーザーが、rootとして実行する必要があるリソースを追加する場合は、次のように、rootがリソースを管理するように権限をrootとして変更する必要があります。

1. rootとして次のコマンドを実行して、指定したリソースの権限をrootに変更します。

# crsctl setperm resource resource_name –o root

2. Oracle ClusterwareをインストールしたユーザーとしてOracle Databaseインストール所有者(次の例ではoracle)を有効にして、次のスクリプトを実行します。

$ crsctl setperm resource resource_name –u user:oracle:r-x

3. リソースを起動するには、次のスクリプトを実行します。

$ crsctl start resource resource_name

アプリケーションの配置ポリシー

リソースは、配置ポリシー、リソース起動依存性およびサーバーでのアクション・スクリプトの可用性に従って、任意のサーバーで実行できます。

PLACEMENTリソース属性を使用して、リソースを起動するサーバーをOracle Clusterwareで選択する方法、およびサーバーの障害発生後にリソースを再配置する場所を指定します。HOSTING_MEMBERSおよびSERVER_POOLS属性を使用してリソースのホスティングに適切なサーバーを指定し、PLACEMENT属性を使用してリソースの配置をさらに調整します。

関連項目:

HOSTING_MEMBERSおよびSERVER_POOLSリソース属性の詳細は、「Oracle Clusterwareのリソース・リファレンス」を参照してください。

PLACEMENTリソース属性の値を使用して、クラスタへのリソース追加時またはサーバーの障害発生時にOracle Clusterwareでリソースを配置する方法を指定します。HOSTING_MEMBERSまたはSERVER_POOLS属性のいずれかとともに使用すると、Oracle Clusterwareでクラスタにリソースを配置する方法を構成できます。PLACEMENT属性の値は次のとおりです。

- balanced: Oracle Clusterwareによって、配置に任意のオンライン・サーバー・プールが使用されます。負荷が低いサーバーは負荷が大きいサーバーより優先されます。サーバーの負荷を測定する場合、Oracle Clusterwareでは、そのサーバーでONLINE状態になっているリソースのLOADリソース属性が使用されます。現行のサーバー負荷を測定する場合、Oracle Clusterwareでは、LOADの合計値が使用されます。

- favored: 値がHOSTING_MEMBERS、SERVER_POOLSまたはSERVER_CATEGORYリソース属性のいずれかに割り当てられている場合、この値がプリファレンスを示します。HOSTING_MEMBERSが移入されSERVER_POOLSまたはSERVER_CATEGORYのいずれかが設定されると、HOSTING_MEMBERSによって配置のプリファレンスが示され、SERVER_POOLSまたはSERVER_CATEGORYによって制限が示されます。たとえばora.cluster.vipリソースにPLACEMENTの値をfavoredに設定するポリシｰがあり、SERVER_CATEGORYはHubに設定され、HOSTING_MEMBERSはserver_name1に設定されます。この場合、Oracle Clusterwareはora.cluster.vipの配置をハブ・カテゴリのサーバーに限定し、server_name1と呼ばれるサーバーを優先します。

- restricted: Oracle Clusterwareでは、SEVER_POOLSリソース属性に示されているサーバー・プールに属しているサーバー、SERVER_CATEGORYリソース属性で構成されているような特定のカテゴリのサーバーまたはHOSTING_MEMBERSリソース属性に示されているサーバーのみがリソースの配置の対象として考慮されます。値を指定できるのは、これらのリソース属性のいずれか1つにのみであり、そうしないとエラーが発生します。

関連項目:

- HOSTING_MEMBERS

- SERVER_CATEGORY

- SERVER_POOLS

アプリケーションおよびアプリケーション・リソースの登録解除

リソースを登録解除するには、crsctl delete resourceコマンドを使用します。アプリケーションまたはリソースがONLINEであるか、または別のリソースで必要とされている場合は、-forceオプションを使用しないかぎり、そのアプリケーションまたはリソースを登録解除することはできません。次の例では、Apache Webサーバー・アプリケーションを登録解除します。

$ crsctl delete resource myApache

Oracle Clusterwareでリソースが管理されない場合は、クリーンアップ手順としてcrsctl delete resourceコマンドを実行します。不要なリソースは登録解除することをお薦めします。

リソースの管理

この項には次のトピックが含まれます:

- アプリケーション・リソースの登録

- アプリケーション・リソースの起動

- アプリケーションおよびアプリケーション・リソースの再配置

- アプリケーションおよびアプリケーション・リソースの停止

- クラスタウェア・アプリケーションおよびアプリケーション・リソースのステータス情報の表示

アプリケーション・リソースの登録

Oracle Clusterwareで管理する各アプリケーションはリソースとしてOCRに格納されます。crsctl add resourceコマンドを使用して、アプリケーションをOCRに登録します。たとえば、前述の例のApache Webサーバー・アプリケーションを登録するには次のコマンドを入力します。

$ crsctl add resource myApache -type cluster_resource
-attr "ACTION_SCRIPT=/opt/cluster/scripts/myapache.scr, PLACEMENT=restricted,
SERVER_POOLS=server_pool_list,CHECK_INTERVAL=30,RESTART_ATTEMPTS=2,
START_DEPENDENCIES=hard(appsvip),STOP_DEPENDENCIES=hard(appsvip)"

リソースを変更した場合は、crsctl modify resourceコマンドを実行してOCRを更新します。

アプリケーション・リソースの起動

crsctl start resourceおよびcrsctl stop resourceコマンドを使用して、リソースを起動および停止します。Oracle Clusterwareの外部でリソースを手動で起動または停止すると、リソースのステータスを無効にできます。また、Oracle Clusterwareによって、手動で停止操作を実行したリソースの再起動が試行される場合もあります。

Oracle Clusterwareに登録されているアプリケーション・リソースを起動するには、crsctl start resourceコマンドを使用します。次に例を示します。

$ crsctl start resource myApache

関連項目:

CRSCTLコマンド出力の使用方法の詳細と例は、「Oracle Clusterware制御(CRSCTL)ユーティリティ・リファレンス」を参照してください。

このコマンドは、アクション・プログラムがコールされるたびにそのアクション・プログラムから成功または失敗の通知を受け取るために待機します。Oracle Clusterwareでは、障害しきい値を超えたために停止したアプリケーション・リソースを起動できます。起動する前に、crsctl add resourceを使用してリソースを登録する必要があります。

crsctl start resourceコマンドをリソースで実行すると、リソースのTARGET値がONLINEに設定されます。Oracle Clusterwareは、startアクションを指定してアクション・プログラムを実行し、TARGETと一致するように状態の変更を試行します。

クラスタ・サーバーでリソースを起動中にそのサーバーで障害が発生した場合、crsctl status resourceコマンドを使用して、クラスタ上のリソースの状態をチェックします。

アプリケーションおよびアプリケーション・リソースの再配置

crsctl relocate resourceコマンドを使用して、アプリケーションおよびアプリケーション・リソースを再配置します。たとえば、rac2というサーバーにApache Webサーバー・アプリケーションを再配置するには、次のコマンドを実行します。

# crsctl relocate resource myApache -n rac2

アクション・プログラムがコールされるたびに、crsctl relocate resourceコマンドがSCRIPT_TIMEOUTリソース属性の値に指定された期間待機して、アクション・プログラムから成功または失敗の通知を受け取ります。再配置の試行は、次の場合に失敗します。

- アプリケーションに、初期サーバー上で実行される必須リソースが存在する。

- 指定したリソースが必要なアプリケーションが、初期サーバー上で実行される。

アプリケーションおよびその必須リソースを再配置するには、crsctl relocate resourceコマンドで-fオプションを使用します。Oracle Clusterwareは、状態に関係なく、アプリケーションに必要なすべてのリソースを再配置または起動します。

アプリケーションおよびアプリケーション・リソースの停止

crsctl stop resourceコマンドを使用してアプリケーション・リソースを停止します。コマンドによってリソースのTARGET値はOFFLINEに設定されます。Oracle Clusterwareは、常にリソースの状態をターゲットの状態に一致させようとするため、Oracle Clusterwareのサブシステムによって、アプリケーションが停止されます。次の例では、Apache Webサーバーを停止します。

# crsctl stop resource myApache

このリソースに対するhard停止依存性が別のリソースに定義されている場合、強制(-f)オプションを使用しないかぎり、このリソースを停止することはできません。他のリソースが依存しているリソース上でcrsctl stop resource resource_name -fコマンドを使用し、それらの依存リソースが実行されている場合は、停止するリソースに依存するリソースがOracle Clusterwareによって停止されます。

クラスタウェア・アプリケーションおよびアプリケーション・リソースのステータス情報の表示

クラスタ・サーバー上のアプリケーションおよびリソースのステータス情報を表示するには、crsctl status resourceコマンドを使用します。次の例では、Apache Webサーバー・アプリケーションのステータス情報を表示します。

# crsctl status resource myApache

NAME=myApache
TYPE=cluster_resource
TARGET=ONLINE
STATE=ONLINE on server010

このコマンドは、他にも次の情報を返します。

- リソースが再起動された回数

- 障害間隔内にリソースで障害が発生した回数

- リソースの再起動可能回数または障害発生許容回数の最大数

- リソースのターゲット状態および通常のステータスの情報

特定のリソースの詳細を表示するには、crsctl status resource resource_nameコマンドで-fオプションを使用します。

次のコマンドを入力して、すべてのアプリケーションおよびリソースの情報を表形式で表示します。

# crsctl status resource -t

関連項目:

CRSCTLコマンドの詳細は、「Oracle Clusterware制御(CRSCTL)ユーティリティ・リファレンス」を参照してください。

Oracle Clusterwareによるリソースの自動再起動の管理

いくつかのリソース属性を設定することによって、Oracle Clusterwareが自動的にリソースを再起動しないようにできます。また、Oracle Clusterwareによるリソースの再起動カウンタの管理を制御することもできます。さらに、Oracle Clusterwareがリソースで実行するstart、stopおよびcheckアクションのタイムアウト値をカスタマイズすることもできます。

この項には次のトピックが含まれます:

- Oracle Clusterwareリソースの自動再起動の回避

- Oracle Clusterwareリソースの再起動試行カウンタの自動管理

Oracle Clusterwareリソースの自動再起動の回避

サーバーを再起動すると、Oracle Clusterwareによって、サーバーの起動直後に実行されるリソースの起動が試行されます。ただし、リソースが依存するシステム・コンポーネント(ボリューム・マネージャ、ファイル・システムなど)が実行されていない場合は、リソースの起動が失敗する可能性があります。これは特に、リソースが依存するシステム・コンポーネントをOracle Clusterwareが管理しない場合に該当します。自動再起動を管理するには、AUTO_STARTリソース属性を使用して、サーバーの再起動時にOracle Clusterwareによって自動的にリソースが起動されるかどうかを指定します。

注意:

リソースのAUTO_STARTリソース属性の値にかかわらず、起動対象のリソースに対するhard起動依存性またはweak起動依存性が別のリソースに定義されている場合、または別のリソースに対するpullup起動依存性が起動対象のリソースに定義されている場合は、そのリソースを起動できます。

関連項目:

- 詳細は、「起動依存性」を参照してください。

- AUTO_STARTリソース属性の詳細は、「Oracle Clusterwareのリソース・リファレンス」を参照してください。

Oracle Clusterwareリソースの再起動試行カウンタの自動管理

リソースで障害が発生すると、リソースで障害が発生した回数に関係なく、RESTART_ATTEMPTSリソース属性に指定された回数だけOracle Clusterwareによってリソースの再起動が試行されます。CRSDプロセスは、内部カウンタを保持して、リソースがOracle Clusterwareによって再起動される回数を追跡します。Oracle Clusterwareがリソースの再起動を試行した回数はRESTART_COUNTリソース属性に反映されます。Oracle Clusterwareでは、リソースの安定性に基づいて再起動試行カウンタが自動的に管理されます。UPTIME_THRESHOLDリソース属性は、リソースがオンラインである必要がある時間を決定し、その時間が経過すると、RESTART_COUNT属性は0にリセットされます。また、RESTART_COUNTリソース属性は、リソースがユーザーによって再配置または再起動された場合、あるいはリソースが別のサーバーにフェイルオーバーした場合にも、0にリセットされます。

A クラスタ検証ユーティリティのリファレンス

クラスタ検証ユーティリティ(CVU)は、インストール、パッチ更新またはその他のシステム変更に備えてシステム・チェックを行います。CVUを使用すると、必要なシステム構成やインストール前の手順を確実に行えるようになり、Oracle Grid InfrastructureやOracle Real Application Clusters (Oracle RAC)のインストール、更新またはパッチ操作を正常に完了できます。

Oracle Universal InstallerはCVUに完全に統合されており、CVUの多くの前提条件チェックは自動化されます。Oracle Universal Installerを実行すると、すべての前提条件チェックとこれに関連付けられたfixupスクリプトが実行されます。

関連項目:

- CVUを管理するサーバー制御ユーティリティ(SRVCTL)の使用の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

- CVUを手動でインストールする方法については、『Oracle Grid Infrastructureインストレーション・ガイド』および『Oracle Real Application Clustersインストレーション・ガイド』を参照してください。

注意:

次のOracle Technology Networkを確認して、CVUの最新バージョンをダウンロードしてください。

http://www.oracle.com/technetwork/index.html

この付録では、CVUについて説明します。内容は次のとおりです。

- クラスタ検証ユーティリティについて

- CVUの概要

- CVUの使用上の注意

- 特別なCVU項目

- クラスタ検証ユーティリティのコマンド・リファレンス

- CVUのトラブルシューティングおよび診断出力

クラスタ検証ユーティリティについて

この項では、CVUの使用に関連する項目について説明します。

- CVUの概要

- CVUの使用上の注意

- 特別なCVU項目

CVUの概要

CVUは、操作のフェーズまたはステージで主なクラスタ・コンポーネントを検証できます。コンポーネントは、ディスクの空き領域などの基本的なコンポーネントの場合と、Oracle Clusterwareの整合性チェックなどの複雑なコンポーネントの場合があります。たとえば、CVUは、Oracle Clusterwareレイヤー全体の複数のOracle Clusterwareサブコンポーネントを検証できます。また、CVUは、ディスク領域、メモリー、プロセスおよびその他の重要なクラスタ・コンポーネントをチェックできます。ステージにはデータベースのインストールなどがあり、CVUはこれらのステージで、システムがOracle Real Application Clusters(Oracle RAC)のインストールのための基準を満たしているかどうかを検証できます。その他のステージには、完全に稼働しているクラスタ設定を使用したハードウェアの初期設定やシステム要件の設定などが含まれます。

表A-1に、CVUで実行できる検証を示します。

表A-1 CVUの様々な検証の実行

実行する検証

使用するCVUのコマンド

システム要件の検証

cluvfy comp sys

Oracle Cluster File Systemの検証

cluvfy stage [-pre | -post] cfs

記憶域の検証

- cluvfy comp space

- cluvfy comp ssa

- cluvfy stage [-pre | -post] acfscfg

ネットワークの検証

cluvfy stage -post hwos

接続性の検証

- cluvfy comp nodecon

- cluvfy comp nodereach

クラスタ時刻同期化サービスの検証

cluvfy comp clocksync

ユーザーおよび権限の検証

cluvfy comp admprv

ノードの比較および検証

cluvfy comp peer

インストールの検証

- cluvfy stage -pre dbcfg

- cluvfy stage -pre dbinst

- cluvfy stage [-pre | -post] crsinst

- cluvfy stage [-pre | -post] hacfg

- cluvfy stage [-pre | -post] nodeadd

削除の検証

cluvfy stage -post nodedel

Oracle ClusterwareおよびOracle ASMコンポーネントの検証

- cluvfy comp acfs

- cluvfy comp asm

- cluvfy comp clumgr

- cluvfy comp crs

- cluvfy comp dhcp

- cluvfy comp dns

- cluvfy comp gns

- cluvfy comp gpnp

- cluvfy comp ha

- cluvfy comp nodeapp

- cluvfy comp ocr

- cluvfy comp ohasd

- cluvfy comp olr

- cluvfy comp scan

- cluvfy comp software

- cluvfy comp vdisk

CVUの使用上の注意

この項には次のトピックが含まれます:

- CVUのインストール要件

- CVUの使用方法

- CVUの構成ファイル

- 権限およびセキュリティ

- CVUヘルプの使用

CVUのインストール要件

CVUのインストール要件を次に示します。

- CVUを実行するノード上には、CVUソフトウェア用に30MB以上の空き領域が必要です。

- 各ノード上に、空き領域が25MB以上の作業ディレクトリが必要です。作業ディレクトリのデフォルトの場所は、LinuxおよびUNIXシステムの場合は/tmpで、Windowsシステムの場合はTEMP環境変数に指定されている値の場所です。CV_DESTLOC環境変数を設定すると、別の場所を指定できます。
CVUを使用する際、ユーティリティは、必要な情報をCVUの作業ディレクトリにコピーしようとします。各ノードでの作業ディレクトリの存在が確認されます。見つからない場合は、作成が試行されます。クラスタ内のすべてのノード上にCVUの作業ディレクトリが存在するか、またはCVUを実行しているユーザーに対して各ノード上にディレクトリを作成するための適切な権限が付与されているかを確認します。

CVUの使用方法

CVUには、Oracleソフトウェアをインストールする前に使用するruncluvfy.sh(Windowsではruncluvfy.bat)と、cluvfy(Windowsではcluvfy.bat)の2つのスクリプトが含まれており、これらはGrid_home/binディレクトリに格納されています。runcluvfy.shスクリプトには一時変数の定義が含まれており、これによって、Oracle Grid InfrastructureまたはOracle Databaseをインストールする前の実行が可能になります。Oracle Grid Infrastructureのインストール後には、cluvfyコマンドを使用して前提条件をチェックし、その他のシステム準備状態チェックを実行します。

注意:

Oracle Universal Installerは、Oracleソフトウェアのインストール時に、cluvfyを実行してすべての前提条件をチェックします。

Oracleソフトウェアをインストールする前に、次のようにソフトウェア・インストール・メディアのマウントポイント・パスからruncluvfy.shを実行してください。

cd /mountpoint
./runcluvfy.sh options

前述の例で、options変数は選択したCVUコマンド・オプションを表します。次に例を示します。

$ cd /mnt/dvdrom
$ ./runcluvfy.sh comp nodereach -n node1,node2 -verbose

CVUコマンドを入力すると、テストのサマリーが表示されます。インストール前には、CVUコマンドに-verbose引数を使用して詳細な出力を取得することをお薦めします。-verbose引数を指定すると、個々のチェックの詳細な出力が生成されます。適用可能な場合は、各ノードの結果が表レイアウトで表示されます。

cluvfyコマンドを使用して、CVUコマンドライン・ツールを実行します。cluvfyを使用しても、クラスタ環境またはインストールされたソフトウェアに悪影響を及ぼすことはありません。cluvfyコマンドは、Oracle Clusterwareのインストール前を含む任意のタイミングで実行できます。実際には、CVUは、ハードウェアおよびオペレーティング・システムが稼働するとすぐに使用できるように設計されています。ノード上のOracle Clusterwareを必要とするコマンドを実行したときにそのノード上にOracle Clusterwareがまだインストールされていない場合には、CVUはエラーをレポートします。

CVUコマンドとともに使用するノード・リストは、ドメインを含まないホスト名のカンマ区切りのリストである必要があります。CVUがノード・リストを処理する際にはドメインは無視されます。ドメイン情報を削除した後、CVUのコマンド・エントリに重複するノード・エントリがある場合には、CVUは重複するノード・エントリを削除します。

ネットワーク接続の検証では、CVUコマンドラインでインタフェースを指定しない場合、CVUによって、すべての使用可能なネットワーク・インタフェースが検出されます。記憶域のアクセス性の検証では、コマンドラインで特定の記憶域のIDを指定しない場合、CVUはサポートされるすべての記憶域タイプの共有記憶域を検出します。使用可能な場合、Oracle ClusterwareのホームもCVUにより検出されます。

関連項目:

使用方法のセキュリティ情報は、「権限およびセキュリティ」を参照してください。

CVUの構成ファイル

CVUの構成ファイルを使用して、CVUの実行のための特定の入力を定義できます。構成ファイルのパスは、Grid_home/cv/admin/cvu_config(Windowsプラットフォームの場合はStaging_area\clusterware\stage\cvu\cv\admin)です。このファイルをテキスト・エディタを使用して変更できます。CVUへの入力は、キー・エントリの形式で定義されています。CVUの構成ファイルを変更する場合、次の規則に従う必要があります。

- キー・エントリの構文はname=valueです。

- 各キー・エントリおよびキーに割り当てられた値は、1つのみのプロパティを定義します。

- シャープ記号(#)で始まる行はコメント行であり、無視されます。

- name=valueという構文に従っていない行は無視されます。

CVUによってサポートされるキーのリストを次に示します。

- CV_NODE_ALL: Oracle Clusterwareがインストールされていない場合に選択する必要があるノードのリストを指定します。デフォルトでは、このエントリはコメント・アウトされています。

- CV_ORACLE_RELEASE: 検証を実行する必要がある特定のOracleリリース(10.1、10.2、11.1、11.2または12.1)を指定します。これを設定すると、-r releaseオプションが適用される場合であっても、このオプションを使用する必要がなくなります。デフォルト値は12.1です。

- CV_RAW_CHECK_ENABLED: TRUEに設定すると、LinuxおよびUNIXシステム上の共有ディスクのアクセス性チェックが有効になります。この共有ディスクのアクセス性チェックには、すべてのノード上にcvuqdisk RPMパッケージ・マネージャ(rpm)がインストールされていることが必要です。デフォルトでは、このキーはTRUEに設定されており、共有ディスクのチェックが有効になっています。

- CV_ASSUME_DISTID: このプロパティは、CVUが特定のプラットフォームまたは配布を検出またはサポートできない場合に使用されます。CVUが無効になる可能性があるため、このプロパティを変更することはお薦めしません。

- CV_XCHK_FOR_SSH_ENABLED: TRUEに設定すると、sshを使用してユーザー等価関係を検証するためのX-Windowsチェックが有効になります。デフォルトでは、このエントリはコメント・アウトされており、X-Windowsチェックは無効になっています。

- ORACLE_SRVM_REMOTECOPY: 設定すると、scpまたはrcpコマンドの位置を指定してCVUのデフォルト値が上書きされます。デフォルトでは、このエントリはコメント・アウトされており、CVUは/usr/bin/scpおよび/usr/sbin/rcpを使用します。

- ORACLE_SRVM_REMOTESHELL: 設定すると、sshコマンドの位置を指定してCVUのデフォルト値が上書きされます。デフォルトでは、このエントリはコメント・アウトされており、ツールは/usr/sbin/sshを使用します。

- CV_ASSUME_CL_VERSION: デフォルトで、コマンドライン解析機能は、コマンドライン構文の使用方法の表示および構文の検証にcrs activeversionを使用します。このプロパティを使用して、コマンドライン構文の表示および検証用にcrs activeversion以外のバージョンを渡します。デフォルトでは、このエントリはコメント・アウトされています。

CVUは構成ファイルに定義されたキー・エントリを検出できない場合、CVUはキーの名前に一致する環境変数を検索します。環境変数が設定されている場合、CVUはその値を使用し、環境変数が設定されていない場合、CVUはこのエンティティのデフォルト値を使用します。

権限およびセキュリティ

rootユーザーのユーザー等価関係がないため、リモート・ノード操作を実行するために、次を除いてほとんどのCVUコマンドをrootとして実行できません。

- cluvfy comp dhcp

- cluvfy comp dns

ただし、権限委任を使用すると、-methodパラメータを指定でき、2つの方法(sudoまたはroot)から1つを選択できます。これによって、チェックが有効化され、リモート・ノードで実行するためにroot権限が必要な修正スクリプトを実行できるようになります。パスワードの入力を求められます。パスワードはCVUコマンドの実行中に動的に使用され、ストレージ・デバイスには格納されません。

-methodパラメータの指定は、修正スクリプトのコンテキストに適しています。権限委任を選択すると、一度にすべての修正スクリプトをローカル・ノードから実行できます。権限委任を選択しない場合は、各関連ノードにrootとしてログインしてから修正スクリプトを実行する必要があります。

CVUヘルプの使用

cluvfyコマンドには、入力されたコマンドライン引数に基づいて使用方法を表示する状況依存ヘルプがあります。たとえば、cluvfyと入力すると、ステージおよびコンポーネントの構文について説明する、一般的な使用方法を示す高水準のテキストがCVUにより表示されます。状況依存ヘルプのコマンドのリストを次に示します。

- cluvfy -help: CVUは、CVUコマンドの詳細情報を表示します。

- cluvfy -version: CVUは、Oracle Clusterwareのバージョンを表示します。

- cluvfy comp -list: CVUは、チェック可能なコンポーネントのリストと、ユーティリティが各コンポーネントをチェックする方法についての簡単な説明を表示します。

- cluvfy comp -help: CVUは、それぞれの有効なコンポーネントをチェックするための詳細な構文を表示します。

- cluvfy stage -list: CVUは、有効なステージのリストを表示します。

- cluvfy stage -help: CVUは、それぞれの有効なステージをチェックするための詳細な構文を表示します。

また、任意のCVUコマンドに-helpオプションを使用することもできます。たとえば、cluvfy stage -pre nodeadd -helpを実行すると、この特定のコマンドに関する詳細情報が戻されます。

無効なCVUコマンドを入力すると、CVUによって、そのコマンドの正しい使用方法が表示されます。たとえば、cluvfy stage -pre dbinstと入力すると、dbinstステージの事前チェック・コマンドの正しい構文がCVUにより表示されます。CVUコマンドの詳細を表示するには、cluvfy -helpと入力します。

特別なCVU項目

この項には次のトピックが含まれます:

- 修正スクリプトの生成

- CVUを使用した、インストールの前提条件を満たしているかどうかの確認

- Oracle Database 10gリリース1または2でのCVUの使用

- 開始基準および終了基準

- 冗長モードおよびUNKNOWN出力

- CVUのノード・リストのショートカット

修正スクリプトの生成

特定のCVUコマンドで-fixupフラグを指定すると、インストール前にfixupスクリプトを生成できます。また、Oracle Universal Installerでは、インストール中にfixupスクリプトを生成することもできます。その後、インストーラによって、個々のターミナル・セッションでrootとしてスクリプトを実行するように要求されます。fixupスクリプトをコマンドラインから生成した場合は、生成したスクリプトをrootとして実行できます。スクリプトを実行すると、カーネルの値が最低限必要な値に引き上げられ、必要に応じて、他のオペレーティング・システムの構成が実行されます。

または、特定のCVUコマンドには-methodパラメータを指定できます。これによって、権限委任が有効化され、ローカル・ノードからrootとして修正スクリプトをリモート・ノードで実行できるようになります。

関連項目:

権限およびセキュリティ

CVUを使用した、インストールの前提条件を満たしているかどうかの確認

CVUを使用して、インストールに関するシステムの前提条件が満たされているかどうかを確認できます。既存のOracleソフトウェア・インストールがあるシステムにOracle Database 12cソフトウェアをインストールする場合に、このオプションを使用します。このオプションを使用する際には、次の点に注意してください。

- インストールの実行に使用する予定のユーザー・アカウントでCVUを実行する必要があります。CVUはrootでは実行できず、また、インストールを実行するユーザー以外のユーザーでCVUを実行すると、インストールまたはその他の構成チェックに対してユーザーおよびグループの構成の正確さが保証されません。

- クラスタ全体のステータスのチェックを完了するには、その前にすべてのクラスタ・ノードでSSHを構成する必要があります。インストーラを使用してSSHの構成を実行するか、またはユーザー自身がクラスタ内のすべてのノード間でSSHの構成を実行できます。CVUを使用して、SSH接続を構成する修正スクリプトを生成することもできます。

- CVUでは完了しておく必要があるインストール前の手順を検出することができますが、インストール前のタスクは実行できません。

完了しているインストール前の手順、および実行する必要のあるインストール前の手順を確認するには、次の構文を使用します。必要に応じて、-fixupを指定してコマンドを実行し、カーネルの構成タスクを実行するfixupスクリプトを生成します。

$ ./runcluvfy.sh stage -pre crsinst -fixup -n node_list

前述の構文例のnode_list変数には、クラスタ内のノードの名前をカンマで区切って指定します。Windowsの場合、カンマで区切られたノードのリストは二重引用符("")で囲む必要があります。

たとえば、マウントポイントが/mnt/dvdrom/で、ノードがnode1、node2およびnode3のクラスタの場合は、次のようにコマンドを入力します。

$ cd /mnt/dvdrom/
$ ./runcluvfy.sh stage -pre crsinst -fixup -n node1,node2,node3

CVUのレポートを確認して、必要に応じて追加の手順を実行します。

関連項目:

製品のインストールの詳細は、ご使用のプラットフォーム固有のインストレーション・ガイドを参照してください。

Oracle Database 10gリリース1または2でのCVUの使用

Oracle Database 12cメディアのCVUを使用して、Oracle Database 10gリリース1 (10.1)以上のインストールのシステム要件を確認します。CVUを使用してOracle Clusterwareのインストールをチェックするには、標準のCVUシステム・チェック・コマンドに、コマンド-r release_codeフラグを追加します。

たとえば、メディアのマウントポイントが/mnt/dvdrom/で、クラスタ・ノードがnode1、node2およびnode3であるシステムで、Oracle Clusterwareバージョン10.2のインストール前に検証チェックを実行するには、次のようにコマンドを入力します。

$ cd /mnt/dvdrom
$ ./runcluvfy.sh stage -pre crsinst -n node1,node2,node3 -r 10.2

注意:

チェックするリリース・バージョンを指定しなかった場合、CVUは、12cリリース1 (12.1)の要件についてチェックします。

開始基準および終了基準

ステージを検証する際に、CVUは、開始基準および終了基準を使用します。各ステージに開始基準が設定されており、そのステージを開始する前に実行される特定の検証タスクのセットが定義されています。このチェックを行うと、そのステージのOracle Clusterwareの前提条件を満たさないかぎり、Oracle Clusterwareのインストールなどのステージを開始できません。

ステージの終了基準は、ステージの完了後に実行する必要がある検証タスクの別のセットを定義します。事後チェックによって、ステージのアクティビティが確実に完了します。事後チェックでは、後続のステージに伝播する前にステージ固有の問題が識別されます。

冗長モードおよびUNKNOWN出力

デフォルトでは、CVUによるレポートは非冗長モードでテストのサマリーのみがレポートされますが、-verbose引数を使用すると詳細な出力を取得できます。-verbose引数を指定すると、個別のチェックの詳細な出力が生成され、適用可能な場合には各ノードの結果が表レイアウトで表示されます。

cluvfyコマンドが特定のノードについてUNKNOWNと応答した場合、これは、チェックの合格または失敗をCVUが判別できないためです。この原因は、そのノードに対する到達可能性がないか、またはユーザー等価関係が存在しないことです。また、CVUによるチェックの実行時にそのノード上で発生していたシステムの問題が原因の場合もあります。

UNKNOWNという結果について考えられる原因のリストを次に示します。

- ノードが停止している。

- Grid_home/binまたはOracle homeディレクトリにCVUが必要とする実行可能ファイルが存在しない

- CVUを実行したユーザー・アカウントに対して、ノード上の一般的なオペレーティング・システム実行可能ファイルを実行する権限が付与されていない

- オペレーティング・システム・パッチまたは必要なパッケージがノードに適用されていない

- ノードの最大プロセス数または最大オープン・ファイル数を超えているか、共有メモリー、セマフォなど、IPCセグメントに問題が発生している。

CVUのノード・リストのショートカット

CVUにクラスタのすべてのノードのリストを提供するには、-n allと入力します。CVUは、次の順序でノード・リストの取得を試行します。

1. ベンダーのクラスタウェアが使用可能な場合、CVUは、lsnodesユーティリティを使用して、構成されているすべてのノードをベンダーのクラスタウェアから選択します。

2. Oracle Clusterwareがインストールされている場合、CVUは、olsnodesユーティリティを使用して、構成されているすべてのノードをOracle Clusterwareから選択します。

3. ベンダーのクラスタウェアおよびOracle Clusterwareのいずれもインストールされていない場合、CVUは、構成ファイルでCV_NODE_ALLキーの値を検索します。

4. ベンダーのクラスタウェアおよびOracle Clusterwareのいずれもインストールされておらず、構成ファイルにCV_NODE_ALLというキーが存在しない場合、CVUは、環境変数CV_NODE_ALLの値を検索します。この変数が設定されていない場合、CVUはエラーをレポートします。

環境変数を設定してその変数をCVUコマンドに使用すると、部分的なノード・リストを提供できます。たとえば、LinuxまたはUNIXのシステム上で次のように入力できます。

setenv MYNODES node1,node3,node5
cluvfy comp nodecon -n $MYNODES [-verbose]

クラスタ検証ユーティリティのコマンド・リファレンス

この項では、次のCVUコマンドについて説明します。

- cluvfy comp acfs

- cluvfy comp admprv

- cluvfy comp asm

- cluvfy comp baseline

- cluvfy comp clocksync

- cluvfy comp clumgr

- cluvfy comp crs

- cluvfy comp dhcp

- cluvfy comp dns

- cluvfy comp freespace

- cluvfy comp gns

- cluvfy comp gpnp

- cluvfy comp ha

- cluvfy comp healthcheck

- cluvfy comp nodeapp

- cluvfy comp nodecon

- cluvfy comp nodereach

- cluvfy comp ocr

- cluvfy comp ohasd

- cluvfy comp olr

- cluvfy comp peer

- cluvfy comp scan

- cluvfy comp software

- cluvfy comp space

- cluvfy comp ssa

- cluvfy comp sys

- cluvfy comp vdisk

- cluvfy stage [-pre | -post] acfscfg

- cluvfy stage [-pre | -post] cfs

- cluvfy stage [-pre | -post] crsinst

- cluvfy stage -pre dbcfg

- cluvfy stage -pre dbinst

- cluvfy stage [-pre | -post] hacfg

- cluvfy stage -post hwos

- cluvfy stage [-pre | -post] nodeadd

- cluvfy stage -post nodedel

cluvfy comp acfs

クラスタ内のすべてのノード上でOracle Automatic Storage Management Cluster File System (Oracle ACFS)の整合性をチェックするには、cluvfy comp acfsコンポーネント検証コマンドを使用します。

構文

cluvfy comp acfs [-n node_list] [-f file_system] [-verbose]

パラメータ

表A-2 cluvfy comp acfsコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-f file_system

チェックするファイル・システムの名前です。

-verbose

CVUは詳細な出力を表示します。

cluvfy comp admprv

cluvfy comp admprvコマンドを使用し、-oパラメータで指定された操作に必要な管理権限を、ノード・リストに指定したすべてのノードでチェックします。操作は相互に排他的であり、一度に1つの操作しか指定できません。

構文

LinuxおよびUNIXプラットフォームの場合:

cluvfy comp admprv [-n node_list] -o user_equiv [-sshonly] |
-o crs_inst [-asmgrp asmadmin_group] [-asmdbagrp asmdba_group] [-orainv orainventory_group]
[-fixup] [-fixupnoexec] [-method {sudo -user user_name [-location directory_path] | root}]
| -o db_inst [-osdba osdba_group] [-fixup] [-fixupnoexec]
[-method {sudo -user user_name [-location dir_path] | root}] |
-o db_config -d oracle_home [-fixup] [-fixupnoexec]
[-method {sudo -user user_name [-location directory_path] | root}] [-verbose]

Windowsプラットフォームの場合:

cluvfy comp admprv [-n node_list] | -o user_equiv | -o crs_inst [-fixup] [-fixupnoexec]
| -o db_inst [-fixup] [-fixupnoexec] | -o db_config -d oracle_home [-fixup] [-fixupnoexec]
[-verbose]

パラメータ

表A-3 cluvfy comp admprvコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-o user_equiv [-sshonly]

ノード間のユーザー等価関係をチェックします。LinuxおよびUNIXプラットフォームでは、このコマンドはsshを使用してユーザー等価関係を検証します。

-o crs_inst [-asmgrp asmadmin_group]
[-asmdbagrp asmdba_group]
[-orainv orainventory_group]

Oracle Clusterwareをインストールするための管理権限をチェックします。必要に応じて、次の情報を指定できます。

- -asmgrp: OSASMグループの名前を指定します。デフォルトはasmadminです。

- -asmdbagrp: ASMDBAグループの名前を指定します。デフォルトはasmdbaです。

- -orainv: Oracle Inventoryグループの名前を指定します。デフォルト値はoinstallです。

-o db_inst [-osdba osdba_group]

Oracle RACデータベースをインストールするための管理権限をチェックします。必要に応じて、次の情報を指定できます。

- -osdba: OSDBAグループの名前です。デフォルトはdbaです。

-o db_config -d oracle_home

Oracle RACデータベースを作成または構成するための管理権限をチェックします。Oracle RACデータベースのOracleホームの場所を指定します。

-fixup

検証が失敗した場合に、可能であればCVUでfixupの指示を生成することを指定します。

-fixupnoexec

検証が失敗した場合に、CVUで修正データを生成し、生成された修正を手動で実行するための指示を表示するように指定します。

-method {sudo -user user_name
[-location dir_path] | root}

rootユーザー・アクセスの権限委任方法がsudoかrootかを指定します。sudoを指定すると、root権限ですべてのノードにアクセスするためにユーザー名を指定する必要があります。必要に応じて、sudo実行可能ファイルのファイル・システムのフルパスも指定します。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

- デフォルトでは、等価関係のチェックでは、Xフォワードを無効にしているかどうか、環境変数DISPLAYを適切に設定しているかどうかなど、X-Windows構成の検証は行われません。
ユーザー等価関係のチェックでX-Windowsについて検証するには、cluvfy comp admprv -o user_equivコマンドを実行する前にCV_HOME/cv/admin/cvu_configディレクトリに存在する構成ファイルでCV_XCHK_FOR_SSH_ENABLEDキーをTRUEに設定します。

例

例1: Oracle Clusterwareのインストールに必要な権限の検証

次のコマンドを実行すると、Oracle Clusterwareのインストールに必要な権限が、ノードracnode1およびracnode2で構成されているかどうかを検証できます。

cluvfy comp admprv -n racnode1,racnode2 -o crs_inst -verbose

例1: Oracle RACデータベースの管理権限の検証

次のコマンドを実行すると、C:\app\oracle\product\11.2.0\dbhome_1 Oracleホーム・ディレクトリを使用しているOracle RACデータベースの作成または変更に必要な権限を検証し、その権限を構成するスクリプトを生成できます。

cluvfy comp admprv -n racnode1,racnode2 -o db_config -d C:\app\oracle\product\11.2.0\dbhome_1 -fixup -verbose

cluvfy comp asm

クラスタ内の特定のノード上でOracle Automatic Storage Management(Oracle ASM)の整合性をチェックするには、cluvfy comp asmコンポーネント検証コマンドを使用します。このチェックでは、指定ノードのOracle ASMインスタンスが同じOracleホームから実行されていること、およびasmlibが存在する場合は、これが有効なバージョンであり、所有権を持つことが確認されます。

構文

cluvfy comp asm [-n node_list] [-verbose]

パラメータ

表A-4 cluvfy comp asmコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

例

すべてのノードのOracle ASMの整合性の検証

クラスタのすべてのノードのOracle ASMの整合性を検証するには、次のコマンドを使用します。

cluvfy comp asm –n all

このコマンドを実行すると、次のような出力が生成されます。

Verifying ASM Integrity

Task ASM Integrity check started...

Starting check to see if ASM is running on all cluster nodes...

ASM Running check passed. ASM is running on all specified nodes

Starting Disk Groups check to see if at least one Disk Group configured...
Disk Group Check passed. At least one Disk Group configured

Task ASM Integrity check passed...

Verification of ASM Integrity was successful.

cluvfy comp baseline

システムとクラスタの構成情報を取得してベースラインを作成するには、cluvfy comp baselineコマンドを使用します。このベースラインをシステムの状態との比較に使用できます。ベースラインの収集は、Oracle Clusterwareのインストール後やOracle Clusterwareのアップグレード前後といった戦略的なタイミングで、またはOracle ClusterwareリソースとしてCVUを定期的に実行するのに合わせて自動的に実行できます。また、複数のベースラインを比較することもできます。

構文

cluvfy comp baseline -collect {all | cluster | database} [-n node_list]
[-d Oracle_home] [-db db_unique_name] [-bestpractice | -mandatory] [-binlibfilesonly
[-reportname report_name] [-savedir save_dir]

cluvfy comp baseline -compare baseline1,baseline2,... [-deviations]

パラメータ

表A-5 cluvfy comp baselineコマンドのパラメータ

パラメータ

説明

-collect {all | cluster |
database}

-collectパラメータは、ベースラインを作成してGrid_home/cv/report/xmlディレクトリに保存するようにCVUに指定します。

Oracle Clusterware (cluster)、データベース(database)、またはその両方(all)に関するベースラインを収集できます。

-n node_list

テストを行う非ドメイン修飾ノード名のカンマ区切りリストを指定します。

-d Oracle_home

データベース・ベースラインを収集するとき、Oracleホームを指定すると、CVUは、Oracleホームで実行しているすべてのデータベースのベースラインを収集します。

特定のデータベースのベースラインを収集するには-dbパラメータを使用します。

-db db_unique_name

情報を収集するデータベースの名前。

データベース・ベースラインを収集する場合、-dbパラメータを指定すると、CVUは指定されたデータベースのベースラインのみを収集します。-dbを指定していない場合、CVUはシステムに構成されているすべてのクラスタ・データベースを検出し、それぞれのベースラインを収集します。

-bestpractice | -mandatory

ベスト・プラクティス推奨事項のみのベースラインを収集するには、-bestpracticeを指定します。必須要件のみのベースラインを収集するには、-mandatoryを指定します。

-binlibfilesonly

ソフトウェア・ホームのbin/、lib/、およびjlib/サブディレクトリにあるファイルのみを収集するには、-binlibfilesonlyを指定します。

-report report_name

レポートの名前を指定するには、このオプション・パラメータを使用します。

-savedir save_dir

CVUがレポートを保存する場所を指定するには、このオプション・パラメータを使用します。-savedirオプションを指定しない場合、CVUは、レポートをGrid_home/cv/reportディレクトリに保存します。

-compare baseline1,baseline2,...

ベースラインを比較するには、-compareを指定します。1つのベースラインのみを指定した場合、CVUは、収集の結果を表示します。カンマ区切りリストで複数のベースラインを指定した場合、CVUは、HTMLドキュメントでベースラインの値を相互に比較します。

-deviations

このパラメータを指定して、ベスト・プラクティスの推奨事項からの差異のみ、または必須要件からの差異のみ、あるいは両方の差異を表示します(-bestpracticeパラメータと-mandatoryパラメータの有無によって変わります)。

使用上の注意

- -collectまたは-compareパラメータのいずれかを指定します。

- このコマンドの実行時にCVUが収集するアイテムは次のとおりです。

- 物理メモリー

- 使用可能なメモリー

- スワップ領域

- 空き領域

- 必須パッケージ

- 推奨するカーネル・パラメータ

- /etc/inittab権限

- /var/tmp/.oracleの下のドメイン・ソケット

- Oracle Clusterwareソフトウェア・ファイルの属性

- ネットワークMTUサイズ

- OCR権限、グループおよび所有者(OCRが共有ファイル・システムに格納されている場合)

- OCRディスク・グループ(OCRがOracle ASMに格納されている場合)

- システム要件プラガブル・タスク(ゼロ構成ネットワーク設定、/bootマウント、Huge Pagesの存在、8888ポートの可用性、イーサネット・ジャンボ・フレーム)

- Oracle Clusterware事後チェック・プラガブル・タスク(css miscount、reboottime、disktimeout)

- データベースのベスト・プラクティス

例

次の例は、-collectと-compareの両方のコマンド・パラメータの使用方法を示しています。

$ cluvfy comp baseline -collect all -n all -db orcl -bestpractice -report bl1
-savedir /tmp

$ cluvfy comp baseline -compare bl1,bl2

cluvfy comp clocksync

ノード・リストのすべてのノード間のクロック同期を実行するには、cluvfy comp clocksyncコンポーネント検証コマンドを使用します。CVUは、時刻同期サービス(Oracleクラスタ時刻同期化サービス(CTSS)またはネットワーク・タイム・プロトコル(NTP))が実行されていること、各ノードがクロック同期用に同じ参照サーバーを使用していること、および各ノードの時間オフセットが許容範囲内であることを検証します。

構文

cluvfy comp clocksync [-noctss] [-n node_list] [-verbose]

パラメータ

表A-6 cluvfy comp clocksyncコマンドのパラメータ

パラメータ

説明

-noctss

このオプションを指定した場合、CVUは、CTSSに対してチェックを実行しません。かわりに、CVUはNTPなどのプラットフォーム固有の時刻同期サービスをチェックします。

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

cluvfy comp clumgr

ノード・リスト内のノード上でCluster ManagerサブコンポーネントまたはOracleクラスタ同期サービス(CSS)の整合性をチェックするには、cluvfy comp clumgrコンポーネント検証コマンドを使用します。

構文

cluvfy comp clumgr [-n node_list] [-verbose]

パラメータ

表A-7 cluvfy comp clumgrコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

cluvfy comp crs

指定したノードのクラスタ・レディ・サービス(CRS)デーモンの整合性を確認するには、cluvfy comp crsコンポーネント検証コマンドを実行します。

構文

cluvfy comp crs [-n node_list] [-verbose]

パラメータ

表A-8 cluvfy comp crsコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

cluvfy comp dhcp

ネットワークにDHCPサーバーが存在すること、および必要なIPアドレス数を提供できるかどうかを検証するには、cluvfy comp dhcpコンポーネント検証コマンドを使用します。必要なIPアドレス数は次のように計算されます。

- 3つのSCAN VIP(クラスタのサイズにかかわらず必要)

- -nオプションで指定するノードごとに1つのノードVIP

- -vipresnameオプションで指定するアプリケーションVIPリソースごとに1つのアプリケーションVIP

この検証では、DHCPサーバーの応答時間も検証します。

構文

cluvfy comp dhcp -clustername cluster_name [-vipresname application_vip_resource_name]
[-port dhcp_port] [-n node_list] [-method {sudo -user user_name [-location directory_path] | root}]
[-networks network_list] [-verbose]

パラメータ

表A-9 cluvfy comp dhcpコマンドのパラメータ

パラメータ

説明

-clustername cluster_name

DHCPの整合性を確認するクラスタの名前です。

-vipresname application_vip_resource_name

アプリケーションVIPリソースの名前のカンマ区切りリスト。

-port dhcp_port

DHCPパッケージの送信先ポート。デフォルトのポートは67です。

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-method {sudo -user user_name
[-location directory_path] | root}

rootユーザー・アクセスの権限委任方法がsudoかrootかを指定します。sudoを指定すると、root権限ですべてのノードにアクセスするためにユーザー名を指定する必要があります。必要に応じて、sudo実行可能ファイルのファイル・システムのフルパスも指定します。

-networks network_list

CVUでチェックするクラスタのネットワーク分類をスラッシュ(/)で区切ってリストとして指定します。各ネットワークの形式は、"if_name"[:subnet_id[:if_type[,if_type...]]]です。

この形式では、if_nameを二重引用符で囲む必要があります。また、正規表現(".*")を使用できます。たとえば、"eth*"はeth1やeth02のようなインタフェースと一致します。subnet_idはネットワーク・インタフェースのサブネット番号です。if_typeはインタフェース・タイプ({CLUSTER_INTERCONNECT | PUBLIC | ASM})のカンマ区切りリストです。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

- このコマンドは、rootで実行する必要があります。

- DHCP提供のIPアドレスを使用するように構成されたデフォルト・ネットワークOracle Clusterwareリソースがオンラインになっている場合は、このチェックを実行しないでください(VIPがリリースされ、クラスタがオンラインになってからDHCPによってIPが提供されているため、DHCPサーバーへの負荷を倍増させる必要がないためです)。

- このチェックはローカル・ノードで実行します。これは、ノード・リストに指定されたすべてのノードで実行する他のCVUコマンドとは異なります。この結果、-nオプションで指定したノード・リストにローカル・ノードが含まれなくても、エラー・メッセージがローカル・ノードに報告されます。

- このコマンドを実行する前に、ネットワーク・リソースがオフラインであることを確認します。必要に応じて、srvctl stop nodeappsコマンドを使用してネットワーク・リソースをオフラインにします。

関連項目:

srvctl stop nodeappsコマンドの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

cluvfy comp dns

cluvfy comp dnsコンポーネント検証コマンドを使用してグリッド・ネーミング・サービス(GNS)サブドメインの委譲がドメイン名サービス(DNS)サーバーで適切に設定されているかを検証します。

注意:

このコマンドはWindowsではサポートされません。

構文

cluvfy comp dns -server -domain gns_sub_domain -vipaddress gns_vip_address [-port dns_port]
[-method {sudo -user user_name [-location directory_path] | root}] [-verbose]

cluvfy comp dns -client -domain gns_sub_domain -vip gns_vip [-port dns_port]
[-last] [-method {sudo -user user_name [-location directory_path] | root}] [-verbose]

パラメータ

表A-10 cluvfy comp dnsコマンドのパラメータ

パラメータ

説明

-server

-domainオプションに指定したドメインでリスニングするGNSサブドメインのテストDNSサーバーを起動します。

-client

特定のアドレスで起動されるテストDNSサーバーへの接続を検証します。DNSサーバーの起動時に指定した情報と同じ内容を指定する必要があります。

-domain gns_sub_domain

GNSのサブドメイン名です。

-vipaddress gns_vip_address

{ip_name | ip_address}/net_mask/interface_nameの形式のGNS仮想IPアドレスです。ip_name(IPアドレスに解決される名前)またはIP_address(IPアドレス)のいずれかを指定できます。名前またはアドレスの後に、net_mask(IPアドレスのサブネット・マスク)、およびinterface_name(IPアドレスを開始するインタフェース)が続きます。

-vip gns_vip

GNSの仮想IPアドレスであり、IPアドレスに解決される名前またはドット区切りの10進数数字のIPアドレスのいずれかです。

-port dns_port

DNSサーバーがリスニングするポート。デフォルトのポートは53です。

-last

すべての検証が完了すると、テストDNSサーバーに終了リクエストを送信します。

-method {sudo -user user_name
[-location directory_path] | root}

rootユーザー・アクセスの権限委任方法がsudoかrootかを指定します。sudoを指定すると、root権限ですべてのノードにアクセスするためにユーザー名を指定する必要があります。必要に応じて、sudo実行可能ファイルのファイル・システムのフルパスも指定します。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

- このコマンドは、rootで実行する必要があります。

- クラスタの1つのノードでcluvfy comp dns -serverを実行します。

- クラスタのDNSサーバー設定を確認する場合は、クラスタの各ノードでcluvfy comp dns -clientを実行します。

- 最後のノードで、-lastオプションを指定してcluvfy comp dns -serverインスタンスを終了します。

- GNSリソースがオンラインのときは、このコマンドを実行しないでください。

cluvfy comp freespace

Oracle Clusterwareホームの記憶域で利用できる空き領域をチェックして、合計領域の5%以上が利用できることを確認するには、cluvfy comp freespaceコンポーネント検証コマンドを使用します。たとえば、記憶域の合計が10GBの場合、このチェックで500MB以上が空いていることを確認します。

構文

cluvfy comp freespace [-n node_list]

-nオプションを含める場合、コマンドを実行するノード名のカンマ区切りのリストを入力します。

cluvfy comp gns

クラスタ上のグリッド・ネーミング・サービス(GNS)の整合性を検証するには、cluvfy comp gnsコンポーネント検証コマンドを使用します。

構文

cluvfy comp gns -precrsinst {-vip gns_vip [-domain gns_domain] | -clientdata file_name}
[-networks network_list] [-n node_list] [-verbose]

cluvfy comp gns -postcrsinst [-verbose]

パラメータ

表A-11 cluvfy comp gnsコマンドのパラメータ

パラメータ

説明

-precrsinst

Oracle Clusterwareのインストール前に、GNSドメイン名とVIPアドレスをチェックします。

-vip gns_vip

GNS仮想IPアドレスを指定します。-vipと-domainを一緒に指定すると、このクラスタがGNSサーバー(ローカルGNS)になれるかどうかをCVUが検証します。

-domain gns_domain

必要に応じて、GNSサブドメイン名を指定できます。

-clientdata file_name

GNS資格証明を含むファイルの名前を指定します。CVUは、このクラスタが指定されたクライアント・データを使用して、別のGNSサーバー・クラスタ(共有GNS)のクライアントGNSクラスタになれることを検証します。

-networks network_list

CVUでチェックする、クラスタのネットワーク分類をGNSのパブリック・ネットワークを含めて、スラッシュ(/)で区切ってリストとして指定します。各ネットワークの形式は、"if_name"[:subnet_id[:if_type[,if_type...]]]です。

この形式では、if_nameを二重引用符で囲む必要があります。また、正規表現(".*")を使用できます。たとえば、"eth*"はeth1やeth02のようなインタフェースと一致します。subnet_idはネットワーク・インタフェースのサブネット番号です。if_typeはインタフェース・タイプ({CLUSTER_INTERCONNECT | PUBLIC | ASM})のカンマ区切りリストです。

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-postcrsinst

クラスタのすべてのノードのGNSの整合性を確認します。

-verbose

CVUは詳細な出力を表示します。

cluvfy comp gpnp

クラスタ内のリストのノード上でグリッド・プラグ・アンド・プレイの整合性をチェックするには、cluvfy comp gpnpコンポーネント検証コマンドを使用します。

構文

cluvfy comp gpnp [-n node_list] [-verbose]

パラメータ

表A-12 cluvfy comp gpnpコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

cluvfy comp ha

ローカル・ノード上でOracle Restartの整合性をチェックするには、cluvfy comp haコンポーネント検証コマンドを使用します。

構文

cluvfy comp ha [-verbose]

-verboseオプションを指定すると、CVUは詳細な出力を表示します。

cluvfy comp healthcheck

Oracle ClusterwareおよびOracle Databaseインストールをチェックして、必須要件およびベスト・プラクティス・ガイドラインへの適合性を調べたり正しく動作していることを確認するには、cluvfy comp healthcheckコンポーネント検証コマンドを使用します。

構文

cluvfy comp healthcheck [-collect {cluster|database}] [-db db_unique_name]
[-bestpractice|-mandatory] [-deviations] [-html] [-save [-savedir directory_path]]

パラメータ

表A-13 cluvfy comp healthcheckコマンドのパラメータ

パラメータ

説明

-collect {cluster|database}

Oracle Clusterware (cluster)またはOracle Database (database)のチェックを実行することを指定するには、-collectを使用します。healthcheckオプションで-collectフラグを使用しない場合、CVUではOracle ClusterwareとOracle Databaseの両方のチェックが実行されます。

-db db_unique_name

-dbフラグの後に入力する特定のデータベースでのチェックを指定するには、-dbを使用します。

CVUでは、JDBCを使用してcvusysユーザーとしてデータベースに接続し、様々なデータベース・パラメータが検証されます。このため、-dbフラグで指定したデータベースに対してCVUによるチェックを実行する場合は、まずそのデータベースにcvusysユーザーを作成し、そのユーザーにCVU固有のロールcvusappを付与する必要があります。cvusappの役割のメンバーに、システム表に対するselect権限を付与する必要もあります。

CVU_home/cv/admin/cvusys.sqlディレクトリにSQLスクリプトが含まれており、このユーザーを簡単に作成できます。このSQLスクリプトを使用して、CVUにより検証するすべてのデータベースでcvusysユーザーを作成します。

-dbフラグを使用し、一意のデータベース名を指定しない場合、CVUではクラスタのすべてのOracle Databaseが検出されます。これらのデータベースでベスト・プラクティス・チェックを実行する場合は、各データベースでcvusysユーザーを作成し、ベスト・プラクティス・チェックを実行するために必要なcvusappロールとselect権限をこのユーザーに付与する必要があります。

[-bestpractice|-mandatory]
[-deviations]

ベスト・プラクティスのチェックを指定するためには-bestpracticeフラグを使用し、必須のチェックを指定するためには-mandatoryフラグを使用します。ベスト・プラクティスの推奨事項または必須要件からの差異のみを確認することを指定するには、-deviationsフラグを追加します。-bestpracticeまたは-mandatoryのいずれかのフラグを指定できますが、両方のフラグを指定することはできません。-bestpracticeまたは-mandatoryのいずれも指定しない場合は、CVUによってベスト・プラクティスと必須要件の両方が表示されます。

-html

-htmlフラグを使用すると、詳細レポートがHTML形式で生成されます。

-htmlフラグを指定し、CVUによって認識されるブラウザがシステムで使用可能な場合は、チェックの完了時にCVUによってそのブラウザが起動され、レポートがブラウザに表示されます。

-htmlフラグを指定しない場合、CVUによって詳細なレポートがテキスト・ファイルで生成されます。

-save [-savedir directory_path]

検証レポート(cvuchecdkreport_timestamp.txtおよびcvucheckreport_timestamp.htm)を保存するには、-saveフラグまたは-save -savedirフラグを使用します(timestampは検証レポートの日時)。

-saveフラグを単独で使用する場合、CVUは、CVU_home/cv/reportディレクトリ(CVU_homeはCVUバイナリの場所)にレポートを保存します。

-save -savedirフラグを使用する場合、CVUによってレポートが保存されるディレクトリを指定します。

cluvfy comp nodeapp

指定したすべてのノード上でノード・アプリケーション(VIP、NETWORK、およびONS)の存在をチェックするには、コンポーネント・コマンドcluvfy comp nodeappを使用します。

構文

cluvfy comp nodeapp [-n node_list] [-verbose]

パラメータ

表A-14 cluvfy comp nodeappコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

cluvfy comp nodecon

ノード・リストに指定されたノード間の接続性をチェックするには、cluvfy comp nodeconコンポーネント検証コマンドを使用します。インタフェース・リストを指定した場合、CVUは、指定したインタフェースのみを使用して接続性をチェックします。

構文

cluvfy comp nodecon [-n node_list] [-networks network_list] [-verbose]

パラメータ

表A-15 cluvfy comp nodeconコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

-networks network_list

検証を実行するネットワークのスラッシュ(/)区切りリスト。

-i interface_list

インタフェース名のカンマ区切りリストです。このオプションを指定しない場合、CVUは、使用可能なインタフェースを検出し、いずれかのインタフェースを使用して接続性をチェックします。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

- このコマンドを冗長モードで実行して、インタフェース、IPアドレスおよびサブネット間のマッピングを識別できます。

- このコマンドは、Solarisプラットフォームでは、非推奨とマークされているIPアドレスのテストを省略します。

- CVUを使用して次の操作を実行するには、-networksオプションを指定せず、-nにallを設定してnodeconコマンドを使用します。

- クラスタ・ノード上で使用可能なすべてのネットワーク・インタフェースの検出

- インタフェースの対応するIPアドレスおよびサブネットの確認

- VIPとしての使用に適したインタフェースのリストおよびプライベート・インターコネクトのインタフェースのリストの取得

- これらのインタフェースを介したすべてのノード間の接続性の検証

例

例1: 特定のネットワーク・インタフェースを介したノード間の接続性の検証

次のコマンドを実行すると、インタフェースeth0を介してnode1およびnode3のノード間の接続性を検証できます。

cluvfy comp nodecon -n node1/node3 –networks eth0 -verbose

例2: 使用可能なすべてのネットワーク・インタフェースの検出およびそれらのネットワーク・インタフェースを介したノード間の接続性の検証

クラスタ・ノード上で使用可能なすべてのネットワーク・インタフェースを検出するには、次のコマンドを使用します。これで、CVUによって、インタフェースの対応するIPアドレスおよびサブネットが確認されます。次に、この情報を使用して、VIPとしての使用に適したインタフェースのリストおよびプライベート・インターコネクトのインタフェースのリストがCVUにより取得されます。最後に、これらのインタフェースを介したクラスタ内のすべてのノード間の接続性がCVUにより検証されます。

cluvfy comp nodecon -n all -verbose

cluvfy comp nodereach

指定したノードのソース・ノードからの到達可能性をチェックするには、cluvfy comp nodereachコンポーネント検証コマンドを使用します。

構文

cluvfy comp nodereach -n node_list [-srcnode node] [-verbose]

パラメータ

表A-16 cluvfy comp nodereachコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

-srcnode node

CVUが到達可能性テストを実行するソース・ノードの名前です。ソース・ノードを指定しない場合、コマンドを実行するノードがソース・ノードとして使用されます。

-verbose

CVUは詳細な出力を表示します。

例

クラスタのノード間のネットワーク接続性の検証

ローカル・ノードからnode3にネットワーク経由で到達可能かどうかを検証するには、次のコマンドを使用します。

cluvfy comp nodereach -n node3

このコマンドを実行すると、次のような出力が生成されます。

Verifying node reachability

Checking node reachability...
Node reachability check passed from node “node1"

Verification of node reachability was successful.

cluvfy comp ocr

指定したすべてのノード上でOracle Cluster Registry(OCR)の整合性をチェックするには、cluvfy comp ocrコンポーネント検証コマンドを使用します。

構文

cluvfy comp ocr [-n node_list] [-method {sudo -user user_name [-location directory_path] | root}]
[-verbose]

パラメータ

表A-17 cluvfy comp ocrコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-method {sudo -user user_name
[-location directory_path] | root}

rootユーザー・アクセスの権限委任方法がsudoかrootかを指定します。sudoを指定すると、root権限ですべてのノードにアクセスするためにユーザー名を指定する必要があります。必要に応じて、sudo実行可能ファイルのファイル・システムのフルパスも指定します。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

このコマンドは、OCRの内容の整合性を検証しません。OCRの内容を検証するには、OCRCHECKユーティリティを使用する必要があります。

例

ローカル・ノードでのOCRの整合性の検証

ローカル・ノードでのOCRの整合性を検証するには、次のコマンドを実行します。

cluvfy comp ocr

このコマンドを実行すると、次のような出力が生成されます。

Verifying OCR integrity

Checking OCR integrity...

Checking the absence of a non-clustered configurationl...
All nodes free of non-clustered, local-only configurations

ASM Running check passed. ASM is running on all specified nodes

Checking OCR config file “/etc/oracle/ocr.loc"...

OCR config file “/etc/oracle/ocr.loc" check successful

Disk group for ocr location “+DATA" available on all the nodes

NOTE:
This check does not verify the integrity of the OCR contents. Execute ‘ocrcheck' as a privileged user to verify the contents of OCR.

OCR integrity check passed

Verification of OCR integrity was successful.

cluvfy comp ohasd

Oracle高可用性サービス・デーモンの整合性をチェックするには、cluvfy comp ohasdコンポーネント検証コマンドを使用します。

構文

cluvfy comp ohasd [-n node_list] [-verbose]

パラメータ

表A-18 cluvfy comp ohasdコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

例

クラスタのすべてのノード上のOracle高可用性サービス・デーモンの整合性の検証

Oracle高可用性サービス・デーモンがクラスタのすべてのノードで正常に動作しているかどうかを検証するには、次のコマンドを使用します。

cluvfy comp ohasd -n all -verbose

このコマンドを実行すると、次のような出力が生成されます。

Verifying OHASD integrity

Checking OHASD integrity...
ohasd is running on node “node1"
ohasd is running on node “node2"
ohasd is running on node “node3"
ohasd is running on node “node4"

OHASD integrity check passed

Verification of OHASD integrity was successful.

cluvfy comp olr

ローカル・ノード上でOracle Local Registry(OLR)の整合性をチェックするには、cluvfy comp olrコンポーネント検証コマンドを使用します。

構文

cluvfy comp olr [-n node_list] [-verbose]

パラメータ

表A-19 cluvfy comp olrコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

このコマンドは、OLRの内容の整合性を検証しません。OCRの内容を検証するには、ocrcheck -localコマンドを使用する必要があります。

例

ノードのOLRの整合性の検証

現行のノードでOLRの整合性を検証するには、次のコマンドを実行します。

cluvfy comp olr -verbose

このコマンドを実行すると、次のような出力が生成されます。

Verifying OLR integrity

Checking OLR integrity...

Checking OLR config file...

OLR config file check successful

Checking OLR file attributes...

OLR file check successful

WARNING:
This check does not verify the integrity of the OLR contents. Execute ‘ocrcheck -local' as a privileged user to verify the contents of OLR.

OLR integrity check passed

Verification of OLR integrity was successful.

cluvfy comp peer

参照ノードに対する指定ノードの互換性およびプロパティをチェックするには、cluvfy comp peerコンポーネント検証コマンドを使用します。デフォルトのユーザー・グループ名以外の互換性、および異なるリリースのOracleソフトウェアの互換性をチェックできます。このコマンドは、メモリーとスワップ領域などの物理的な属性、ユーザーとグループの値、カーネル設定およびインストール済オペレーティング・システム・パッケージを比較します。

構文

cluvfy comp peer -n node_list [-refnode node]
[-r {10.1 | 10.2 | 11.1 | 11.2 | 12.1}] [-orainv orainventory_group]
[-osdba osdba_group] [-verbose]

パラメータ

表A-20 cluvfy comp peerコマンドのパラメータ

パラメータ

説明

-refnode

他のノードとの互換性をチェックするための参照ノードとしてCVUが使用するノードです。このオプションを指定しない場合、CVUは、ノード・リスト内のすべてのノードについての値をレポートします。

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

-r {10.1 | 10.2 | 11.1 |
11.2 | 12.1}

Oracle ClusterwareまたはOracle RACのインストール要件に合わせて、CVUがチェックするソフトウェア・リリースを指定します。このオプションを指定しない場合、CVUは、Oracle Clusterware 12cまたはOracle Database 12cであると想定します。

-orainv orainventory_group

Oracle Inventoryグループの名前です。このオプションを指定しない場合、CVUは、oinstallをインベントリ・グループとして使用します。

注意: このパラメータは、Windowsシステムでは使用できません。

-osdba osdba_group

OSDBAグループの名前です。このオプションを指定しない場合、CVUは、dbaをOSDBAグループとして使用します。

注意: このパラメータは、Windowsシステムでは使用できません。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

-refnodeオプションによるピアの比較では、他のノードと参照ノードのシステム・プロパティが比較されます。他のノードの値が参照ノードの値より大きくない場合、CVUはその比較に参照ノードからの偏差としてフラグを付けます。グループまたはユーザーが参照ノードまたは別のノードのいずれにも存在しない場合、CVUは一致と報告して、参照ノードからの偏差はないことを示します。同様に、参照ノードよりも総メモリー量が少ないノードの比較結果は、CVUにより不一致と報告されます。

例

選択したクラスタ・ノードの構成の比較

次のコマンドを実行すると、Oracle Database 12cから様々なノードに対して事前選択された複数のプロパティの値が表示されます。

cluvfy comp peer -n node1,node2,node4,node7 -verbose

cluvfy comp scan

単一クライアント・アクセス名(SCAN)構成をチェックするには、cluvfy comp scanコンポーネント検証コマンドを使用します。

構文

cluvfy comp scan [-verbose]

-verboseオプションを指定すると、CVUは詳細な出力を表示します。

例

SCAN構成の検証

SCANおよびSCANリスナーが構成されていて、クラスタのすべてのノードで動作することを検証するには、次のコマンドを使用します。

cluvfy comp scan

このコマンドを実行すると、次のような出力が生成されます。

Verifying scan

Checking Single Client Access Name (SCAN)...

Checking TCP connectivity to SCAN Listeners...
TCP connectivity to SCAN Listeners exists on all cluster nodes

Checking name resolution setup for “node1.example.com"...

Verification of SCAN VIP and Listener setup passed

Verification of scan was successful.

cluvfy comp software

Oracleソフトウェアでインストールされるファイルおよび属性をチェックするには、cluvfy comp softwareコンポーネント検証コマンドを使用します。

構文

cluvfy comp software [-n node_list] [-d oracle_home]
[-r {10.1 | 10.2 | 11.1 | 11.2 | 12.1}] [-allfiles] [-verbose]

パラメータ

表A-21 cluvfy comp softwareコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-d oracle_home

Oracle Databaseソフトウェアをインストールするディレクトリです。このオプションを指定しない場合、Gridホームにインストールされるファイルが検証されます。

-r {10.1 | 10.2 | 11.1 |
11.2 | 12.1}

Oracle ClusterwareまたはOracle RACのインストール要件に合わせて、CVUがチェックするソフトウェア・リリースを指定します。このオプションを指定しない場合、CVUは、Oracle Clusterware 12cまたはOracle Database 12cであると想定します。

-allfiles

このパラメータを指定すると、CVUは、指定されたOracleホームのすべてのファイルの属性をチェックします。このパラメータを指定しない場合、CVUは、指定されたOracleホームのlib、jlibおよびbinファイルの属性をチェックします。

-verbose

CVUは詳細な出力を表示します。

例

Oracle Clusterwareホーム・ディレクトリのクラスタのすべてのノードの上のソフトウェア構成の確認

Oracle Clusterware 12cのインストール済ファイルが正しく構成されていることを検証するには、次のようなコマンドを使用します。

cluvfy comp software -n all -verbose

このコマンドを実行すると、次のような出力が生成されます。

Verifying software

Check: Software

1021 files verified

Software check passed

Verification of software was successful.

cluvfy comp space

指定したすべてのノードに対して、-lオプションで指定した場所のディスクの空き領域をチェックするには、cluvfy comp spaceコンポーネント検証コマンドを使用します。

構文

cluvfy comp space [-n node_list] -l storage_location
-z disk_space {B | K | M | G} [-verbose]

パラメータ

表A-22 cluvfy comp spaceコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-l storage_location

チェックする記憶域の場所へのディレクトリ・パスです。

-z disk_space {B|K|M|G}

必要なディスク領域で、単位はバイト(B)、キロバイト(K)、メガバイト(M)またはギガバイト(G)です。数値とバイト単位を示す文字の間に空白を入れないでください(「2G」などとする)。整数のみを使用してください。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

spaceコンポーネントは、ブロック・デバイスおよびRAWデバイスをサポートしていません。

関連項目:

動作保証されている記憶域オプションの最新情報については、My Oracle Supportの動作保証についてのサイトを参照してください。

https://support.oracle.com

例

すべてのノードでの使用可能な空き領域の検証

次のコマンドを実行すると、各ノードの/home/dbadmin/productsディレクトリに5GBの空き領域があるかどうかを検証できます。

cluvfy comp space -n all -l /home/dbadmin/products –z 5G -verbose

cluvfy comp ssa

指定された記憶域の場所の共有を検出してチェックするには、cluvfy comp ssaコンポーネント検証コマンドを使用します。CVUは、ノード・リスト内のノードの共有をチェックします。

構文

cluvfy comp ssa [-n node_list | -flex -hub hub_list [-leaf leaf_list]]
[-s storage_path_list] [-t {software | data | ocr_vdisk}]  [-asm] [-asmdev asm_device_list]
[-r {10.1 | 10.2 | 11.1 | 11.2 | 12.1}] [-verbose]

パラメータ

表A-23 cluvfy comp ssaコマンドのパラメータ

パラメータ

説明

-n node_list | -flex -hub
hub_list -leaf leaf_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

必要に応じて、-hubに続けてハブ・ノード名のカンマ区切りリストを指定するか、-leafに続けてリーフ・ノード名のカンマ区切りリストを指定するか、その両方を指定することで、ハブおよびリーフ・ノード上の記憶域の場所の共有をチェックできます。

これらのオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-s storage_path_list

記憶域パスのカンマ区切りリストです(たとえば、/dev/sda,/dev/sdb)。

-sオプションを指定しない場合、CVUは、サポートされている記憶域タイプを検出し、各記憶域タイプの共有をチェックします。

-t {software | data |
ocr_vdisk}

ストレージ・デバイスに格納されるOracleファイルのタイプ(Oracle Grid InfrastructureバイナリまたはOracle Databaseバイナリ)。

-tを指定しない場合、CVUは、dataファイル・タイプを検出またはチェックします。

-asm

このパラメータを指定して、Oracle ASMでの使用に適した記憶域をすべて検出します。

-asmdev asm_device_list

記憶域の場所の共有をチェックするOracle ASMデバイスのカンマ区切りリスト。リストにシェル・メタ文字が含まれる場合は、リストを二重引用符("")で囲みます。

-r {10.1 | 10.2 | 11.1 | 11.2 | 12.1}

必要に応じて、検証を実行する製品のリリース番号を指定できます。-rを指定しないと、CVUは12.1の検証を実行します。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

- 現行のリリースのcluvfyには、共有記憶域アクセス性のチェックに関して、Linuxに対する次のような制限があります。

- 現在、NAS記憶域およびOCFS2(バージョン1.2.1以上)がサポートされています。

関連項目:

NASマウント・オプションの詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- NASでの共有をチェックするとき、cluvfyコマンドを実行するには、指定されたパスに対する書込み権限が必要です。cluvfyのユーザーに書込み権限が付与されていない場合、cluvfyはそのパスがnot sharedであるとレポートします。

- CVUを使用してLinuxシステム上のSCSIディスクの検出および共有記憶域のアクセス性のチェックを実行するには、CVUQDISKパッケージが必要です。CVUの使用を試行したときにOracle RAC環境のいずれかのノード上にCVUQDISKパッケージがインストールされていない場合、CVUでエラーが発生します。CVUQDISKパッケージのインストール方法の詳細は、「Red Hat Linuxでの共有ディスクの検出」を参照してください。

例

例1: システム上で使用可能なすべての共有記憶域システムの検出

システム上で使用可能なすべての共有記憶域システムを検出するには、次のコマンドを実行します。

cluvfy comp ssa -n all -verbose

例2: Oracle ASM検出文字列チェックの使用

Oracle ASM検出文字列を確認するには、次のコマンドを実行します。

cluvfy comp ssa -n node1,node2 -asm -asmdev "/dev/xda*"

例3: 特定の記憶域の場所のアクセス性の検証

次のようなコマンドを実行すると、クラスタ・ノード全体のデータ・ファイルを格納する特定の記憶域の場所(Oracle ASMディスク・グループOCR13など)のアクセス性を検証できます。

cluvfy comp ssa -n all -s OCR13

このコマンドを実行すると、次のような出力が生成されます。

Verifying shared storage acessibility

Checking shared storage accessibility...

"OCR13" is shared

Shared storage check was successful on nodes "node1,node2,node3,node4"

Verification of shared storage accessibility was successful.

cluvfy comp sys

指定したすべてのノード上で指定した製品のシステム最小要件が満たされているかどうかをチェックするには、cluvfy comp sysコンポーネント検証コマンドを使用します。

パラメータ

表A-24 cluvfy comp sysコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-p {crs | ha | database}

CVUがOracle Clusterware、Oracle Restart(HA)またはOracle RACに関するシステム要件をチェックするかどうかを指定します。

注意: Oracleでは、Oracle Database 10gでOracle Restartはサポートされていません。-p haオプションで-r 10.1 | 10.2を使用すると、チェックでエラーが戻されます。

-r {10.1 | 10.2 | 11.1 | 11.2 | 12.1}

Oracle ClusterwareまたはOracle RACのインストール要件に合わせて、CVUがチェックするOracle Databaseのリリースを指定します。このオプションを指定しない場合、CVUは、Oracle Database 12cであると想定します。

-osdba osdba_group

OSDBAグループの名前です。このオプションを指定しない場合、CVUは、dbaをOSDBAグループとして使用します。

-orainv orainventory_group

Oracle Inventoryグループの名前です。このオプションを指定しない場合、CVUは、oinstallをインベントリ・グループとして使用します。

-fixup

検証が失敗した場合に、可能であればCVUで修正操作を実行するように指定します。

-fixupnoexec

検証が失敗した場合に、CVUで修正データを生成し、生成された修正を手動で実行するための指示を表示するように指定します。

-method {sudo -user user_name
[-location directory_path] | root}

rootユーザー・アクセスの権限委任方法がsudoかrootかを指定します。sudoを指定すると、root権限ですべてのノードにアクセスするためにユーザー名を指定する必要があります。必要に応じて、sudo実行可能ファイルのファイル・システムのフルパスも指定します。

-verbose

CVUは詳細な出力を表示します。

構文

cluvfy comp sys [-n node_list | -flex -hub hub_list [-leaf leaf_list]]
-p {crs | ha | database}  [-r {10.1 | 10.2 | 11.1 | 11.2 | 12.1}] [-osdba osdba_group]
[-orainv orainventory_group] [-fixup] [-fixupnoexec] [-method {sudo -user user_name
[-location directory_path] | root}] [-verbose]

例

Oracle Clusterwareのインストールのシステム要件の確認

クラスタ・ノードnode1、node2およびnode3上にOracle Clusterware 12cをインストールするためのシステム要件を検証するには、次のコマンドを実行します。

cluvfy comp sys -n node1,node2,node3 -p crs -verbose

cluvfy comp vdisk

指定したすべてのノードの投票ファイルの投票ファイル構成およびudevの設定を確認するには、cluvfy comp vdiskコンポーネント検証コマンドを使用します。

関連項目:

udevの設定の詳細は、『Oracle Grid Infrastructureインストレーション・ガイドfor Linux』を参照してください。

構文

cluvfy comp vdisk [-n node_list] [-verbose]

パラメータ

表A-25 cluvfy comp vdiskコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

cluvfy stage [-pre | -post] acfscfg

Oracle Automatic Storage Management Cluster File System (Oracle ACFS)を構成する前に、クラスタ・ノードが正しく設定されているかを検証するには、cluvfy stage -pre acfscfgコマンドを使用します。

Oracle ACFSを構成した後に既存のクラスタをチェックするには、cluvfy stage -post acfscfgコマンドを使用します。

構文

cluvfy stage -pre acfscfg -n node_list [-asmdev asm_device_list] [-verbose]

cluvfy stage -post acfscfg -n node_list [-verbose]

パラメータ

表A-26 cluvfy stage [-pre | -post] acfscfgコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

-asmdev asm_device_list

Oracle ASMで使用する予定のデバイスのリストです。このオプションを指定しない場合、CVUは、内部のオペレーティング・システムに依存した値(たとえばLinuxシステムの場合は/dev/raw/*)を使用します。

-verbose

CVUは詳細な出力を表示します。

cluvfy stage [-pre | -post] cfs

OCFS2を設定する前にクラスタ・ノードが正しく設定されているかどうかを検証するには、cluvfy stage -pre cfsステージ検証コマンドを使用します。

OCFS2を設定した後に指定ノードで適切なチェックを実行するには、cluvfy stage -post cfsステージ検証コマンドを使用します。

関連項目:

サポートされた共有記憶域タイプのリストについては、ご使用のプラットフォームの『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

構文

cluvfy stage -pre cfs -n node_list -s storageID_list [-verbose]

cluvfy stage -post cfs -n node_list -f file_system [-verbose]

パラメータ

表A-27 cluvfy stage [-pre | -post] cfsコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

-s storageID_list

チェックする記憶域の場所のカンマ区切りリストです。

-verbose

CVUは詳細な出力を表示します。

例

OCFS2の設定前に共有デバイスが正しく構成されているかどうかをチェックするには、次のようなコマンドを使用します。/dev/sdd5をシステムの共有デバイスの名前に置き換えます。

cluvfy stage -pre cfs -n node1,node2,node3,node4 -s /dev/sdd5

cluvfy stage [-pre | -post] crsinst

Oracle Clusterwareをインストールまたはアップグレードする前に、cluvfy stage -pre crsinstコマンドと-file、-n、-flexまたは-upgradeパラメータを使用して、指定したノードをチェックします。

Oracle Clusterwareをインストールした後に、指定ノードをチェックするには、cluvfy stage -post crsinstコマンドを使用します。

構文

cluvfy stage -pre crsinst -file config_file [-fixup] [-fixupnoexec]
[-method {sudo -user user_name [-location directory_path] | root}] [-verbose]

cluvfy stage -pre crsinst -n node_list | -flex -hub hub_list [-leaf leaf_list]
[-r {10.1 | 10.2 | 11.1 | 11.2 | 12.1}] [-c ocr_location_list] [-q voting_disk_list]
[-osdba osdba_group] [-orainv orainventory_group] [-asm [-presence {local | flex}
| -asmcredentials client_data_file] [-asmgrp asmadmin_group] [-asmdev asm_device_list]]
[-crshome Grid_home] [-fixup] [-fixupnoexec]
[-method {sudo -user user_name [-location directory_path] | root}]
[-networks network_list] [-dhcp -clustername cluster_name [-dhcpport dhcp_port]]
[-verbose]

crsinst -upgrade [-rolling] [-src_crshome src_crshome] -dest_crshome dest_crshome
-dest_version dest_version [-fixup] [-fixupnoexec] [-method {sudo -user user_name
[-location directory_path] | root}] [-verbose]

cluvfy stage -post crsinst -n node_list
[-method {sudo -user user_name [-location directory_path] | root}] [-verbose]

パラメータ

表A-28 cluvfy stage [-pre | -post] crsinstコマンドのパラメータ

パラメータ

説明

-file config_file

Oracleのインストール変数を含むrootスクリプト構成ファイルを指定します。

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

-flex -hub hub_list
[-leaf leaf_list]

-nパラメータのかわりに、チェックを実行するハブ・ノード名のカンマ区切りリストを指定します。必要に応じて、リーフ・ノードのカンマ区切りリストを指定できます。

-r {10.1 | 10.2 | 11.1 |
11.2 | 12.1}

Oracle Clusterwareのインストール要件に合わせて、CVUがチェックするOracle Clusterwareのリリースを指定します。このオプションを指定しない場合、CVUは、Oracle Clusterware 12cであると想定します。

-c ocr_location_list

CVUがすべてのノードの可用性を検証する、OCRの場所またはファイルのディレクトリ・パスのカンマ区切りリストを指定します。このオプションを指定しない場合、OCRの場所はチェックされません。

-q voting_disk_list

CVUがすべてのノードの可用性を検証する、投票ファイルのディレクトリ・パスのカンマ区切りリストを指定します。このオプションを指定しない場合、投票ファイルの場所はチェックされません。

-osdba osdba_group

OSDBAグループの名前を指定します。このオプションを指定しない場合、CVUは、dbaをOSDBAグループとして使用します。

-orainv orainventory_group

Oracle Inventoryグループの名前を指定します。このオプションを指定しない場合、CVUは、oinstallをインベントリ・グループとして使用します。

-asm [-presence {local | flex} |
-asmcredentials client_data_file]

このパラメータは、Oracle ASMがOracle Clusterwareファイルの格納に使用されることを示します。

このOracle ClusterwareインストールでのOracle ASMの存在(LOCALまたはFLEX)を指定します。Oracle ASMクライアントの場合は、必要に応じて、Oracle ASMクライアント資格証明ファイルのパスを指定できます。

-asmgrp asmadmin_group

OSASMグループの名前を指定します。このオプションを指定しない場合、CVUはOracle Inventoryグループと同じグループを使用します。

-asmdev asm_device_list

CVUがすべてのノードの可用性を検証する、Oracle ASMで使用する予定のデバイスのリストを指定します。

このオプションを指定しない場合、CVUは、内部のオペレーティング・システムに依存した値を使用します。

-crshome Grid_home

Oracle Grid InfrastructureまたはOracle Clusterwareホーム・ディレクトリの場所を指定します。このオプションを指定する場合、提供されたファイル・システムの場所で、Oracle Clusterwareインストール用に十分な空き領域があるかどうかがチェックされます。

-networks [network_list]

"if_name" [:subnet_id [:public | :cluster_interconnect]]の形式のネットワークのスラッシュ("/")区切りリストのネットワーク・パラメータを検証します。

- ネットワーク・インタフェース名(if_name)を指定する場合、eth*のようにワイルドカード文字としてアスタリスク(*)を使用し、インタフェースを照合することができます。

- subnet_id変数のネットワーク・インタフェースのサブネット番号を指定し、ネットワーク・インタフェースのタイプを選択します。

-dhcp -clustername
cluster_name [-dhcpport
dhcp_port]

クラスタの名前を指定します。必要に応じて、DHCPパケットが送信されるポートを指定できます。このポートのデフォルト値は67です。

-rolling

実行するアップグレードがローリング・アップグレードの場合にこれを指定します。

-src_crshome src_crshome

アップグレード元のGridホームの場所を指定します。

-dest_crshome dest_crshome

アップグレード先のGridホームの場所を指定します。

-dest_version dest_version

アップグレード先のバージョンをパッチセットを含めて指定します(たとえば、11.2.0.1.0または11.2.0.2.0)。

-fixup

検証が失敗した場合に、可能であればCVUで修正操作を実行するように指定します。

-fixupnoexec

検証が失敗した場合に、CVUで修正データを生成し、生成された修正を手動で実行するための指示を表示するように指定します。

-method {sudo -user user_name
[-location dir_path] | root}

rootユーザー・アクセスの権限委任方法がsudoかrootかを指定します。sudoを指定すると、root権限ですべてのノードにアクセスするためにユーザー名を指定する必要があります。必要に応じて、sudo実行可能ファイルのファイル・システムのフルパスも指定します。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

- 新規インストールのためにチェックを実行するには、-fileまたは-nパラメータを指定します。別のバージョンへのアプグレードのチェックを実行するには、-upgradeを使用します。

- -cおよび-qオプションと-nパラメータを指定すると、OCRおよび投票ファイルに対する追加のチェックがCVUにより実行されます。

cluvfy stage -pre dbcfg

Oracle RACデータベースを構成する前に指定したノードをチェックして、システムがデータベースの作成またはデータベースの構成の変更を行うためのすべての基準を満たしているかどうかを検証するには、cluvfy stage -pre dbcfgコマンドを使用します。

構文

LinuxおよびUNIXプラットフォームの場合:

cluvfy stage -pre dbcfg -n node_list -d Oracle_home [-fixup] [-fixupnoexec]
[-method {sudo -user user_name [-location directory_path] | root}]
[-servicepwd] [-verbose]

Windowsプラットフォームの場合:

cluvfy stage -pre dbcfg -n node_list -d oracle_homew [-fixup] [-fixupnoexec]
[-verbose] [-servicepwd]

パラメータ

表A-29 cluvfy stage -pre dbcfgコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

-d Oracle_home

チェックされているデータベースのOracleホーム・ディレクトリの場所です。

-fixup

検証が失敗した場合に、可能であればCVUで修正操作を実行するように指定します。

-fixupnoexec

検証が失敗した場合に、CVUで修正データを生成し、生成された修正を手動で実行するための指示を表示するように指定します。

-method {sudo -user user_name
[-location dir_path] | root}

rootユーザー・アクセスの権限委任方法がsudoかrootかを指定します。sudoを指定すると、root権限ですべてのノードにアクセスするためにユーザー名を指定する必要があります。必要に応じて、sudo実行可能ファイルのファイル・システムのフルパスも指定します。

-servicepwd

このオプションを指定した場合、-seviceuserオプションを指定した場合にcluvfy stage -pre dbinstコマンドによって実行されるものと同様のチェックがCVUによって実行されます。CVUは、レジストリからユーザー名を判別し、ウォレットが存在する場合でもサービス・ユーザーのパスワードを求めます。入力したパスワードは、CVUによって、ウォレットに格納されているパスワードとチェックされます。

サービス・パスワードがウォレットに存在しない場合、または-servicepwdオプションを指定しなかった場合、CVUはユーザー名とパスワードをチェックしません。

注意: このパラメータは、Windowsのみに適用されます。

-verbose

CVUは詳細な出力を表示します。

cluvfy stage -pre dbinst

Oracle RACデータベースのインストールまたは作成の前に指定したノードをチェックして、システムがOracle RACデータベースのインストールまたは作成のすべての基準を満たしているかどうかを検証するには、cluvfy stage -pre dbinstコマンドを使用します。

構文

LinuxおよびUNIXプラットフォームの場合:

cluvfy stage -pre dbinst -n <node_list> [-r {10.1 | 10.2 | 11.1 | 11.2 | 12.1}]
[-osdba osdba_group] [-osbackup osbackup_group] [-osdg osdg_group]
[-oskm oskm_group] [-d oracle_home] [-fixup] [-fixupnoexec]
[-method {sudo -user user_name [-location directory_path] | root}]
[-verbose]

cluvfy stage pre dbinst -upgrade -src_dbhome src_dbhome [-dbname dbname-list]
-dest_dbhome dest_dbhome -dest_version dest_version
[-fixup] [-fixupnoexec] [-method sudo -user user_name [-location directory_path]

Windowsプラットフォームの場合:

cluvfy stage -pre dbinst -n node_list [-r {10.1 | 10.2 | 11.1 | 11.2 | 12.1}]
[-d Oracle_home] [-fixup] [-fixupnoexec] [-serviceuser user_name [-servicepasswd]]]
[-verbose]

cluvfy stage -pre dbinst -upgrade -src_dbhome src_dbhome [-dbname dbname-list
-dest_dbhome dest_dbhome -dest_version dest_version [-fixup] [-fixupnoexec]
[-verbose]]

パラメータ

表A-30 cluvfy stage -pre dbinstコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

-r {10.1 | 10.2 | 11.1 | 11.2 | 12.1}

Oracle RACのインストール要件に合わせて、CVUがチェックするOracle Databaseのリリースを指定します。このオプションを指定しない場合、CVUは、Oracle Database 12cであると想定します。

-osdba osdba_group

OSDBAグループの名前です。このオプションを指定しない場合、CVUは、dbaをOSDBAグループとして使用します。

-d Oracle_home

Oracle RACのインストールおよびOracle RACデータベースの作成を行うOracleホーム・ディレクトリの場所です。このオプションを指定した場合、指定した場所にデータベース・インストール用に十分な空きディスク領域があるかどうかがチェックされます。

-osbackup osbackup_group

OSBACKUPグループの名前を指定します。

-osdg osdg_group

OSDGグループの名前を指定します。

-oskm oskm_group

OSKMグループの名前を指定します。

-fixup

検証が失敗した場合に、可能であればCVUで修正操作を実行するように指定します。

-upgrade

アップグレードの前提条件を確認するにはこのパラメータを指定します。

-src_dbhome src_dbhome

アップグレード元のデータベース・ホームの場所を指定します。

-dbname dbname-list

アップグレードするデータベースの一意名をカンマ区切りリストで指定します。

-dest_dbhome dest_dbhome

アップグレード先のデータベース・ホームの場所を指定します。

-dest_version dest_version

アップグレード先のバージョンをパッチセットを含めて指定します(たとえば、11.2.0.1.0または11.2.0.2.0)。

-fixupnoexec

検証が失敗した場合に、CVUで修正データを生成し、生成された修正を手動で実行するための指示を表示するように指定します。

-method {sudo -user user_name
[-location dir_path] | root}

rootユーザー・アクセスの権限委任方法がsudoかrootかを指定します。sudoを指定すると、root権限ですべてのノードにアクセスするためにユーザー名を指定する必要があります。必要に応じて、sudo実行可能ファイルのファイル・システムのフルパスも指定します。

[-serviceuser user_name [-servicepwd]]

このオプションを指定した場合、CVUは次の内容をチェックします。

- 指定したユーザーがドメイン・ユーザーかどうか。指定したユーザーがドメイン・ユーザーでない場合、CVUからエラーが戻され、ユーザーの検証についてそれ以降のチェックは実行されません。
注意: Oracleホーム・ユーザーのユーザー名を指定する必要があります。

- 指定したユーザーがクラスタ内のすべてのノードで管理者かどうか。ユーザーがクラスタ内のいずれかのノードで管理者でない場合、チェックにパスします。それ以外の場合、チェックに失敗します。

- -servicepwdオプションを指定しなかった場合、CVUは、そのユーザーのパスワードがOCRのウォレットに格納されているかどうかをチェックします。指定したユーザーのパスワードが存在しない場合、CVUは動作を続行します。

- -servicepwdオプションを指定した場合、パスワードがウォレットが存在する場合でも、指定したユーザーのパスワードがCVUから求められます。

注意: -serviceuserパラメータと-servicepwdパラメータはWindowsのみに適用されます。

-verbose

CVUは詳細な出力を表示します。

cluvfy stage [-pre | -post] hacfg

Oracle Restartを構成する前にローカル・ノードをチェックするには、cluvfy stage -pre hacfgコマンドを使用します。

Oracle Restartを構成した後にローカル・ノードをチェックするには、cluvfy stage -post hacfgコマンドを使用します。

構文

cluvfy stage -pre hacfg [-osdba osdba_group] [-orainv orainventory_group]
[-fixup] [-fixupnoexec] [-method {sudo -user user_name [-location directory_path] | root}]
[-verbose]

cluvfy stage -post hacfg [-verbose]

パラメータ

表A-31 cluvfy stage [-pre | -post] hacfgコマンドのパラメータ

パラメータ

説明

-osdba osdba_group

OSDBAグループの名前です。このオプションを指定しない場合、CVUは、dbaをOSDBAグループとして使用します。

-orainv orainventory_group

Oracle Inventoryグループの名前です。このオプションを指定しない場合、CVUは、oinstallをインベントリ・グループとして使用します。

-fixup

検証が失敗した場合に、可能であればCVUで修正操作を実行するように指定します。

-fixupnoexec

検証が失敗した場合に、CVUで修正データを生成し、生成された修正を手動で実行するための指示を表示するように指定します。

-method {sudo -user user_name
[-location dir_path] | root}

rootユーザー・アクセスの権限委任方法がsudoかrootかを指定します。sudoを指定すると、root権限ですべてのノードにアクセスするためにユーザー名を指定する必要があります。必要に応じて、sudo実行可能ファイルのファイル・システムのフルパスも指定します。

-verbose

CVUは詳細な出力を表示します。

cluvfy stage -post hwos

Oracleソフトウェアをインストールする前にクラスタ内の指定したノードでネットワークおよび記憶域の検証を実行するには、cluvfy stage -post hwosステージ検証コマンドを使用します。また、このコマンドは、サポートされる記憶域タイプをチェックし、共有に関して各記憶域タイプをチェックします。

構文

cluvfy stage -post hwos -n node_list [-s storageID_list] [-verbose]

パラメータ

表A-32 cluvfy stage -post hwosコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。

-s storageID_list

サポートされている記憶域タイプの共有用の記憶域の場所のカンマ区切りリストをチェックします。

-sオプションを指定しない場合、CVUは、サポートされている記憶域タイプを検出し、各記憶域タイプの共有をチェックします。

-verbose

CVUは詳細な出力を表示します。

cluvfy stage [-pre | -post] nodeadd

指定したノードを既存のクラスタに追加する前に、そのノードが正しく構成されているかどうかを検証する場合、および指定したノードを追加する前にクラスタの整合性を検証する場合は、cluvfy stage -pre nodeaddコマンドを使用します。

このコマンドは、追加するノードのシステム構成(オペレーティング・システムのバージョン、ソフトウェア・パッチ、パッケージ、カーネル・パラメータなど)が既存のクラスタ・ノードと互換性があること、およびクラスタウェアが既存のノードで正常に動作していることを検証します。既存のクラスタの任意のノードでこのコマンドを実行します。

指定したノードがネットワーク、共有記憶域およびクラスタウェアのレベルでクラスタに正常に追加されていることを検証するには、cluvfy stage -post nodeaddコマンドを使用します。

構文

cluvfy stage -pre nodeadd -n node_list [-vip vip_list] | -flex [-hub hub_list
[-vip vip_list]] [-leaf leaf_list] [-fixup] [-fixupnoexec]
[-method {sudo -user user_name [-location directory_path] | root}] [-verbose]

cluvfy stage -post nodeadd -n node_list [-verbose]

パラメータ

表A-33 cluvfy stage [-pre | -post] nodeaddコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。これらは、クラスタに追加するノード、または追加されたノードです。

-vip vip_list

新規ノードで使用される仮想IPアドレスのカンマ区切りリストです。

-flex [-hub hub_list
[-vip vip_list]]

Oracle Flex Clusterにノードを追加する場合、-flexを指定します。必要に応じて、クラスタにハブ・ノードとして追加する、ドメインで修飾されていないノード名のカンマ区切りリストを指定できます。

さらに、指定したハブ・ノードのリストに適用される仮想IPアドレスのカンマ区切りリストも指定できます。

-leaf leaf_list

必要に応じて、クラスタにリーフ・ノードとして追加する、ドメインで修飾されていないノード名のカンマ区切りリストを指定できます。

-fixup

検証が失敗した場合に、可能であればCVUで修正操作を実行するように指定します。

-fixupnoexec

検証が失敗した場合に、CVUで修正データを生成し、生成された修正を手動で実行するための指示を表示するように指定します。

-method {sudo -user user_name
[-location dir_path] | root}

rootユーザー・アクセスの権限委任方法がsudoかrootかを指定します。sudoを指定すると、root権限ですべてのノードにアクセスするためにユーザー名を指定する必要があります。必要に応じて、sudo実行可能ファイルのファイル・システムのフルパスも指定します。

-verbose

CVUは詳細な出力を表示します。

cluvfy stage -post nodedel

特定のノードがクラスタから正常に削除されていることを確認するには、cluvfy stage -post nodedelコマンドを使用します。通常、このコマンドは、ノード固有のインタフェース構成の詳細が削除されたこと、ノードがクラスタ構成の一部ではなくなったこと、および適切なOracle ASMクリーンアップが実行されたことを検証します。

構文

cluvfy stage -post nodedel -n node_list [-verbose]

パラメータ

表A-34 cluvfy stage -post nodedelコマンドのパラメータ

パラメータ

説明

-n node_list

クラスタから削除された、非ドメイン修飾ノード名のカンマ区切りリストです。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

cluvfy stage -post nodedelの検証に失敗した場合、ノードの削除手順を繰り返します。

関連項目:

クラスタ・ノードの追加および削除

CVUのトラブルシューティングおよび診断出力

この項では、次のCVUのトラブルシューティングに関する項目について説明します。

- トレースの有効化

- クラスタ検証ユーティリティの既知の問題

トレースの有効化

トレースを無効にしないかぎり、CVUによってトレース・ファイルが生成されます。トレースを無効化するには、SRVM_TRACE環境変数をfalseまたはFALSEに設定します。たとえば、tcshでsetenv SRVM_TRACE FALSEなどのエントリを使用するとトレースが無効になります。

デフォルトではCVUトレース・ファイルはORACLE_BASE/crsdata/host_name/cvuディレクトリに作成されます。ログ・ファイルは自動的にローテーションされ、最新のログ・ファイルの名前はcvutrace.log.0になります。必要に応じて不要なログ・ファイルを削除またはアーカイブしてディスク領域を解放する必要があります。

Oracle Clusterwareによって、CVUの定期的な実行時に生成されたログ・ファイルがORACLE_BASE/crsdata/host_name/cvu/cvutrcディレクトリに格納されます。

トレース・ファイルのデフォルト以外の場所を使用するには、CV_TRACELOC環境変数に適切なトレース・ディレクトリの絶対パスを設定します。

クラスタ検証ユーティリティの既知の問題

この項では、次に示すクラスタ検証ユーティリティ(CVU)の既知の制限について説明します。

- クラスタ検証ユーティリティによってサポートされるデータベースのバージョン

- Linuxの共有記憶域アクセス性(ssa)チェックのレポートの制限

- Red Hat Linuxでの共有ディスクの検出

クラスタ検証ユーティリティによってサポートされるデータベースのバージョン

現行のリリースのCVUでは、Oracle Database 10g以上、Oracle RACおよびOracle Clusterwareのみがサポートされており、CVUには下位互換性がありません。CVUは、Oracle Database 10gより前のOracle Database製品をチェックまたは検証することはできません。

Linuxの共有記憶域アクセス性(ssa)チェックのレポートの制限

現行のリリースのcluvfyには、共有記憶域アクセス性のチェックに関して、Linuxに対する次のような制限があります。

- OCFS2(バージョン1.2.1以上)がサポートされています。

- NASの共有性チェックの場合、cluvfyコマンドを実行するには、指定されたパスに対する書込み権限が必要です。cluvfyコマンドを実行するユーザーに書込み権限が付与されていない場合、cluvfyはそのパスがnot sharedであるとレポートします。

Red Hat Linuxでの共有ディスクの検出

CVUを使用してRed Hat Linux 5.0(以上)、Oracle Linux 5.0 (以上)およびSUSE Linux Enterprise Server上のSCSIディスクの検出および共有記憶域のアクセス性のチェックを実行する場合、CVUQDISKパッケージが必要です。CVUの使用を試行したときにOracle RAC環境のいずれかのノード上にCVUQDISKパッケージがインストールされていない場合、CVUでエラーが発生します。

CVUQDISKパッケージをインストールするには、次の手順を実行します。

1. rootユーザーとしてログインします。

2. パッケージcvuqdisk-1.0.9-1.rpm (またはこれ以上のバージョン)をローカル・ディレクトリにコピーします。このrpmは、Oracle Clusterwareのインストール・メディアの最上位ディレクトリのrpmサブディレクトリ内にあります。たとえば、cvuqdisk-1.0.9-1.rpmは、/mountpoint/clusterware/rpm/というディレクトリにあり、この場合のmountpointはディレクトリが配置されているディスクのマウント・ポイントです。

# cp /mount_point/clusterware/rpm/cvuqdisk-1.0.9-1.rpm /u01/oradba

3. CVUQDISK_GRP環境変数を、CVUQDISKパッケージ・バイナリを所有する必要があるオペレーティング・システム・グループに設定します。CVUQDISK_GRPが設定されていない場合、デフォルトで、oinstallグループが所有者グループになります。

# set CVUQDISK_GRP=oinstall

4. コマンドrpm -q cvuqdiskを実行して、以前のバージョンのCVUQDISKパッケージがインストールされているかどうかを判別します。以前のバージョンのCVUQDISKパッケージが検出された場合、コマンドrpm -e cvuqdisk previous_versionを実行してこのパッケージを削除します(この場合のprevious_versionは、以前のバージョンのCVUQDISKの識別子です)。

# rpm -q cvuqdisk
cvuqdisk-1.0.2-1
# rpm -e cvuqdisk-1.0.2-1

5. コマンドrpm -iv cvuqdisk-1.0.9-1.rpmを実行して、最新のCVUQDISKパッケージをインストールします。

# cd /u01/oradba
# rpm -iv cvuqdisk-1.0.9-1.rpm

B Oracle Clusterwareのリソース・リファレンス

この付録は、Oracle Clusterwareのリソースに対するリファレンスです。この付録には、リソース属性の説明と使用例、およびリソース属性のアクション・スクリプトの詳細な説明および例が示されています。この付録の内容は次のとおりです。

- リソース属性

- サード・パーティ製アプリケーションのアクション・スクリプトの例

リソース属性

この項では、アプリケーションをOracle Clusterwareのリソースとして登録する際に使用する属性について説明します。この属性は、次に示すように、crsctl add resourceコマンドで使用します。

$ crsctl add resource resource_name -type resource_type
{[-attr "attribute_name='attribute_value', attribute_name='attribute_value'
, ..."] | [-file file_name]}

属性/値ペアは、-attrフラグの後にカンマ区切りのリストとして指定し、各属性の値は一重引用符('')で囲みます。一部のリソース属性は、構成できない読取り専用の属性です。

または、属性/値ペアを含むテキスト・ファイルを作成できます。次に例を示します。

PLACEMENT=favored
HOSTING_MEMBERS=node1 node2 node3
RESTART_ATTEMPTS@CARDINALITYID(1)=0
RESTART_ATTEMPTS@CARDINALITYID(2)=0
FAILURE_THRESHOLD@CARDINALITYID(1)=2
FAILURE_THRESHOLD@CARDINALITYID(2)=4
FAILURE_INTERVAL@CARDINALITYID(1)=300
FAILURE_INTERVAL@CARDINALITYID(2)=500
CHECK_INTERVAL=2
CARDINALITY=2

注意:

このような属性の長さは、最大で254文字に制限されています。

この項には次のトピックが含まれます:

- 構成可能なリソース属性

- 読取り専用のリソース属性

- 非推奨のリソース属性

構成可能なリソース属性

この項では、アプリケーションをOracle Clusterwareのリソースとして登録する際に構成可能な次のリソース属性について説明します。

注意:

すべての属性の値は小文字で指定する必要があります。属性名はすべて大文字で指定する必要があります。

- ACL

- ACTION_SCRIPT

- ACTION_TIMEOUT

- ACTIONS

- ACTIVE_PLACEMENT

- AGENT_FILENAME

- ALERT_TEMPLATE

- AUTO_START

- CARDINALITY

- CHECK_INTERVAL

- CHECK_TIMEOUT

- CLEAN_TIMEOUT

- DELETE_TIMEOUT

- DESCRIPTION

- ENABLED

- FAILURE_INTERVAL

- FAILURE_THRESHOLD

- HOSTING_MEMBERS

- INSTANCE_FAILOVER

- INTERMEDIATE_TIMEOUT

- LOAD

- MODIFY_TIMEOUT

- NAME

- OFFLINE_CHECK_INTERVAL

- PLACEMENT

- RELOCATE_BY_DEPENDENCY

- RESTART_ATTEMPTS

- SCRIPT_TIMEOUT

- SERVER_CATEGORY

- SERVER_POOLS

- START_CONCURRENCY

- START_DEPENDENCIES

- START_TIMEOUT

- STOP_CONCURRENCY

- STOP_DEPENDENCIES

- STOP_TIMEOUT

- UPTIME_THRESHOLD

- USER_WORKLOAD

- USE_STICKINESS

ACL

リソースの所有者、および様々なオペレーティング・システムのユーザーとグループに付与するアクセス権限を定義します。リソースの所有者には、所有者になるオペレーティング・システム・ユーザーとその権限を定義します。これは、リソースの作成時に構成するオプションの属性です。この属性を構成しない場合、リソースを作成するプロセスのIDに基づいて値が決定されます。リソースの既存の権限に基づいて変更が許可される場合には、属性の値を変更できます。

注意:

owner、pgrp、userおよびgroupを含むすべてのオペレーティング・システムのユーザー名およびユーザー・グループは、クラスタ内のすべてのサーバー上に登録される必要があります。

文字列は次のように指定します。

- owner: リソースを所有するオペレーティング・システム・ユーザーで、このユーザーの下でアクション・スクリプトまたはアプリケーション固有のエージェントが実行され、続いて所有者の権限を指定します。

- pgrp: リソース所有者のプライマリ・グループであるオペレーティング・システム・グループです。続いてプライマリ・グループのメンバーの権限を指定します。

- other: 所有者でもプライマリ・グループのメンバーでもないオペレーティング・システム・ユーザー

- r: リソース、その状態および構成を表示する権限のみを付与する読取りオプション

- w: リソースの属性を変更する権限およびリソースを削除する権限を付与する書込みオプション

- x: リソースを開始、停止および再配置する権限を付与する実行オプション

デフォルトでは、リソースを作成するクライアントのIDはownerです。また、デフォルトでは、root、およびownerに指定されたユーザーは完全な権限を持ちます。ACL属性に次の行を追加することで、必要なオペレーティング・システム・ユーザーおよびオペレーティング・システム・グループに権限を付与できます。

user:user_name:rwx
group:group_name:rwx

使用例

ACL=owner:user_1:rwx,pgrp:osdba:rwx,other::r-

前述の例では、リソースの所有者はuser_1で、プライマリ・グループはosdbaです。他のユーザーはリソースを表示することしかできませんが、ユーザーuser_1は、osdbaグループと同様すべての権限を持ちます。

ACTION_SCRIPT

アクション・スクリプトのパスおよびファイル名を含む絶対ファイル名。AGENT_FILENAME属性に指定されたエージェントが、ACTION_SCRIPT属性に指定されたスクリプトをコールします。

使用例

ACTION_SCRIPT=fully_qualified_path_to_action_script

ACTION_TIMEOUT

リソース上でOracle Clusterwareによって実行可能な、サポート対象のすべてのアクションに関する単一のタイムアウト値(秒単位)。

使用例

ACTION_TIMEOUT=30

ACTIONS

ACTIONS属性によって、リソース上でOracle Clusterwareが実行可能なアクションおよびこのアクションに対応する権限をリストする、名前の表が宣言されます。ACTIONS属性には、アクションの仕様に関するスペース区切りリストが含まれ、各仕様は次の形式となっています。

- actionNameは、アクション名です(最大長は32バイトで、US7ASCIIの英数字に対応し、大文字小文字を区別します)。

- userNameは、当該アクションを実行可能な、オペレーティング・システムのユーザー名です。

- groupNameは、当該アクションを実行可能な、オペレーティング・システムのグループ名です。

actionName [,user:userName | group:groupName][ ...]

userNameまたはgroupNameを指定しない場合、Oracle Clusterwareでは、誰でも当該アクションにアクセス可能であると想定します。

使用例

次の例によって、複数のアクションが利用可能となります。

ACTIONS='action1 action2,user:user2 action3,group:group1'

ACTIVE_PLACEMENT

1に設定すると、Oracle Clusterwareは、この属性を使用してクラスタ・サーバーの追加または再起動時にリソースの配置を再評価します。PLACEMENT=favoredのリソースの場合、Oracle Clusterwareは、favoredのサーバーがクラスタに追加されているときにリソースがfavored以外のサーバーで実行されていると、実行中のリソースを再配置することがあります。

使用例

ACTIVE_PLACEMENT=1

AGENT_FILENAME

リソース・タイプがそのリソースを管理するために使用するエージェント・プログラムの完全修飾されたファイル名。すべてのリソース・タイプに、そのリソースを管理するためのエージェント・プログラムが必要です。この属性に値を指定するか、またはベースになるリソース・タイプから値を継承することで、リソース・タイプはエージェント・プログラムを使用できます。Oracle Clusterware 12cには、applicationおよびscriptagentの2つのスクリプト・エージェントが含まれています。Oracle Clusterwareは、非推奨のapplicationリソース・タイプのリソースに対してapplicationスクリプト・エージェントを使用します。この属性のデフォルト値はscriptagentです。

注意:

一度リソースが作成されると、この属性を変更できません。

使用例

AGENT_FILENAME=%Grid_home%/bin/application

ALERT_TEMPLATE

リソース状態のアラート・メッセージに含めようとする、追加のリソース属性を指定するために使用します。リソース属性に関するスペース区切りのリストとして、属性を指定できます。このような属性は、アラート・メッセージに表示されるために、リソース・タイプからアクセス可能である必要があります。

使用例

ALERT_TEMPLATE="DESCRIPTION HOSTING_MEMBERS"

AUTO_START

クラスタ・サーバーの再起動後、Oracle Clusterwareによってリソースを自動的に起動するかどうかを示します。AUTO_STARTの有効な値は次のとおりです。

- always: サーバーが停止したときのリソースの状態に関係なく、サーバーの再起動時にリソースを再起動します。

- restore: サーバーが停止したときと同じ状態にリソースをリストアします。サーバーが停止する前にTARGETの値がONLINEだった場合、Oracle Clusterwareはリソースの再起動を試行します。

- never: サーバーが停止したときのリソースの状態に関係なく、Oracle Clusterwareはリソースを再起動しません。

CARDINALITY

リソースを同時に実行できるサーバーの数。これが、リソース・カーディナリティの上限になります。

使用例

CARDINALITY=1

リソースが実行されるように構成されているサーバー・プールに割当てられるサーバー数とともに、カーディナリティが常に増減するような値を使用することもできます。値は次のとおりです。

CARDINALITY=%CRS_SERVER_POOL_SIZE%

リソースでPLACEMENT=restrictedが指定され、SERVER_POOLS属性を使用する場合にのみ、この値を使用できます。

CHECK_INTERVAL

checkアクションの実行を繰り返す時間間隔(秒単位)。間隔を短くするとより頻繁にチェックできますが、スクリプト・エージェントを使用するとリソースの消費も増大します。リソースの消費を低減するには、アプリケーション固有のエージェントを使用します。

使用例

CHECK_INTERVAL=60

CHECK_TIMEOUT

チェック・アクションを実行できる最大時間(秒単位)。アクションが指定された時間内に完了しなかった場合、Oracle Clusterwareはエラー・メッセージを戻します。この属性が指定されていない場合または0秒が指定されている場合、Oracle ClusterwareはSCRIPT_TIMEOUT属性の値を使用します。

使用例

CHECK_TIMEOUT=30

CLEAN_TIMEOUT

クリーンアップ・アクションを実行できる最大時間(秒単位)。アクションが指定された時間内に完了しなかった場合、Oracle Clusterwareはエラー・メッセージを戻します。この属性に値が指定されていなかったり、0秒が指定されている場合、Oracle ClusterwareはSTOP_TIMEOUT属性の値を使用します。

使用例

CLEAN_TIMEOUT=30

DELETE_TIMEOUT

削除アクションを実行できる最大時間(秒単位)。アクションが指定された時間内に完了しなかった場合、Oracle Clusterwareはエラー・メッセージを戻します。この属性に値が指定されていなかったり、0秒が指定されている場合、Oracle ClusterwareはSCRIPT_TIMEOUT属性の値を使用します。

使用例

DELETE_TIMEOUT=30

DESCRIPTION

追加するリソースの説明を入力します。

使用例

DESCRIPTION=Apache Web server

ENABLED

Oracle Clusterwareは、この属性を使用してリソースの状態を管理します。Oracle Clusterwareは、直接的にも、別のリソースへの依存性による場合にも無効(ENABLED=0)になっているリソースの管理は試行しません。無効になっているリソースを起動することはできませんが、停止することはできます。Oracle Clusterwareは、無効なリソースをアクティブに監視せず、つまり、Oracle Clusterwareは無効なリソースの状態をチェックしません。

使用例

ENABLED=1

FAILURE_INTERVAL

リソースがFAILURE_THRESHOLD属性で指定した障害の回数を超えた場合にOracle Clusterwareがリソースを停止するまでの間隔(秒単位)。値が0(ゼロ)の場合、障害の追跡は無効になります。

使用例

FAILURE_INTERVAL=30

FAILURE_THRESHOLD

リソースに指定されたFAILURE_INTERVAL内で検出される障害の数で、この値を超えると、Oracle Clusterwareがリソースを使用不可としてマーク付けし、そのリソースの監視を停止します。指定した回数の障害がリソースで発生すると、Oracle Clusterwareはそのリソースを停止します。値が0(ゼロ)の場合、障害の追跡は無効になります。最大値は20です。

使用例

FAILURE_THRESHOLD=3

HOSTING_MEMBERS

リソースのホスティングが可能なクラスタ・サーバーの名前のリストで、スペース区切りで順序付けします。この属性は、管理者管理型を使用し、PLACEMENT属性の値がfavoredまたはrestrictedに設定されている場合にのみ指定する必要があります。アプリケーションをOracle Clusterwareリソースとして登録する際は、かわりにSERVER_POOLS属性を使用します。

注意:

applicationタイプのリソースの場合、Oracle Clusterwareは、汎用サーバー・プールのHOSTING_MEMBERS属性に示されたサーバーを配置の対象とします。

関連項目:

- 汎用サーバー・プールの詳細は、「デフォルト・サーバー・プール」を参照してください。

- この属性の詳細は、「LOAD」を参照してください。

- この属性の詳細は、「PLACEMENT」を参照してください。

候補ノード名のリストを取得するには、olsnodesコマンドを実行して、使用しているサーバー名のリストを表示します。

使用例

HOSTING_MEMBERS=server1 server2 server3

INSTANCE_FAILOVER

CLUSTER_RESOURCEタイプのリソースには、INSTANCE_FAILOVER属性を使用します。この属性を使用すると、障害が発生したサーバーからのリソース・インスタンスのフェイルオーバーを拒否できます。これによって、特定のサーバーにリソースを結合できます。

0を設定して、インスタンス・フェイルオーバーを無効にします。

使用例

INSTANCE_FAILOVER=1

INTERMEDIATE_TIMEOUT

リソースに障害が発生したと宣言される前に、リソースがINTERMEDIATE状態のままである最大時間を(秒単位)表示します。INTERMEDIATE_TIMEOUTの値が有効となるには、0よりも大きいものである必要があります。

使用例

INTERMEDIATE_TIMEOUT=60

LOAD

Oracle Clusterwareは、PLACEMENT属性の値とともにこの属性の値を解析します。PLACEMENTの値がbalancedの場合は、LOADの値によってリソースの最適な配置場所が決定されます。これは、リソースの1つのインスタンスが消費するサーバー容量を、他のリソースとの相対値として数量的に示す負以外の数値です。Oracle Clusterwareは、実行中のリソースによる負荷の合計が最小のサーバーにリソースの配置を試行します。

使用例

LOAD=1

MODIFY_TIMEOUT

修正アクションを実行できる最大時間(秒単位)。アクションが指定された時間内に完了しなかった場合、Oracle Clusterwareはエラー・メッセージを戻します。この属性に値が指定されていなかったり、0秒が指定されている場合、Oracle ClusterwareはSCRIPT_TIMEOUT属性の値を使用します。

使用例

MODIFY_TIMEOUT=30

NAME

リソースの名前を示す英数字の文字列で、大/小文字が区別されます。ネーミング規則として、名前の先頭を英数字の接頭辞(myApacheなど)にし、末尾をリソースについて説明する識別子にすることをお薦めします。リソース名には、プラットフォームでサポートされているすべての文字(感嘆符(!)およびチルダ(~)を除く)を使用できます。リソース名の先頭をピリオド(.)またはoraという文字列にすることはできません。

使用例

NAME=myApache

OFFLINE_CHECK_INTERVAL

リソースのオフライン監視を制御します。値は、リソースの状態がOFFLINEの場合に、Oracle Clusterwareがそのリソースを監視する時間間隔(秒単位)を表します。値が0の場合、監視は無効になります。

使用例

OFFLINE_CHECK_INTERVAL=30

PLACEMENT

Oracle Clusterwareがリソースを起動するクラスタ・サーバーを選択する方法を指定します。有効な値は、balanced、favoredまたはrestrictedです。

PLACEMENT属性をfavoredまたはrestrictedに設定した場合は、SERVER_POOLSおよびHOSTING_MEMBERS属性にも値を割り当てる必要があります。PLACEMENT属性の値をbalancedに設定した場合は、HOSTING_MEMBERS属性を指定する必要はありません。

関連項目:

- PLACEMENT属性の詳細は、「アプリケーションの配置ポリシー」を参照してください。

- この属性の詳細は、「HOSTING_MEMBERS」を参照してください。

- この属性の詳細は、「SERVER_POOLS」を参照してください。

使用例

PLACEMENT=favored

RELOCATE_BY_DEPENDENCY

再配置が要求されたリソースへの依存関係のため、リソースの再配置が要求された場合に、この再配置が可能かどうかを宣言するために使用します。0の場合、再配置が要求されたリソースへの依存関係のため、このリソースの再配置は許可されません。有効値は1または0です。

使用例

RELOCATE_BY_DEPENDENCY=1

RESTART_ATTEMPTS

Oracle Clusterwareが、リソースの再配置を試行する前に、リソースの現行のサーバー上でリソースの再起動を試行する回数。1の値を指定した場合、Oracle Clusterwareはサーバー上でリソースの再起動を1回のみ試行します。2回失敗すると、Oracle Clusterwareの再配置が試行されます。0の値を指定した場合、再起動は試行されませんが、Oracle Clusterwareは常時、別のサーバーへのリソースのフェイルオーバーを試行します。

使用例

RESTART_ATTEMPTS=2

SCRIPT_TIMEOUT

アクションを実行する最大時間(秒単位)。アクション・スクリプトが指定された時間内に完了しなかった場合、Oracle Clusterwareはエラー・メッセージを戻します。このタイムアウトは、すべてのアクション(start、stop、checkおよびclean)に適用されます。

使用例

SCRIPT_TIMEOUT=45

SERVER_CATEGORY

ローカル・リソースの場合、local_resourceタイプの定義はカテゴリ認識に拡張されます。すなわち、ローカル・リソースを制限して特定のサーバー・カテゴリに属させることができます。クラスタ・リソースの場合、SERVER_CATEGORY属性の値は、PLACEMENT属性の値で常に機能します。PLACEMENTが制限され、SERVER_CATEGORYが使用されている場合、SERVER_POOLSを*に設定します。PLACEMENTをrestrictedに設定すると、次の属性の1つも設定されるとOracle Clusterwareでは予測されます。

- HOSTING_MEMBERS

- SERVER_POOLS

- SERVER_CATEGORY

たとえばresource1と呼ばれるリソースはrestrictedの対象のPLACEMENTの値を設定するポリシｰを所有でき、SERVER_CATEGORYがHubCategoryに設定されます。このような場合、Oracle Clusterwareによって、HubCategoryに属するサーバー上でのみresource1が実行されます。

PLACEMENTがfavoredに設定され、かつHOSTING_MEMBERS、SERVER_POOLSまたはSERVER_CATEGORYの1つのみが設定されている場合、この値がプリファレンスを示します。HOSTING_MEMBERSが移入されSERVER_POOLSまたはSERVER_CATEGORYの1つが設定されると、HOSTING_MEMBERSによって配置のプリファレンスが示され、SERVER_POOLSまたはSERVER_CATEGORYによって制限が示されます。たとえばora.cluster.vipリソースにPLACEMENTの値をfavoredに設定するポリシｰが設定可能で、SERVER_CATEGORYはHubCategoryに設定され、HOSTING_MEMBERSはserver_name1に設定されます。このような場合にOracle Clusterwareは、ora.cluster.vipの配置をHubCategoryにおけるサーバーに限定し、server_name1と呼ばれるサーバーを優先します。

使用例

SERVER_CATEGORY=my_category

SERVER_POOLS

特定のリソースが属すことができる、サーバー・プールのスペース区切りリスト。リソースがクラスタ内の任意のサーバー上で動作できる場合は、デフォルト値の*を使用し、リソースがcluster_resourceタイプ以外の場合は、SERVER_POOLS属性のデフォルト値は空白です。この属性の値に*を指定できるのはクラスタ管理者のみです。

- 次に示すように、SERVER_POOLS属性とともにPLACEMENT属性を使用します。PLACEMENT属性の値をrestrictedまたはfavoredに設定した場合は、リソースのポリシー管理を使用する際にSERVER_POOLS属性にも値を指定する必要があります。

- PLACEMENTの値をbalancedに設定した場合、SERVER_POOLS=*でないかぎり、リソースは汎用プールおよび空きプールのみで実行されます。

この属性は、配置に関してリソースと1つ以上のサーバー・プールとの間でアフィニティを作成します。また、PLACEMENT属性の値に依存します。

関連項目:

- サーバー・プールの詳細は、「ポリシー・ベースのクラスタおよび容量の管理」を参照してください。
クラスタ管理の詳細は、「ロール別管理」を参照してください。

- この属性の詳細は、「HOSTING_MEMBERS」を参照してください。

- この属性の詳細は、「PLACEMENT」を参照してください。

使用例

SERVER_POOLS=pool1 pool2 pool3

START_CONCURRENCY

同時に実行可能なアクションの最大数を説明しています。0を指定すると、上限は設定されません。

使用例

START_CONCURRENCY=10

START_DEPENDENCIES

リソースを起動する際にOracle Clusterwareで考慮する一連の関係を指定します。特定のリソースが依存する可能性がある、いくつかのリソースおよびリソース・タイプに対して、依存性についてスペース区切りのリストを指定できます。

構文

START_DEPENDENCIES=dependency(resource_set) [dependency(resource_set)] [...]

前述の構文例で、変数は次のように定義されます。

- dependency: 指定可能な値は、attraction、dispersion、exclusion、hard、pullupおよびweakです。これらの依存性は、それぞれ1回のみ指定できますが、pullupは、複数回指定できます。

- resource_set: 構成するリソースが依存しているリソース・エンティティ(個々のリソースまたはリソース・タイプのいずれか)をカッコ()で囲み、res1[, res2[, ...]]の形式で指定したカンマ区切りリスト。
各リソース・エンティティは次のように定義されます。

[modifier1:[modifier2:]] {resource_name | type:resource_type}

前述の構文例で、resource_nameは特定のリソースの名前、type:resource_typeは特定のリソース・タイプの名前です。リソース・タイプの前にtypeに指定する必要があり、このtype修飾子はリストで最後のリソース・エンティティである必要があります。

必要に応じて、修飾子を指定してリソース・エンティティの依存性をさらに詳細に構成できます。リソース・エンティティに接頭辞として次の修飾子を指定することで、各依存性を変更することができます。

- attraction([intermediate:]{resource_name | type:resource_type}): 指定した特定のリソースまたは特定のタイプの任意のリソースと同じサーバーでこのリソースを実行する場合、attraction起動依存性を使用します。
intermediateを使用すると、INTERMEDIATE状態になっている、このリソースが依存するリソース・エンティティにこのリソースが誘引されることを指定できます。指定しない場合、依存リソースを誘引するには、リソースの状態がONLINEである必要があります。

リソースのリソース・タイプにattraction依存性を指定した場合、依存リソースは、指定したタイプの任意のリソースに誘引されます。

- exclusion([[preempt_pre: | preempt_post:]] target_resource_name | type:target_resource_type]): exclusion起動依存性を使用して、この依存性のあるリソースが同じノードで動作することを回避します。
ソース・リソースを起動する前に、preempt_pre修飾子を使用して、指定されたターゲット・リソース、または特定のリソース・タイプによって定義されるリソースを停止するためのexclusion依存性を構成します。

ソース・リソースの起動後にpreempt_post修飾子を使用して、指定されたターゲット・リソース、または特定のリソース・タイプによって定義されるリソースを停止し、可能であれば再配置するためのexclusion依存性を構成します。

- dispersion[:active]([intermediate:][pool:]{resource_name | type:resource_type}): 指定したリソースまたは特定のタイプのリソースとは異なるサーバーで実行するリソースにdispersion起動依存性を指定します。リソースは、サーバーの可用性に応じて、同じサーバーで実行されることがあります。
active修飾子を使用してdispersion依存性を構成すると、依存リソースが別のリソースと同じ場所に配置されていて、別のサーバーがオンラインになった場合、Oracle Clusterwareは別サーバーへの依存リソースの再配置を試行します。Oracle Clusterwareは、active修飾子が指定されないかぎり、新しく利用可能になったサーバーへのリソースの再配置を行いません。

intermediate修飾子を使用すると、リソースの状態がONLINEまたはINTERMEDIATEのいずれかである場合にOracle Clusterwareで依存リソースを再配置できるように指定できます。指定しない場合、依存リソースを分散するには、リソースの状態がONLINEである必要があります。

リソースを別のサーバーではなく、ターゲットとは別のサーバー・プールに配置する場合は、pool修飾子を使用します。

- hard([intermediate:][global:][uniform:]{resource_name | type:resource_type}): 特定のリソースまたは特定のタイプのリソースが起動するときにのみあるリソースを起動させる場合、そのリソースにhard起動依存性を指定します。
intermediate修飾子を使用すると、依存先リソースの状態がONLINEまたはINTERMEDIATEのいずれかの場合にOracle Clusterwareでこのリソースを起動できるように指定できます。指定しない場合、Oracle Clusterwareでこのリソースを起動するには、リソースの状態がONLINEである必要があります。

global修飾子を使用すると、Oracle Clusterwareでこのリソースを起動する条件としてリソースが同じサーバー上に存在する必要がないように指定できます。指定しない場合、Oracle Clusterwareでこのリソースを起動するには、同じサーバー上にリソースが存在する必要があります。

uniform修飾子を使用して、リソースBのすべてのインスタンスの起動を試行しますが、最低1つのインスタンスが起動されて依存性を満たす必要があります。

リソースのリソース・タイプにhard依存性を指定した場合は、指定したタイプの任意のリソースが実行されていると、このリソースを起動できます。

注意:

hard起動依存性を持つリソースにはpullup起動依存性も定義することをお薦めします。

- pullup[:always]([intermediate:][global:]{resource_name | type:resource_type}): リソースにpullup起動依存性を指定すると、このリソースは、指定したリソースの起動により起動します。
pullupにalways修飾子を使用すると、TARGET属性の値がONLINEまたはOFFLINEのいずれでも、その値に関係なくOracle Clusterwareはこのリソースを起動します。そうでない場合は、always修飾子を指定しないと、このリソース用のTARGET属性の値がONLINEのときにのみ、Oracle Clusterwareはこのリソースを起動します。

intermediate修飾子を使用すると、依存先リソースの状態がONLINEまたはINTERMEDIATEのいずれかの場合にOracle Clusterwareでこのリソースを起動できるように指定できます。指定しない場合、Oracle Clusterwareでこのリソースを起動するには、リソースの状態がONLINEである必要があります。

global修飾子を使用すると、Oracle Clusterwareでこのリソースを起動する条件として、このリソースの依存先リソースが同じサーバー上に存在する必要がないように指定できます。指定しない場合、Oracle Clusterwareでこのリソースを起動するには、このリソースの依存先リソースが同じサーバー上に存在する必要があります。

リソースのリソース・タイプにpullup依存性を指定した場合、指定したタイプの任意のリソースが起動すると、Oracle Clusterwareはこのリソースを起動できます。

注意:

hard起動依存性を持つリソースにはpullup起動依存性も定義することをお薦めします。

- weak([concurrent:][global:][uniform:]{resource_name | type:resource_type}): 指定したリソースが実行されているかどうかにかかわらず、このリソースを起動する場合、リソースにweak起動依存性を指定します。このリソースの起動を試行すると、このリソースが依存する任意のリソースが実行されていない場合は、それらのリソースの起動も試行されます。
concurrent修飾子を使用すると、依存先リソースの起動時にOracle Clusterwareで依存リソースを起動できるように指定できます。concurrentを指定しない場合、Oracle Clusterwareで依存リソースを起動するには、リソースの起動が完了している必要があります。

global修飾子を使用すると、Oracle Clusterwareで依存リソースを起動する条件としてリソースが同じサーバー上に存在する必要がないことを指定できます。

uniform修飾子を使用すると、リソースを実行可能なすべての場所でそのリソースのすべてのインスタンスを起動できます。修飾子を指定しない場合(デフォルトの場合)、リソースは、依存先リソースと同じサーバー上で起動します。

リソースのリソース・タイプにweak起動依存性を指定した場合は、指定したタイプの任意のリソースが実行されていると、このリソースを起動できます。

関連項目:

起動依存性の詳細は、「起動依存性」を参照してください。

START_TIMEOUT

startアクションを実行できる最大時間(秒単位)。アクションが指定された時間内に完了しなかった場合、Oracle Clusterwareはエラー・メッセージを戻します。この属性に値が指定されていなかったり、0秒が指定されている場合、Oracle ClusterwareはSCRIPT_TIMEOUT属性の値を使用します。

使用例

START_TIMEOUT=30

関連項目:

この属性の詳細は、「SCRIPT_TIMEOUT」を参照してください。

STOP_CONCURRENCY

同時に停止可能なアクションの最大数を説明しています。0を指定すると、上限は設定されません。

使用例

STOP_CONCURRENCY=10

STOP_DEPENDENCIES

リソースを停止する際にOracle Clusterwareで考慮する一連の関係を指定します。

構文

STOP_DEPENDENCIES=dependency(resource_set) [dependency(resource_set)] ...

前述の構文例で、変数は次のように定義されます。

- dependency: 指定可能な値はhardのみです。

- resource_set: 構成するリソースが依存しているリソース・エンティティ(個々のリソースまたはリソース・タイプのいずれか)をres1[, res2[, ...]]の形式で指定したカンマ区切りリスト。
各リソース・エンティティは次のように定義されます。

[modifier1:[modifier2:][modifier3:]] resource_name | type:resource_type

前述の構文例で、resource_nameは特定のリソースの名前、type:resource_typeは特定のリソース・タイプの名前です。リソース・タイプの前にはtype:と記述する必要があります。

必要に応じて、修飾子を指定してリソース・エンティティの依存性をさらに詳細に構成できます。リソース・エンティティに接頭辞として次の修飾子を指定することで、各依存性を変更することができます。

hard([intermediate:][global:][shutdown:]{resource_name | type:resource_type}): 指定したリソースまたは特定のリソース・タイプのリソースが停止した場合に停止させるリソースにhard停止依存性を指定します。

intermediateを使用すると、リソースの状態がONLINEまたはINTERMEDIATEのいずれかである場合に依存リソースの状態をONLINEのままにできるように指定できます。指定しない場合、リソースの状態がONLINEでないかぎり、Oracle Clusterwareは依存リソースを停止します。

globalを使用すると、クラスタ内の任意のノード上にあるリソースの状態がONLINEの場合に、依存リソースの状態がONLINEのままになるように指定できます。指定しない場合、同じサーバー上にあるリソースがオフラインになると、Oracle Clusterwareは依存リソースを停止します。

shutdownを使用すると、Oracle Clusterwareスタックが停止する場合にこの依存性を適用します。これは、個々のリソースの計画済または計画外イベントには影響を及ぼすことなく、スタックを停止するときにリソースの停止順序に影響を与える便利な方法です。この依存性は、shutdown修飾子とともに使用されると、リソースが直接停止されてもスタックが停止している場合にのみ有効になりません。

関連項目:

停止依存性の詳細は、「停止依存性」を参照してください。

STOP_TIMEOUT

stopまたはcleanアクションを実行できる最大時間(秒単位)。アクションが指定された時間内に完了しなかった場合、Oracle Clusterwareはエラー・メッセージを戻します。この属性が指定されていない場合または0秒が指定されている場合、Oracle ClusterwareはSCRIPT_TIMEOUT属性の値を使用します。

使用例

STOP_TIMEOUT=30

関連項目:

- この属性の詳細は、「SCRIPT_TIMEOUT」を参照してください。

- この属性の詳細は、「START_TIMEOUT」を参照してください。

UPTIME_THRESHOLD

UPTIME_THRESHOLDの値は、Oracle Clusterwareがリソースが安定しているとみなすまでに、リソースが稼働中である必要がある時間の長さを表します。UPTIME_THRESHOLD属性の値を設定すると、リソースの安定性を示すことができます。

この属性の値は、数値の後に秒(s)、分(m)、時間(h)、日(d)または週(w)を示す文字を付けて入力します。たとえば、7hという値は、稼働時間のしきい値が7時間であることを示します。

Oracle Clusterwareは、UPTIME_THRESHOLDに指定した時間が経過すると、停止、起動、再配置または障害のようなリソース状態が変更されるイベントが次に発生したときに、RESTART_COUNTの値を0にリセットします。RESTART_COUNTの値がRESTART_ATTEMPTSに設定した値に達すると、Oracle Clusterwareはアラートを生成します。カウンタは、次回リソースの障害発生時や再起動時に、効果的にリセットされます。しきい値は、再起動がカウントされて破棄される時間の長さを示しています。しきい値に達してリソースが失敗すると、再起動されます。

注意:

RESTART_COUNTの値がRESTART_ATTEMPTSに設定した値に達すると、Oracle Clusterwareはクラスタウェア・アラート・ログ・ファイルにアラートを記録します。

関連項目:

- この属性の詳細は、「RESTART_ATTEMPTS」を参照してください。

- この属性の詳細は、「RESTART_COUNT」を参照してください。

USER_WORKLOAD

What-If分析に関して、リソースがワークロードの生成リソースであるかどうかを示すために使用します。使用可能な値はyesまたはnoです。

使用例

USER_WORKLOAD=yes

USE_STICKINESS

可能な場合はリソースが最後に実行された場所で実行され、そうでない場合に適用されるロード・バランシングを許可しないことを示すために使用します。1に設定すると、Oracle Clusterwareは、最後に動作したリソースの開始を試行します。USE_STICKINESSの無効化によっても、ロード・バランシングを無効化できます。デフォルト値は0です。使用可能な値は、0および1です。

使用例

USE_STICKINESS=1

読取り専用のリソース属性

次の属性は、特定のリソースに対してcrsctl status resourceコマンドを実行すると参照できます。Oracle Clusterwareは、ユーザーがリソースを登録した際にこれらの属性を設定します。

- ACTION_FAILURE_EVENT_TEMPLATE

- INSTANCE_COUNT

- INTERNAL_STATE

- LAST_SERVER

- LAST_STATE_CHANGE

- PROFILE_CHANGE_EVENT_TEMPLATE

- RESTART_COUNT

- STATE

- STATE_CHANGE_EVENT_TEMPLATE

- STATE_DETAILS

- TARGET

- TARGET_SERVER

- TYPE

ACTION_FAILURE_EVENT_TEMPLATE

これは、ora.*リソース用に内部的に管理される属性の1つです。この属性を編集することはできません。

INSTANCE_COUNT

INSTANCE_COUNT属性は内部的に管理されている属性で、これにはリソースが現在所有しているインスタンス数が含まれています。

INTERNAL_STATE

現在ポリシー・エンジンがリソースで実行しているアクション(ある場合)について説明する、内部的に管理される読取り専用の属性です。指定可能な値とその説明は、次のとおりです。

- STARTING: ポリシー・エンジンは、現在リソースを起動しています。

- STOPPING: ポリシー・エンジンは、現在リソースを停止しています。

- CLEANING: ポリシー・エンジンは、現在リソースをクリーンアップしています。

- STABLE: ポリシー・エンジンは、現在リソースでアクションを実行していません。
ただし、その他のいくつかのコマンドの一環として、そのリソースがまだロックされている可能性があります。

LAST_SERVER

cluster_resourceタイプのリソースの場合、内部的に管理される読取り専用の属性の1つで、ソースのstartアクションが最後に成功したサーバーの名前が設定されています。

local_resourceタイプのリソースの場合、リソース・インスタンスが固定されるサーバーの名前です。

LAST_STATE_CHANGE

ポリシー・エンジンがリソースの現在の状態を登録した時点について説明する、内部的に管理される読取り専用の属性です。これは、CRSDの再起動時に発生する、リソースの状態が変更された時点、またはポリシー・エンジンがその状態を検出した時点のタイムスタンプである場合があります。

PROFILE_CHANGE_EVENT_TEMPLATE

これは、ora.*リソース用に内部的に管理される属性の1つです。この属性を編集することはできません。

RESTART_COUNT

Oracle Clusterwareデーモンが使用する内部的に管理される属性で、リソース再起動の試行回数を0(ゼロ)からRESTART_ATTEMPTS属性に指定した値までカウントします。この属性を編集することはできません。

STATE

Oracle Clusterwareからレポートされるとリソースの現在の状態が反映される、内部的に管理される属性です。リソースの状態は次のいずれかです。

- ONLINE: リソースはオンラインで、リソースの監視が有効です(「CHECK_INTERVAL」を参照)。

- OFFLINE: リソースはオフラインで、オフラインのリソースの監視が構成されている場合は、それのみが有効です(「OFFLINE_CHECK_INTERVAL」を参照)。

- INTERMEDIATE: リソースは部分的にオンラインであるか、前にオンラインであることが認識されているものの、それ以降の状態確認の試行が失敗しています。リソースの監視は有効です(「CHECK_INTERVAL」を参照)。

- UNKNOWN: リソースは管理不可能で、現在の状態は不明であるため、手動操作を行ってその操作を再開する必要があります。この状態のリソースは監視されません。

STATE_CHANGE_EVENT_TEMPLATE

これは、ora.*リソース用に内部的に管理される属性の1つです。この属性を編集することはできません。

STATE_DETAILS

内部的に管理される読取り専用の属性の1つです。リソースの状態の詳細が設定されています。

リソースの4つの状態(ONLINE、OFFLINE、UNKNOWNおよびINTERMEDIATE)は、マウント、アンマウント、オープンなどの異なるリソース固有の値にマッピングされることがあります。リソース・エージェントの開発者は、STATE_DETAILS属性を使用して、リソースとリソースの状態とのマッピングに関する詳細な説明を提供できます。

詳細の提供は任意です。詳細が提供されない場合、Oracle Clusterwareは、予想される4つのリソースの状態のみを使用します。また、エージェントがこれらの詳細を提供できない場合(リソースの状態の値に対しても発生する可能性がある)、Oracle Clusterwareはこの属性の値を設定して、リソースが現在の状態になった理由を示す最小限の詳細情報を提供します。

TARGET

内部用の読取り専用属性の1つで、リソースの望ましい状態について説明します。ただし、crsctl start resource_nameまたはcrsctl stop resource_nameコマンドを使用すると、この属性の値に影響が及ぶ場合があります。

TARGET_SERVER

これは、リソースが起動しているサーバー名を含んでいる、内部管理属性です。この値は、リソースの起動時に関連します。

TYPE

リソースの作成時に示されるリソースのタイプ。この属性は、リソースの作成時に指定する必要があり、リソースの作成後には変更できません。

関連項目:

リソース・タイプの詳細は、「Oracleクラスタウェアのリソース・タイプ」を参照してください。

非推奨のリソース属性

次のリソース属性は、Oracle Clusterware 12cでは非推奨です。

DEGREE

単一サーバー上で実行可能なクラスタ・リソースのインスタンスの数。

サード・パーティ製アプリケーションのアクション・スクリプトの例

この項では、スクリプト・エージェントを使用するサード・パーティ製アプリケーションの例を示します。

例B-1に、Apache Webサーバーをフェイルオーバーするアクション・スクリプトを示します。

例B-1 Apacheアクション・スクリプト

#!/bin/sh

HTTPDCONFLOCATION=/etc/httpd/conf/httpd.conf
WEBPAGECHECK=http://<MyVIP>:80/icons/apache_pb.gif

case $1 in
'start')
/usr/sbin/apachectl -k start -f $HTTPDCONFLOCATION
RET=$?
;;
sleep(10)
;;
'stop')
/usr/sbin/apachectl -k stop
RET=$?
;;
'clean')
/usr/sbin/apachectl -k stop
RET=$?
;;
'check')
/usr/bin/wget -q --delete-after $WEBPAGECHECK
RET=$?
;;
*)
RET=0
;;
esac
# 0: success; 1 : error
if [ $RET -eq 0 ]; then
exit 0
else
exit 1
fi

例B-2に、xclockスクリプトを示します。このスクリプトは、すべてのLinuxおよびUNIXプラットフォームでデフォルト・バイナリとして利用できるxclockを使用した簡単なアクション・スクリプトです。

例B-2 xclockアクション・スクリプト

#!/bin/bash
# start/stop/check script for xclock example
# To test this change BIN_DIR to the directory where xclock is based
# and set the DISPLAY variable to a server within your network.

BIN_DIR=/usr/X11R6/bin
LOG_DIR=/tmp
BIN_NAME=xclock
DISPLAY=yourhost.domain.com:0.0
export DISPLAY
exit_code=0

if [ ! -d $BIN_DIR ]
then
echo "start failed"
exit 2
fi

PID1=`ps -ef | grep $BIN_NAME | grep -v grep | grep -v xclock_app | awk '{ print $2 }'`
case $1 in
'start')
if [ "$PID1" != "" ]
then
status_p1="running"
else
if [ -x $BIN_DIR/$BIN_NAME ]
then
umask 002
${BIN_DIR}/${BIN_NAME} & 2>${LOG_DIR}/${BIN_NAME}.log
status_p1="started"
else
echo `basename $0`": $BIN_NAME: Executable not found"
exit_code=1
fi
fi

echo "$BIN_NAME: $status_p1"
exit $exit_code
;;

'stop')
if [ "${PID1}" != "" ]
then
kill -9 ${PID1} && echo "$BIN_NAME daemon killed"
else
echo "$BIN_NAME: no running Process!"
fi
exit $exit_code
;;
'check')
if [ "$PID1" != "" ]
then
echo "running"
exit 0
else
echo "not running"
exit 1
fi
;;*)
echo "Usage: "`basename $0`" {start|stop|check}"
;;
esac

例B-3に、ファイルを監視するエージェントのシェル・スクリプトの例を示します。エージェントは、起動するとファイル(属性を使用して指定されるファイル)を作成し、停止するとファイルを削除します。CHECKアクションは、ファイルが存在するかどうかを単にチェックするものです。接頭辞_CRS_を持つ変数は、環境のスクリプトに指定する属性値です。

例B-3 アクション・スクリプトの例

#!/bin/sh
TOUCH=/bin/touch
RM=/bin/rm
PATH_NAME=/tmp/$_CRS_NAME

#
# These messages go into the CRSD agent log file.
echo " *******   `date` ********** "
echo "Action script '$_CRS_ACTION_SCRIPT' for resource[$_CRS_NAME] called for action $1"
#

case "$1" in
'start')
echo "START entry point has been called.."
echo "Creating the file: $PATH_NAME"
$TOUCH $PATH_NAME
exit 0
;;

'stop')
echo "STOP entry point has been called.."
echo "Deleting the file: $PATH_NAME"
$RM $PATH_NAME
exit 0
;;

'check')
echo "CHECK entry point has been called.."
if [ -e $PATH_NAME ]; then
echo "Check -- SUCCESS"
exit 0
else
echo "Check -- FAILED"
exit 1
fi
;;

'clean')
echo "CLEAN entry point has been called.."
echo "Deleting the file: $PATH_NAME"
$RM -f $PATH_NAME
exit 0
;;

esac

C OLSNODESのコマンド・リファレンス

この付録では、olsnodesコマンドの構文およびコマンド・オプションについて説明します。

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

- OLSNODESの使用

- 概要

- 使用上の注意

- OLSNODESコマンドのサマリー

OLSNODESの使用

この項では、OLSNODESコマンドの使用に関連する項目について説明します。

- 概要

- 使用上の注意

概要

olsnodesコマンドは、クラスタに参加しているすべてのノードのリストおよびその他の情報を表示します。

このコマンドを使用して、クラスタが操作可能な状態であること、およびすべてのノードがクラスタのメンバーとして登録されていることを迅速にチェックできます。また、このコマンドを使用して、ノード番号を簡単に取得することもできます。

使用上の注意

使用方法

このコマンドは、-n allオプションが使用されている場合にノード名のリストを取得するためにクラスタ検証ユーティリティ(CLUVFY)で使用されます。

このコマンドは、$ORA_CRS_HOME/binディレクトリに格納されています。このコマンドは、CRSデーモンが起動されている場合にのみ使用できます。

権限およびセキュリティ

このコマンドは、rootユーザー、Oracle ClusterwareをインストールしたユーザーまたはOracle Databaseをインストールしたユーザーとして実行できます。

OLSNODESコマンドのサマリー

olsnodesコマンドでは、キーワードは使用しませんが、1つ以上のオプションを指定できます。使用可能なオプションは、表C-1を参照してください。

構文

olsnodes [[-n] [-i] [-s] [-t] [node_name | -l [-p]] | [-c]] [-a] [-g] [-v]

コマンド・パラメータを指定せずに、olsnodesコマンドを発行すると、クラスタのノードのリストが戻されます。

[root@node1]# olsnodes
node1
node2
node3
node4

表C-1 OLSNODESのコマンド・オプション

コマンド

説明

-n

クラスタに参加しているすべてのノードを表示し、割り当てられているノード番号も含まれます。

-i

クラスタに参加しているすべてのノードを表示します。各ノードに割り当てられている仮想インターネット・プロトコル(VIP)アドレス(すなわちノード名を含むVIPアドレス)も含まれます。

-s

ノードのステータス(activeまたはinactive)を表示します。

-t

ノード・タイプ(pinnedまたはunpinned)を表示します。

node_name

特定のノードの情報を表示します。

-l [-p]

ローカル・ノードを表示し、ローカル・ノードへのプライベート・インターコネクトを含めます。-pオプションは、-lオプションとともに指定したときのみ有効です。

-c

クラスタの名前を表示します。

-a

クラスタ内のアクティブなノードのみを重複なしで表示します。

-g

クラスタ検証の詳細情報を記録します。

-v

クラスタ検証の情報を冗長モードで記録します。My Oracle Supportからの指示があった場合にのみ、デバッグ・モードで使用します。

例

例1: 現在クラスタ内にあるすべてのノードのVIPアドレスの表示

現在クラスタのメンバーである各ノードのVIPアドレスを表示するには、次のコマンドを使用します。

[root@node1]# olsnodes -i
node1    168.92.1.1
node2   168.192.2.1
node3   168.192.3.1
node4   168.192.4.1

例2: クラスタ・メンバーのノード名およびノード番号の表示

クラスタ内の各ノードのノード名およびノード番号を表示するには、次のコマンドを使用します。

[root@node1]# olsnodes -n
node1    1
node2    2
node3    3
node4    4

例3: クラスタ・メンバーのノード・ロールの表示

クラスタ内の各ノードのノード・ロールを表示するには、次のコマンドを使用します。

[root@node1]# olsnodes -a
node1    Hub
node2    Hub
node3    Leaf
node4    Leaf

D Oracle Interface Configurationツール(OIFCFG)のコマンド・リファレンス

Oracle Interface Configurationツール(OIFCFG)のコマンドライン・インタフェースにより、ネットワーク・インタフェースを定義および管理できます。Oracle Clusterware環境では、次の作業に対してOIFCFGコマンドを使用できます。

- ネットワーク・インタフェースのコンポーネントへの割当ておよび割当て解除

- 特定のネットワーク・インタフェースを使用するようにコンポーネントを設定

- コンポーネント構成情報の取得

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

- OIFCFGコマンドライン・インタフェースの起動

- OIFCFGの使用方法の概要

OIFCFGコマンドライン・インタフェースの起動

OIFCFGを起動する前に、コマンド構文に-globalオプションを含める場合は、少なくともローカル・ノード(できればすべてのノード)でOracle Clusterwareを起動してください。

注意:

グローバル・ネットワーク・インタフェースを変更するには、Oracle Clusterwareがすべてのクラスタ・ノードで実行されている必要があります。

Oracle Clusterwareソフトウェアをインストールしたユーザーとして、Grid_home/bin/ディレクトリからOIFCFGを実行します。次に例を示します。

$ ./oifcfg

OIFCFGのオンライン・ヘルプを表示するには、oifcfg -helpコマンドを実行します。

$ ./oifcfg -help

OIFCFGの使用方法の概要

この項では、次の項目について説明します。

- OIFCFGコマンドの書式

- OIFCFGコマンド

- OIFCFGコマンドのパラメータ

- OIFCFGの使用方法

- OIFCFGの例

OIFCFGコマンドの書式

oifcfg iflist [-p] [-n]
oifcfg setif {-node nodename | -global} {if_name/subnet:if_type[,if_type]}[,...]
oifcfg getif [-node nodename | -global] [ -if if_name[/subnet] [-type if_type]]
oifcfg delif {{-node nodename | -global} [if_name[/subnet]] [-force] | -force}
oifcfg [-help]

OIFCFGコマンド

表D-1に示されたOIFCFGコマンドのいずれかを入力できます。

表D-1 OIFCFGコマンド

コマンド

説明

oifcfg iflist [-p [-n]]

setifで構成できる使用可能なインタフェースを示します。iflistコマンドは、オペレーティング・システムに問い合せ、このノードに存在するネットワーク・インタフェースを検出します。このコマンドを使用して、次の2つのオプションを指定できます。

- -p: 経験則に基づいて想定されるインタフェース・タイプ(プライベート、パブリックまたは不明)が表示されます。

- -n: ネットマスクが表示されます。

インタフェースにIPv6ネットワークがある場合、OIFCFGは、次のように別個の行にIPv6サブネットを出力します。

eth1 fec0::80 PUBLIC 64
eth1 10.229.184.0 PUBLIC 255.255.248.0

oifcfg setif

インタフェースのインタフェース・タイプ(パブリック、クラスタ・インターコネクトまたはOracle ASM)を設定します。

oifcfg getif

setifコマンドによってインタフェース・タイプが定義されているインタフェースを、インタフェースのタイプとともに示します。

oifcfg delif

グローバル・インタフェースまたはノード固有のインタフェースとして格納されたネットワーク構成を削除します。クラスタのすべてのノードから格納されたネットワーク構成を削除するには、-forceオプションを使用し、-nodeまたは-globalオプションは指定しません。

OIFCFGコマンドのパラメータ

この項では、OIFCFGコマンドのパラメータを示します。実行するコマンドによっては、一部のパラメータがオプションとなることに注意してください。

- -node node_name: olsnodesコマンドの出力結果にリストされるOracle Clusterwareノードの名前。olsnodesコマンドの詳細は、「OLSNODESのコマンド・リファレンス」を参照してください。

- -global: ネットワーク・インタフェースは、グローバル・インタフェース(iflistコマンドによってレポートされる)としても、ノード固有のインタフェースとしても格納できます。

- Oracle Real Application Clusters(Oracle RAC)クラスタのすべてのノードが同じサブネットに接続された同じインタフェースを使用している場合、インタフェースはグローバル・インタフェースとして格納されます。グローバル・インタフェース(各パブリック・サブネットのすべてのノード、および各プライベート・サブネットのすべてのノードが、それぞれ同一ネットワーク・インタフェースを持つ構成)は、推奨構成であるだけでなく、デフォルトのインストール構成です。

- インタフェースは、ノード固有の(ローカル)インタフェースとして格納できます。

注意:

ノード間の異なるインタフェース名に対して、インタフェース名のワイルドカードを使用できます。異なるノード上の異なる具体的なインタフェース名を構成する場合には、-nodeは使用できません。

- -if if_name: システムでインタフェースが構成されるときの名前。

- subnet: インタフェースのサブネット・アドレス。

- -type if_type: 1つ以上のカンマ区切りのインタフェースのタイプ: public、cluster_interconnectまたはasm。

- -help: OIFCFGコマンドのオンライン・ヘルプを表示します。

関連トピック

- OLSNODESのコマンド・リファレンス

OIFCFGの使用方法

- ネットワーク・インタフェースの指定には、次の形式を使用します。

if_name/subnet:if_type

この指定では、次の項目を使用して、ネットワーク・インタフェースを一意に識別します。

- インタフェース名
oifcfg setifコマンドを使用する場合、インタフェース名には、任意の文字列に一致するアスタリスク(*)などのワイルドカード文字を含めることができます。ただし、ワイルドカードを含むインタフェース名は二重引用符("")で囲む必要があります。

注意:

Oracle Database 11gリリース2 (11.2.0.2)データベースより前のクラスタではワイルドカードを使用しないことをお薦めします。Oracleでは、ローカル・ノード上でワイルドカードを拡張することでインタフェース名を解決し、oifcfg getifコマンドを実行するたびにPRIF-0029警告も発行するためです。

11gリリース2 (11.2.0.2)より前のOracle Databasesでワイルドカードを使用する場合、これらのデータベースではかわりにCLUSTER_INTERCONNECTSパラメータを使用する必要があります。

- 関連付けられたサブネット

- インタフェース・タイプ
インタフェース・タイプは、ネットワークを構成する目的を示します。サポートされるインタフェース・タイプは次のとおりです。

- public: Oracle Netや仮想インターネット・プロトコル(VIP)・アドレスなど、Oracle RACインスタンスの外部にあるコンポーネントと通信するために使用できるインタフェース

- cluster_interconnect: インスタンス間の通信やキャッシュ・フュージョン脚注1通信を提供するため、クラスタ・インターコネクトに使用されるプライベート・インタフェース

cluster_interconnectのインタフェース・タイプを設定すると、それは起動時にインスタンスに適用されます。変更内容はインスタンスを再起動するまで反映されません。

次の指定では、アドレス204.152.65.0にあるクラスタ・インターコネクトとしてqfe0を識別します。

qfe0/204.152.65.0:cluster_interconnect

- Oracle Universal Installerは、OIFCFGを使用して、使用可能なインタフェースの識別および表示を行います。

- インタフェース名の変更による影響は、どの名前を変更するか、またIPアドレスも変更するかどうかによって異なります。インタフェース名のみを変更する場合、影響はわずかです。Oracle Cluster Registry(OCR)内に格納されたパブリック・インタフェースの名前を変更する場合、各ノードのnodeappsを変更する必要があります。したがって、この変更を有効にするために、nodeappsを停止する必要があります。

- グローバル変更を実行する場合は、クラスタのすべてのメンバー上でOracle Clusterwareを再起動する必要があります。ローカル変更の場合は、ノードの再起動のみ実行する必要があります。データベースのインターコネクトの変更は、インスタンスの起動時に行われます。ただし、Oracle Clusterwareのインターコネクトは、異なる場合があります。

- インターコネクトはインスタンスの起動時に選択されるため、OIFCFGコマンドの発行のみで、実行中のシステムにすぐに影響することはありません。そのかわり、このコマンドにより影響される可能性のあるコンポーネントの再起動後に、変更内容は有効になります。

- OIFCFGを使用してクラスタ全体のネットワーク分類を変更するには、そのグリッド・プラグ・アンド・プレイ・プロファイルが更新可能になるように、既知のすべてクラスタ・ノードが起動されている必要があります。

OIFCFGの例

次の例では、OIFCFGコマンドの一般的な使用方法をいくつか示します。

ネットワーク・インタフェースの名前のリスト

ローカル・ノード上で使用可能なすべてのインタフェースのインタフェース名とサブネットを表示するには、OIFCFGを使用して、次の例に示すようにiflistキーワードを実行します。

oifcfg iflist
eth0     172.19.141.0
eth1     172.21.65.0

ネットワーク情報の取得

また、getifコマンドを使用すると、特定のOIFCFG情報を取得できます。

たとえば、Oracle Clusterwareのインストール後に、次のコマンドを入力することで、パブリックおよびクラスタ・インターコネクトが適切な値に設定されているかどうかを確認できます。

$ oifcfg getif

このコマンドは、次のようなglobal publicおよびcluster_interconnectの値を戻します。

eth0 172.19.141.0 global public
eth1 172.21.65.0 global cluster_interconnect

グローバル・インタフェースの格納

インタフェースを格納するには、setifキーワードを使用します。たとえば、サブネットが172.19.141.0のインタフェースeth0をグローバル・インタフェース(クラスタおよびOracle Clusterware内のすべてのOracle RACインスタンスに対するインターコネクトとして使用するインタフェース)として格納するには、次のコマンドを使用します。

oifcfg setif -global eth0/172.19.141.0:cluster_interconnect

注意:

実行されていないノードでグリッド・プラグ・アンド・プレイ・プロファイルを更新できないため、setifコマンドを実行するときはすべてのノードが実行されていることを確認します。

格納されたインタフェースの削除

グローバルまたはノード固有のインタフェースとして格納された構成を削除するには、oifcfg delifコマンドを使用します。特定のノード固有のインタフェースまたはグローバル・インタフェースは、コマンドラインにインタフェース名を指定することで(オプションでサブネットを指定して)削除できます。

注意:

コマンドラインでoifcfg delifのみを入力し、他の引数を指定しない場合、OIFCFGはクラスタ内のすべてのノードですべてのインタフェースを削除します。

たとえば、次のコマンドでは、サブネット172.21.65.0のグローバル・インタフェースeth1が削除されます。

oifcfg delif -global eth1/172.21.65.0

次の例では、コマンドによって、OIFCFGで割り当てられたすべてのグローバル・インタフェースが削除されます。

oifcfg delif -global

脚注の凡例

脚注1:
キャッシュ・フュージョンは、ブロックを保持しているインスタンスのメモリー・キャッシュから要求側インスタンスのメモリー・キャッシュにブロックを直接コピーするディスク不要のキャッシュ一貫性メカニズムです。

E Oracle Clusterware制御(CRSCTL)ユーティリティ・リファレンス

この付録には、Oracle Clusterware制御(CRSCTL)ユーティリティの参照情報が含まれています。

注意:

My Oracle Supportで指示された場合を除き、oraで始まる名前を持つOracleエンティティ(リソース、リソース・タイプ、サーバー・プールなど)でCRSCTLコマンドを使用しないでください。サーバー制御ユーティリティ(SRVCTL)は、Oracleエンティティに対して使用する適切なユーティリティです。

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

- CRSCTLの概要

- 使用上の注意

- 非推奨のサブプログラムまたはコマンド

- デュアル環境のCRSCTLコマンド

- Oracle RAC環境のCRSCTLコマンド

- Oracle Restart環境のCRSCTLコマンド

- トラブルシューティングおよび診断出力

CRSCTLの概要

CRSCTLはユーザーとOracle Clusterwareのインタフェースであり、Oracle Clusterwareオブジェクト用のOracle Clusterware APIを解析およびコールします。

CRSCTLではクラスタ対応コマンドが提供されており、これらを使用して、チェック、起動、停止操作をクラスタで実行できます。これらのコマンドは、操作に応じてクラスタ内の任意のノードから、クラスタ内の別のノードで、またはクラスタ内のすべてのノードで実行できます。

CRSCTLコマンドを使用すると、次に示すいくつかの操作をOracle Clusterwareで実行できます。

- Oracle Clusterwareリソースの起動および停止

- Oracle Clusterwareデーモンの有効化および無効化

- クラスタの状態のチェック

- サード・パーティ製アプリケーションのリソースの管理

- Intelligent Platform Management Interface(IPMI)とOracle Clusterwareとの統合による障害分離サポートおよびクラスタの整合性の実現

- Oracle Clusterwareコンポーネントのデバッグ

クラスタ用に変更された(クラスタ対応)コマンド

あるノードでクラスタ対応コマンドを実行してクラスタ内の別のノードで操作を実行できます。これらの操作はリモート操作と呼ばれます。これによって、たとえば、すべてのノードのOracle Clusterwareのステータスをチェックするために各ノードにログインする必要がなくなるため、管理が簡素化されます。

クラスタ対応コマンドはオペレーティング・システムにはまったく依存しませんが、OHASD(Oracle高可用性サービス・デーモン)に依存します。このデーモンが実行されているときに、リモート・ノードの起動、停止、ステータスのチェックなどのリモート操作を実行できます。

クラスタ対応コマンドには次のコマンドがあります。

- crsctl check cluster

- crsctl start cluster

- crsctl stop cluster

使用上の注意

使用方法

- CRSCTLユーティリティは、Grid_home/binディレクトリに格納されています。CRSCTLコマンドを実行するには、次の例に示すように、オペレーティング・システム・プロンプトでまずcrsctl、次にコマンドおよび引数を入力します。

crsctl stop crs

- CRSCTLコマンドには3つのカテゴリがあります。

- Oracle Real Application Clusters(Oracle RAC)環境またはOracle Restart環境のいずれかで使用するコマンド

- Oracle RAC環境でのみ使用するコマンド

- Oracle Restart環境でのみ使用するコマンド

- 多くのCRSCTLコマンドでは、-fパラメータを使用することによってチェックが無視されコマンドが強制実行されます。
たとえば、あるリソースに対するcrsctl stop resourceコマンドに強制パラメータを指定すると、そのリソースが実行中であり、それを依存先としている依存リソースも実行中である場合、強制パラメータはエラー・メッセージを省略し、かわりに、すべての依存リソースを停止または再配置してからコマンドに示すリソースを停止します。

- Oracle Clusterware 12cの管理に、12cリリース1 (12.1)より前のバージョンのCRSCTLを使用しないでください。

フィルタ

次のようにフィルタを使用して、CRSCTLコマンドが動作するOracle Clusterwareエンティティを絞り込むことができます。

- 簡易フィルタは、演算子を使用した属性/値ペアです。

- 演算子は、例に示すように空白で囲む必要があります。

- 簡易フィルタは、Boolean演算子を使用した式フィルタと呼ばれる式に組み込むことができます。

サポートされるフィルタの演算子は次のとおりです。

- =

- >

- <

- !=

- co: 次を含む

- st: 次で始まる

- en: 次で終わる

サポートされるブール演算子はANDおよびORです。

次にフィルタの例を示します。

- TYPE = type1

- ((TYPE = type1) AND (CHECK_INTERVAL > 50))

- (TYPE = type1) AND ((CHECK_INTERVAL > 30) OR (AUTO_START co never))

- NAME en network.res

- TYPE st ora.db

evalコマンドの使用

evalコマンドを使用すると、システムを変更せずにコマンドをシミュレーションできます。CRSCTLに、特定のコマンドを実行した場合に発生する事象を通知する出力が戻されます。

使用可能なevalコマンドは次のとおりです。

- crsctl eval activate policy

- crsctl eval add resource

- crsctl eval add server

- crsctl eval add serverpool

- crsctl eval delete server

- crsctl eval delete serverpool

- crsctl eval fail resource

- crsctl eval modify resource

- crsctl eval modify serverpool

- crsctl eval relocate resource

- crsctl eval relocate server

- crsctl eval start resource

- crsctl eval stop resource

注意:

CRSCTLはサード・パーティ・リソースのみを評価できます。ora.orcl.dbなど、.oraという接頭辞が付いたリソースは、SRVCTLコマンドを使用して評価する必要があります。

関連項目:

- SRVCTL評価コマンドの使用の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください

- 「What-If API」

CRSCTLヘルプの使用

CRSCTLのヘルプ情報を出力するには、次のコマンドを使用します。

crsctl -help

startなどの特定のコマンドのヘルプを出力する場合は、次の例に示すように、コマンドを入力し、-helpを末尾に追加します。

crsctl start -help

-helpのかわりに省略形-hまたは-?を使用することもできます(このパラメータはLinux、UNIXおよびWindows環境で機能します)。

非推奨のサブプログラムまたはコマンド

表E-1は、非推奨のコマンドおよびそれらの代替(同じまたは類似した機能を実行するのに使用可能)を示しています。

表E-1 非推奨のCRSCTLコマンドおよびその代替

非推奨コマンド

代替コマンド

crs_stat

crsctl check cluster
crsctl status resource

crs_register

crsctl add resource
crsctl add type
crsctl modify resource
crsctl modify type

crs_unregister

crsctl stop resource
crsctl delete resource

crs_start

crsctl start resource
crsctl start crs
crsctl start cluster

crs_stop

crsctl stop resource
crsctl stop crs
crsctl stop cluster

crs_getperm

crsctl getperm resource
crsctl getperm type

crs_profile

crsctl add resource
crsctl add type
crsctl status resource
crsctl status type
crsctl modify resource
crsctl modify type

crs_relocate

crsctl relocate resource

crs_setperm

crsctl setperm resource
crsctl setperm type

crsctl add crs administrator

アクセス制御リスト(ACL)を使用して、サーバー・プールを追加できるユーザーを制御します。

crsctl check crsd

crsctl check crs

crsctl check cssd

crsctl check css

crsctl check evmd

crsctl check evm

crsctl debug res log
resource_name:level

crsctl set log

crsctl set css votedisk

crsctl add css votedisk
crsctl delete css votedisk
crsctl query css votedisk
crsctl replace votedisk

crsctl start resources

crsctl start resource -all

crsctl stop resources

crsctl stop resource -all

デュアル環境のCRSCTLコマンド

Oracle RACまたはOracle Restart環境で次のコマンドを使用できます。

- crsctl add resource

- crsctl add type

- crsctl add wallet

- crsctl check css

- crsctl check evm

- crsctl delete resource

- crsctl delete type

- crsctl delete wallet

- crsctl eval add resource

- crsctl eval fail resource

- crsctl eval modify resource

- crsctl eval relocate resource

- crsctl eval start resource

- crsctl eval stop resource

- crsctl get hostname

- crsctl getperm resource

- crsctl getperm type

- crsctl modify resource

- crsctl modify type

- crsctl modify wallet

- crsctl query wallet

- crsctl relocate resource

- crsctl restart resource

- crsctl setperm resource

- crsctl setperm type

- crsctl start resource

- crsctl status resource

- crsctl status type

- crsctl stop resource

crsctl add resource

Oracle Clusterwareで管理するリソースを登録するには、crsctl add resourceコマンドを使用します。リソースには、アプリケーション・プロセス、データベース、サービス、リスナーなどがあります。

構文

crsctl add resource resource_name -type resource_type [-file file_path |
-attr "attribute_name=attribute_value,attribute_name=attribute_value,..."]
[-i] [-f]

パラメータ

表E-2 crsctl add resourceコマンドのパラメータ

パラメータ

説明

resource_name

短く、わかりやすいリソース名。

-type resource_type

追加するリソースの種類。前に-typeフラグを付けます。

-file file_path

リソースを定義する属性名/値ペアが行区切りで記載されているテキスト・ファイルのパス名(絶対または相対)。

-attr "attribute_name=
attribute_value

追加するリソースの属性を2つの異なる方法で指定できます。

- -attrフラグの後に、1つ以上の属性名/値ペアをカンマで区切り、二重引用符("")で囲んで指定できます。次に例を示します。

-attr "CHECK_INTERVAL=30,START_TIMEOUT=25"

いくつかの属性は複数の値を持つことができます。そのような場合は、空白で値を区切り、値のリストを一重引用符で囲みます。次に例を示します。

-attr "SERVER_POOL_NAMES=
'ora.pool1 ora.pool2',START_TIMEOUT=25"

- また、特定のカーディナリティ値および特定の程度値を付加してリソース・インスタンスの属性値を指定できます。この方法は特定のサーバーに関連付けられるアプリケーションに役立ちます。-attrフラグの後の構文は次のとおりです。

attribute_name{@SERVERNAME(server_name)
[@DEGREEID(did)] | @CARDINALITYID(cid)
[@DEGREEID(did)]}=attribute_value

@SERVERNAME(server_name)構文を指定すると、指定した属性の属性値は、指定したサーバーに存在するリソース・インスタンスに限定されます。

または、@CARDINALITYID(cid)構文を指定すると、指定した属性の属性値は、特定のカーディナリティID(cid)を持つリソース・インスタンスに限定されます。

必要に応じて、@DEGREEID(did)構文をSERVERNAMEまたはCARDINALITYID構文のいずれか、または両方と組み合せて、特定のDEGREEが設定されているリソースに属性値を限定することができます。

例:

CHECK_INTERVAL@SERVERNAME(node1)=45
STOP_TIMEOUT@CARDINALITYID(2)=65
STOP_TIMEOUT@SERVERNAME(node1)@DEGREEID(2)=65
STOP_TIMEOUT@CARDINALITYID(3)@DEGREEID(2)=65

-i

-iを指定すると、このコマンドの処理でOracle Clusterwareがリソースまたはその依存リソースをロック解除するのを待機する必要がある場合、コマンドはエラーを戻します。コマンドが互いに影響しないように、Oracle Clusterwareによってリソースまたは他のオブジェクトがロックされることがあります。

-f

強制パラメータは次の場合に使用します。

- まだ存在しない他のリソースに依存するリソースを追加する場合。強制パラメータによってチェックが無効になるため、コマンドの完了が妨げられません。

- 他のリソースへのhard依存性がリソースに設定されており、1つ以上の依存性に対する実行権限がリソース所有者にない状態でリソースを追加する場合。この場合には、強制パラメータを指定しないとエラーが表示されます。

- 汎用サーバー・プールにサーバーを移動する必要がある場合があり、このために、applicationタイプのリソースを追加する場合。停止する必要のあるリソースがサーバーで現在ホスティングされている場合、強制パラメータが必要です。

関連項目:

リソースおよびリソース属性の詳細は、「Oracle Clusterwareのリソース・リファレンス」を参照してください。

使用上の注意

- resource_nameパラメータおよび-type resource_typeパラメータのどちらも必須です。関連付けられたリソース・タイプをcrsctl add typeを使用して作成できます。

- 任意のユーザーがリソースを作成できますが、SERVER_POOLS=*が設定されているlocal_resourceタイプのリソースまたはcluster_resourceタイプのリソースを作成できるのはクラスタウェア管理者のみです。
リソースの定義後、どのユーザーがリソースに関する特定の操作を実行できるかはACLによって制御されます。Oracle Clusterware管理者のリストは影響しなくなります。

Windowsでは、管理者グループのメンバーがすべてを完全に制御できます。

関連項目:

ACLの設定の詳細は、「crsctl setperm resource」を参照してください。

- 属性名/値ペアの属性値にカンマが含まれる場合、値は一重引用符('')で囲む必要があります。

- 属性ファイルの例を次に示します。

PLACEMENT=favored
HOSTING_MEMBERS=node1 node2 node3
RESTART_ATTEMPTS@CARDINALITYID(1)=0
RESTART_ATTEMPTS@CARDINALITYID(2)=0
FAILURE_THRESHOLD@CARDINALITYID(1)=2
FAILURE_THRESHOLD@CARDINALITYID(2)=4
FAILURE_INTERVAL@CARDINALITYID(1)=300
FAILURE_INTERVAL@CARDINALITYID(2)=500
CHECK_INTERVAL=2
CARDINALITY=2

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

例

例1

Oracle Clusterwareを使用してVIPをリソースとして登録するには、次のコマンドを実行します。

$ crsctl add resource app.appvip -type app.appvip.type -attr "RESTART_ATTEMPTS=2,
START_TIMEOUT=100,STOP_TIMEOUT=100,CHECK_INTERVAL=10,
USR_ORA_VIP=172.16.0.0,
START_DEPENDENCIES=hard(ora.net1.network)pullup(ora.net1.network),
STOP_DEPENDENCIES=hard(ora.net1.network)"

例2

test_type1リソース・タイプに基づくリソースを登録するには、次のコマンドを実行します。

$ crsctl add resource r1 -type test_type1 -attr "PATH_NAME=/tmp/r1.txt"
$ crsctl add resource r1 -type test_type1 -attr "PATH_NAME=/tmp/r2.txt"

例3

EXECUTABLE_NAMES属性を使用してgeneric_applicationリソース・タイプのSambaサーバー・リソースを登録するには、次のコマンドを実行します。

# crsctl add resource my_samba -type generic_application -attr
"EXECUTABLE_NAMES=smbd,START_PROGRAM='/etc/rc.d/init.d/smb start',
STOP_PROGRAM='/etc/rc.d/init.d/smb stop'"

例4

EXECUTABLE_NAMES属性を使用してgeneric_applicationリソース・タイプのDNSサーバーを登録するには、次のコマンドを実行します。

# crsctl add resource my_dns -type generic_application -attr
"EXECUTABLE_NAMES=named,START_PROGRAM='/etc/rc.d/init.d/named start',
STOP_PROGRAM='/etc/rc.d/init.d/named stop'"

例5

PID_FILES属性を使用してgeneric_applicationリソース・タイプのApache Webサーバーを登録するには、次のコマンドを実行します。

# crsctl add resource my_apache -type generic_application -attr
"START_PROGRAM='/usr/sbin/httpd -k start',STOP_PROGRAM='/usr/sbin/httpd -k stop',
PID_FILES=/etc/httpd/run/httpd.pid"

例6

環境変数を使用してgeneric_applicationリソース・タイプのアプリケーションを登録するには、次のコマンドを実行します。

# crsctl add resource my_app -type generic_application -attr
"START_PROGRAM='/opt/my_app start', EXECUTABLE_NAMES=my_app,
ENVIRONMENT_VARS='USE_NETAPP=no,USE_BACKUP=yes,CLEAN_ON_KILL=yes'"

crsctl add type

Oracle Clusterwareでリソース・タイプを作成するには、crsctl add typeコマンドを使用します。

構文

crsctl add type type_name -basetype base_type_name {-attr
"ATTRIBUTE=attribute_name | -file file_path,TYPE={string | int}
[,DEFAULT_VALUE=default_value][,FLAGS=typeFlags"} [-i]

パラメータ

表E-3 crsctl add typeコマンドのパラメータ

パラメータ

説明

type_name

xxx.yyy.typeの書式のリソース・タイプ名。リソース・タイプの名前は一意である必要があり、リソース・タイプの登録後は変更できません。

-basetype base_type_name

ベースになる既存のタイプの名前。作成するリソース・タイプのベースになるリソース・タイプは、local_resourceまたはcluster_resourceのいずれかである必要があります。

-attr

-attr引数を使用してリソース・タイプ属性を指定できます。各タイプ属性定義には最大4つのタイプ属性キーワードを含めることができ、それらはここに示す順序で表示される必要があります。1つ以上のリソース・タイプ属性の説明をカンマで区切り、二重引用符("")で囲んで入力します。属性のキーワードは次のとおりです。

1. ATTRIBUTE: 属性の名前を指定します。名前では大/小文字が区別され、空白は使用できません。

2. TYPE: 属性のタイプがintegerかstringかを指定します。

3. DEFAULT_VALUE: (オプション)属性が必須である場合、デフォルト値は不要です。必須でない属性の場合は、このリソース・タイプに基づいてリソースを作成する際にOracle Clusterwareによって使用されるデフォルト値を指定する必要があります。

4. FLAGS: (オプション)次のタイプから1つ以上のタイプを指定し、縦線(|)で区切ります。
CONFIG: このリソース・タイプのリソースを登録した後に、この属性を構成できます。

READONLY: このリソース・タイプのリソースを登録した後は、この属性を変更できません。

REQUIRED: このリソース・タイプに基づくリソースを作成するときには、この属性の名前および値を指定する必要があります。この属性は必須でないと指定した場合、Oracle Clusterwareではこの属性に指定されたデフォルト値が使用されます。

HOTMOD: このタイプのリソースの属性値を変更した場合、変更はただちに適用され、リソースを再起動する必要があります。

複数の-attr引数を使用して、このリソース・タイプに複数の引数を定義することはできません。かわりに、-attrフラグの後の二重引用符の中に複数のタイプを指定できます。次に例を示します。

"ATTRIBUTE=FOO,TYPE=integer,DEFAULT_
VALUE=0,FLAGS=REQUIRED|HOTMOD,ATTRIBUTE=BAR,TYPE=string"

前述の例では、2つのタイプ属性(FOOおよびBAR)を定義しています。ATTRIBUTEキーワードを指定すると、前のタイプ属性(存在する場合)が終わり、新しいタイプ属性が始まります。

-file file_path

リソース・タイプを定義するリソース・タイプのキーワード/値ペアが行区切りで記載されているテキスト・ファイルのパス名(絶対または相対)。ファイルの内容の例は、次のとおりです。

ATTRIBUTE=FOO
TYPE=integer
DEFAULT_VALUE=0
FLAGS=REQUIRED
ATTRIBUTE=BAR
TYPE=string

注意: キーワードは、ATTRIBUTE、TYPE、DEFAULT_VALUEおよびFLAGSの順序である必要があります。ATTRIBUTEキーワードを指定すると、前のタイプ属性(存在する場合)が終わり、新しいタイプ属性が始まります。

前述の例では、2つのタイプ属性(FOOおよびBAR)を定義しています。

注意: すべての演算子は空白で囲む必要があります。

関連項目: 演算子の詳細は、「フィルタ」を参照してください。

-i

-iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

関連項目:

リソース・タイプの詳細は、「Oracleクラスタウェアのリソース・タイプ」を参照してください。

使用上の注意

- type_nameパラメータおよびbase_type_nameパラメータのどちらも必須です。

- タイプ情報を含むファイルを指定するか、またはコマンドラインにタイプ情報を指定することができます。

- oraで始まる名前を持つリソース・タイプはOracleリソース・タイプであるため、これらのリソース・タイプにはこのコマンドを使用しないでください。

- ベースとなるタイプに対する読取り権限が必要です。

例

demoActionScriptのリソース・タイプを作成するには、次のコマンドを実行します。

# crsctl add type test_type1 -basetype cluster_resource
-attr "ATTRIBUTE=FOO,TYPE=integer,DEFAULT_VALUE=0"

crsctl add wallet

ユーザーを作成してウォレットに追加するには、crsctl add walletコマンドを使用します。

構文

crsctl add wallet -type wallet_type [-name name] [-user user_name -passwd]

表E-4 crsctl add wallet

パラメータ

説明

-type wallet_type

作成するウォレットのタイプ(APPQOSADMIN、APPQOSUSER、APPQOSDB、OSUSER、CVUDBなど)。

- OSUSER: このウォレット・タイプは、ポリシー管理データベースでWindowsサービスを作成する際、またはWindowsサービスのパスワードを更新するために一般的にエージェントによって使用される、権限の低いWindowsユーザーのユーザー名とパスワードを格納します。

- CVUDB: このウォレット・タイプは、CVUのヘルス・チェック・コンポーネントがデータベースに接続してデータベース・チェックを実行するために使用するデータベース・ユーザー名とパスワードを格納します。

-name name

APPQOSDBウォレットやCVUDBウォレットを作成するには、ウォレットの名前を指定する必要があります。

-user user_name -passwd

ウォレットに追加するユーザー名を指定して、標準入力からパスワードを指定します。OSUSERウォレットを作成するにはユーザー名が必要です。

使用上の注意

- ポリシー管理データベースを使用している場合、ウォレットが必要です。それ以外の場合はウォレットはオプションです。

例

ウォレットを追加するには、次のコマンドを実行します。

$ crsctl add wallet -type OSUSER -user lp_oracle_home_user -passwd

前述の例で、lp_oracle_home_userは、ポリシー管理データベースを作成したホームを所有する権限が低いOracleホーム・ユーザーです。

crsctl check css

クラスタ同期サービスのステータスをチェックするには、crsctl check cssコマンドを使用します。このコマンドを最も頻繁に使用するのは、Oracle Automatic Storage Management (Oracle ASM)がローカル・サーバーにインストールされている場合です。

構文

crsctl check css

例

crsctl check cssコマンドでは次のような出力が戻されます。

CRS-4529: Cluster Synchronization Services is online

crsctl check evm

イベント・マネージャのステータスをチェックするには、crsctl check evmコマンドを使用します。

構文

crsctl check evm

例

crsctl check evmコマンドでは次のような出力が戻されます。

CRS-4533: Event Manager is online

crsctl delete resource

Oracle Clusterwareの構成からリソースを削除するには、crsctl delete resourceコマンドを使用します。

構文

crsctl delete resource resource_name [-i] [-f]

パラメータ

表E-5 crsctl delete resourceコマンドのパラメータ

パラメータ

説明

resource_name

削除するリソースの名前を指定するか、削除する複数のリソースの空白区切りのリストを指定します。

-i

-iを指定すると、このコマンドの処理でOracle Clusterwareがリソースまたはその依存リソースをロック解除するのを待機する必要がある場合、コマンドはエラーを戻します。コマンドが互いに影響しないように、Oracle Clusterwareによってリソースまたは他のオブジェクトがロックされることがあります。

-f

実行中のリソースを削除する場合、または他のリソースがこのリソースにhard依存性を持っていてもこのリソースを削除する場合、強制パラメータを使用します。

使用上の注意

- resource_nameパラメータは必須です。

- 指定したリソースを削除するには、読取りおよび書込み権限が必要です。

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

例

Oracle Clusterwareからリソースを削除するには、次のコマンドを実行します。

# crsctl delete resource myResource

crsctl delete type

Oracle Clusterwareの構成からリソース・タイプを削除するには、crsctl delete typeコマンドを使用します。

構文

crsctl delete type type_name [-i]

使用上の注意

- type_nameパラメータは必須です。複数のタイプを空白で区切って指定できます。

- -iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

- oraで始まる名前を持つリソース・タイプはOracleリソース・タイプであるため、これらのリソース・タイプにはこのコマンドを使用しないでください。

例

2つのリソース・タイプを削除するには、そのリソース・タイプに対する書込み権限を持つユーザーとして次のコマンドを実行します。

$ crsctl delete type test_type1 test_type2

crsctl delete wallet

ウォレット、またはウォレットからユーザーを削除するには、crsctl delete walletコマンドを使用します。

構文

crsctl delete wallet -type wallet_type [-name name] [-user user_name]

表E-6 crsctl delete wallet

パラメータ

説明

-type wallet_type

削除するウォレットのタイプ(APPQOSADMIN、APPQOSUSER、APPQOSDB、OSUSER、CVUDBなど)。

- OSUSER: このウォレット・タイプは、ポリシー管理データベースでWindowsサービスを作成する際、またはWindowsサービスのパスワードを更新するために一般的にエージェントによって使用される、権限の低いWindowsユーザーのユーザー名とパスワードを格納します。

- CVUDB: このウォレット・タイプは、CVUのヘルス・チェック・コンポーネントがデータベースに接続してデータベース・チェックを実行するために使用するデータベース・ユーザー名とパスワードを格納します。

-name name

APPQOSDBウォレットを削除するには、ウォレットの名前を指定する必要があります。

-user user_name

OSUSERウォレットからユーザーを削除するには、ユーザー名を指定する必要があります。

例

OSUSERウォレットからユーザーを削除するには、次のコマンドを実行します。

$ crsctl delete wallet -type OSUSER -user lp_oracle_home_user

前述の例で、lp_oracle_home_userは、ポリシー管理データベースを作成したホームを所有する権限が低いOracleホーム・ユーザーです。また、ウォレットに他のユーザーが含まれている場合、コマンドを実行してもウォレットは削除されません。

crsctl eval add resource

システムを変更せずにリソースの追加の影響を予測するには、crsctl eval add resourceコマンドを使用します。このコマンドはアプリケーション管理者にとって役に立つ場合があります。

構文

crsctl eval add resource resource_name -type resource_type
[-attr "attribute_name=attribute_value[,attribute_name=attribute_value[,..."]]
| -file file_path] [-f]

パラメータ

関連項目:

-type、-attr、および-fileパラメータの詳細は、「crsctl add resource」を参照してください

表E-7 crsctl eval add resourceコマンドのパラメータ

パラメータ

説明

-f

強制パラメータを指定してコマンドを実行した場合に発生する事象を評価するには、このパラメータを指定します。

crsctl eval fail resource

リソース障害の結果を予測するには、crsctl eval fail resourceコマンドを使用します。

構文

crsctl eval fail resource {resource_name | -w "filter"} [-n server]

パラメータ

表E-8 crsctl eval fail resourceコマンドのパラメータ

パラメータ

説明

resource_name

障害をシミュレートするリソースの名前。

-w "filter"

評価されるリソースの数を制限するためにOracle Clusterwareによって使用されるリソース・フィルタを指定します。フィルタは二重引用符("")で囲む必要があります。次にリソース・フィルタの例を示します。

- "TYPE == cluster_resource": このフィルタは、cluster_resourceタイプのリソースのみを再配置するようにOracle Clusterwareを制限します。

- "CHECK_INTERVAL > 10": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持つリソースを再配置するようにOracle Clusterwareを制限します。

- "(CHECK_INTERVAL > 10) AND (NAME co 2)": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持ち、かつ、リソースの名前に数字2が含まれるリソースを再配置するようにOracle Clusterwareを制限します。

注意: すべての演算子は空白で囲む必要があります。

関連項目: 演算子の詳細は、「フィルタ」を参照してください。

-n server

障害をシミュレートするリソースがあるサーバーの名前を指定します。

例

このコマンドによって、次のような出力が返されます。

$ crsctl eval fail res cs1

Stage Group 1:
--------------------------------------------------------------------------------
Stage Number    Required       Action
--------------------------------------------------------------------------------

1              Y   Resource 'cs1' (1/1) will be in state
[ONLINE|INTERMEDIATE] on server
[mjkeenan_node_0]
Y   Resource 'cs1' (2/1) will be in state
[ONLINE|INTERMEDIATE] on server
[mjkeenan_node_1]

--------------------------------------------------------------------------------

crsctl eval modify resource

システムを変更せずにリソースの変更の影響を予測するには、crsctl eval modify resourceコマンドを使用します。

構文

crsctl eval modify resource resource_name -attr "attribute_name=attribute_value"
[-f]

パラメータ

表E-9 crsctl eval modify resourceコマンドのパラメータ

パラメータ

説明

resource_name

変更するリソースの名前。

-attr "attribute_name=
attribute_value"

変更するリソースの属性を2つの異なる方法で指定できます。

- -attrフラグの後に、変更対象の1つ以上の属性名/値ペアをカンマで区切り、二重引用符("")で囲んで指定できます。次に例を示します。

-attr "CHECK_INTERVAL=30, START_TIMEOUT=25"

いくつかの属性は複数の値を持つことができます。そのような場合は、空白で値を区切り、値のリストを一重引用符で囲みます。次に例を示します。

-attr "SERVER_POOL_NAMES=
'ora.pool1 ora.pool2',START_TIMEOUT=25"

- または、特定のカーディナリティ値および特定の程度値を付加して特定のサーバーに存在するリソースの属性値を指定できます。この方法は特定のサーバーに何らかの方法で関連付けられるアプリケーションに役立ちます。-attrフラグの後の構文は次のとおりです。

attribute_name{@SERVERNAME(server_name)
[@DEGREEID(did)] | @CARDINALITYID(cid)
[@DEGREEID(did)]}=attribute_value

@SERVERNAME(server_name)構文を指定すると、指定した属性の属性値は、指定したサーバーに存在するリソースに限定されます。

または、@CARDINALITYID(cid)構文を指定すると、指定した属性の属性値は、特定のカーディナリティID(cid)を持つリソース・インスタンスに限定されます。

必要に応じて、@DEGREEID(did)構文をSERVERNAMEまたはCARDINALITYID構文のいずれか、または両方と組み合せて、特定のDEGREEが設定されているリソースに属性値を限定することができます。

例:

CHECK_INTERVAL@SERVERNAME(node1)=45
STOP_TIMEOUT@CARDINALITYID(2)=65
STOP_TIMEOUT@SERVERNAME(node1)@DEGREEID(2)=65
STOP_TIMEOUT@CARDINALITYID(3)@DEGREEID(2)=65

-f

強制パラメータを指定してコマンドを実行した場合に発生する事象を評価するには、このパラメータを指定します。

関連項目:

リソースおよびリソース属性の詳細は、「Oracle Clusterwareのリソース・リファレンス」を参照してください。

crsctl eval relocate resource

システムを変更せずにリソースの再配置をシミュレーションするには、crsctl eval relocate resourceコマンドを使用します。

構文

crsctl eval relocate resource {resource_name | -all} {-s source_server |
-w "filter"} [-n destination_server] [-f]

パラメータ

関連項目:

このコマンドで使用されるパラメータの詳細は、「crsctl relocate resource」を参照してください。

crsctl eval start resource

システムを変更せずにリソースの起動の影響を予測するには、crsctl eval start resourceコマンドを使用します。

構文

crsctl eval start resource {resource_name [...] | -w "filter" | -all}
[-n server_name] [-f]

パラメータ

関連項目:

このコマンドで使用されるパラメータの詳細は、「crsctl start resource」を参照してください

crsctl eval stop resource

システムを変更せずにリソースの停止の影響を予測するには、crsctl eval stop resourceコマンドを使用します。

構文

crsctl eval stop resource {resource_name [...] | -w "filter" | -all} [-f]

パラメータ

関連項目:

このコマンドで使用されるパラメータの詳細は、「crsctl stop resource」を参照してください

crsctl get hostname

ローカル・サーバーのホスト名を取得するには、crsctl get hostnameコマンドを使用します。

構文

crsctl get hostname

例

Oracle Clusterwareによってローカル・サーバーのホスト名が戻されます。

$ crsctl get hostname
node2

crsctl getperm resource

指定したリソースに対するユーザー権限およびグループ権限を表示するには、crsctl getperm resourceコマンドを使用します。

構文

crsctl getperm resource resource_name [ {-u user_name | -g group_name} ]

関連項目:

リソースおよびリソース属性の詳細は、「Oracle Clusterwareのリソース・リファレンス」を参照してください。

パラメータ

表E-10 crsctl getperm resourceコマンドのパラメータ

パラメータ

説明

resource_name

権限を取得するリソースの名前を指定します。

-u user_name

-uを指定すると、Oracle Clusterwareでは特定のユーザーの権限が取得されます。

-g group_name

-gを指定すると、Oracle Clusterwareでは特定のグループの権限が取得されます。

使用上の注意

- resource_nameパラメータは必須です。

- 指定したリソースの権限を取得するには、それらのリソースに対する読取り権限が必要です。

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

例

crsctl getperm resourceコマンドでは、選択するコマンド・オプションに応じて次のような出力が戻されます。

$ crsctl getperm resource app.appvip

Name: app.appvip
owner:root:rwx,pgrp:oinstall:rwx,other::r--

$ crsctl getperm resource app.appvip -u oracle

Name: app.appvip
rwx

$ crsctl getperm resource app.appvip -g dba

Name: app.appvip
r--

crsctl getperm type

特定のリソース・タイプの権限を取得するには、crsctl getperm typeコマンドを使用します。

構文

crsctl getperm type resource_type  [-u user_name] | [-g group_name]

関連項目:

リソース・タイプの詳細は、「Oracleクラスタウェアのリソース・タイプ」を参照してください。

パラメータ

表E-11 crsctl getperm typeコマンドのパラメータ

パラメータ

説明

resource_type

権限を取得するリソース・タイプを指定します。

-u user_name

-uを指定すると、Oracle Clusterwareでは特定のユーザーの権限が取得されます。

-g group_name

-gを指定すると、Oracle Clusterwareでは特定のグループの権限が取得されます。

使用上の注意

- resource_typeパラメータは必須です。

- oraで始まる名前を持つリソース・タイプはOracleリソース・タイプであるため、これらのリソース・タイプにはこのコマンドを使用しないでください。

例

crsctl getperm typeコマンドでは次のような出力が戻されます。

$ crsctl getperm type app.appvip.type

Name: app.appvip.type
owner:root:rwx,pgrp:oinstall:rwx,other::r--

crsctl modify resource

Oracle Clusterwareの特定のリソースの属性を変更するには、crsctl modify resourceコマンドを使用します。

構文

crsctl modify resource resource_name -attr "attribute_name=attribute_value"
[-i] [-f] [-delete]

パラメータ

表E-12 crsctl modify resourceコマンドのパラメータ

パラメータ

説明

resource_name

変更するリソースの名前。

-attr "attribute_name=
attribute_value"

変更するリソースの属性を2つの異なる方法で指定できます。

- -attrフラグの後に、変更対象の1つ以上の属性名/値ペアをカンマで区切り、二重引用符("")で囲んで指定できます。次に例を示します。

-attr "CHECK_INTERVAL=30, START_TIMEOUT=25"

いくつかの属性は複数の値を持つことができます。そのような場合は、空白で値を区切り、値のリストを一重引用符で囲みます。次に例を示します。

-attr "SERVER_POOL_NAMES=
'ora.pool1 ora.pool2',START_TIMEOUT=25"

- または、特定のカーディナリティ値および特定の程度値を付加して特定のサーバーに存在するリソースの属性値を指定できます。この方法は特定のサーバーに何らかの方法で関連付けられるアプリケーションに役立ちます。-attrフラグの後の構文は次のとおりです。

attribute_name{@SERVERNAME(server_name)
[@DEGREEID(did)] | @CARDINALITYID(cid)
[@DEGREEID(did)]}=attribute_value

@SERVERNAME(server_name)構文を指定すると、指定した属性の属性値は、指定したサーバーに存在するリソースに限定されます。

または、@CARDINALITYID(cid)構文を指定すると、指定した属性の属性値は、特定のカーディナリティID(cid)を持つリソース・インスタンスに限定されます。

必要に応じて、@DEGREEID(did)構文をSERVERNAMEまたはCARDINALITYID構文のいずれか、または両方と組み合せて、特定のDEGREEが設定されているリソースに属性値を限定することができます。

例:

CHECK_INTERVAL@SERVERNAME(node1)=45
STOP_TIMEOUT@CARDINALITYID(2)=65
STOP_TIMEOUT@SERVERNAME(node1)@DEGREEID(2)=65
STOP_TIMEOUT@CARDINALITYID(3)@DEGREEID(2)=65

-i

-iを指定すると、このコマンドの処理でOracle Clusterwareがリソースまたはその依存リソースをロック解除するのを待機する必要がある場合、コマンドはエラーを戻します。コマンドが互いに影響しないように、Oracle Clusterwareによってリソースまたは他のオブジェクトがロックされることがあります。

-f

-fパラメータは次の場合に使用します。

- 存在しないリソースへのhard依存性がリソースに設定されている場合

- 1つ以上のhard依存性に対する実行権限がリソース所有者にない場合

- 変更によってサーバーが汎用プールに移動され、サーバーの移動を完了するためにリソースが停止または再配置される場合

-delete

-deleteパラメータを使用すると、指定した属性がOracle Clusterwareによって削除されます。

関連項目:

リソースおよびリソース属性の詳細は、「Oracle Clusterwareのリソース・リファレンス」を参照してください。

使用上の注意

- resource_nameパラメータは必須です。

- 属性名/値ペアの属性値にカンマが含まれる場合、値は一重引用符('')で囲む必要があります。次に例を示します。

"START_DEPENDENCIES='hard(res1,res2,res3)'"

- 指定したリソースを変更するには、それらのリソースに対する読取りおよび書込み権限が必要です。

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

例

appsvipリソースの属性を変更するには、次のコマンドを実行します。

$ crsctl modify resource appsvip -attr USR_ORA_VIP=10.1.220.17 -i

crsctl modify type

既存のリソース・タイプを変更するには、crsctl modify typeコマンドを使用します。

構文

crsctl modify type type_name -attr "ATTRIBUTE=attribute_name,TYPE={string | int}
[,DEFAULT_VALUE=default_value [,FLAGS=[READONLY][| REQUIRED]]" [-i] [-f]]

パラメータ

表E-13 crsctl modify typeコマンドのパラメータ

パラメータ

説明

type_name

変更するリソース・タイプの名前を指定します。複数のリソース・タイプの名前は変更できません。

-attr

次のリソース・タイプ・キーワードを変更できます。

- TYPE

- DEFAULT_VALUE

- FLAGS

注意: ATTRIBUTEキーワードは、指定する必要がありますが、変更することはできません。

関連項目: これらのキーワードの詳細は、表E-3を参照してください

-i

-iパラメータを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

関連項目:

リソース・タイプの詳細は、「Oracleクラスタウェアのリソース・タイプ」を参照してください。

使用上の注意

- type_nameパラメータは必須です。

- oraで始まる名前を持つリソース・タイプはOracleリソース・タイプであるため、これらのリソース・タイプにはこのコマンドを使用しないでください。

例

次の例では、2つのタイプ属性(FOOおよびBAR)を変更します。

$ crsctl modify type myType.type -attr "ATTRIBUTE=FOO,DEFAULT_VALUE=0
ATTRIBUTE=BAR,DEFAULT_VALUE=baz"

crsctl modify wallet

特定のウォレットで特定のユーザーのパスワードを変更するには、crsctl modify walletコマンドを使用します。

構文

crsctl modify wallet -type wallet_type [-name name] [-user user_name -passwd]

表E-14 crsctl modify wallet

パラメータ

説明

-type wallet_type

変更するウォレットのタイプを指定します(APPQOSADMIN、APPQOSUSER、APPQOSDB、OSUSER、CVUDBなど)。

- OSUSER: このウォレット・タイプは、ポリシー管理データベースでWindowsサービスを作成する際、またはWindowsサービスのパスワードを更新するために一般的にエージェントによって使用される、権限の低いWindowsユーザーのユーザー名とパスワードを格納します。

- CVUDB: このウォレット・タイプは、CVUのヘルス・チェック・コンポーネントがデータベースに接続してデータベース・チェックを実行するために使用するデータベース・ユーザー名とパスワードを格納します。

-name name

APPQOSDBウォレットを変更するには、ウォレット名を指定する必要があります。

-user user_name -passwd

パスワードを変更するユーザーの名前を指定する必要があります。標準入力からパスワードを変更します。

使用上の注意

- このコマンドを使用してユーザー名を変更することはできません。

例

権限が低いOracleホーム・ユーザーのパスワードを変更するには、次のコマンドを実行します。

$ crsctl modify wallet -type OSUSER -user lp_oracle_home_user -passwd

crsctl query wallet

権限の低いウォレットのユーザーを問い合せるには、crsctl query walletコマンドを使用します。

構文

crsctl query wallet -type wallet_type [-name name] [-user user_name] [-all]

表E-15 crsctl query wallet

パラメータ

説明

-type wallet_type

問い合せるウォレットのタイプ(APPQOSADMIN、APPQOSUSER、APPQOSDB、OSUSER、CVUDBなど)。

- OSUSER: このウォレット・タイプは、ポリシー管理データベースでWindowsサービスを作成する際、またはWindowsサービスのパスワードを更新するために一般的にエージェントによって使用される、権限の低いWindowsユーザーのユーザー名とパスワードを格納します。

- CVUDB: このウォレット・タイプは、CVUのヘルス・チェック・コンポーネントがデータベースに接続してデータベース・チェックを実行するために使用するデータベース・ユーザー名とパスワードを格納します。

-name name

APPQOSDBウォレットを問い合せるには、ウォレットの名前を指定する必要があります。

-user user_name

OSUSERウォレットのユーザーを問い合せるには、ユーザー名を指定する必要があります。

-all

-allを指定すると、特定のウォレットのすべてのユーザーが表示されます。

例

OSUSERウォレット内のすべてのユーザーを表示するには、次のコマンドを実行します。

$ crsctl query wallet -type OSUSER -all

crsctl relocate resource

クラスタ内の別のサーバーにリソースを再配置するには、crsctl relocate resourceコマンドを使用します。

構文

crsctl relocate resource {resource_name | resource_name | -all -s source_server |
-w "filter"} [-n destination_server] [-k cid] [-env "env1=val1,env2=val2,..."]
[-i] [-f]

パラメータ

表E-16 crsctl relocate resourceコマンドのパラメータ

パラメータ

説明

resource_name

再配置するリソースの名前。

resource_name | -all
-s source_server

1つの特定のリソース、または再配置対象のリソースの再配置元である特定のサーバーに存在するすべてのリソースを指定します。

-w "filter"

再配置されるリソースの数を制限するためにOracle Clusterwareによって使用されるリソース・フィルタを指定します。フィルタは二重引用符("")で囲む必要があります。次にリソース・フィルタの例を示します。

- "TYPE == cluster_resource": このフィルタは、cluster_resourceタイプのリソースのみを再配置するようにOracle Clusterwareを制限します。

- "CHECK_INTERVAL > 10": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持つリソースを再配置するようにOracle Clusterwareを制限します。

- "(CHECK_INTERVAL > 10) AND (NAME co 2)": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持ち、かつ、リソースの名前に数字2が含まれるリソースを再配置するようにOracle Clusterwareを制限します。

関連項目: 「フィルタ」を参照してください。

-n destination_server

リソースの再配置先サーバーの名前を指定します。宛先サーバーを指定しない場合、Oracle Clusterwareでは各リソースの属性プロファイルに従い、最適なサーバーにリソースが再配置されます。

-k cid

リソースのカーディナリティIDを指定します。このパラメータを指定すると、指定したカーディナリティのリソース・インスタンスがOracle Clusterwareによって再配置されます。

-env "env1=val1,
env2=val2,..."

必要に応じて、このコマンドの1つ以上のリソース・プロファイル属性値を上書きできます。複数の環境名/値ペアを指定する場合、各ペアをカンマで区切り、リスト全体を二重引用符("")で囲む必要があります。

-i

-iを指定すると、このコマンドの処理でOracle Clusterwareがリソースまたはその依存リソースをロック解除するのを待機する必要がある場合、コマンドはエラーを戻します。コマンドが互いに影響しないように、Oracle Clusterwareによってリソースまたは他のオブジェクトがロックされることがあります。

-f

再配置対象のリソースに依存している他のリソースが実行中である場合に再配置対象のリソースを強制的に再配置するには、-fパラメータを指定します。このパラメータを使用すると、依存リソースは再配置または停止されます。

注意: 1より大きいカーディナリティを持つリソースを再配置する場合、-kまたは-sのいずれかを使用して、再配置対象のリソース・インスタンスを絞り込む必要があります。

使用上の注意

- 再配置対象のリソースを指定するには、次の3つの方法のいずれかを使用する必要があります。

- 再配置対象の1つの特定のリソースを指定します。

- または、特定のソース・サーバーから再配置する1つの特定のリソースまたはすべてのリソースを指定できます。

- 3つ目の方法として、Oracle Clusterwareによって再配置対象のリソースの照合に使用されるリソース・フィルタを指定します。

- リソースの程度IDが1より大きい場合、このリソースのすべてのインスタンスがOracle Clusterwareによって再配置されます。

- 指定したリソースを再配置するには、それらのリソースに対する読取りおよび実行権限が必要です。

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

例

あるサーバーから別のサーバーに1つの特定のリソースを再配置するには、次のコマンドを実行します。

# crsctl relocate resource myResource1 -s node1 -n node3

crsctl restart resource

クラスタ内のアイドル・リソースを再起動するには、リソースの停止と起動のために2つのコマンドを実行するかわりに、crsctl restart resourceコマンドを使用します。

構文

crsctl restart resource {resource_name [...] | -w "filter"} [-k cid] [-d did]
[-env "env1=val1,env2=val2,..."] [-i] [-f]

パラメータ

表E-17 crsctl restart resourceコマンドのパラメータ

パラメータ

説明

resource_name [...]

空白区切りの1つ以上の再起動対象のリソース名。

-w filter

Oracle Clusterwareによってリソースの照合に使用されるリソース・フィルタを、二重引用符("")で囲んで指定します。たとえば、-w "TYPE=ora.database.type"や-w "NAME=cs1"とします。

関連項目: 「フィルタ」を参照してください。

-k cid

リソースのカーディナリティIDを指定します。このパラメータを指定すると、指定したカーディナリティのリソース・インスタンスがOracle Clusterwareによって再起動されます。

-d did

リソースの程度IDを指定します。このパラメータに1より大きい程度IDを指定すると、この基準を満たすすべてのリソース・インスタンスがOracle Clusterwareによって再起動されます。

注意: -kパラメータを指定せずに-dパラメータを使用することはできません。

-env "env1=val1,
env2=val2,..."

必要に応じて、-envコマンド・パラメータを使用して、1つ以上のリソース・プロファイル属性値を上書きできます。複数の環境名/値ペアを指定する場合、各ペアをカンマで区切り、リスト全体を二重引用符("")で囲む必要があります。

-i

-iを指定すると、このコマンドの処理でOracle Clusterwareがリソースまたはその依存リソースをロック解除するのを待機する必要がある場合、コマンドはエラーを戻します。コマンドが互いに影響しないように、Oracle Clusterwareによってリソースまたは他のオブジェクトがロックされることがあります。

-f

再起動するリソースが別のサーバーで実行中で、そのサーバーに対するhard起動依存性が定義されている場合、-fパラメータを使用してそのリソースを再配置します。この場合には、強制パラメータを指定しないと、startコマンドは失敗します。

使用上の注意

- 再起動対象のリソースを指定するには、次の3つの方法のいずれかを使用する必要があります。

- 再起動対象の1つ以上のリソースを指定します

- Oracle Clusterwareによって再起動対象のリソースの照合に使用されるリソース・フィルタを指定します

- 指定したリソースを再起動するには、それらのリソースに対する読取りおよび実行権限が必要です

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースの再起動にはこのコマンドを使用しないでください

例

リソースを再起動するには、次のコマンドを実行します。

# crsctl restart resource myResource -s pool1 pool2

crsctl setperm resource

特定のリソースに権限を設定するには、crsctl setperm resourceコマンドを使用します。

構文

crsctl setperm resource resource_name {-u acl_string | -x acl_string |
-o user_name | -g group_name}

パラメータ

表E-18 crsctl setperm resourceコマンドのパラメータ

パラメータ

説明

resource_name

権限を設定するリソースの名前を指定します。

{-u | -x | -o | -g}

リソースには次の権限のうち1つのみを設定できます。

- -u acl_string: リソースのアクセス制御リスト(ACL)を更新できます。

- -x acl_string: リソースのACLを削除できます。

- -o user_name: ユーザー名を入力することによってリソースの所有者を変更できます。

- -g group_name: グループ名を入力することによってリソースのプライマリ・グループを変更できます。

ユーザー、グループ、他のACL文字列は次のように指定します。

user:user_name[:readPermwritePermexecPerm] |
group:group_name[:readPermwritePermexecPerm] |
other[::readPermwritePermexecPerm]

- user: ユーザーACL

- group: グループACL

- other: 他のACL

- readPerm: リソースに対する読取り権限。文字rはユーザー、グループ、その他の読取り権限を付与し、マイナス記号(-)は読取り権限を付与しません。

- writePerm: リソースに対する書込み権限。文字wはユーザー、グループ、その他の書込み権限を付与し、マイナス記号(-)は書込み権限を付与しません。

- execPerm: リソースに対する実行権限。文字xはユーザー、グループ、その他の実行権限を付与し、マイナス記号(-)は実行権限を付与しません。

関連項目:

リソースおよびリソース属性の詳細は、「Oracle Clusterwareのリソース・リファレンス」を参照してください。

使用上の注意

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

- 権限を設定するには、指定したリソースに対する読取りおよび書込み権限が必要です。

例

リソースに対する読取り、書込み、および実行権限をユーザーScottに付与するには、次のコマンドを実行します。

$ crsctl setperm resource myResource -u user:scott:rwx

crsctl setperm type

特定のリソース・タイプの権限リソースを設定するには、crsctl setperm typeコマンドを使用します。

構文

crsctl setperm type resource_type_name {-u acl_string | -x acl_string |
-o user_name | -g group_name}

パラメータ

表E-19 crsctl setperm typeコマンドのパラメータ

パラメータ

説明

resource_type_name

権限を設定するリソース・タイプの名前を指定します。

{-u | -x | -o | -g}

リソース・タイプには次のパラメータのうち1つのみを指定できます。

- -u acl_string: リソース・タイプのアクセス制御リスト(ACL)を更新できます。

- -x acl_string: リソース・タイプのACLを削除できます。

- -o user_name: ユーザー名を入力することによってリソース・タイプの所有者を変更できます。

- -g group_name: グループ名を入力することによってリソース・タイプのプライマリ・グループを変更できます。

ユーザー、グループ、他のACL文字列は次のように指定します。

user:user_name[:readPermwritePermexecPerm] |
group:group_name[:readPermwritePermexecPerm] |
other[::readPermwritePermexecPerm]

- user: ユーザーACL

- group: グループACL

- other: 他のACL

- readPerm: リソース・タイプに対する読取り権限。文字rはユーザー、グループ、その他の読取り権限を付与し、マイナス記号(-)は読取り権限を付与しません。

- writePerm: リソース・タイプに対する書込み権限。文字wはユーザー、グループ、その他の書込み権限を付与し、マイナス記号(-)は書込み権限を付与しません。

- execPerm: リソース・タイプに対する実行権限。文字xはユーザー、グループ、その他の実行権限を付与し、マイナス記号(-)は実行権限を付与しません。

使用上の注意

- resource_type_nameパラメータは必須です。

- 権限を設定するには、指定したリソースに対する読取りおよび書込み権限が必要です。

- oraで始まる名前を持つリソース・タイプはOracleリソース・タイプであるため、これらのリソース・タイプにはこのコマンドを使用しないでください。

例

リソース・タイプに対する読取り、書込み、および実行権限をユーザーScottに付与するには、次のコマンドを実行します。

$ crsctl setperm type resType -u user:scott:rwx

crsctl start resource

クラスタ内の特定のサーバーに存在するアイドル状態の多数のリソースを起動するには、crsctl start resourceコマンドを使用します。

構文

crsctl start resource {resource_name [...] | -w "filter" | -all}
[-n server_name | -s server_pool_names] [-k cid] [-d did]
[-env "env1=val1,env2=val2,..."] [-begin] [-end] [-i] [-f] [-l]

パラメータ

表E-20 crsctl start resourceコマンドのパラメータ

パラメータ

説明

resource_name [...]

空白区切りの1つ以上の起動対象のリソース名。

-w "filter"

Oracle Clusterwareによってリソースの照合に使用されるリソース・フィルタを、二重引用符("")で囲んで指定します。たとえば、-w "TYPE=ora.database.type"や-w "NAME=cs1"とします。

関連項目: 「フィルタ」を参照してください。

-all

クラスタ内のすべてのリソースを起動するには、このパラメータを使用します。

-n server_name

起動するリソースが存在するサーバーの名前を指定します。サーバーを指定しない場合、Oracle Clusterwareでは各リソースの属性プロファイルに従い、最適なサーバー上のリソースが起動されます。

-s server_pool_names

起動するリソースが存在する1つのサーバー・プール名または空白区切りのサーバー・プールのリストを指定します。

-k cid

リソースのカーディナリティIDを指定します。このパラメータを指定すると、指定したカーディナリティのリソース・インスタンスがOracle Clusterwareによって起動されます。

-d did

リソースの程度IDを指定します。このパラメータに1より大きい程度IDを指定すると、この基準を満たすすべてのリソース・インスタンスがOracle Clusterwareによって起動されます。

注意: -kパラメータを指定せずに-dパラメータを使用することはできません。

-env "env1=val1,
env2=val2,..."

必要に応じて、-envコマンド・パラメータを使用して、1つ以上のリソース・プロファイル属性値を上書きできます。複数の環境名/値ペアを指定する場合、各ペアをカンマで区切り、リスト全体を二重引用符("")で囲む必要があります。

-begin

このパラメータを指定して、透過的HAアクションを開始できます。

-end

このパラメータを指定して、透過的HAアクションを終了できます。

-i

-iを指定すると、このコマンドの処理でOracle Clusterwareがリソースまたはその依存リソースをロック解除するのを待機する必要がある場合、コマンドはエラーを戻します。コマンドが互いに影響しないように、Oracle Clusterwareによってリソースまたは他のオブジェクトがロックされることがあります。

-f

起動するリソースが別のサーバーで実行中であり、そのサーバーに対するhard起動依存性が定義されている場合、-fパラメータを使用してそのリソースを再配置します。この場合には、強制パラメータを指定しないと、startコマンドは失敗します。

-l

startコマンドが失敗した場合は、-lパラメータを使用してリソースを元の状態のままにします。

使用上の注意

- 起動対象のリソースを指定するには、次の3つの方法のいずれかを使用する必要があります。

- 起動対象の1つ以上のリソースを指定します。

- Oracle Clusterwareによって起動対象のリソースの照合に使用されるリソース・フィルタを指定します。

- -allパラメータを指定して、指定したサーバー上のすべてのリソースを起動できます。

- 指定したリソースを起動するには、それらのリソースに対する読取りおよび実行権限が必要です。

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースの起動にはこのコマンドを使用しないでください

- Oracleでは、Oracle Grid Infrastructure外部での管理対象アプリケーションの起動はサポートされていません

例

リソースを起動するには、次のコマンドを実行します。

# crsctl start resource myResource -n server1

crsctl status resource

多くの特定のリソースのステータスおよび構成情報を取得するには、crsctl status resourceコマンドを使用します。

構文

返されるリソースのステータスに関する情報がどれほど必要かに応じて、このコマンドを使用してください。

特定のリソースの状態をチェックするには、次のコマンドを実行します。

crsctl status resource resource_name [...] | -w "filter" [-p | -v] | [-f | -l | -g]
[[-k cid | -n server_name] [ -e [-p | -v]] [-d did]] | [-s -k cid [-d did]]

リソースの状態を表形式で印刷するには、次のコマンドを実行します。

crsctl status resource resource_name [...] | -w "filter" -t

リソースの依存関係のリストを印刷するには、次のコマンドを実行します。

crsctl status resource [resource_name [...]] -dependency [-stop | -pullup]

パラメータ

表E-21 crsctl status resourceコマンドのパラメータ

パラメータ

説明

resource_name [...] |
-w "filter"

ステータスのチェック対象である空白区切りの1つ以上のリソース名。

または、表示されるリソースの数を制限するためにOracle Clusterwareによって使用されるリソース・フィルタを指定することもできます。フィルタは二重引用符("")で囲む必要があります。値にカッコまたは空白が含まれる場合、一重引用符('')で囲む必要があります。演算子は空白で囲む必要があります。次にリソース・フィルタの例を示します。

- "TYPE == cluster_resource": このフィルタは、cluster_resourceタイプのリソースのみを表示するように制限します。

- "CHECK_INTERVAL > 10": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持つリソースを表示するように制限します。

- "(CHECK_INTERVAL > 10) AND (NAME co 2)": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持ち、かつ、リソースの名前に数字2が含まれるリソースを表示するように制限します。

- "START_DEPENDENCIES='hard(appsvip)'": このフィルタはappsvipリソースに対するhard起動依存性を持つリソースを表示するように制限します。

関連項目: 「フィルタ」を参照してください。

[-p | -v] | [-f | -l | -g]

オプションで、次のパラメータを指定できます。

- -pパラメータを指定してリソースの静的な構成を表示するか、または、-vパラメータを指定してリソースの実行時の構成を表示します。

- リソースのすべての構成を表示する場合は-fパラメータを、リソースのすべてのカーディナル値および程度値を表示する場合は-lパラメータを、指定したリソースが登録されているかどうかをチェックする場合は-gパラメータを指定します。

[[-k cid |
-n server_name] [ -e [-p | -v]]
[-d did | [-s -k cid [-d did]]]

次の2つのオプションのいずれかを指定できます。

- 問合せ対象のリソースのカーディナリティIDを指定する場合は-k cidを指定します。または、-nパラメータを指定して、リソースをチェックする特定のサーバーを指定できます。必要に応じて-nパラメータとともに-dパラメータを指定して、チェックするリソースの程度IDを指定できます。1より大きい程度IDを指定すると、この基準を満たすサーバー上のすべてのリソース・インスタンスがOracle Clusterwareによってチェックされます。
リソース・インスタンスの特別な値を評価するには、-eパラメータを使用します。-eパラメータとともに-pまたは-vも指定する必要があります。

- 再配置対象のサーバーのリストを取得する場合は、-kパラメータとともに-sパラメータを指定します。-dパラメータとともに程度IDを指定することによって、出力をさらに制限できます。

-t

表形式で出力を表示する場合は-tパラメータを指定します。

-dependency [-stop | -pullup]

リソースの依存性を表示するには、-dependencyパラメータを指定します。-stopまたは-pullupオプションのいずれかを指定しなかった場合、CRSCTLではリソースの起動依存性が表示されます。

-dependencyパラメータでは次のいずれかのオプションを使用します。

- リソースの停止依存性を表示するには、-stopパラメータを指定します。

- リソースのプルアップ依存性を表示するには、-pullupパラメータを指定します。

使用上の注意

- リソースの空白区切りのリストまたはリソース・フィルタのいずれかが必要です。

- 指定したリソースのステータスを取得するには、それらのリソースに対する読取り権限が必要です。

- クラスタにデプロイされている任意のリソースのステータス情報を問い合せるには、crsctl status resourceを使用します。ただし、Oracle(ora.*)リソースのステータス情報を問い合せる場合は、対応するSRVCTLコマンドを使用することをお薦めします。

例

crsctl status resourceコマンドでは次のような出力が戻されます。

$ crsctl status resource ora.staii14.vip

NAME=ora.staii14.vip
TYPE=ora.cluster_vip_net1.type
TARGET=ONLINE
STATE=ONLINE on staii14

次の例では、ora.newdb.dbというリソースの起動依存性を表示します。

$ crsctl status resource ora.newdb.db -dependency ora.newdb.db(ora.database.type)

ora.ACFS_DG1.dg(ora.diskgroup.type)[hard,pullup]
ora.asm(ora.asm.type)[hard,pullup]
ora.LISTENER.lsnr(ora.listener.type)[weak]
type:ora.cluster_vip_net1.type[hard:type,pullup:type]
ora.net1.network(ora.network.type)[hard,pullup]
ora.dbhome_dg.dbhome_dg_v.acfs(ora.acfs.type)[hard,pullup]
ora.asm(ora.asm.type)[pullup:always]

crsctl status type

1つ以上の特定のリソース・タイプの構成情報を取得するには、crsctl status typeコマンドを使用します。

構文

crsctl status type [resource_type_name [...] | -w "filter"] [-g] [-p] [-f]

パラメータ

表E-22 crsctl status typeコマンドのパラメータ

パラメータ

説明

resource_type_name [...] | -w "filter"

ステータスのチェック対象である1つ以上のリソース・タイプ名を空白区切りで指定します。

または、Oracle Clusterwareによってリソース・タイプの照合に使用されるリソース・タイプ・フィルタを、二重引用符("")で囲んで指定します。たとえば、-w "TYPE = ora.database.type"のようにします。

関連項目: 「フィルタ」を参照してください。

[-g] [-p] [-f]

Oracle Clusterwareで特定のサーバー・プールのステータスをチェックする場合のオプションとして、次のパラメータを指定できます。

- -g: 指定したリソース・タイプが登録されているかどうかをチェックする場合にこのパラメータを使用します。

- -p: 指定したリソース・タイプの静的な構成を表示する場合にこのパラメータを使用します。

- -f: リソース・タイプのすべての構成を表示する場合にこのパラメータを使用します。

使用上の注意

- resource_type_nameパラメータまたはフィルタは必須です

例

crsctl status typeコマンドでは次のような出力が戻されます。

$ crsctl status type ora.network.type

TYPE_NAME=ora.network.type
BASE_TYPE=ora.local_resource.type

crsctl stop resource

実行中のリソースを停止するには、crsctl stop resourceコマンドを使用します。

構文

crsctl stop resource {resource_name [...] | -w "filter" | -all} [-n server_name]
[-k cid] [-d did] [-env "env1=val1,env2=val2,..."]
[-begin | -end] [-i] [-f] [-l]

パラメータ

表E-23 crsctl stop resourceコマンドのパラメータ

パラメータ

説明

resource_name [...]

空白区切りの1つ以上の停止対象のリソース名。

-w "filter"

停止されるリソースの数を制限するためにOracle Clusterwareによって使用されるリソース・フィルタを指定します。フィルタは二重引用符("")で囲む必要があります。次にリソース・フィルタの例を示します。

- "TYPE == cluster_resource": このフィルタは、cluster_resourceタイプのリソースのみを停止するようにOracle Clusterwareを制限します。

- "CHECK_INTERVAL > 10": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持つリソースを停止するようにOracle Clusterwareを制限します。

- "(CHECK_INTERVAL > 10) AND (NAME co 2)": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持ち、かつ、リソースの名前に数字2が含まれるリソースを停止するようにOracle Clusterwareを制限します。

関連項目: 「フィルタ」を参照してください。

-all

クラスタ内のすべてのリソースを停止するには、このパラメータを使用します。

-n server_name

停止するリソース・インスタンスが存在するサーバーの名前を指定します。サーバーを指定しない場合、Oracle Clusterwareではリソースのすべてのインスタンスが停止されます。

-k cid

リソースのカーディナリティIDを指定します。このパラメータを指定すると、指定したカーディナリティのリソース・インスタンスがOracle Clusterwareによって停止されます。

-d did

リソースの程度IDを指定します。このパラメータに1より大きい程度IDを指定すると、この基準を満たすすべてのリソース・インスタンスがOracle Clusterwareによって停止されます。

-env "env1=val1,
env2=val2,..."

必要に応じて、-envコマンド・パラメータを使用して、1つ以上のリソース・プロファイル属性値を上書きできます。複数の環境名/値ペアを指定する場合、各ペアをカンマで区切り、リスト全体を二重引用符("")で囲む必要があります。

-begin

このパラメータを指定して、透過的HAアクションを開始できます。

-end

このパラメータを指定して、透過的HAアクションを終了できます。

-i

-iを指定すると、このコマンドの処理でOracle Clusterwareがリソースまたはその依存リソースをロック解除するのを待機する必要がある場合、コマンドはエラーを戻します。コマンドが互いに影響しないように、Oracle Clusterwareによってリソースまたは他のオブジェクトがロックされることがあります。

-f

停止対象のリソースに依存している他のリソースが実行中である場合に停止対象のリソースを強制的に停止するには、-fパラメータを指定します。このパラメータを使用すると、依存リソースは再配置または停止されます。

-l

stopコマンドが失敗した場合は、-lパラメータを使用してリソースを元の状態のままにします。

使用上の注意

- 停止対象のリソースを指定するには、次の3つの方法のいずれかを使用する必要があります。

- 停止対象の1つ以上のリソースを指定します。

- Oracle Clusterwareによって停止対象のリソースの照合に使用されるリソース・フィルタを指定します。

- 特定のサーバーのすべてのリソースを停止するには、-n server_nameパラメータとともに-allパラメータを指定します

- 指定したリソースを停止するには、それらのリソースに対する読取りおよび実行権限が必要です。

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

- Oracleでは、Oracle Grid Infrastructure外部での管理対象アプリケーションの停止はサポートされていません

例

リソースを停止するには、次のコマンドを実行します。

$ crsctl stop resource -n node1 -k 2

Oracle RAC環境のCRSCTLコマンド

この項に示すコマンドは、次のもので構成されるOracle RAC環境のOracle Clusterwareスタックを管理します。

- Oracle Clusterware、メンバー・ノードおよびサーバー・プール

- Oracle ASM(インストールされている場合)

- クラスタ同期サービス

- クラスタ時刻同期化サービス

次のコマンドはOracle RAC環境でのみ使用できます。

- crsctl add category

- crsctl add crs administrator

- crsctl add css votedisk

- crsctl add policy

- crsctl add serverpool

- crsctl check cluster

- crsctl check crs

- crsctl check resource

- crsctl check ctss

- crsctl config crs

- crsctl create policyset

- crsctl delete category

- crsctl delete crs administrator

- crsctl delete css votedisk

- crsctl delete node

- crsctl delete policy

- crsctl delete serverpool

- crsctl disable crs

- crsctl discover dhcp

- crsctl enable crs

- crsctl eval activate policy

- crsctl eval add server

- crsctl eval add serverpool

- crsctl eval delete server

- crsctl eval delete serverpool

- crsctl eval modify serverpool

- crsctl eval relocate server

- crsctl get clientid dhcp

- crsctl get cluster hubsize

- crsctl get cluster mode

- crsctl get cpu equivalency

- crsctl get css

- crsctl get css ipmiaddr

- crsctl get css leafmisscount

- crsctl get node role

- crsctl get nodename

- crsctl get resource use

- crsctl get server label

- crsctl getperm serverpool

- crsctl lsmodules

- crsctl modify category

- crsctl modify policy

- crsctl modify policyset

- crsctl modify serverpool

- crsctl pin css

- crsctl query crs administrator

- crsctl query crs activeversion

- crsctl query crs autostart

- crsctl query crs releasepatch

- crsctl query crs releaseversion

- crsctl query crs softwarepatch

- crsctl query crs softwareversion

- crsctl query css ipmiconfig

- crsctl query css ipmidevice

- crsctl query css votedisk

- crsctl query dns

- crsctl query socket udp

- crsctl release dhcp

- crsctl relocate resource

- crsctl relocate server

- crsctl replace discoverystring

- crsctl replace votedisk

- crsctl request action

- crsctl request dhcp

- crsctl set cluster hubsize

- crsctl set cluster mode

- crsctl set cpu equivalency

- crsctl set crs autostart

- crsctl set css

- crsctl set css ipmiaddr

- crsctl set css ipmiadmin

- crsctl set css leafmisscount

- crsctl set node role

- crsctl set resource use

- crsctl set server label

- crsctl setperm serverpool

- crsctl start cluster

- crsctl start crs

- crsctl start ip

- crsctl start rollingpatch

- crsctl start rollingupgrade

- crsctl start testdns

- crsctl status category

- crsctl status ip

- crsctl status policy

- crsctl status policyset

- crsctl status server

- crsctl status serverpool

- crsctl status testdns

- crsctl stop cluster

- crsctl stop crs

- crsctl stop ip

- crsctl stop rollingpatch

- crsctl stop testdns

- crsctl unpin css

- crsctl unset css

- crsctl unset css ipmiconfig

- crsctl unset css leafmisscount

crsctl add category

サーバー・カテゴリを追加するには、crsctl add categoryコマンドを使用します。

構文

crsctl add category category_name [-attr "attr_name=attr_value
[,attr_name=attr_value[,...]]"] [-i]

パラメータ

表E-24 crsctl add categoryコマンドのパラメータ

パラメータ

説明

category_name

追加するサーバー・カテゴリの名前を指定します。

attr_name

前に-attrフラグを付けて、追加するカテゴリ属性の名前を指定します。

attr_value

カテゴリ属性の値。

注意: attr_nameパラメータおよびattr_valueパラメータは、カンマで区切って二重引用符("")で囲む必要があります。次に例を示します。

-attr "EXPRESSION='(CPU_COUNT > 2) AND (MEMORY_SIZE > 2048)'"

関連項目:

- このコマンドで使用できる属性のリストについては、表3-4を参照してください。

- 演算子の詳細は、「フィルタ」を参照してください。

-i

-iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

使用上の注意

- 属性名/値ペアの属性値にカンマが含まれる場合、値は一重引用符('')で囲む必要があります。次に例を示します。

"START_DEPENDENCIES='hard(res1,res2,res3)'"

例

サーバー・カテゴリを追加するには、次のコマンドを実行します。

$ crsctl add category cat1 -attr "EXPRESSION='(CPU_COUNT > 2) AND (MEMORY_SIZE > 2048)'"

crsctl add crs administrator

クラスタ管理者のリストにユーザーを追加するには、crsctl add crs administratorコマンドを使用します。

構文

crsctl add crs administrator -u user_name [-f]

パラメータ

表E-25 crsctl add crs administratorコマンドのパラメータ

パラメータ

説明

-u user_name

Oracle Clusterware管理権限の付与対象のユーザー名。

-f

ユーザー名の妥当性チェックを無視するには、このパラメータを使用します。

使用上の注意

- このコマンドは、Oracle Clusterware 12cでは非推奨です。

- このコマンドは、rootまたはクラスタ管理者として、またはWindowsシステムの場合、管理者として実行する必要があります。

- デフォルトでは、root、Oracle Clusterwareをインストールしたユーザーおよび*ワイルドカードが、Oracle Clusterware管理権限を持つユーザーのリストのメンバーです。ワイルドカードを削除し、Oracle Clusterwareのロール別管理を有効にするには、crsctl delete crs administratorコマンドを実行します。

関連項目:

詳細は、「ロール別管理」を参照してください

例

Oracle Clusterware管理者のリストにユーザーを追加するには、次のコマンドを実行します。

# crsctl add crs administrator -u scott

crsctl add css votedisk

Oracle ASMディスク・グループ以外のストレージ・デバイス上のクラスタに1つ以上の投票ファイルを追加するには、crsctl add css votediskコマンドを使用します。

構文

crsctl add css votedisk path_to_voting_disk [path_to_voting_disk ...] [-purge]

パラメータ

表E-26 crsctl add css votediskコマンドのパラメータ

パラメータ

説明

path_to_voting_disk

追加する投票ファイルへの完全修飾パス。複数の投票ファイルを追加するには、各パスを空白で区切ります。

-purge

既存のすべての投票ファイルを一度に削除します。投票ファイルの既存のセットを1つの操作で置換できます。

使用上の注意

- 外部冗長を提供するディスク・アレイなどのストレージ・デバイスを持たないかぎり、3つ以上の投票ファイルを使用する必要があります。投票ファイルは6つ以上使用しないことをお薦めします。サポートされる投票ファイルの最大数は15です。

関連項目:

詳細は、「投票ファイルの追加、削除または移行」を参照してください

例

投票ファイルをクラスタに追加するには、次のコマンドを実行します。

$ crsctl add css votedisk /stor/grid/ -purge

crsctl add policy

構成ポリシーをポリシー・セットに追加するには、crsctl add policyコマンドを使用します。

構文

crsctl add policy policy_name -attr "attr_name=attr_value[,attr_name=attr_value[, ...]]" [-i]

パラメータ

表E-27 crsctl add policyコマンドのパラメータ

パラメータ

説明

policy_name

追加するポリシーの名前を指定します。

attr_name

前に-attrフラグを付けて、DESCRIPTIONポリシー属性を使用してポリシーの説明を指定します。

attr_value

ポリシーについて説明するDESCRIPTIONポリシー属性の値。

注意: attr_nameパラメータおよびattr_valueパラメータは、カンマで区切って二重引用符("")で囲む必要があります。次に例を示します。

-attr "DESCRIPTION=daytime"

-i

-iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

使用上の注意

- ポリシーを追加してもポリシーはアクティブ化されません

- policy_nameパラメータは必須です

- このコマンドの実行に必要な権限は、ポリシー・セットのACL属性の値によって異なります

例

ポリシーを追加するには、次のコマンドを実行します。

$ crsctl add policy nightTime -attr "DESCRIPTION=nighttime"

crsctl add serverpool

データベース以外のリソース(アプリケーション・サーバーなど)をホスティングするためのサーバー・プールをOracle Clusterwareに追加するには、crsctl add serverpoolコマンドを使用します。

構文

crsctl add serverpool server_pool_name {-file file_path |
-attr "attr_name=attr_value[,attr_name=attr_value[,...]]"} [-i] [-f]

パラメータ

表E-28 crsctl add serverpoolコマンドのパラメータ

パラメータ

説明

server_pool_name

短く、わかりやすいサーバー・プール名。サーバー・プール名には、254文字の制限があり、プラットフォームでサポートされているすべての文字(感嘆符(!)、チルダ(~)および空白を除く)を使用できます。サーバー・プール名の先頭をピリオドまたはoraにすることはできません。

-file file_path

サーバー・プールを定義する属性ファイルへの完全修飾されたパス。

attribute_name

サーバー・プールを管理するのにOracle Clusterwareが使用するサーバー・プール属性の名前で、前に-attrフラグを付けます。使用可能な属性名は次のとおりです。

- IMPORTANCE

- MIN_SIZE

- MAX_SIZE

- SERVER_NAMES

- PARENT_POOLS

- EXCLUSIVE_POOLS

- ACL

- SERVER_CATEGORY

attribute_value

サーバー・プール属性の値。

注意: attribute_nameパラメータおよびattribute_valueパラメータは、カンマで区切って二重引用符("")で囲む必要があります。次に例を示します。

-attr "MAX_SIZE=30, IMPORTANCE=3"

-i

-iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

-f

-fパラメータを指定すると、Oracle Clusterwareでは別のサーバー・プール内のサーバーで実行中のリソースが停止され、追加対象のサーバー・プールにそのサーバーが再配置されます。-fパラメータを指定しない場合、Oracle Clusterwareでは、サーバー・プールを作成した結果、追加対象のサーバー・プールにサーバーを渡す別のサーバー・プール内のサーバーで、リソースが停止されるかどうかがチェックされます。その場合、Oracle Clusterwareではcrsctl add serverpoolコマンドが拒否されます。

関連項目:

サーバー・プールおよびサーバー・プール属性の詳細は、「サーバー・プールの動作方法」を参照してください。

使用上の注意

- server_pool_nameパラメータは必須です。

- 属性名/値ペアの属性値にカンマが含まれる場合、値は一重引用符('')で囲む必要があります。

- oraで始まる名前を持つサーバー・プールはOracleのサーバー・プールであるため、これらのサーバー・プールにはこのコマンドを使用しないでください。

- このコマンドを実行すると、新しい構成に適合するように、Oracle Clusterwareによって他のサーバーがサーバー・プール間で再配置されることがあります。

- このコマンドは、rootまたはクラスタ管理者で実行する必要があります。

- データベース以外のリソースをホスティングするサーバー・プールを作成するには、crsctl add serverpoolコマンドを使用します。Oracle Databaseをホスティングするサーバー・プールを作成するには、SRVCTLコマンド・ユーティリティを使用します。

関連項目:

SRVCTLコマンド・ユーティリティを使用したサーバー・プールの作成の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

例

例1

サーバーの最大サイズが5であるtestspというサーバー・プールを追加するには、rootまたはOracle Clusterwareインストール所有者として次のコマンドを実行します。

# crsctl add serverpool testsp -attr "MAX_SIZE=5"

例2

sp1サーバー・プールの属性値を行ごとに記載したsp1_attrファイルを作成します。次に例を示します。

IMPORTANCE=1
MIN_SIZE=1
MAX_SIZE=2
SERVER_NAMES=node3 node4 node5
PARENT_POOLS=Generic
EXCLUSIVE_POOLS=testsp
ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r--

入力としてsp1_attrファイルを使用してsp1サーバー・プールを作成するには、次のコマンドを使用します。

$ crsctl add serverpool sp1 -file /tmp/sp1_attr

crsctl check cluster

Oracle Clusterwareスタックのステータスをチェックするには、クラスタ内の任意のノードでcrsctl check clusterコマンドを使用します。

構文

crsctl check cluster [-all | [-n server_name [...]]

使用上の注意

- -allパラメータを使用してクラスタ内のすべてのノードでOracle Clusterwareスタックのステータスをチェックするか、1つ以上のノードを空白区切りで指定できます。どちらのパラメータも指定しない場合、Oracle Clusterwareはローカル・サーバーのOracle Clusterwareスタックのステータスをチェックします。

- クラスタ内の任意のノードでこのクラスタ対応コマンドを使用できます。

例

crsctl check clusterコマンドでは次のような出力が戻されます。

$ crsctl check cluster -all
*****************************************************************
node1:
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
*****************************************************************
node2:
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
*****************************************************************

crsctl check crs

Oracle高可用性サービスのステータスおよびローカル・サーバーのOracle Clusterwareスタックのステータスをチェックするには、crsctl check crsコマンドを使用します。

構文

crsctl check crs

例

ローカル・サーバーのOracle Clusterwareの状態をチェックするには、次のコマンドを実行します。

$ crsctl check crs
CRS-4638: Oracle High Availablity Services is online
CRS-4537: Cluster Ready Services is onlin
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online

crsctl check resource

特定のリソースのアプリケーション固有のエージェントでcheckアクションを開始するには、crsctl check resourceコマンドを使用します。リソース名に誤りがあるなど、何らかの理由でシステムがcheckリクエストを発行できない場合のみ、Oracle Clusterwareは出力を行います。

構文

crsctl check resource {resource_name [...] | -w "filter" }
[-n node_name] [-k cardinality_id] [-d degree_id] }

パラメータ

表E-29 crsctl check resourceコマンドのパラメータ

パラメータ

説明

resource_name

特定のリソースを指定します。複数のリソース名を空白で区切って入力することによって、複数のリソースをチェックできます。

-w "filter"

チェックされるリソースの数を制限するためにOracle Clusterwareによって使用されるリソース・フィルタを指定します。フィルタは二重引用符("")で囲む必要があります。次にリソース・フィルタの例を示します。

- "TYPE == cluster_resource": このフィルタは、cluster_resourceタイプのリソースのみをチェックするようにOracle Clusterwareを制限します。

- "CHECK_INTERVAL > 10": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持つリソースをチェックするようにOracle Clusterwareを制限します。

- "(CHECK_INTERVAL > 10) AND (NAME co 2)": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持ち、かつ、リソースの名前に数字2が含まれるリソースをチェックするようにOracle Clusterwareを制限します。

関連項目: 「フィルタ」を参照してください。

-n node_name

特定のノードのリソース・インスタンスをチェックします。-nパラメータを指定しない場合、Oracle Clusterwareではローカル・サーバーのみのリソース・インスタンスがチェックされます。

-k cardinality_id

リソースのカーディナリティIDを指定します。

-d degree_id

リソースの程度IDを指定します。

使用上の注意

- 指定したリソースをチェックするには、それらのリソースに対する読取りおよび実行権限が必要です。

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

- このコマンドの成功は、checkが発行されたということのみを意味します。CHECKアクションが完了したという意味ではありません。

例

特定のリソースのアプリケーション固有のエージェントでcheckアクションを開始するには、次のコマンドを実行します。

$ crsctl check resource appsvip

crsctl check ctss

クラスタ時刻同期化サービスのステータスをチェックするには、crsctl check ctssコマンドを使用します。

構文

crsctl check ctss

例

crsctl check ctssコマンドでは次のような出力が戻されます。

CRS-4700: The Cluster Time Synchronization Service is in Observer mode.

OR

CRS-4701: The Cluster Time Synchronization Service is in Active mode.
CRS-4702: Offset from the reference node (in msec): 100

crsctl config crs

Oracle高可用性サービスの自動起動構成を表示するには、crsctl config crsを使用します。

構文

crsctl config crs

例

crsctl config crsコマンドでは次のような出力が戻されます。

CRS-4622: Oracle High Availability Services autostart is enabled.

crsctl create policyset

サーバー・プール構成を反映する1つのポリシー・セットをテキスト・ファイル形式で作成するには、crsctl create policysetコマンドを使用します。ポリシー・セットの作成後、テキスト・ファイルの内容をコピーして別のポリシー・セットを作成できます。

構文

crsctl create policyset -file path_to_file

パラメータ

表E-30 crsctl create policysetコマンドのパラメータ

パラメータ

説明

-file file_name

crsctl modify policysetを使用してポリシーの追加、削除、または更新を行って編集後に送り返すことができるファイルが、CRSCTLによって作成されるパスを指定します。

例

ポリシー・セットを作成するには、次のコマンドを実行します。

$ crsctl create policyset -file /tmp/ps

crsctl delete category

サーバー・カテゴリを削除するには、crsctl delete categoryコマンドを使用します。

構文

crsctl delete category category_name [category_name [...]] [-i]

パラメータ

表E-31 crsctl delete categoryコマンドのパラメータ

パラメータ

説明

category_name

削除するサーバー・カテゴリの名前または空白区切りのサーバー・カテゴリのリストを指定します。

-i

-iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

例

サーバー・カテゴリを削除するには、次のコマンドを実行します。

$ crsctl delete category blue_server -i

crsctl delete crs administrator

Oracle Clusterware管理者のリストからユーザーを削除するには、crsctl delete crs administratorコマンドを使用します。

構文

crsctl delete crs administrator -u user_name [-f]

パラメータ

表E-32 crsctl delete crs administratorコマンドのパラメータ

パラメータ

説明

-u user_name

削除対象のOracle Clusterware管理権限を持つユーザーの名前。

デフォルトでは、Oracle Clusterware管理権限を持つユーザーのリストは、Oracle Clusterwareをインストールしたユーザー、rootおよび*で構成されます。Oracle Clusterwareをインストールしたユーザーおよびrootは、このリストの永続的なメンバーです。*値によってOracle Clusterware管理権限がすべてのユーザーに付与されるため、ロール別管理を有効にするには、この値を削除する必要があります。

関連項目: 詳細は、「ロール別管理」を参照してください

-f

ユーザー名の妥当性チェックを無視するには、このパラメータを使用します。

使用上の注意

- user_nameパラメータは必須です

- このコマンドは、rootまたはクラスタ管理者として、またはWindowsシステムの場合、管理者として実行する必要があります。

- ロール別管理を有効にするには、二重引用符("")で囲まれた*値を削除する必要があります。

例

クラスタ管理者のリストからユーザーを削除するには、次のコマンドを実行します。

# crsctl delete crs administrator -u scott

crsctl delete css votedisk

投票ファイルをOracle Clusterwareの構成から削除するには、crsctl delete css votediskを使用します。

構文

crsctl delete css votedisk {voting_disk_GUID [...] | vdisk [...] | +diskgroup}

パラメータ

表E-33 crsctl delete css votediskコマンドのパラメータ

パラメータ

説明

voting_disk_GUID

削除対象の投票ファイルのファイル・ユニバーサル識別子(GUID)を入力します。複数のGUIDを指定する場合は、空白区切りのリストを入力します。

vdisk

削除する投票ファイルのパスを入力します。複数の投票ファイルのパスを指定する場合は、空白区切りのリストを入力します。

+diskgroup

削除する投票ファイルを含むOracle ASMディスク・グループの名前を入力します。Oracle Clusterwareが排他モードの場合のみ、パラメータを使用できます。

使用上の注意

- 削除する投票ファイルの1つ以上のGUID、または削除する投票ファイルの1つ以上のパス、または削除する投票ファイルを含むOracle ASMディスク・グループの名前を指定できます。

- crsctl query css votediskコマンドを実行することによって、現在の各投票ファイルのGUIDを取得できます。

例

投票ファイルを削除するには、次のコマンドを実行します。

$ crsctl delete css votedisk 26f7271ca8b34fd0bfcdc2031805581e

crsctl delete node

クラスタからノードを削除するには、crsctl delete nodeを使用します。

構文

crsctl delete node -n node_name

使用上の注意

- このコマンドを実行するには、rootである必要があります。

- node_nameパラメータは必須です。

- Oracle Flex Clusterでは、リーフ・ノードでこのコマンドを使用できません。

例

クラスタからnode06というノードを削除するには、rootとして次のコマンドを実行します。

# crsctl delete node -n node06

crsctl delete policy

構成ポリシーをポリシー・セットから削除するには、crsctl delete policyコマンドを使用します。

構文

crsctl delete policy policy_name [policy_name [...]] [-i]

パラメータ

表E-34 crsctl delete policyコマンドのパラメータ

パラメータ

説明

policy_name

削除するポリシーの名前または空白区切りのポリシー名のリストを指定します。

-i

-iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

使用上の注意

- policy_nameパラメータは必須です

- このコマンドの実行に必要な権限は、ポリシー・セットのACL属性の値によって異なります

例

ポリシーを削除するには、rootまたはOracle Clusterwareインストール所有者として次のコマンドを実行します。

# crsctl delete policy...

crsctl delete serverpool

Oracle Clusterwareの構成からサーバー・プールを削除するには、crsctl delete serverpoolコマンドを使用します。

構文

crsctl delete serverpool server_pool_name [server_pool_name [...]] [-i]

関連項目:

サーバー・プールおよびサーバー・プール属性の詳細は、「サーバー・プールの動作方法」を参照してください。

使用上の注意

- server_pool_nameパラメータは必須です。

- -iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

- oraで始まる名前を持つサーバー・プールはOracleのサーバー・プールであるため、これらのサーバー・プールにはこのコマンドを使用しないでください。

- このコマンドはどの環境でも使用できますが、Oracle RAC環境でのみ役立ちます。

例

サーバー・プールを削除するには、rootまたはOracle Clusterwareインストール所有者として次のコマンドを実行します。

# crsctl delete serverpool sp1

crsctl disable crs

サーバーの起動時にOracle高可用性サービスが自動的に起動しないようにするには、crsctl disable crsコマンドを使用します。

構文

crsctl disable crs

使用上の注意

- このコマンドはローカル・サーバーにのみ影響します。

- Oracle高可用性サービスの自動起動を無効にしている場合にOracle高可用性サービスを起動するには、crsctl start crsコマンドを使用する必要があります。

例

crsctl disable crsコマンドでは次のような出力が戻されます。

CRS-4621: Oracle High Availability Services autostart is disabled.

crsctl discover dhcp

特定のポートで、ネットワークでのDHCP検出パケットを送信するには、crsctl discover dhcpコマンドを使用します。DHCPサーバーがネットワークに存在すると、そのサーバーは検出メッセージに応答し、コマンドが成功します。

構文

crsctl discover dhcp -clientid clientid [-port port]

パラメータ

表E-35 crsctl discover dhcpコマンドのパラメータ

パラメータ

説明

-clientid clientid

検出したいクライアントIDを指定します。クライアントIDは、crsctl get clientid dhcpコマンドを実行して取得します。

-port port

CRSCTLが検出パケットを送信するポート。

使用上の注意

このコマンドは、rootで実行する必要があります

例

crsctl discover dhcpコマンドでは次のような出力が戻されます。

# crsctl discover dhcp -clientid stmjk0462clr-stmjk01-vip

CRS-10009: DHCP server returned server: 192.168.53.232,
loan address : 192.168.29.221/255.255.252.0, lease time: 43200

crsctl enable crs

サーバーの起動時のOracle高可用性サービスの自動起動を有効にするには、crsctl enable crsコマンドを使用します。

構文

crsctl enable crs

使用上の注意

- このコマンドはローカル・サーバーにのみ影響します。

例

crsctl enable crsコマンドでは次のような出力が戻されます。

CRS-4622: Oracle High Availability Services autostart is enabled.

crsctl eval activate policy

システムを変更せずに特定のポリシーのアクティブ化の影響を予測するには、crsctl eval activate policyコマンドを使用します。このコマンドはクラスタ管理者にとって役に立つ場合があります。

構文

crsctl eval activate policy policy_name [-f] [-admin [-l serverpools | resources
| all] [-x] [-a]]

パラメータ

表E-36 crsctl eval activate policyコマンドのパラメータ

パラメータ

説明

-f

ポリシーを強制的にアクティブ化しようとした場合に起こる事象を評価するには、このパラメータを指定します。

-admin [-l serverpools |
resources | all] [-x] [-a]

-l、-xおよび-aのなんらかの組合せを指定する場合、-adminを指定する必要があります。

-lパラメータを指定する場合、次の3つの出力レベルのいずれかを選択できます。

- serverpools: 1つのサーバー・プールで実行されているサーバーに出力を制限します

- resources: サーバー・プールのサーバーで実行されているリソースに出力を制限します

- all: 利用可能なすべての出力が表示されます

-xパラメータを指定する場合、CRSCTLでは差異が表示されます。

-aパラメータを指定する場合、CRSCTLではすべてのリソースが表示されます。

関連項目:

サーバー・プールおよびサーバー・プール属性の詳細は、「サーバー・プールの動作方法」を参照してください。

crsctl eval add server

システムを変更せずにサーバーの追加をシミュレーションするには、crsctl eval add serverコマンドを使用します。このコマンドはクラスタ管理者にとって役に立つ場合があります。

構文

crsctl eval add server server_name [-file file_path] | [-attr "attr_name=attr_value[,...]"]
[-admin [-l level [-x] [-a]] [-f]

パラメータ

表E-37 crsctl eval add serverコマンドのパラメータ

パラメータ

説明

server_name

追加するサーバーの名前。

-file file_path

サーバー属性が含まれるファイルへの完全修飾されたパス。

attr_name

サーバーを管理するのにOracle Clusterwareが使用するサーバー属性の名前で、前に-attrフラグを付けます。

関連項目: サーバー属性の詳細は、「サーバー・カテゴリ属性」を参照してください

attr_value

サーバー属性の値。

注意: attribute_nameパラメータおよびattribute_valueパラメータは、カンマで区切って二重引用符("")で囲む必要があります。次に例を示します。

-attr "MAX_SIZE=30,IMPORTANCE=3"

-admin [-l level] [-x] [-a]

このパラメータを指定する場合、CRSCTLではクラスタ管理者用に出力が表示されます。

-lパラメータを指定する場合、次の3つの出力レベルのいずれかを選択できます。

- serverpools: 1つのサーバー・プールで実行されているサーバーに出力を制限します

- resources: サーバー・プールのサーバーで実行されているリソースに出力を制限します

- all: 利用可能なすべての出力が表示されます

-xパラメータを指定する場合、CRSCTLでは差異が表示されます。

-aパラメータを指定する場合、CRSCTLではすべてのリソースが表示されます。

注意: -l、-x、-aパラメータのいずれか、またはこの3つのなんらかの組合せを指定するには、-adminパラメータを指定する必要があります。

-f

このパラメータを指定する場合、CRSCTLではサーバーを強制的に追加する影響が予測されます。

関連項目:

サーバーの追加の詳細は、「クラスタ・ノードの追加および削除」を参照してください

例

次の例では、mjkeenan-node-3という名前のサーバーを追加した場合にシステムがどのように対応するかを予測します。

# crsctl eval add server mjkeenan-node-3 -admin -l resources -a

--------------------------------------------------------------------------------
Name           Target  State        Server                   Effect
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.net1.network
ONLINE  ONLINE       mjkeenan-node-0
ONLINE  ONLINE       mjkeenan-node-1
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
cs1
1        ONLINE  ONLINE       mjkeenan-node-1
2        ONLINE  ONLINE       mjkeenan-node-0
cs2
1        ONLINE  ONLINE       mjkeenan-node-3          Started
ora.gns

crsctl eval add serverpool

システムを変更せずにサーバー・プールの追加の影響を予測するには、crsctl eval add serverpoolコマンドを使用します。このコマンドはクラスタ管理者にとって役に立つ場合があります。

関連項目:

サーバー・プールおよびサーバー・プール属性の詳細は、「サーバー・プールの動作方法」を参照してください。

構文

crsctl eval add serverpool server_pool_name [-file file_path | -attr "attr_name=attr_value
[,attr_name=attr_value[,...]]" [-admin [-l level [-x] [-a]] [-f]

パラメータ

表E-38 crsctl eval add serverpoolコマンドのパラメータ

パラメータ

説明

server_pool_name

短く、わかりやすいサーバー・プール名。

-file file_path

サーバー・プールを定義する属性ファイルへの完全修飾されたパス。

attribute_name

サーバー・プールを管理するのにOracle Clusterwareが使用するサーバー・プール属性の名前で、前に-attrフラグを付けます。使用可能な属性名は次のとおりです。

- IMPORTANCE

- MIN_SIZE

- MAX_SIZE

- SERVER_NAMES

- PARENT_POOLS

- EXCLUSIVE_POOLS

- ACL

attribute_value

サーバー・プール属性の値。

注意: attribute_nameパラメータおよびattribute_valueパラメータは、カンマで区切って二重引用符("")で囲む必要があります。次に例を示します。

-attr "MAX_SIZE=30,IMPORTANCE=3"

-admin [-l level] [-x] [-a]

このパラメータを指定する場合、CRSCTLではクラスタ管理者用に出力が表示されます。

-lパラメータを指定する場合、次の3つの出力レベルのいずれかを選択できます。

- serverpools: 1つのサーバー・プールで実行されているサーバーに出力を制限します

- resources: サーバー・プールのサーバーで実行されているリソースに出力を制限します

- all: 利用可能なすべての出力が表示されます

-xパラメータを指定する場合、CRSCTLでは差異が表示されます。

-aパラメータを指定する場合、CRSCTLではすべてのリソースが表示されます。

注意: -l、-x、-aパラメータのいずれか、またはこの3つのなんらかの組合せを指定するには、-adminパラメータを指定する必要があります。

-f

このパラメータを指定する場合、CRSCTLではサーバー・プールを強制的に追加する影響が予測されます。

crsctl eval delete server

システムを変更せずにサーバーの削除の影響を予測するには、crsctl eval delete serverコマンドを使用します。このコマンドはクラスタ管理者にとって役に立つ場合があります。

関連項目:

サーバー・プールおよびサーバー・プール属性の詳細は、「サーバー・プールの動作方法」を参照してください。

構文

crsctl eval delete server server_name [-admin [-l level] [-x] [-a]] [-f]

パラメータ

表E-39 crsctl eval delete serverコマンドのパラメータ

パラメータ

説明

server_name

削除の前に評価するサーバーの名前を指定します。

-admin [-l level] [-x] [-a]

このパラメータを指定する場合、CRSCTLではクラスタ管理者用に出力が表示されます。

-lパラメータを指定する場合、次の3つの出力レベルのいずれかを選択できます。

- serverpools: 1つのサーバー・プールで実行されているサーバーに出力を制限します

- resources: サーバー・プールのサーバーで実行されているリソースに出力を制限します

- all: 利用可能なすべての出力が表示されます

-xパラメータを指定する場合、CRSCTLでは差異が表示されます。

-aパラメータを指定する場合、CRSCTLではすべてのリソースが表示されます。

注意: -l、-x、-aパラメータのいずれか、またはこの3つのなんらかの組合せを指定するには、-adminパラメータを指定する必要があります。

crsctl eval delete serverpool

システムを変更せずにサーバー・プールの削除をシミュレーションするには、crsctl eval delete serverpoolコマンドを使用します。このコマンドはクラスタ管理者にとって役に立つ場合があります。

関連項目:

サーバー・プールおよびサーバー・プール属性の詳細は、「サーバー・プールの動作方法」を参照してください。

構文

crsctl eval delete serverpool server_pool_name [-admin [-l level] [-x] [-a]]

パラメータ

表E-40 crsctl eval delete serverpoolコマンドのパラメータ

パラメータ

説明

server_pool_name

削除するサーバー・プールの名前。

-admin [-l level] [-x] [-a]

このパラメータを指定する場合、CRSCTLではクラスタ管理者用に出力が表示されます。

-lパラメータを指定する場合、次の3つの出力レベルのいずれかを選択できます。

- serverpools: 1つのサーバー・プールで実行されているサーバーに出力を制限します

- resources: サーバー・プールのサーバーで実行されているリソースに出力を制限します

- all: 利用可能なすべての出力が表示されます

-xパラメータを指定する場合、CRSCTLでは差異が表示されます。

-aパラメータを指定する場合、CRSCTLではすべてのリソースが表示されます。

注意: -l、-x、-aパラメータのいずれか、またはこの3つのなんらかの組合せを指定するには、-adminパラメータを指定する必要があります。

crsctl eval modify serverpool

システムを変更せずにサーバー・プールの変更の影響を予測するには、crsctl eval modify serverpoolコマンドを使用します。このコマンドはクラスタ管理者にとって役に立つ場合があります。

構文

crsctl eval modify serverpool server_pool_name {-file file_path
| -attr "attr_name=attr_value [,attr_name=attr_value[, ...]]"}
[-f] [-admin [-l level [-x] [-a]]

パラメータ

関連項目:

-attrパラメータの詳細は、「crsctl modify serverpool」を参照してください

表E-41 crsctl eval modify serverpoolコマンドのパラメータ

パラメータ

説明

server_pool_name

変更するサーバー・プールの名前。

-f

このパラメータを指定する場合、CRSCTLではサーバー・プールを強制的に変更する影響が予測されます。

-admin [-l level] [-x] [-a]

このパラメータを指定する場合、CRSCTLではクラスタ管理者用に出力が表示されます。

-lパラメータを指定する場合、次の3つの出力レベルのいずれかを選択できます。

- serverpools: 1つのサーバー・プールで実行されているサーバーに出力を制限します

- resources: サーバー・プールのサーバーで実行されているリソースに出力を制限します

- all: 利用可能なすべての出力が表示されます

-xパラメータを指定する場合、CRSCTLでは差異が表示されます。

-aパラメータを指定する場合、CRSCTLではすべてのリソースが表示されます。

注意: -l、-x、-aパラメータのいずれか、またはこの3つのなんらかの組合せを指定するには、-adminパラメータを指定する必要があります。

関連項目:

サーバー・プールおよびサーバー・プール属性の詳細は、「サーバー・プールの動作方法」を参照してください。

使用上の注意

- server_pool_nameパラメータは必須です。

- 属性名/値ペアの属性値にカンマが含まれる場合、値は一重引用符('')で囲む必要があります。次に例を示します。

"START_DEPENDENCIES='hard(res1,res2,res3)'"

- このコマンドを実行すると、新しい構成に適合するように、Oracle Clusterwareによって他のサーバーがサーバー・プール間で再配置されることがあります。

- oraで始まる名前を持つサーバー・プールはOracleのサーバー・プールであるため、これらのサーバー・プールにはこのコマンドを使用しないでください。

- このコマンドはどの環境でも使用できますが、Oracle RAC環境でのみ役立ちます。

crsctl eval relocate server

システムを変更せずに、別のサーバー・プールにサーバーを再配置する影響を予測するには、crsctl eval relocate serverコマンドを使用します。このコマンドはクラスタ管理者にとって役に立つ場合があります。

構文

crsctl eval relocate server server_name -to server_pool_name [-f]
[-admin [-l level] [-x] [-a]]

パラメータ

表E-42 crsctl eval relocate serverコマンドのパラメータ

パラメータ

説明

server_name

再配置するサーバーの名前。複数のサーバーの再配置を評価するには、空白区切りのリストでサーバーを指定できます。

-to

サーバーの再配置先のサーバー・プールの名前を指定します。

-f

このパラメータを指定する場合、CRSCTLではサーバーを強制的に再配置する影響が予測されます。

-admin [-l level] [-x] [-a]

このパラメータを指定する場合、CRSCTLではクラスタ管理者用に出力が表示されます。

-lパラメータを指定する場合、次の3つの出力レベルのいずれかを選択できます。

- serverpools: 1つのサーバー・プールで実行されているサーバーに出力を制限します

- resources: サーバー・プールのサーバーで実行されているリソースに出力を制限します

- all: 利用可能なすべての出力が表示されます

-xパラメータを指定する場合、CRSCTLでは差異が表示されます。

-aパラメータを指定する場合、CRSCTLではすべてのリソースが表示されます。

注意: -l、-x、-aパラメータのいずれか、またはこの3つのなんらかの組合せを指定するには、-adminパラメータを指定する必要があります。

crsctl get clientid dhcp

crsctl get clientid dhcpコマンドを使用して、DHCPサーバーから構成済クラスタ・リソースのIPアドレスを取得するためにOracle Clusterwareエージェントが使用するクライアントIDを表示します。VIPタイプは必須です。

構文

crsctl get clientid dhcp -cluname cluster_name -viptype vip_type
[-vip vip_res_name] [-n node_name]

パラメータ

表E-43 crsctl get clientid dhcpコマンドのパラメータ

パラメータ

説明

-cluname cluster_name

クラスタ・リソースが構成されるクラスタの名前を指定します。

-viptype vip_type

クライアントIDを表示するVIPリソースのタイプ(HOSTVIP、SCANVIPまたはAPPVIP)を指定します。

-vip vip_resource_name

VIPリソースの名前を指定します。APPVIP VIPタイプを指定する場合、このパラメータは必須です。

-n node_name

クライアントIDを取得するノードの名前を指定します。HOSTVIP VIPタイプを指定する場合、このパラメータは必須です。

例

crsctl get clientid dhcpコマンドでは次のような出力が戻されます。

$ crsctl get clientid dhcp -cluname stmjk0462clr -viptype HOSTVIP -n stmjk01

CRS-10007: stmjk0462clr-stmjk01-vip

crsctl get cluster hubsize

Oracle Flex Clusterのハブ・ノードの値を取得するには、crsctl get cluster hubsizeコマンドを使用します。

構文

crsctl get cluster hubsize

例

crsctl get cluster hubsizeコマンドでは次のような出力が戻されます。

CRS-4950: Current hubsize parameter value is 32

crsctl get cluster mode

クラスタがOracle Flex Cluster用に構成されているかどうか、または現在のステータスを確認するには、crsctl get cluster modeコマンドを使用します。

構文

crsctl get cluster mode [config | status]

使用上の注意

- クラスタが構成されているモードを取得するには、configオプションを指定します。

- クラスタの現在のステータスを取得するには、statusオプションを指定します。

crsctl get cpu equivalency

GUID-FE8344A9-3133-4534-B91E-0E52FF9573FF.htm#GUID-FE8344A9-3133-4534-B91E-0E52FF9573FF__BABFJHEGサーバー構成属性の値を取得するには、crsctl cpu equivalencyコマンドを使用します。

構文

crsctl get cpu equivalency

crsctl get css

クラスタ同期サービスの特定のパラメータ値を取得するには、crsctl get cssコマンドを使用します。

構文

crsctl get css parameter

使用上の注意

- クラスタ同期サービスのパラメータとそのデフォルト値は次のとおりです。

clusterguid
diagwait
disktimeout (200 (seconds))
misscount (30 (seconds))
reboottime (3 (seconds))
priority (4 (UNIX), 3 (Windows))
logfilesize (50 (MB))

- このコマンドはデフォルト値を表示しません。

- このコマンドはローカル・サーバーにのみ影響します。

例

crsctl get css disktimeoutコマンドでは次のような出力が戻されます。

$ crsctl get css disktimeout
CRS-4678: Successful get disktimeout 200 for Cluster Synchronization Services.

crsctl get css ipmiaddr

ローカルのIntelligent Platform Management Interface(IPMI)デバイスのOracle Local Registryに格納されているアドレスを取得するには、crsctl get css ipmiaddrコマンドを使用します。

構文

crsctl get css ipmiaddr

使用上の注意

- Oracle Clusterwareのインストールに使用されたユーザー・アカウントでコマンドを実行します。

- このコマンドでは、Oracle Local Registryに格納されているIPアドレスのみが取得されます。これは、IPMIが実際に使用するIPアドレスではない場合があります。
ローカル・サーバーで、rootとしてipmiutilまたはipmitoolを使用して、IPMIによって使用されているIPアドレスを取得します。

例

IPMIデバイスのIPアドレスを取得するには、次のコマンドを実行します。

$ crsctl get css ipmiaddr

crsctl get css leafmisscount

接続がもはやアクティブでないと宣言され、リーフ・ノードがクラスタから削除されるまでに、リーフ・ノードとその接続先ハブ・ノード間の通信がない状態で経過する必要がある時間(秒単位)を取得するには、crsctl get css leafmisscountコマンドを使用します。

構文

crsctl get css leafmisscount

crsctl get node role

クラスタ内のノードに構成されているノード・ロールを取得するには、crsctl get node roleコマンドを使用します。

構文

crsctl get node role {config | status} [node node_name | -all]

使用上の注意

- 特定のノードに構成されているノード・ロールを取得するには、configオプションを指定します。

- 特定のノードの現在のステータスを取得するには、statusオプションを指定します。

- ロール情報を取得する特定のノードを指定できます。特定のノードを指定しない場合、CRSCTLによってローカル・ノードに関する情報が戻されます。

例

crsctl get node roleコマンドでは次のような出力が戻されます。

Node 'adc6140524' configured role is 'hub'

crsctl get nodename

ローカル・ノードの名前を取得するには、crsctl get nodenameコマンドを使用します。

構文

crsctl get nodename

例

crsctl get nodenameコマンドでは次のような出力が戻されます。

node2

crsctl get resource use

RESOURCE_USE_ENABLEDパラメータの現在の設定値をチェックするには、crsctl get resource useコマンドを使用します。

構文

crsctl get resource use

使用上の注意

可能な値は1または0です。この属性の値が1の場合(デフォルト)、サーバーをリソースの配置に使用できます。値が0の場合、Oracle Clusterwareによってサーバーでのサーバー・プール・リソースの起動が禁止されます。サーバーは空き領域サーバー・プールに属したままになります。

例

このコマンドによって、次のような出力が返されます。

CRS-4966: Current resource use parameter value is 1

crsctl get server label

SERVER_LABELサーバー属性の現在の設定値をチェックするには、crsctl get server labelコマンドを使用します。

構文

crsctl get server label

例

crsctl get server labelコマンドでは次のような出力が戻されます。

CRS-4972: Current SERVER_LABEL parameter value is hubserver

crsctl getperm serverpool

特定のサーバー・プールの権限を取得するには、crsctl getperm serverpoolコマンドを使用します。

構文

crsctl getperm serverpool server_pool_name  [-u user_name | -g group_name]

関連項目:

サーバー・プールおよびサーバー・プール属性の詳細は、「サーバー・プールの動作方法」を参照してください。

パラメータ

表E-44 crsctl getperm serverpoolコマンドのパラメータ

パラメータ

説明

server_pool_name

権限を取得するサーバー・プールの名前を指定します。

-u user_name

-uを指定すると、Oracle Clusterwareでは特定のユーザーの権限が取得されます。

-g group_name

-gを指定すると、Oracle Clusterwareでは特定のグループの権限が取得されます。

使用上の注意

- server_pool_nameパラメータは必須です。

- oraで始まる名前を持つサーバー・プールはOracleのサーバー・プールであるため、これらのサーバー・プールにはこのコマンドを使用しないでください。

- このコマンドはどの環境でも使用できますが、Oracle RAC環境でのみ役立ちます。

例

crsctl getperm serverpoolコマンドでは次のような出力が戻されます。

$ crsctl getperm serverpool sp1
NAME: sp1
owner:root:rwx,pgrp:root:r-x,other::r--

crsctl lsmodules

デバッグが可能なモジュールのコンポーネントをリストするには、crsctl lsmodulesコマンドを使用します。

関連項目:

デバッグの詳細は、「crsctl set logを使用した動的デバッグ」を参照してください

構文

crsctl lsmodules {mdns | gpnp | css | crf | crs | ctss | evm | gipc}

使用上の注意

次のいずれかのコンポーネントを指定できます。

- mdns: マルチキャスト・ドメイン・ネーム・サーバー

- gpnp: グリッド・プラグ・アンド・プレイ・サービス

- css: クラスタ同期サービス

- crf: クラスタ状態モニター

- crs: クラスタ・レディ・サービス

- ctss: クラスタ時刻同期化サービス

- evm: イベント・マネージャ

- gipc: グリッド・プロセス間通信

例

crsctl lsmodulesコマンドでは次のような出力が戻されます。

$ crsctl lsmodules evm
List EVMD Debug Module: CLSVER
List EVMD Debug Module: CLUCLS
List EVMD Debug Module: COMMCRS
List EVMD Debug Module: COMMNS
List EVMD Debug Module: CRSOCR
List EVMD Debug Module: CSSCLNT
List EVMD Debug Module: EVMAGENT
List EVMD Debug Module: EVMAPP
...

crsctl modify category

既存のサーバー・カテゴリを変更するには、crsctl modify categoryコマンドを使用します。

構文

crsctl modify category category_name [-attr "attr_name=attr_value
[,attr_name=attr_value[,...]]"] [-i] [-f]

パラメータ

表E-45 crsctl modify categoryコマンドのパラメータ

パラメータ

説明

category_name

変更するサーバー・カテゴリの名前を指定します。

attr_name

前に-attrフラグを付けて、変更するカテゴリ属性の名前を指定します。

attr_value

カテゴリ属性の値。

注意: attr_nameパラメータおよびattr_valueパラメータは、カンマで区切って二重引用符("")で囲む必要があります。次に例を示します。

"ACL='owner:st-cdc\cdctest:rwx,pgrp::---',
ACTIVE_CSS_ROLE=leaf"

関連項目:

- このコマンドで使用できる属性のリストについては、表3-4を参照してください。

- 演算子の詳細は、「フィルタ」を参照してください。

-i

-iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

-f

強制パラメータ

使用上の注意

- 属性名/値ペアの属性値にカンマが含まれる場合、値は一重引用符('')で囲む必要があります。次に例を示します。

"START_DEPENDENCIESs=s'hard(res1,res2,res3)'"

例

サーバー・カテゴリを変更するには、次のコマンドを実行します。

$ crsctl modify category blue_server -attr  "EXPRESSION=(LOCATION=hub)"

crsctl modify policy

既存の構成ポリシーを変更するには、crsctl modify policyコマンドを使用します。

構文

crsctl modify policy policy_name -attr "attr_name=attr_value" [-i]

パラメータ

表E-46 crsctl modify policyコマンドのパラメータ

パラメータ

説明

policy_name

変更するポリシーの名前。

attr_name

前に-attrフラグを付けて、DESCRIPTIONポリシー属性を使用してポリシーの説明を指定します。

attr_value

ポリシーについて説明するDESCRIPTIONポリシー属性の値。

注意: attr_nameパラメータおよびattr_valueパラメータは、カンマで区切って二重引用符("")で囲む必要があります。次に例を示します。

-attr "DESCRIPTION=daytime"

-i

-iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

使用上の注意

- policy_nameパラメータは必須です

- このコマンドの実行に必要な権限は、ポリシー・セットのACL属性の値によって異なります

例

既存のポリシーを変更するには、rootまたはOracle Clusterwareインストール所有者として次のコマンドを実行します。

# crsctl modify policy p1 -attr "DESCRIPTION=daytime"

crsctl modify policyset

既存のポリシー・セットを変更するには、crsctl modify policysetコマンドを使用します。

構文

crsctl modify policyset {-attr "attr_name=attr_value[,attr_name=attr_value[, ...]]" | -file file_name} [-ksp]

パラメータ

表E-47 crsctl modify policysetコマンドのパラメータ

パラメータ

説明

attr_name

変更するポリシー属性の名前で、前に-attrフラグを付けます。このコマンドでは、次の属性を指定できます。

- ACL

- LAST_ACTIVATED_POLICY

- SERVER_POOL_NAMES

attr_value

ポリシー属性の値。

注意: attr_nameパラメータおよびattr_valueパラメータは、カンマで区切って二重引用符("")で囲む必要があります。次に例を示します。

-attr "ACL='owner:mjkeenan:rwx,pgrp:svrtech:rwx,other::r--',
SERVER_POOL_NAMES=sp1 sp2 Free"

-file file_name

-attrのかわりにこのパラメータを指定する場合、ポリシー・セット定義が含まれるファイルの名前を入力します。

-ksp

このパラメータを指定した場合、CRSCTLによってシステムのサーバー・プールが保持されるため、それらは独立した状態で、ポリシー・セットの管理対象にはなりません。

使用上の注意

- このコマンドの実行に必要な権限は、ポリシー・セットのACL属性の値によって異なります

- -fileパラメータを使用するか、またはcrsctl modify policyコマンドを実行することでのみ、ポリシー定義を指定できます

例

既存のポリシー・セットを変更するには、rootまたはOracle Clusterwareインストール所有者として次のコマンドを実行します。

# crsctl modify policyset –file my_policy_set.def

crsctl modify server

特定のサーバーの構成を変更するには、crsctl modify serverコマンドを使用します。

構文

crsctl modify server server_name -attr "attr_name=attr_value
[,attr_name=attr_value[, ...]]"

パラメータ

表E-48 crsctl modify serverコマンド・パラメータ

パラメータ

説明

server_name [...]

変更するサーバーの名前を指定します。

attr_name

変更するサーバー属性の名前。名前の前には-attrフラグを付けます。

attr_value

サーバー属性の値。

注意: attr_nameパラメータおよびattr_valueパラメータは、カンマで区切って二重引用符("")で囲む必要があります。次に例を示します。

-attr "CHECK_INTERVAL=30,START_TIMEOUT=25"

使用上の注意

- 属性名/値ペアの属性値にカンマが含まれる場合、値は一重引用符('')で囲む必要があります。次に例を示します。

"START_DEPENDENCIES='hard(res1,res2,res3)'"

例

特定のサーバーの構成を変更するには、次のようなコマンドを入力します。

$ crsctl modify server email_server_2 -attr  "WORKLOAD_VALUE=1"

crsctl modify serverpool

既存のサーバー・プールを変更するには、crsctl modify serverpoolコマンドを使用します。

構文

crsctl modify serverpool server_pool_name -attr "attr_name=attr_value
[,attr_name=attr_value[, ...]]" [-policy policyName | -all_policies]
[-i] [-f]

パラメータ

表E-49 crsctl modify serverpoolコマンドのパラメータ

パラメータ

説明

server_pool_name

変更するサーバー・プールの名前。

attr_name

変更するサーバー・プール属性の名前。名前の前には-attrフラグを付けます。

関連項目: サーバー・プール属性の詳細は、表3-1を参照してください。

attr_value

サーバー・プール属性の値。

注意: attr_nameパラメータおよびattr_valueパラメータは、カンマで区切って二重引用符("")で囲む必要があります。次に例を示します。

-attr "CHECK_INTERVAL=30,START_TIMEOUT=25"

-policy policyName |
-all_policies

サーバー・プール定義を変更する特定のポリシーまたはすべてのポリシーを指定します。

-i

-iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

-f

-fパラメータを指定すると、Oracle Clusterwareでは別のサーバー・プール内のサーバーで実行中のリソースが停止され、追加対象のサーバー・プールにそのサーバーが再配置されます。

-fパラメータを指定しない場合、Oracle Clusterwareでは、サーバー・プールを作成した結果、追加対象のサーバー・プールにサーバーを渡す別のサーバー・プール内のサーバーで、リソースが停止されるかどうかがチェックされます。その場合、Oracle Clusterwareではcrsctl add serverpoolコマンドが拒否されます。

関連項目:

サーバー・プールおよびサーバー・プール属性の詳細は、「サーバー・プールの動作方法」を参照してください。

使用上の注意

- server_pool_nameパラメータは必須です。

- 属性名/値ペアの属性値にカンマが含まれる場合、値は一重引用符('')で囲む必要があります。次に例を示します。

"START_DEPENDENCIES='hard(res1,res2,res3)'"

- このコマンドを実行すると、新しい構成に適合するように、Oracle Clusterwareによって他のサーバーがサーバー・プール間で再配置されることがあります。

- oraで始まる名前を持つサーバー・プールはOracleのサーバー・プールであるため、これらのサーバー・プールにはこのコマンドを使用しないでください。

- このコマンドはどの環境でも使用できますが、Oracle RAC環境でのみ役立ちます。

例

既存のサーバー・プールを変更するには、rootまたはOracle Clusterwareインストール所有者として次のコマンドを実行します。

# crsctl modify serverpool sp1 -attr "MAX_SIZE=7"

crsctl pin css

多数の特定のノードを固定するには、crsctl pin cssコマンドを使用します。ノードの固定とは、ノード名とノード番号との関連付けを固定することです。固定されていないノードの場合、停止中にその期限が切れると、ノード番号が変更される可能性があります。固定されたノードの場合、期限切れになりません。

構文

crsctl pin css -n node_name [ node_name [..]]

使用上の注意

- サーバーを空白区切りのリストで指定できます。

- 固定されたサーバーには、12cリリース1 (12.1)より前のOracleソフトウェアが必要です。

- crsctl unpin cssを使用するとノードの固定が解除されます。

- crsctl delete nodeコマンドを使用してノードを削除すると、ノードの固定も暗黙的に解除されます。

例

node2というノードを固定するには、次のコマンドを実行します。

# crsctl pin css -n node2

crsctl query crs administrator

Oracle Clusterware管理権限を持つユーザーのリストを表示するには、crsctl query crs administratorコマンドを使用します。

構文

crsctl query crs administrator

例

crsctl query crs administratorコマンドでは次のような出力が戻されます。

CRS Administrator List: scott

crsctl query crs activeversion

クラスタ内で実行されているOracle Clusterwareソフトウェアのアクティブなバージョンおよび構成済パッチ・レベルを表示するには、crsctl query crs activeversionコマンドを使用します。ただし、ローリング・アップグレード時は、クラスタ全体でアップグレードが終了するまでアクティブなバージョンは表示されず、その時点まで、クラスタはアップグレード前のバージョンで動作します。

また、ローリング・パッチ適用時は、クラスタ全体でパッチ適用が終了するまでアクティブなパッチ・レベルは表示されず、その時点まで、クラスタはアップグレード前のパッチ・レベルで動作します。

構文

crsctl query crs activeversion [-f]

また、-fパラメータを指定すると、このコマンドではクラスタ内の各構成済ノードのパッチ・レベルが出力されます。

例

crsctl query crs activeversionコマンドでは次のような出力が戻されます。

$ crsctl query crs activeversion -f

Oracle Clusterware active version on the cluster is [12.1.0.0.2]. The cluster
upgrade state is [NORMAL]. The cluster active patch level is [456789126].

crsctl query crs autostart

Oracle Clusterwareの自動リソース起動の基準の値を取得するには、crsctl query crs autostartコマンドを使用します。

構文

crsctl query crs autostart

例

crsctl query crs autostartコマンドでは次のような出力が戻されます。

'Autostart delay':       60
'Autostart servercount': 2

crsctl query crs releasepatch

ノードへのパッチ適用時にGridホーム・パッチ・リポジトリで更新されるパッチ・レベルを表示するには、crsctl query crs releasepatchコマンドを使用します。パッチ・レベルは、コマンドが実行されるローカル・ノードのみに対応します。このコマンドは、スタックが実行されていなくても実行できます。

構文

crsctl query crs releasepatch

例

crsctl query crs releasepatchコマンドによって、パッチが適用されていないノードについて、次のような出力が戻されます。

Oracle Clusterware release patch level is [3180840333] and the complete list of
patches is [13559647] on the local node.

crsctl query crs releaseversion

ローカル・ノードにバイナリで格納されているOracle Clusterwareソフトウェアのバージョンを表示するには、crsctl query crs releaseversionコマンドを使用します。

構文

crsctl query crs releaseversion

例

crsctl query crs releaseversionコマンドでは次のような出力が戻されます。

Oracle High Availablity Services release version on the local node is [11.2.0.2.0]

crsctl query crs softwarepatch

インストールされているOracle Clusterwareの構成済パッチ・レベルを表示するには、crsctl query crs softwarepatchコマンドを使用します。

構文

crsctl query crs softwarepatch [host_name]

ホスト名を指定する場合、CRSCTLではそのホストにインストールされているOracle Clusterwareのパッチ・レベルが表示されます。そうでない場合、CRSCTLではローカル・ホストにインストールされているOracle Clusterwareのパッチ・レベルが表示されます。

例

crsctl query crs softwarepatchコマンドでは次のような出力が戻されます。

Oracle Clusterware patch level on node [node1] is [456789126]

crsctl query crs softwareversion

指定したノードで正常に起動されたソフトウェアの最新バージョンを表示するには、crsctl query crs softwareversionコマンドを使用します。

構文

crsctl query crs softwareversion [node_name]

使用上の注意

- ノード名を指定しない場合、Oracle Clusterwareではローカル・サーバーで実行中のOracle Clusterwareのバージョンが表示されます。

例

crsctl query crs softwareversionコマンドでは次のような出力が戻されます。

Oracle Clusterware version on node [node1] is [11.2.0.2.0]

crsctl query css ipmiconfig

ローカル・サーバーのOracle Clusterwareが障害分離に備えてIPMIを使用するように構成されているかどうかを判断するには、crsctl query css ipmiconfigコマンドを使用します。このコマンドは構成データの存在を検出しますが、その正しさは検証できないことに注意してください。

構文

crsctl query css ipmiconfig

使用上の注意

- このコマンドは、Oracle Cluster Registry(OCR)に格納されているIPMI構成を特定してアクセスしようとするため、Oracle Clusterwareのインストールに使用したアカウントで実行する必要があります。そうしないと、認可の失敗が報告される場合があります。

- レジストリにIPMI構成データが含まれていない場合、別のアカウントで実行すると、認可の失敗にならない場合があります。

例

crsctl query css ipmiconfigコマンドでは次のような出力が戻されます。

CRS-4236: Oracle Clusterware configured to use IPMI

または

CRS-4237: Oracle Clusterware is not fully configured to use IPMI

crsctl query css ipmidevice

ローカル・システムにIntelligent Platform Management Interface(IPMI)ドライバがあるかどうかを判断するには、crsctl query css ipmiconfigコマンドを使用します。

構文

crsctl query css ipmidevice

使用上の注意

- このコマンドは、IPMIインストール中に事前チェックを実行し、通常、インストーラによってのみ発行されます。

- このコマンドでは形式的なチェックが実行されるため、成功リターンは、IPMIハードウェアの構成が完了しており使用できることを保証するものではありません。

- このコマンドの実行に特別な権限は必要ありません。

例

crsctl query css ipmideviceコマンドでは次のような出力が戻されます。

CRS-4231: IPMI device and/or driver found

または

CRS-4218: Unable to access an IPMI device on this system

crsctl query css votedisk

クラスタ同期サービスによって使用される投票ファイル、投票ファイルのステータス、ディスクの格納場所(Oracle ASMやその他の場所など)を表示するには、crsctl query css votediskコマンドを使用します。

構文

crsctl query css votedisk

例

crsctl query css votediskコマンドでは次のような出力が戻されます。

$ crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
1. ONLINE   296641fd201f4f3fbf3452156d3b5881 (/ocfs2/host09_vd3) []
2. ONLINE   8c4a552bdd9a4fd9bf93e444223146f2 (/netapp/ocrvf/newvd) []
3. ONLINE   8afeee6ae3ed4fe6bfbb556996ca4da5 (/ocfs2/host09_vd1) []
Located 3 voting file(s).

crsctl query dns

指定されたDNSサーバーの名前のDNS参照によって戻されるアドレスのリストを取得するには、crsctl query dnsコマンドを使用します。

構文

crsctl query dns {-servers | -name name [-dnsserver DNS_server_address]
[-port port] [-attempts number_of_attempts] [-timeout timeout_in_seconds] [-v]}

パラメータ

表E-50 crsctl query dnsコマンドのパラメータ

パラメータ

説明

-servers

-serversパラメータを使用して、コマンドを実行するノードの現在のDNS構成をリストします。通常、Linux/UNIXでは、起動時にCRSCTLが/etc/resolv.confファイルを読み取り、ユーザーが再起動するか、リゾルバが再起動されるまで、そのファイルの内容がシステムの構成となります。CRSCTLは、その情報をリゾルバから取得します。このパラメータを使用したり、必要に応じて、コマンド構文文字列に他のパラメータを指定することもできます。

-name name

参照する完全修飾ドメイン名を指定します。

-dnsserver DNS_server_address

ドメイン名を参照するDNSサーバーのアドレスを指定します。

-port port

DNSサーバーがリスニングするポート。ポートを指定しないと、デフォルトのポート53が使用されます。

-attempts number_of_attempts

再試行の回数を指定します。

-timeout timeout_in_seconds

タイムアウトの時間(秒)を指定します。

-v

詳細な出力。

例

crsctl query dnsコマンドによって、stmjk07-vip.stmjk0462.foo.comというDNSサーバーについて、次のような出力が戻されます。

CRS-10024: DNS server returned 192.168.29.250 for name
stmjk07-vip.stmjk0462.foo.com

-serversパラメータを選択すると、次のような出力が戻されます。

CRS-10018: the following configuration was found on the system:
CRS-10019: There are 3 domains in search order. They are:
us.foo.com
foo.com
foocorp.com
CRS-10022: There are 3 name servers. They are:
192.168.249.41
192.168.249.52
192.168.202.15
CRS-10020: number of retry attempts for name lookup is: 2
CRS-10021: timeout for each name lookup is: 1

crsctl query socket udp

デーモンが指定したアドレスおよびポートでリスニングできることを確認するには、crsctl query socket udpコマンドを使用します。

構文

crsctl query socket udp [-address address] [-port port]

表E-51 crsctl query socket udp

パラメータ

説明

-address address

ソケットを作成するIPアドレスを指定します。アドレスを指定しない場合、CRSCTLはデフォルトとしてローカル・ホストを想定します。

-port port

ソケットを作成するポートを指定します。ポート番号を指定しない場合、CRSCTLはデフォルトとして53を想定します。

使用上の注意

- 1024より小さいポート番号を確認するには、このコマンドをrootとして実行する必要があります。

例

次の例は、様々な出力を示します。

$ crsctl query socket udp
CRS-10030: could not verify if port 53 on local node is in use

# crsctl query socket udp
CRS-10026: successfully created socket on port 53 on local node

前述の2つのコマンドのうち最初のコマンドはrootとして実行されておらず、いずれのコマンドでもポートが指定されていないため、CRSCTLは、デフォルトを53として想定しました(1024未満)。この条件では、コマンドをrootとして実行する必要があります。

$ crsctl query socket udp -port 1023
CRS-10030: could not verify if port 1023 on local node is in use

# crsctl query socket udp -port 1023
CRS-10026: successfully created socket on port 1023 on local node

最初の2つの例と同様に、前述の2つのコマンドのうち最初のコマンドはrootとして実行されておらず、ポート番号は指定されていますが1024未満のため、root権限でコマンドを実行する必要があります。

次の最後の例では、1024より大きいポート番号が指定されているため、コマンドをrootとして実行する必要はありません。

$ crsctl query socket udp -port 1028
CRS-10026: successfully created socket on port 1028 on local node

crsctl release dhcp

DHCPリースの解放リクエストを特定のクライアントIDに送信し、ネットワークでの解放パケットを特定のポートに送信するには、crsctl release dhcpコマンドを使用します。

構文

crsctl release dhcp -clientid clientid [-port port]

パラメータ

表E-52 crsctl release dhcpコマンドのパラメータ

パラメータ

説明

-clientid clientid

解放したいクライアントIDを指定します。クライアントIDは、crsctl get clientidコマンドを実行して取得します。

-port port

CRSCTLが解放パケットを送信するポート。ポートを指定しないと、CRSCTLはデフォルト値の67を使用します。

例

crsctl release dhcpコマンドでは次のような出力が戻されます。

$ crsctl release dhcp -clientid  stmjk0462clr-stmjk01-vip

CRS-10012: released DHCP server lease for client ID stmjk0462clr-stmjk01-vip
on port 67

crsctl relocate resource

クラスタ内の別のサーバーにリソースを再配置するには、crsctl relocate resourceコマンドを使用します。

構文

crsctl relocate resource {resource_name [-k cid] | {resource_name | -all}
-s source_server | -w "filter"} [-n destination_server] [-env "env1=val1,env2=val2,..."]
[-i] [-f]

パラメータ

表E-53 crsctl relocate resourceコマンドのパラメータ

パラメータ

説明

resource_name [-k cid]

再配置するリソースの名前。

オプションで、リソースのカーディナリティIDを指定することもできます。このパラメータを指定すると、指定したカーディナリティのリソース・インスタンスがOracle Clusterwareによって再配置されます。

resource_name | -all
-s source_server

1つの特定のリソース、または再配置対象のリソースの再配置元である特定のサーバーに存在するすべてのリソースを指定します。

-w "filter"

再配置されるリソースの数を制限するためにOracle Clusterwareによって使用されるリソース・フィルタを指定します。フィルタは二重引用符("")で囲む必要があります。次にリソース・フィルタの例を示します。

- "TYPE == cluster_resource": このフィルタは、cluster_resourceタイプのリソースのみを再配置するようにOracle Clusterwareを制限します。

- "CHECK_INTERVAL > 10": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持つリソースを再配置するようにOracle Clusterwareを制限します。

- "(CHECK_INTERVAL > 10) AND (NAME co 2)": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持ち、かつ、リソースの名前に数字2が含まれるリソースを再配置するようにOracle Clusterwareを制限します。

関連項目: 「フィルタ」を参照してください。

-n destination_server

リソースの再配置先サーバーの名前を指定します。宛先サーバーを指定しない場合、Oracle Clusterwareでは各リソースの属性プロファイルに従い、最適なサーバーにリソースが再配置されます。

-env "env1=val1,
env2=val2,..."

必要に応じて、このコマンドの1つ以上のリソース・プロファイル属性値を上書きできます。複数の環境名/値ペアを指定する場合、各ペアをカンマで区切り、リスト全体を二重引用符("")で囲む必要があります。

-i

-iを指定すると、このコマンドの処理でOracle Clusterwareがリソースまたはその依存リソースをロック解除するのを待機する必要がある場合、コマンドはエラーを戻します。コマンドが互いに影響しないように、Oracle Clusterwareによってリソースまたは他のオブジェクトがロックされることがあります。

-f

再配置対象のリソースに依存している他のリソースが実行中である場合に再配置対象のリソースを強制的に再配置するには、-fパラメータを指定します。このパラメータを使用すると、依存リソースは再配置または停止されます。

注意: 1より大きいカーディナリティを持つリソースを再配置する場合、-kまたは-sのいずれかを使用して、再配置対象のリソース・インスタンスを絞り込む必要があります。

使用上の注意

- 再配置対象のリソースを指定するには、次の3つの方法のいずれかを使用する必要があります。

- 再配置対象の1つの特定のリソースを指定します。

- または、特定のソース・サーバーから再配置する1つの特定のリソースまたはすべてのリソースを指定できます。

- 3つ目の方法として、Oracle Clusterwareによって再配置対象のリソースの照合に使用されるリソース・フィルタを指定します。

- リソースの程度IDが1より大きい場合、このリソースのすべてのインスタンスがOracle Clusterwareによって再配置されます。

- 指定したリソースを再配置するには、それらのリソースに対する読取りおよび実行権限が必要です。

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

例

あるサーバーから別のサーバーに1つの特定のリソースを再配置するには、次のコマンドを実行します。

# crsctl relocate resource myResource1 -s node1 -n node3

crsctl relocate server

別のサーバー・プールにサーバーを再配置するには、crsctl relocate serverコマンドを使用します。

構文

crsctl relocate server server_name [...] -c server_pool_name [-i] [-f]

パラメータ

表E-54 crsctl relocate serverコマンドのパラメータ

パラメータ

説明

server_name

再配置するサーバーの名前。複数のサーバーを再配置するには、空白区切りのリストでサーバーを指定できます。

-c server_pool_name

サーバーの再配置先のサーバー・プールの名前を指定します。

-i

-iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

-f

-fパラメータを指定すると、Oracle Clusterwareでは別のサーバー・プール内のサーバーで実行中のリソースが停止され、指定したサーバー・プールにそのサーバーが再配置されます。

-fパラメータを指定しない場合、Oracle Clusterwareでは停止する必要のあるリソースが再配置対象のサーバーにあるかどうかがチェックされます。該当するものが検出された場合、Oracle Clusterwareではcrsctl relocate serverコマンドが拒否されます。

注意: サーバー・プールのサーバーの数がMIN_SIZEサーバー・プール属性の値を超えていない場合、CRSCTLによって構成違反が発生しないため、強制パラメータには効果はありません。

使用上の注意

- server_nameパラメータおよび-c server_pool_nameパラメータは必須です。

例

node6サーバーおよびnode7サーバーを、それらのノード上のアクティブなリソースを阻害することなくsp1サーバー・プールに移動するには、次のコマンドを使用します。

$ crsctl relocate server node6 node7 -c sp1

crsctl replace discoverystring

投票ファイルの配置に使用される既存の検出文字列を置換するには、crsctl replace discoverystringコマンドを使用します。

構文

crsctl replace discoverystring "absolute_path[,...]"

パラメータ

表E-55 crsctl replace discoverystringコマンドのパラメータ

パラメータ

説明

absolute_path

1つ以上の投票ファイルの場所に一致する絶対パスを、カンマ区切りで指定します。ワイルドカードを使用できます。

パスのリストは、二重引用符("")で囲んで記述します。

使用上の注意

- このコマンドを実行するには、root、Oracle Clusterwareインストール所有者または管理者グループのメンバーである必要があります。

- クラスタ内の任意のノードでこのコマンドを実行できます。

- 投票ファイルをOracle ASMディスク・グループに格納する場合は、検出文字列を変更できません。

例

現在の検出文字列が/oracle/css1/*だとします。/oracle/css2/ディレクトリの投票ファイルも使用するには、次のコマンドを使用して現在の検出文字列を置換します。

# crsctl replace discoverystring "/oracle/css1/*,/oracle/css2/*"

crsctl replace votedisk

既存の投票ファイルを移動または置換するには、crsctl replace votediskコマンドを使用します。このコマンドを使用すると、Oracle ASMであれ他の記憶域オプションであれ、指定した場所に投票ファイルが作成されます。Oracle Clusterwareによって既存の投票ファイル情報が新しい場所にコピーされ、以前の場所からその投票ファイルが削除されます。

構文

crsctl replace votedisk [+asm_disk_group | path_to_voting_disk [...]]

パラメータ

表E-56 crsctl replace votediskコマンドのパラメータ

パラメータ

説明

+asm_disk_group

投票ファイルの配置先Oracle ASMのディスク・グループを指定します。

path_to_voting_disk [...]

Oracle ASMの外部に存在する投票ファイルへの投票ファイル・パスの空白区切りのリスト。

使用上の注意

- このコマンドを実行するには、root、Oracle Clusterwareインストール所有者または管理者グループのメンバーである必要があります。

- 投票ファイルを置換する場合は、Oracle ASMディスク・グループや他のストレージ・デバイスに存在するものを指定します。

- クラスタ内の任意のノードでこのコマンドを実行できます。

例

例1

Oracle ASM内に配置されている投票ファイルを置換するには、次のコマンドを実行します。

$ crsctl replace votedisk +diskgroup1

例2

共有ファイル・システムに配置されている投票ファイルを置換するには、次のコマンドを実行します。

$ crsctl replace votedisk /mnt/nfs/disk1 /mnt/nfs/disk2

crsctl request action

特定のリソースで特定のアクションを実行するには、crsctl request actionコマンドを使用します。

構文

crsctl request action action_name {-r resource_name [...] | -w "filter"} [-env "env1=val1,env2=val2,..."] [-i]

パラメータ

表E-57 crsctl request actionコマンドのパラメータ

パラメータ

説明

action_name

実行するアクションの名前を指定します。特定のリソースでサポートされているアクションは、そのリソースのACTIONSリソース属性に示されます。

-r resource_name [...]

特定のリソースを指定します。複数のリソース名は空白で区切る必要があります。

-w "filter"

リソース名を指定するかわりに、Oracle Clusterwareによってアクションが実行されるリソースの数を制限するために使用されるリソース・フィルタを指定できます。次にリソース・フィルタの例を示します。

- TYPE == cluster_resource: このフィルタは、cluster_resourceタイプのリソースのみでアクションを実行するようにOracle Clusterwareを制限します。

- CHECK_INTERVAL > 10: このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持つリソースのみのアクションを実行するように、Oracle Clusterwareを制限します。

- (CHECK_INTERVAL > 10) AND (NAME co 2): このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持ち、、リソースの名前に数字2が含まれるリソースのみでアクションを実行するように、Oracle Clusterwareを制限します。

関連項目: 「フィルタ」を参照してください。

-env "env1=val1,
env2=val2,..."

必要に応じて、-envコマンド・パラメータを使用して、1つ以上のリソース・プロファイル属性値を上書きできます。複数の環境名/値ペアを指定する場合、各ペアをカンマで区切り、リスト全体を二重引用符("")で囲む必要があります。

-i

-iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

使用上の注意

action_nameはサポートされたアクションで、エージェントおよびACTIONSリソース属性の両方で定義されます。ユーザーには、このアクションを実行する権限が付与されている必要があります。権限は、ACTIONSリソース属性で設定できます。

例

次のようにして、特定のリソースのアプリケーション固有のエージェント内で指定されたアクションを開始します。

$ crsctl request action action1 -r res1

crsctl request dhcp

特定のポートで、ネットワークでのDHCP要求パケットを送信するには、crsctl request dhcpコマンドを使用します。DHCPサーバーに提供可能なIPアドレスがある場合は、クライアントIDのIPアドレスで応答します。

構文

crsctl request dhcp -clientid clientid [-port port]

パラメータ

表E-58 crsctl request dhcpコマンドのパラメータ

パラメータ

説明

-clientid clientid

要求したいクライアントIDを指定します。クライアントIDは、crsctl get clientidコマンドを実行して取得します。

-port port

CRSCTLが要求パケットを送信するポート。ポートを指定しないと、CRSCTLはデフォルト値の67を使用します。

例

crsctl request dhcpコマンドでは次のような出力が戻されます。

$ crsctl request dhcp -clientid stmjk0462clr-stmjk01-vip

CRS-10009: DHCP server returned server: 192.168.53.232,
loan address : 192.168.29.228/255.255.252.0, lease time: 43200

crsctl set cluster hubsize

Oracle Flex Clusterのハブ・ノードの最大数を設定するには、crsctl set cluster hubsizeコマンドを使用します。

構文

crsctl set cluster hubsize

例

次のコマンド例は、ハブ・ノード最大数を32に設定しています。

$ crsctl set cluster hubsize 32

crsctl set cluster mode

クラスタをOracle Clusterwareの標準クラスタまたはOracle Flex Clusterに変更するには、crsctl set cluster modeコマンドを使用します。

構文

crsctl set cluster mode [standard | flex]

使用上の注意

- クラスタを構成する方法に応じて、standardまたはflexのいずれかを選択します。

crsctl set cpu equivalency

GUID-FE8344A9-3133-4534-B91E-0E52FF9573FF.htm#GUID-FE8344A9-3133-4534-B91E-0E52FF9573FF__BABFJHEGサーバー構成属性の値を設定するには、crsctl set cpu equivalencyコマンドを使用します。

構文

crsctl set cpu equivalency

crsctl set crs autostart

Oracle Clusterwareの自動リソース起動の基準を設定するには、crsctl set crs autostartコマンドを使用します。自動起動遅延および最小サーバー数の基準を設定すると、この2つの条件のいずれかが満たされるまでOracle Clusterwareリソースの自動起動は遅延します。

構文

crsctl set crs autostart [delay delay_time] [servercount count]

表E-59 crsctl set crs autostartコマンドのパラメータ

パラメータ

説明

delay delay_time

Oracle Clusterwareの自動起動を遅らせる秒数を指定します。

servercount count

Oracle Clusterwareの自動起動に必要なサーバーの最小数を指定します。

例

クラスタ内の最初のサーバーがオンラインになった後、Oracle Clusterwareによるリソースの自動起動を60秒間遅らせるには、次のコマンドを実行します。

crsctl set crs autostart delay 60

Oracle Clusterwareが2つ以上のサーバーがオンラインになるのを待機してから、リソースの自動起動を開始するようにするには、次のコマンドを実行します。

crsctl set crs autostart servercount 2

前述の2つの条件のいずれかが満たされるまで(順不同) Oracle Clusterwareによるリソースの自動起動を遅らせるには、次のコマンドを実行します。

crsctl set crs autostart delay 60 servercount 2

crsctl set css

クラスタ同期サービスのパラメータ値を設定するには、crsctl set cssコマンドを使用します。

構文

crsctl set css parameter value

使用上の注意

- My Oracle Supportから指示された場合を除き、crsctl set cssコマンド使用して次のパラメータを設定しないでください。

- クラスタ同期サービスのパラメータは次のとおりです。

diagwait
disktimeout
logfilesize
misscount
priority
reboottime

crsctl set css ipmiaddr

ローカルのIntelligent Platform Management Interface(IPMI)デバイスのアドレスをOracle Local Registryに格納するには、crsctl set css ipmiaddrコマンドを使用します。

構文

crsctl set css ipmiaddr ip_address

使用上の注意

- Oracle Clusterwareのインストールに使用されたユーザー・アカウントでコマンドを実行します。

- ローカル・サーバーで、rootとしてipmiutilまたはipmitoolを使用して、IPMIデバイスによって使用されるIPアドレスを取得します

- Oracle ClusterwareによってIPMIのIPアドレスが構成ストアに格納され、必要に応じてアドレスが配布されます。

- このコマンドでは、コマンドを実行したサーバーのIPMI IPアドレスのみが格納されます。

- 指定したアドレスのIPMIに別のサーバーがアクセスできない場合、このコマンドは失敗します。

例

IPMI IPアドレスをローカル・サーバーに格納して他のクラスタ・ノードに配布するには、次のコマンドを実行します。

$ crsctl set css ipmiaddr 192.0.2.244

crsctl set css ipmiadmin

Intelligent Platform Management Interface(IPMI)管理者のログイン資格証明をOracle Local Registryに格納するには、crsctl set css ipmiadminコマンドを使用します。

構文

crsctl set css ipmiadmin ipmi_administrator_name

使用上の注意

- このコマンドは、Oracle Clusterwareをインストールしたユーザー・アカウントで実行する必要があります。

- プロンプトに従い、新しい管理者アカウントの名前と関連付ける新しいパスワードを指定します。Oracle ClusterwareによってローカルのIPMIの名前およびパスワードが構成ストアに格納され、必要に応じて新しい資格証明が配布されます。

- このコマンドでは、このコマンドを実行したサーバーのIPMI管理者のみが変更されます。

- 指定したアドレスのローカルIPMIに別のサーバーがアクセスできない場合、このコマンドは失敗します。

例

IPMI管理者scottを変更するには、次のコマンドを実行します。

$ crsctl set css ipmiadmin scott

crsctl set css leafmisscount

接続がもはやアクティブでないと宣言され、リーフ・ノードがクラスタから削除されるまでに、リーフ・ノードとその接続先ハブ・ノード間の通信がない状態で経過する必要がある時間(秒単位)を指定するには、crsctl set css leafmisscountコマンドを使用します。

構文

crsctl set css leafmisscount number_of_seconds

使用上の注意

- rootまたはOracle Clusterwareインストール所有者としてこのコマンドを実行する必要があります

- このコマンドは、ハブ・ノードのみで実行できます

例

通信の失敗とクラスタからのリーフ・ノードの削除の間に30秒の間隔を構成するには、次のコマンドを実行します。

$ crsctl set css leafmisscount 30

crsctl set node role

クラスタ内の特定のノードのロールを設定するには、crsctl set node roleコマンドを使用します。

構文

crsctl set node role [-node node_name] {hub | leaf}

使用上の注意

- ロール情報を設定する特定のノードを指定できます。特定のノードを指定しない場合、CRSCTLによってローカル・ノードにノード・ロールが設定されます。

- ノード・ロールをハブ・ノードとして構成するには、hubオプションを指定します。

- ノード・ロールをリーフ・ノードとして構成するには、leafオプションを指定します。

- ノード・ロールの変更を適用するには、Oracle Clusterware技術スタックを再起動する必要があります。

例

ノードをハブ・ノードとして構成するには、次のコマンドを実行します。

$ crsctl set node role -node node151 hub

crsctl set resource use

このコマンドを実行するサーバーにRESOURCE_USE_ENABLEDサーバー構成パラメータの値を設定するには、crsctl set resource useコマンドを使用します。

構文

crsctl set resource use [1 | 0]

使用上の注意

- 可能な値は1または0です。この属性の値を1に設定すると(デフォルト)、サーバーをリソースの配置に使用できます。値を0に設定すると、Oracle Clusterwareによってサーバーでのサーバー・プール・リソースの起動が禁止されます。サーバーは空き領域サーバー・プールに属したままになります。

- このコマンドは、rootまたはクラスタ管理者として、またはWindowsシステムの場合、管理者として実行する必要があります。

例

RESOURCE_USE_ENABLEDサーバー構成パラメータの値を設定するには、次のコマンドを実行します。

# crsctl set resource use 1

crsctl set server label

このコマンドを実行するサーバーにSERVER_LABELサーバー構成属性の構成値を設定するには、crsctl set server labelコマンドを使用します。

構文

crsctl set server label value

使用上の注意

- サーバーの値を指定します。この値はbuilding_Aなどの物理的な場所や、hubserverなどのサーバーの識別情報などに影響を与える場合があります。

- 変更内容を有効にするには、ノードでOracle Clusterware技術スタックを再起動する必要があります。

例

crsctl set server labelコマンドでは次のような出力が戻されます。

$ crsctl set server label hubserver

crsctl setperm serverpool

特定のサーバー・プールの権限を設定するには、crsctl setperm serverpoolコマンドを使用します。

構文

crsctl setperm serverpool server_pool_name {-u acl_string | -x acl_string |
-o user_name | -g group_name}

パラメータ

表E-60 crsctl setperm serverpoolコマンドのパラメータ

パラメータ

説明

server_pool_name

権限を設定するサーバー・プールの名前を指定します。

{-u | -x | -o | -g}

サーバー・プールには次のパラメータのうち1つのみを指定できます。

- -u acl_string: サーバー・プールのアクセス制御リスト(ACL)を更新できます。

- -x acl_string: サーバー・プールのACLを削除できます。

- -o user_name: ユーザー名を入力することによってサーバー・プールの所有者を変更できます。

- -g group_name: グループ名を入力することによってサーバー・プールのプライマリ・グループを変更できます。

ユーザー、グループ、他のACL文字列は次のように指定します。

user:user_name[:readPermwritePermexecPerm] |
group:group_name[:readPermwritePermexecPerm] |
other[::readPermwritePermexecPerm]

- user: ユーザーACL

- group: グループACL

- other: 他のACL

- readPerm: サーバー・プールに対する読取り権限。文字rはユーザー、グループ、その他の読取り権限を付与し、マイナス記号(-)は読取り権限を付与しません。

- writePerm: サーバー・プールに対する書込み権限。文字wはユーザー、グループ、その他の書込み権限を付与し、マイナス記号(-)は書込み権限を付与しません。

- execPerm: サーバー・プールに対する実行権限。文字xはユーザー、グループ、その他の実行権限を付与し、マイナス記号(-)は実行権限を付与しません。

使用上の注意

- server_pool_nameパラメータは必須です。

- oraで始まる名前を持つサーバー・プールはOracleのサーバー・プールであるため、これらのサーバー・プールにはこのコマンドを使用しないでください。

- このコマンドはどの環境でも使用できますが、Oracle RAC環境でのみ役立ちます。

例

サーバー・プールに対する読取り、書込み、および実行権限をユーザーJane Doeに付与するには、次のコマンドを実行します。

crsctl setperm serverpool sp3 -u user:jane.doe:rwx

crsctl start cluster

Oracle Clusterwareスタックを起動するには、クラスタ内の任意のノードでcrsctl start clusterコマンドを使用します。

構文

crsctl start cluster [-all | -n server_name [...]]

使用上の注意

- クラスタ内のすべてのサーバーのOracle Clusterwareスタックを起動するか、クラスタ内の指定した(複数の場合はサーバー名を空白で区切って指定した)1つ以上のサーバー上のOracle Clusterwareスタックを起動するか、または、-allも-nも指定せずに、ローカル・サーバー上のOracle Clusterwareスタックを起動するかを選択できます。

- クラスタ内の任意のノードでこのクラスタ対応コマンドを使用できます。

例

指定した2つのサーバー上のOracle Clusterwareスタックを起動するには、rootとして次のコマンドを実行します。

# crsctl start cluster -n node1 node2

crsctl start crs

ローカル・サーバーでOracle高可用性サービスを起動するには、crsctl start crsコマンドを使用します。

構文

crsctl start crs [-excl [-nocrs] [-cssonly]] | [-wait | -waithas | -nowait] | [-noautostart]

パラメータ

表E-61 crsctl start crsコマンドのパラメータ

パラメータ

説明

-excl

次の2つのオプションを使用してOracle Clusterwareを排他モードで起動します。

- CRSDを起動せずに排他モードでOracle Clusterwareを起動するには、-nocrsパラメータを指定します。

- CSSDのみを起動するには-cssonlyパラメータを指定します。

-wait | -waithas | -nowait

次のいずれかを選択します。

- 起動が完了するまで待機し、すべての進捗状況およびステータス・メッセージを表示するには、-waitを指定します。

- 起動が完了するまで待機し、OHASDの進捗状況およびステータス・メッセージを表示するには-waithasを指定します。

- OHASDの起動を待機しない場合は、-nowaitを指定します。

-noautostart

OHASDのみを起動します。

使用上の注意

- このコマンドは、rootで実行する必要があります

- このコマンドによって起動されるのは、ローカル・サーバーのOracle高可用性サービスのみです。

例

ローカル・サーバーのOracle高可用性サービスを起動するには、rootとして次のコマンドを実行します。

# crsctl start crs

crsctl start ip

指定したサブネット・マスクの特定のインタフェースで特定のIP名またはIPアドレスを起動するには、crsctl start ipコマンドを使用します。IPを開始するサーバーでこのコマンドを実行します。

構文

crsctl start ip -A {IP_name | IP_address}/netmask/interface_name

パラメータ

表E-62 crsctl start ipコマンドのパラメータ

パラメータ

説明

{IP_name | IP_address}

ドメイン名またはIPアドレスを指定します。

完全修飾ドメイン名を指定しないと、CRSCTLでは標準の名前検索が使用されます。

netmask

起動するIPのサブネット・マスクを指定します。

interface_name

IPを起動するインタフェースを指定します。

例

ローカル・サーバーでIPを起動するには、次のようなコマンドを実行します。

$ crsctl start ip -A 192.168.29.220/255.255.252.0/eth0

crsctl start rollingpatch

crsctl start rollingpatchコマンドは、Oracle ClusterwareとOracle ASMをローリング・パッチ・モードに移行します。このモードでは、ノード間で異なるパッチ・レベルが許可されます。

構文

crsctl start rollingpatch

使用上の注意

- このコマンドでは、Oracle Clusterwareのローリング・パッチ状態とOracle ASMのクラスタ状態が問い合されます。いずれか一方がローリング・パッチ・モードでない場合、適切な方法を使用してOracle ClusterwareまたはOracle ASMがローリング・パッチ・モードに移行されます。

- このコマンドの実行時にOracle ClusterwareとOracle ASMが両方ともローリング・パッチ・モードの場合、このコマンドは何も行いません。

- ローリング・パッチ・モードは永続的ではありません。クラスタ内のすべてのノードが停止して再起動すると、クラスタは再起動時にローリング・パッチ・モードを終了します。同様に、クラスタ内のすべてのノードでOracle Clusterwareが停止して再起動すると、ローリング・パッチ・モードは終了します。

- このコマンドをOracle ASMクライアント・クラスタ内で発行した場合、Oracle ASMはローリング・パッチ・モードに移行されません。

crsctl start rollingupgrade

crsctl start rollingupgradeコマンドは、Oracle ClusterwareとOracle ASMをローリング・アップグレード・モードに移行します。

構文

crsctl start rollingupgrade version

使用上の注意

- このコマンドは、Oracle Clusterwareローリング・アップグレードの状態およびOracle ASMのクラスタ状態を問い合せます。いずれか一方がローリング・アップグレード・モードでない場合、適切な方法を使用してOracle ClusterwareまたはOracle ASMがローリング・アップグレード・モードに移行されます。

- このコマンドの実行時にOracle ClusterwareとOracle ASMが両方ともローリング・アップグレード・モードである場合、このコマンドは何も行いません。

- ローリング・アップグレード・モードは永続的ではありません。クラスタ内のすべてのノードが停止して再起動すると、クラスタは再起動時にローリング・アップグレード・モードを終了します。同様に、クラスタ内のすべてのノードでOracle Clusterwareが停止して再起動すると、ローリング・アップグレード・モードは終了します。

- このコマンドをOracle ASMクライアント・クラスタ内で実行した場合、Oracle ASMはローリング・アップグレード・モードに移行されません。

crsctl start testdns

指定したIPアドレスおよびポートでリスニングするテストDNSサーバーを起動するには、crsctl start testdnsコマンドを使用します。テストDNSサーバーは、受信したパケットを表示しますが、受信パケットに応答することはありません。通常、このコマンドは、ドメイン転送がGNSドメイン用に正しく設定されていることを確認するために使用します。

構文

crsctl start testdns [-address address [-port port]] [-once] [-v]

パラメータ

表E-63 crsctl start testdnsコマンドのパラメータ

パラメータ

説明

-address address

サーバー・アドレスをIP_address/netmask [/interface_name]の書式で指定します。

-port port

サーバーがリスニングするポート。ポートを指定しないと、デフォルトのポート53が使用されます。

-once

DNSサーバーが1つのDNS問合せパケットを受信した後に終了する必要がある場合、このフラグを指定します。

-v

詳細な出力。

例

ローカル・サーバーでテストDNSサーバーを起動するには、次のようなコマンドを実行します。

$ crsctl start testdns -address 192.168.29.218 -port 63 -v

crsctl status category

サーバー・カテゴリに関する情報を取得するには、crsctl status categoryコマンドを使用します。

構文

crsctl status category {category_name [category_name [...]] | [-w "filter" |
-server server_name]}

パラメータ

表E-64 crsctl status categoryコマンドのパラメータ

パラメータ

説明

category_name

ステータスを取得するサーバー・カテゴリの名前またはサーバー・カテゴリの空白区切りリストを指定します。

-w "filter"

または、前に-wフラグを付けて、カテゴリ・フィルタを指定できます。

関連項目: 「フィルタ」を参照してください。

-server server_name

または、特定のサーバーを指定して、そのサーバーに一致するすべてのカテゴリを表示できます。

例

フィルタを使用してサーバー・カテゴリのステータスを取得するには、次のコマンドを実行します。

$ crsctl stat category -w "ACTIVE_CSS_ROLE = hub"

NAME=my_category_i
ACL=owner:mjkeenan:rwx,pgrp:svrtech:rwx,other::r--
ACTIVE_CSS_ROLE = hub
EXPRESSION=(CPU_COUNT > 3)

サーバーごとにサーバー・カテゴリのステータスを取得するには、次のコマンドを実行します。

$ crsctl stat category -server node1

NAME=my_category
ACL=owner:mjkeenan:rwx,pgrp:svrtech:rwx,other::r--
ACTIVE_CSS_ROLE = hub
EXPRESSION=

crsctl status ip

特定のIPアドレスがネットワークで起動していることを確認するには、crsctl status ipコマンドを使用します。

構文

crsctl status ip -A {IP_name | IP_address}

パラメータ

表E-65 crsctl status ipコマンドのパラメータ

パラメータ

説明

{IP_name | IP_address}

ドメイン名またはIPアドレスを指定します。

完全修飾ドメイン名を指定しないと、CRSCTLでは標準の名前検索が使用されます。

例

crsctl status ipコマンドでは次のような出力が戻されます。

CRS-10003: IP address 192.168.29.220 could be reached from current node

crsctl status policy

構成ポリシーのステータスと定義を表示するには、crsctl status policyコマンドを使用します。

構文

crsctl status policy [policy_name [policy_name [...]] | -w "filter" | -active]

パラメータ

表E-66 crsctl status policyコマンドのパラメータ

パラメータ

説明

policy_name

ステータスを表示するポリシーの名前または空白区切りのポリシー名のリストを指定します。

-w "filter"

または、前に-wフラグを付けて、ポリシー・フィルタを指定できます。

関連項目: 「フィルタ」を参照してください。

-active

または、このパラメータを指定して、アクティブなポリシーのステータスを表示できます。

使用上の注意

- このコマンドの実行に必要な権限は、ポリシー・セットのACL属性の値によって異なります

crsctl status policyset

セットを変更できるユーザー、最後にアクティブ化されたポリシー、および現在有効な構成(現在のポリシーといいます)を制御する、ポリシー・セット内の現在のポリシー(アクセス制御リストを含む)を表示するには、crsctl status policysetコマンドを使用します。

構文

crsctl status policyset [-file file_name]

パラメータ

表E-67 crsctl status policysetコマンドのパラメータ

パラメータ

説明

-file file_name

このパラメータを指定することで、crsctl modify policysetを使用して複数のポリシーの追加、削除、または更新を行って編集後に送り返すことができるファイルを作成できます。

このオプション・パラメータを指定しない場合、CRSCTLでは現在の構成が表示されます。

使用上の注意

- このコマンドの実行に必要な権限は、ポリシー・セットのACL属性の値によって異なります

例

このコマンドによって、次のような出力が返されます。

ACL=owner:'mjkeenan:rwx,pgrp:g900:rwx,other::r--'
LAST_ACTIVATED_POLICY=DayTime
SERVER_POOL_NAMES=Free pool1 pool2 pool3
POLICY
NAME=DayTime
DESCRIPTION=Test policy
SERVERPOOL
NAME=pool1
IMPORTANCE=0
MAX_SIZE=2
MIN_SIZE=2
SERVER_CATEGORY=
SERVER_NAMES=
SERVERPOOL
NAME=pool2
IMPORTANCE=0
MAX_SIZE=1
MIN_SIZE=1
SERVER_CATEGORY=
SERVERPOOL
NAME=pool3
IMPORTANCE=0
MAX_SIZE=1
MIN_SIZE=1
SERVER_CATEGORY=
POLICY
NAME=NightTime
DESCRIPTION=Test policy
SERVERPOOL
NAME=pool1
IMPORTANCE=0
MAX_SIZE=1
MIN_SIZE=1
SERVER_CATEGORY=
SERVERPOOL
NAME=pool2
IMPORTANCE=0
MAX_SIZE=2
MIN_SIZE=2
SERVER_CATEGORY=
SERVERPOOL
NAME=pool3
IMPORTANCE=0
MAX_SIZE=1
MIN_SIZE=1
SERVER_CATEGORY=
POLICY
NAME=Weekend
DESCRIPTION=Test policy
SERVERPOOL
NAME=pool1
IMPORTANCE=0
MAX_SIZE=0
MIN_SIZE=0
SERVER_CATEGORY=
SERVERPOOL
NAME=pool2
IMPORTANCE=0
MAX_SIZE=1
MIN_SIZE=1
SERVER_CATEGORY=
SERVERPOOL
NAME=pool3
IMPORTANCE=0
MAX_SIZE=3
MIN_SIZE=3
SERVER_CATEGORY=

crsctl status server

1つ以上の特定のサーバーのステータスおよび構成情報を取得するには、crsctl status serverコマンドを使用します。

構文

crsctl status server {server_name [...] | -w "filter"} [-g | -p | -v | -f] |
[-category category_name | -w "filter"]

パラメータ

表E-68 crsctl status serverコマンドのパラメータ

パラメータ

説明

server_name [...]

1つ以上のサーバー名を空白区切りで指定します。

-w "filter"

表示対象のサーバーを決定するフィルタを指定します。フィルタは二重引用符("")で囲む必要があります。値にカッコまたは空白が含まれる場合、一重引用符('')で囲む必要があります。たとえば、"STATE = ONLINE"と指定すると、オンラインのサーバーのみが表示されます。

関連項目: 「フィルタ」を参照してください。

-g | -p | -v | -f

Oracle Clusterwareで特定のサーバーのステータスをチェックする場合には、次のパラメータのいずれかを指定できます。

- -g: 指定したサーバーが登録されているかどうかをチェックする場合にこのパラメータを使用します。

- -p: 指定したサーバーの静的な構成を表示する場合にこのパラメータを使用します。

- -v: 指定したサーバーの実行時の構成を表示する場合にこのパラメータを使用します。

- -f: 指定したサーバーのすべての構成を表示する場合にこのパラメータを使用します。

-category category_name

ステータスの取得対象として、特定のカテゴリのサーバーを指定できます。

-w "filter"

表示対象のカテゴリを決定するフィルタを指定します。フィルタは二重引用符("")で囲む必要があります。値にカッコまたは空白が含まれる場合、一重引用符('')で囲む必要があります。たとえば、"STATE = ONLINE"と指定すると、オンラインのサーバーのみが表示されます。

関連項目: 「フィルタ」を参照してください。

例

例1

crsctl status serverコマンドでは次のような出力が戻されます。

NAME=node1
STATE=ONLINE

NAME=node2
STATE=ONLINE

例2

特定のサーバーの構成全体は次のようになります。

NAME=node2
MEMORY_SIZE=72626
CPU_COUNT=12
CPU_CLOCK_RATE=1711
CPU_HYPERTHREADING=0
CPU_EQUIVALENCY=1000
DEPLOYMENT=other
CONFIGURED_CSS_ROLE=hub
RESOURCE_USE_ENABLED=1
SERVER_LABEL=
PHYSICAL_HOSTNAME=
STATE=ONLINE
ACTIVE_POOLS=ora.pool1
STATE_DETAILS=
ACTIVE_CSS_ROLE=hub

crsctl status serverpool

1つ以上の特定のサーバー・プールのステータスおよび構成情報を取得するには、crsctl status serverpoolコマンドを使用します。

構文

crsctl status serverpool [server_pool_name [...] | -w "filter"] [-p | -v | -f]

crsctl status serverpool {[server_pool_name [...]} -g

パラメータ

表E-69 crsctl status serverpoolコマンドのパラメータ

パラメータ

説明

[server_pool_name [...] -g

特定のサーバー・プールを識別する場合には、1つ以上のサーバー・プール名を空白区切りで指定します。

-g: 指定したサーバー・プールが登録されているかどうかをチェックする場合にこのパラメータを使用します。

注意: サーバー・プール名を指定した後に、-gパラメータをその他のパラメータとともに使用することはできません

[-w "filter"]

MIN_SIZE > 3などのフィルタを二重引用符("")で囲んで指定する場合にこのパラメータを使用します。特定の文字を使用してサーバー・プールを識別する場合にこのパラメータを使用します。

関連項目: 「フィルタ」を参照してください。

[-p | -v | -f]

必要に応じて、次のパラメータのいずれかを指定できます。

- -p: 指定したサーバー・プールの静的な構成を表示する場合にこのパラメータを使用します。

- -v: 指定したサーバー・プールの実行時の構成を表示する場合にこのパラメータを使用します。

- -f: 指定したサーバー・プールのすべての構成を表示する場合にこのパラメータを使用します。

使用上の注意

- server_pool_nameパラメータまたはフィルタは必須です。

- oraで始まる名前を持つサーバー・プールはOracleのサーバー・プールであるため、これらのサーバー・プールにはこのコマンドを使用しないでください。

- このコマンドはどの環境でも使用できますが、Oracle RAC環境でのみ役立ちます。

例

例1

サーバー・プールsp1のすべての構成を表示するには、次のコマンドを実行します。

$ crsctl status serverpool sp1 -f
NAME=spl
IMPORTANCE=1
MIN_SIZE=0
MAX_SIZE=-1
SERVER_NAMES=node3 node4 node5
PARENT_POOLS=Generic
EXCLUSIVE_POOLS=
ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r--
SERVER_CATEGORY=ora.hub.category
ACTIVE_SERVERS=node3 node4

例2

すべてのサーバー・プールおよびそれらに関連付けられたサーバーを表示するには、次のコマンドを使用します。

$ crsctl status serverpool
NAME=Free
ACTIVE_SERVERS=

NAME=Generic
ACTIVE_SERVERS=node1 node2

NAME=ora.orcl
ACTIVE_SERVERS=node1 node2

NAME=sp1
ACTIVE_SERVERS=node3 node4

例3

特定の基準を満たすサーバー・プールを検索するには、次のコマンドを使用します。

$ crsctl status serverpool -w "MAX_SIZE > 1"
NAME=sp2
ACTIVE_SERVERS=node3 node4

crsctl status testdns

指定したアドレスとローカルのホスト名で実行しているテストDNSサーバーを問い合せるには、crsctl status testdnsコマンドを使用します。

構文

crsctl status testdns [-server DNS_server_address] [-port port] [-v]

パラメータ

表E-70 crsctl status testdnsコマンドのパラメータ

パラメータ

説明

-server DNS_server_address

ステータスを確認するDNSサーバーのアドレスを指定します。

-port port

DNSサーバーがリスニングするポート。ポートを指定しないと、デフォルトのポート53が使用されます。

-v

詳細な出力。

例

crsctl status testdnsコマンドでは次のような出力が戻されます。

CRS-10024: DNS server returned 192.168.28.74 for name
stmjk07-vip.stmjk0462.foo.com

crsctl stop cluster

クラスタ内の任意のノードで、クラスタ内のすべてのサーバー上または特定のサーバー上のOracle Clusterwareスタックを停止するには、crsctl stop clusterコマンドを使用します。

構文

crsctl stop cluster [-all | -n server_name [...]] [-f]

使用上の注意

- -allを指定しない場合、または空白区切りの1つ以上のサーバー名を指定しない場合、Oracle Clusterwareによってローカル・サーバーのOracle Clusterwareスタックが停止されます。

- クラスタ内の任意のノードでこのクラスタ対応コマンドを使用できます。

- このコマンドでは、Oracle Clusterwareスタックの停止試行中、Oracle Clusterwareによって管理されるリソースの正常な停止が試行されます。
Oracle Clusterwareによって管理される任意のリソースが、crsctl stop clusterコマンドの実行後も実行されている場合、コマンドは失敗します。すべてのリソースを無条件で停止し、Oracle Clusterwareスタックを停止するには、-fパラメータを使用します。

- すべてのノードまたはリストされたノードでOracle Clusterwareを停止する場合は、crsctl stop clusterコマンドを使用しますが、これは、このコマンドを使用すると、Oracle Clusterwareスタックが特定のサーバーで停止される前に特定のリソースがクラスタ内の他のサーバーに再配置されないためです。1つ以上のノードでOracle高可用性サービスを停止する必要がある場合は、crsctl stop clusterコマンドが完了するまで待機してから、必要に応じて、特定のノードでcrsctl stop crsコマンドを実行します。

例

特定のサーバー上のOracle Clusterwareスタックを停止するには、次のコマンドを実行します。

# crsctl stop cluster -n node1

crsctl stop crs

ローカル・サーバーでOracle高可用性サービスを停止するには、crsctl stop crsコマンドを使用します。

構文

crsctl stop crs [-f]

使用上の注意

- このコマンドは、rootで実行する必要があります。

- このコマンドでは、ローカル・サーバーのOracle高可用性サービスの停止試行中、Oracle Clusterwareによって管理されるリソースの正常な停止が試行されます。
Oracle Clusterwareによって管理される任意のリソースが、crsctl stop crsコマンドの実行後も実行されている場合、コマンドは失敗します。すべてのリソースを無条件で停止し、ローカル・サーバーのOracle高可用性サービスを停止するには、-fパラメータを使用します。

- すべてのノードまたはリストされたノードでOracle Clusterwareを停止する場合は、crsctl stop clusterコマンドを使用しますが、これは、このコマンドを使用すると、Oracle Clusterwareスタックが特定のサーバーで停止される前に特定のリソースがクラスタ内の他のサーバーに再配置されないためです。1つ以上のノードでOracle高可用性サービスを停止する必要がある場合は、crsctl stop clusterコマンドが完了するまで待機してから、必要に応じて、特定のノードでcrsctl stop crsコマンドを実行します。

- Oracle Flex ASMが有効になっているOracle Clusterwareの標準クラスタ内で、Oracle ASMインスタンスがパラレルで実行されているすべてのノード上のOracle Clusterware技術スタックを停止しようとする場合は、その前に1つ以上のOracle ASMインスタンスを、Oracle ASMが実行されていない別のノードに再配置する必要があります。

- Oracle Clusterware 11gリリース2(11.2.0.3)では、このコマンドをSolaris Sparc環境およびSolaris X64環境で実行すると、停止時およびその後の起動時にドライバはロードされたままになります。これは、Linux環境では発生しません。

例

ローカル・サーバーのOracle高可用性サービスを停止するには、次のコマンドを実行します。

# crsctl stop crs

crsctl stop ip

指定したサブネット・マスクの特定のインタフェースで特定のIP名またはIPアドレスを停止するには、crsctl stop ipコマンドを使用します。このコマンドは、停止するIPが存在するサーバーで実行します。

構文

crsctl stop ip -A {IP_name | IP_address}/interface_name

パラメータ

表E-71 crsctl stop ipコマンドのパラメータ

パラメータ

説明

{IP_name | IP_address}

ドメイン名またはIPアドレスを指定します。

完全修飾ドメイン名を指定しないと、CRSCTLでは標準の名前検索が使用されます。

interface_name

IPを起動するインタフェースを指定します。

例

ローカル・サーバーでIPを停止するには、次のようなコマンドを実行します。

$ crsctl stop ip -A MyIP.domain.com/eth0

crsctl stop rollingpatch

crsctl stop rollingpatchコマンドは、Oracle ClusterwareおよびOracle ASMのローリング・パッチ・モードを終了します。ローリング・パッチ・モードが終了すると、ノード間で異なるパッチ・レベルは許可されません。

構文

crsctl stop rollingpatch

使用上の注意

- このコマンドでは、Oracle Clusterwareのローリング・パッチ状態とOracle ASMのクラスタ状態が問い合されます。いずれか一方がローリング・パッチ・モードの場合、適切な方法を使用してOracle ClusterwareまたはOracle ASMでローリング・パッチ・モードが終了されます。

- このコマンドでは、クラスタ内のすべてのノードでパッチ・レベルが一貫していることが確認され、そうでない場合はエラーが戻されます。

- このコマンドの発行時にOracle ClusterwareとOracle ASMが両方ともローリング・パッチ・モードでない場合、このコマンドは何も行いません。

- このコマンドをOracle ASMクライアント・クラスタ内で発行した場合、Oracle ASMでローリング・パッチ・モードは終了されません。

crsctl stop testdns

テストDNSサーバーを停止するには、crsctl stop testdnsコマンドを使用します。

構文

crsctl stop testdns [-address address [-port port]] [-domain GNS_domain] [-v]

パラメータ

表E-72 crsctl stop testdnsコマンドのパラメータ

パラメータ

説明

-address address

テストDNSサーバーを起動したときのサーバー・アドレスをIP_address/netmask [/interface_name]の書式で指定します。

-port port

DNSサーバーがリスニングするポート。ポートを指定しないと、デフォルトのポート53が使用されます。

[-domain GNS_domain]

サーバーによるリスニングを停止する必要があるドメイン。

-v

詳細な出力。

例

crsctl stop testdnsコマンドでは次のような出力が戻されます。

CRS-10032: successfully stopped the DNS listening daemon running on port 53 on
local node

crsctl unpin css

多数のサーバーの固定を解除するには、crsctl unpin cssコマンドを使用します。固定されていないノードの場合、停止中にその期限が切れると、ノード番号が変更される可能性があります。

構文

crsctl unpin css -n node_name [node_name [...exit]]

使用上の注意

- ノードを空白区切りのリストで指定できます。

- 1週間より長い期間停止していた固定解除済サーバーは、olsnodesではレポートされません。これらのサーバーはクラスタから動的に離れるため、ユーザーがクラスタから明示的に削除する必要はありません。

- crsctl delete nodeコマンドを使用してノードを削除すると、ノードの固定も暗黙的に解除されます。

- Oracle Clusterwareのアップグレード時にはすべてのサーバーが固定されますが、Oracle Clusterware 12cの新規インストール後は、クラスタに追加するすべてのサーバーの固定が解除されます。

- 12cリリース1 (12.1)より前のOracle RACのインスタンスが存在するサーバーにOracle Clusterware 12cをインストール済の場合、固定を解除することはできません。

例

2つのノードの固定を解除するには、次のコマンドを実行します。

$ crsctl unpin css -n node1 node4

crsctl unset css

クラスタ同期サービスのパラメータ値の設定を解除してデフォルト値にリストアするには、crsctl unset cssコマンドを使用します。

構文

crsctl unset css parameter

使用上の注意

- 次のクラスタ同期サービスのパラメータを指定できます。

- diagwait

- disktimeout

- misscount

- reboottime

- priority

- logfilesize

例

クラスタ同期サービスのパラメータreboottimeをデフォルト値にリストアするには、次のコマンドを実行します。

$ crsctl unset css reboottime

crsctl unset css ipmiconfig

Oracle Local Registryから以前に格納されたすべてのIPMI構成(ログイン資格証明およびIPアドレス)を消去するには、crsctl unset css ipmiconfigコマンドを使用します。このコマンドは、クラスタでIPMIを構成解除する場合、またはIPMI構成が不適切なユーザーによって以前に格納された場合に適しています。

構文

crsctl unset css ipmiconfig

使用上の注意

- このコマンドは、IPMIを構成するときに使用したユーザー・アカウントまたは権限を持つユーザーで実行する必要があります。

- このコマンドでは、このコマンドを実行したサーバーのIPMI構成のみが消去されます。

- Oracle Clusterwareが、このコマンドで削除する構成データにアクセスして使用できていた場合、Oracle Clusterwareを再起動するまで、引き続きアクセスおよび使用が可能です。

例

Oracle Local RegistryからIPMI構成データを消去し、IPMIが今後使用されないようにOracle Clusterwareを再起動するには、rootまたはWindowsの管理者グループのメンバーとしてログインし、次のコマンドを実行します。

crsctl unset css ipmiconfig
crsctl stop crs
crsctl start crs

crsctl unset css leafmisscount

ハブ・ノードとリーフ・ノード間の通信が失敗した後、猶予期間が開始するまでに経過した時間を消去してデフォルトにリセットするには、crsctl unset css leafmisscountコマンドを使用します。

構文

crsctl unset css leafmisscount

Oracle Restart環境のCRSCTLコマンド

この項に示すコマンドは、Oracle高可用性サービスを制御します。これらのコマンドは、Oracle高可用性サービス・デーモン(ohasd)、Oracle ASM(インストールされている場合)およびクラスタ同期サービス(Oracle ASMがインストールされている場合)で構成される、Oracle Restart環境のOracle高可用性サービス・スタックを管理します。これらのコマンドは、コマンドを実行するローカル・サーバーにのみ影響します。

注意:

Oracleでは、Oracle Restart環境でのcrs_*コマンドの使用はサポートされていません。

クラスタ内の各サーバーの状態は、次の2つのいずれかです。

- スタック全体が起動している状態。Oracle高可用性サービスがアクティブであることを意味します。

- スタック全体が停止している状態。Oracle高可用性サービスが非アクティブであることを意味します。

次のコマンドはOracle Restart環境でのみ使用できます。

- crsctl check has

- crsctl config has

- crsctl disable has

- crsctl enable has

- crsctl query has releaseversion

- crsctl query has softwareversion

- crsctl start has

- crsctl stop has

crsctl check has

ohasdのステータスをチェックするには、crsctl check hasコマンドを使用します。

構文

crsctl check has

例

crsctl check hasコマンドでは次のような出力が戻されます。

CRS-4638: Oracle High Availability Services is online

crsctl config has

サーバー上のOracle高可用性サービス・スタックの自動起動構成を表示するには、crsctl check hasコマンドを使用します。

構文

crsctl config has

例

crsctl config hasコマンドでは次のような出力が戻されます。

CRS-4622 Oracle High Availability Services autostart is enabled.

crsctl disable has

サーバーの起動時にOracle高可用性サービス・スタックの自動起動を無効にするには、crsctl disable hasコマンドを使用します。

構文

crsctl disable has

例

crsctl disable hasコマンドでは次のような出力が戻されます。

CRS-4621 Oracle High Availability Services autostart is disabled.

crsctl enable has

サーバーの起動時にOracle高可用性サービス・スタックの自動起動を有効にするには、crsctl enable hasコマンドを使用します。

構文

crsctl enable has

例

crsctl enable hasコマンドでは次のような出力が戻されます。

CRS-4622 Oracle High Availability Services autostart is enabled.

crsctl query has releaseversion

ローカル・ノードにバイナリで格納されているOracle Clusterwareソフトウェアのリリース・バージョンを表示するには、crsctl query has releaseversionコマンドを使用します。

構文

crsctl query has releaseversion

例

crsctl query has releaseversionコマンドでは次のような出力が戻されます。

Oracle High Availability Services release version on the local node is [11.2.0.0.2]

crsctl query has softwareversion

ローカル・ノードのソフトウェアのバージョンを表示するには、crsctl query has softwareversionコマンドを使用します。

構文

crsctl query has softwareversion

使用上の注意

- サーバー名を指定しない場合、Oracle Clusterwareではローカル・サーバーで実行中のOracle Clusterwareのバージョンが表示されます。

例

crsctl query has softwareversionコマンドでは次のような出力が戻されます。

Oracle High Availability Services version on the local node is [11.2.0.2.0]

crsctl start has

ローカル・サーバーでOracle高可用性サービスを起動するには、crsctl start hasコマンドを使用します。

構文

crsctl start has [-noautostart]

使用上の注意

Oracle高可用性サービスのみを開始するには、-noautorestartパラメータを使用します。

例

ローカル・サーバーのOracle高可用性サービスを起動するには、次のコマンドを実行します。

# crsctl start has

crsctl stop has

ローカル・サーバーでOracle高可用性サービスを停止するには、crsctl stop hasコマンドを使用します。

構文

crsctl stop has [-f]

使用上の注意

このコマンドでは、Oracle高可用性サービスの停止試行中、Oracle Clusterwareによって管理されるリソースの正常な停止が試行されます。

Oracle Clusterwareによって管理される任意のリソースが、crsctl stop hasコマンドの実行後も実行されている場合、コマンドは失敗します。すべてのリソースを無条件で停止し、Oracle高可用性サービスを停止するには、-fパラメータを使用します。

例

ローカル・サーバーのOracle高可用性サービスを停止するには、次のコマンドを実行します。

# crsctl stop has

トラブルシューティングおよび診断出力

rootユーザーとしてcrsctl set logコマンドを使用して、クラスタ・レディ・サービス(CRS)、クラスタ同期サービス(CSS)、イベント・マネージャ(EVM)およびクラスタウェア・サブコンポーネントの動的デバッグを有効にできます。crsctl debugコマンドを使用して、デバッグ・レベルを動的に変更できます。デバッグ情報は、次回の起動で使用するために、Oracle Cluster Registry(OCR)に保存されます。リソースのデバッグを有効にすることもできます。

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

- crsctl set logを使用した動的デバッグ

- コンポーネント・レベルのデバッグ

- Oracle Clusterwareリソースのデバッグの有効化

- Oracle Clusterwareコンポーネントのための追加トレースの有効化

crsctl set logを使用した動的デバッグ

Oracle Clusterwareのログ・レベルを設定するには、crsctl set logコマンドを使用します。

構文

crsctl set log {[crs | css | evm "component_name=log_level, [...]"] |
[all=log_level]}

次のように、特定のリソースのエージェントのログ・レベルを設定することもできます。

crsctl set log res "resource_name=log_level, [...]"

使用上の注意

- CRS、CSSおよびEVMの3つのモジュールの様々なコンポーネントにログ・レベルを設定できます。allパラメータを選択すると、1つのモジュールのすべてのコンポーネントに1つのコマンドでログ・レベルを設定できます。各モジュールのコンポーネントのリストを取得するには、crsctl lsmodulesコマンドを使用します。

- コンポーネント名/ログ・レベルのペアをカンマで区切り、二重引用符("")で囲んだリストを入力します。

注意:

Oracle Clusterware 11gリリース2 (11.2.0.3)以上では、コンポーネント名/ログ・レベルのペアは等号(=)で分割します。以前のバージョンのOracle Clusterwareでは、コロン(:)が使用されていました。

- log_levelは、コンポーネントまたはリソースのログ・レベルを設定する1から5までの番号です。1は最小ログ出力、5は最も詳細なログ出力を表します。デフォルトのログ・レベルは2です。

- リソースのログ・レベルを設定するには、特定のリソースの名前か、またはリソース名/ログ・レベルのペアをカンマで区切り、二重引用符("")で囲んだリストを指定します。

例

CRSモジュールのCRSRTIコンポーネントおよびCRSCOMMコンポーネントのログ・レベルを設定するには、次のコマンドを実行します。

$ crsctl set log crs "CRSRTI=1,CRSCOMM=2"

EVMモジュールのすべてのコンポーネントのログ・レベルを設定するには、次のコマンドを実行します。

$ crsctl set log evm all=2

リソースのログ・レベルを設定するには、次のコマンドを実行します。

$ crsctl set log res "myResource1=3"

コンポーネント・レベルのデバッグ

rootユーザーとしてcrsctl set logおよびcrsctl set traceコマンドを使用して、様々なOracle Clusterwareモジュールの動的デバッグを有効にできます。

Oracle Clusterwareモジュールのデバッグの有効化

環境変数を設定するか、または次の構文を使用してcrsctl set logコマンドを実行することによって、Oracle Clusterwareモジュールおよびそれらのコンポーネントやリソースのデバッグを有効にできます。

crsctl set {log | trace} module_name "component:debugging_level
[,component:debugging_level][,...]"

crsctl setコマンドをrootユーザーとして実行し、次の情報を指定します。

- module_name: 次のいずれかのモジュールの名前。

- mdns: マルチキャスト・ドメイン・ネーム・サーバー

- gpnp: グリッド・プラグ・アンド・プレイ・サービス

- css: クラスタ同期サービス

- crf: クラスタ状態モニター

- crs: クラスタ・レディ・サービス

- ctss: クラスタ時刻同期化サービス

- evm: イベント・マネージャ

- gipc: グリッド・プロセス間通信

- component: いずれかのモジュールのコンポーネントの名前。すべてのコンポーネントのリストについては、表E-73を参照してください。

- debugging_level: 1から5までの番号は、デバッグ・コマンドで戻す詳細レベルを示します。1は最小デバッグ出力、5は最も詳細なデバッグ出力を表します。デフォルトのデバッグ・レベルは2です。

次のコマンドでは、様々なモジュールに対してデバッグを有効にする方法の例を示します。

- Oracle Clusterwareのデバッグを有効にする方法

crsctl set log crs "CRSRTI:1,CRSCOMM:2"

- OCRのデバッグを有効にする方法

crsctl set log crs "CRSRTI:1,CRSCOMM:2,OCRSRV:4"

- EVMのデバッグを有効にする方法

crsctl set log evm "EVMCOMM:1"

- リソースのデバッグを有効にする方法

crsctl set log res "resname:1"

デバッグに使用可能なコンポーネントのリストを取得するには、次のようにcrsctl lsmodulesコマンドを実行します。

crsctl lsmodules {mdns | gpnp | css | crf | crs | ctss | evm | gipc}

注意:

crsctl lsmoduluesコマンドを実行するために、rootユーザーである必要はありません。

表E-73に、モジュールCRS、CSSおよびEVMのそれぞれのコンポーネントを示します。一部のコンポーネント名はCRS、EVMおよびCSSのデーモン間で共通であり、特定のデーモンで有効な場合があることに注意してください。たとえば、COMMNSはNSレイヤーで、NSレイヤーは各デーモンで使用されるため、いずれかのデーモンでこの特定のモジュール・コンポーネントを有効にして、特定のデバッグ情報を取得できます。

表E-73 CRS、CSSおよびEVMモジュールのコンポーネント

CRSコンポーネント(1)

CSSコンポーネント(2)

EVMコンポーネント(3)

CRSUI
CRSCOMM
CRSRTI
CRSMAIN
CRSPLACE
CRSAPP
CRSRES
CRSCOMM
CRSOCR
CRSTIMER
CRSEVT
CRSD
CLUCLS
CSSCLNT
COMMCRS
COMMNS

CSSD
COMMCRS
COMMNS

EVMD
EVMDMAIN
EVMCOMM
EVMEVT
EVMAPP
EVMAGENT
CRSOCR
CLUCLS
CSSCLNT
COMMCRS
COMMNS

脚注1: crsctl lsmodules crsコマンドを使用して、CRSコンポーネントのリストを取得します。

脚注2: crsctl lsmodules cssコマンドを使用して、CSSコンポーネントのリストを取得します。

脚注3: crsctl lsmodules evmコマンドを使用して、EVMコンポーネントのリストを取得します。

たとえば、次のコマンドを使用して、特定のクラスタ・ノードにデバッグ・レベルを設定するには、-nodelistキーワードおよびノードの名前を次のように含めます。

crsctl set log crs "CRSRTI:1,CRSCOMM:2" -nodelist node1,node2

表E-74に、クラスタ同期サービス・モジュールを示します。

表E-74 クラスタ同期サービス(CSS)・モジュールおよびその機能

モジュール

説明

CSS

CSSクライアント・コンポーネント

CSSD

CSSデーモン・コンポーネント

表E-75に、各通信(COMM)モジュールを示します。

表E-75 通信(COMM)モジュールおよびその機能

モジュール

説明

COMMCRS

Clusterware通信レイヤー

COMMNS

NS通信レイヤー

表E-76に、各CRSモジュールで実行される機能を示します。

表E-76 Oracle Clusterware (CRS)モジュールおよびその機能

モジュール

説明

CRSUI

ユーザー・インタフェース・モジュール

CRSCOMM

通信モジュール

CRSRTI

リソース管理モジュール

CRSMAIN

メイン・モジュール/ドライバ

CRSPLACE

CRS配置モジュール

CRSAPP

CRSアプリケーション

CRSRES

CRSリソース

CRSOCR

Oracle Cluster Registryインタフェース

CRSTIMER

CRSに関連する様々なタイマー

CRSEVT

CRS EVM/イベント・インタフェース・モジュール

CRSD

CRSデーモン

crsctl set log crsコマンドを使用して、表E-77にリストされているOCRコンポーネントをデバッグできます。表E-77にリストされているコンポーネントは、OCRMASおよびOCRASMを除くOracle Local Registry (OLR)にも使用できます。また、OCRMASおよびOCRSRVを除くOCRクライアントおよびOLRクライアントにも使用できます。一部のOCRクライアントおよびOLRクライアントにはOCRCONFIG、OCRDUMPなどがあります。

表E-77 Oracle Cluster Registry (OCR)コンポーネント名

モジュール

説明

OCRAPI

OCR抽象化コンポーネント

OCRCLI

OCRクライアント・コンポーネント

OCRSRV

OCRサーバー・コンポーネント

OCRMAS

OCRマスター・スレッド・コンポーネント

OCRMSG

OCRメッセージ・コンポーネント

OCRCAC

OCRキャッシュ・コンポーネント

OCRRAW

OCR RAWデバイス・コンポーネント

OCRUTL

OCRユーティリティ・コンポーネント

OCROSD

OCRオペレーティング・システム固有(OSD)レイヤー

OCRASM

OCR ASMコンポーネント

表E-78に、OCRツール・モジュールを示します。

表E-78 OCRCONFIGモジュールおよびその機能

モジュール

説明

OCRCONFIG

OCRを構成するためのOCRCONFIGコンポーネント

OCRDUMP

Oracle Cluster Registryの内容を表示するOCRDUMPコンポーネント

OCRCHECK

すべての構成済OCRを検証するOCRCHECKコンポーネント

Oracle Clusterwareリソースのデバッグの有効化

次の構文を使用してcrsctl set logコマンドを実行することによって、Oracle Clusterwareのリソースのデバッグを有効にできます。

crsctl set log res "resource_name=debugging_level"

crsctl set logコマンドをrootユーザーとして実行し、次の情報を指定します。

- resource_name: デバッグするリソースの名前。

- debugging_level: 1から5までの番号は、デバッグ・コマンドで戻す詳細レベルを示します。1は最小デバッグ出力、5は最も詳細なデバッグ出力を表します。デフォルトのデバッグ・レベルは2です。

デバッグに使用可能なリソースのリストを取得するには、crsctl status resourceコマンドを実行します。

例

node1上のVIPリソースのデバッグ・ログを生成するには、次のコマンドを発行します。

crsctl set log res "ora.node1.vip:1"

Oracle Clusterwareコンポーネントのための追加トレースの有効化

My Oracle Supportから、追加情報を取得するトレースを有効にするように要求されることがあります。この項で説明する手順は、パフォーマンスに影響を及ぼすことがあるため、必ずMy Oracle Supportの支援のもとで実行してください。

次の構文を使用してcrsctl set traceコマンドを実行することによって、Oracle Clusterwareのリソースのトレースを有効にできます。

crsctl set trace module_name "component_name=tracing_level,..."

crsctl set traceコマンドをrootユーザーとして実行し、次の情報を指定します。

- module_name: 次のいずれかのモジュールの名前。

- mdns: マルチキャスト・ドメイン・ネーム・サーバー

- gpnp: グリッド・プラグ・アンド・プレイ・サービス

- css: クラスタ同期サービス

- crf: クラスタ状態モニター

- crs: クラスタ・レディ・サービス

- ctss: クラスタ時刻同期化サービス

- evm: イベント・マネージャ

- gipc: グリッド・プロセス間通信

- component_name: いずれかのモジュールのコンポーネントの名前。コンポーネントのリストについては、表E-73を参照してください。

- tracing_level: 1から5までの番号は、トレース・コマンドで戻す詳細レベルを示し、1は最小トレース出力、5は最も詳細なトレース出力を表します。

たとえば、次のコマンドを使用して、クラスタ同期サービスのトレース・ファイルを生成できます。

crsctl set trace "css=3"

F 高速ホーム・プロビジョニングおよびサーバー制御コマンド・リファレンス

この付録には、高速ホーム・プロビジョニング制御(RHPCTL)ユーティリティとサーバー制御(SRVCTL)ユーティリティを含む高速ホーム・プロビジョニング・コマンドの参照情報が記載されています。

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

- RHPCTLのコマンド・リファレンス

- SRVCTLのコマンド・リファレンス

RHPCTLのコマンド・リファレンス

この項では、RHPCTLコマンドの使用方法に関する情報を示し、各RHPCTLコマンドをリストして説明します。

RHPCTLの概要

RHPCTLは、高速ホーム・プロビジョニング操作を実行し、高速ホーム・プロビジョニング・サーバーおよびクライアントを管理するために使用するコマンドライン・ユーティリティです。RHPCTLの構文は次のとおりです。

rhpctl command object [parameters]

このRHPCTL構文の各要素の意味は次のとおりです。

- commandは、add、delete、queryなどの動詞です。

- object (名詞とも呼ばれる)は、RHPCTLがコマンドを実行するターゲットまたはオブジェクト(クライアントやイメージなど)です。

- parametersは、コマンドの追加パラメータを使用できるようにすぐ前のコマンドの組合せの使用範囲を拡大します。パラメータは-keyword valueのように指定します。valueフィールドには、カンマ区切りリストが含まれます。リストのアイテムの間ではスペースを使用しないでください。

RHPCTLコマンドを使用することで、次のようないくつかの高速ホーム・プロビジョニング操作を実行できます。

- ディスク・グループ操作(高速ホーム・プロビジョニング・サーバーでイメージを格納するOracle自動ストレージ管理クラスタ・ファイル・システム(Oracle ACFS)を構成するディスク・グループのリストに対するディスク・グループの追加や削除など)。

- 高速ホーム・プロビジョニング・クライアント操作(高速ホーム・プロビジョニング・クライアント構成の作成など)。

- ロール操作(ロールの追加や削除、ユーザーに対するロールの付与や削除など)。

- サイト操作(高速ホーム・プロビジョニング・サーバーの構成情報の取得など)。

- イメージ操作(イメージの追加、削除、インポートなど)。

- イメージ・シリーズ操作(イメージ・シリーズの追加や削除など)。

- 作業用コピー操作(作業用コピーの追加や削除など)。

RHPCTLヘルプの使用方法

すべてのRHPCTLコマンドに関するヘルプを表示するには、コマンドラインから次のように入力します。

rhpctl -help

各RHPCTLコマンドのコマンド構文およびパラメータのリストを表示するには、コマンドラインから次のように入力します。

rhpctl command (or verb) object (or noun) -help

rhpctl add client

高速ホーム・プロビジョニング・クライアントを構成に追加するには、rhpctl add clientコマンドを使用します。

構文

rhpctl add client -client client_name -toclientdata path [-maproles
role=user_name[,role=user_name[,...]]]

パラメータ

表F-1 rhpctl add clientのパラメータ

パラメータ

説明

-client client_name

クライアントを作成するクラスタの名前を指定します。

-toclientdata path

高速ホーム・プロビジョニング・サーバーによって作成されるXMLファイルのパスを指定します(クライアント・クラスタ固有)。このファイルには、クライアントがサーバーとの接続を構成するために必要な情報が含まれます。

-maproles role=
user_name[,...]

組込みロールまたはユーザーが定義したロールのいずれかを指定できます。

使用上の注意

- このコマンドは、高速ホーム・プロビジョニング・サーバーでのみ実行できます。

例

高速ホーム・プロビジョニング・サーバーにクライアントを追加するには、次のコマンドを実行します。

$ rhpctl add client -client ClientCluster3 -toclientdata Grid_home/RHPserver/info

rhpctl add database

特定の作業用コピーを使用するデータベースを追加するには、rhpctl add databaseコマンドを使用します。

構文

rhpctl add database -workingcopy workingcopy_name -dbname unique_db_name
-datafileDestination datafileDestination_path {-node node_list | -serverpool pool_name
[-pqpool pool_name | -newpqpool pool_name -pqcardinality cardinality]
| -newpool pool_name -cardinality cardinality [-pqpool pool_name
| -newpqpool pool_name -pqcardinality cardinality]} [-dbtype
{RACONENODE | RAC | SINGLE}] [-dbtemplate file_path | image_name:relative_file_path]

パラメータ

表F-2 rhpctl add databaseのパラメータ

パラメータ

説明

-workingcopy
workingcopy_name

追加するデータベース用として既存の作業用コピーの名前を指定します。

-dbname unique_db_name

追加するデータベースの一意の名前(DB_UNIQUE_NAME)を指定します。

-datafileDestination
datafileDestination_path

データ・ファイルの宛先の場所またはOracle Automatic Storage Management (Oracle ASM)ディスク・グループの名前を指定します。

注意: Oracle DatabaseのバージョンがOracle Database 11gリリース2 (11.2)より前の場合、ディスク・グループは指定できません。

-node node_list

データベースを作成する1つのノードまたは複数のノードのカンマ区切りリストを指定します。

-serverpool
server_pool_name

既存のサーバー・プールの名前を指定します。

-pqpool
server_pool_name

既存のサーバー・プールの名前を指定します。

注意: このパラメータは、Oracle Flex Cluster環境でのみ適用され、リーフ・ノードで実行されているサーバー・プール(このケースではすでに定義済のサーバー・プール、または-newpqpoolパラメータを使用する場合はこれから作成されるサーバー・プール)を参照します。

-newpqpool
server_pool_name

必要に応じて、パラレル問合せで使用するために新しいサーバー・プールを作成できます。新しいサーバー・プールの名前を指定します。

注意: このパラメータは、リーフ・ノードで実行されているサーバー・プールを参照するため、Oracle Flex Cluster環境でのみ適用されます。

-pqcardinality cardinality

新しいサーバー・プールを作成する場合、サーバー・プールのカーディナリティ値を指定する必要があります。

注意: このパラメータは、Oracle Flex Cluster環境でのみ適用されます。

-newpool
server_pool_name

オプションで、新しいサーバー・プールを作成できます。新しいサーバー・プールの名前を指定します。

-cardinality cardinality

新しいサーバー・プールを作成する場合、サーバー・プールのカーディナリティ値を指定する必要があります。

-dbtype {RACONENODE | RAC | SINGLE}

データベースがOracle RAC One Node、Oracle RACまたは非クラスタ化データベースのいずれであるかを指定します。

-dbtemplate file_path
| image_name:relative_file_path

データベース・テンプレートの絶対ファイル・パス、または高速ホーム・プロビジョニング・サーバー上のイメージ・ホーム・ディレクトリの相対パスを指定します。

例

prodhomeという名前の作業用コピーからデータベースを追加するには、次のコマンドを実行します。

$ rhpctl add database -workingcopy prodhome -dbname proddb -datafileDestination /acfs/proddata -serverpool prodpool1 -dbtype RAC

rhpctl add image

既存の作業用コピーからイメージを作成して、高速ホーム・プロビジョニング・サーバー構成上の既存イメージのリストに追加するには、rhpctl add imageコマンドを使用します。

構文

rhpctl add image -image image_name -workingcopy working_copy_name
[-series series_name] [-state {TESTABLE | RESTRICTED | PUBLISHED}]

パラメータ

表F-3 rhpctl add imageのパラメータ

パラメータ

説明

-image image_name

追加するイメージの名前を指定します。

-workingcopy
working_copy_name

イメージを作成する作業用コピーの名前を指定します。

-series series_name

シリーズの名前を指定します。

-state {TESTABLE |
RESTRICTED | PUBLISHED

イメージの状態を指定します。

例

イメージを追加するには、次のコマンドを実行します。

$ rhpctl add image...

rhpctl add role

ロールを作成して、高速ホーム・プロビジョニング・サーバー構成上の既存ロールのリストに追加するには、rhpctl add roleコマンドを使用します。

関連項目:

高速ホーム・プロビジョニングのロール

構文

rhpctl add role –role role_name -hasRoles roles

パラメータ

表F-4 rhpctl add roleのパラメータ

パラメータ

説明

-role role_name

作成するロールの名前を指定します。

-hasRoles roles

新しいロールに含めるロールのカンマ区切りリストを指定します。

- GH_ROLE_ADMIN

- GH_SITE_ADMIN

- GH_SERIES_ADMIN

- GH_SERIES_CONTRIB

- GH_WC_ADMIN

- GH_WC_USER

- GH_IMG_ADMIN

- GH_IMG_USER

- GH_IMG_TESTABLE

- GH_IMG_RESTRICT

- GH_IMG_PUBLISH

- GH_IMG_VISIBILITY

- GH_SA

- GH_CA

- GH_OPER

使用上の注意

- このコマンドは、高速ホーム・プロビジョニング・サーバーでのみ実行できます。

- このコマンドを実行するにはGH_ROLE_ADMINロールの割当てが必要です。

例

高速ホーム・プロビジョニング・サーバーにロールを追加するには、次のコマンドを実行します。

$ rhpctl add role -role hr_admin -hasRoles GH_WC_USER,GH_IMG_USER

rhpctl add series

高速ホーム・プロビジョニング・サーバー構成にシリーズを追加するには、rhpctl add seriesコマンドを使用します。

構文

rhpctl add series -series series_name [-image image_name]]

パラメータ

表F-5 rhpctl add seriesのパラメータ

パラメータ

説明

-series series_name

追加するシリーズの名前を指定します。

-image image_name

構成済イメージの名前を指定します。このイメージはシリーズの最初のイメージになります。

例

シリーズを追加するには、次のコマンドを実行します。

$ rhpctl add series...

rhpctl add workingcopy

作業用コピーを作成するには、rhpctl add workingcopyコマンドを使用します。

構文

rhpctl add workingcopy -workingcopy workingcopy_name -image image_name
[-oraclebase oraclebase_path] [-path absolute_path] [-storagetype {NFS | LOCAL}
[-user user_name] [-dbname unique_db_name [-dbtype {RACONENODE | RAC | SINGLE}]
[-datafileDestination datafileDestination_path] [-dbtemplate file_path |
image_name:relative_file_path
{-node node_list | -serverpool server_pool_name [-pqpool pool_name
| -newpqpool pool_name -pqcardinality cardinality] | -newpool server_pool_name
-cardinality cardinality [-pqpool pool_name | -newpqpool pool_name
-pqcardinality cardinality]} [-cdb] [-pdbprefix pdb_prefix [-pdbcount pdb_count]]]
[-client cluster_name] [-ignoreprereq]

パラメータ

表F-6 rhpctl add workingcopyのパラメータ

パラメータ

説明

-workingcopy
workingcopy_name

作成する作業用コピーの名前を指定します。

-image image_name

作業用コピーの作成に使用する構成済イメージの名前を指定します。

-oraclebase
oraclebase_path

Oracle DatabaseホームをプロビジョニングするにはORACLE_BASEパスを指定します。既存のディレクトリまたは新規ディレクトリを指定します。

注意: このパラメータはORACLEDBSOFTWAREイメージ・タイプのみで必要です。

-path absolute_path

クライアント側でのソフトウェア・ホームのプロビジョニングのために絶対パスを指定します(この場所は空であることが必要です)。Oracle Databaseイメージの場合、これがORACLE_HOMEになります。

注意: 作業用コピーを高速ホーム・プロビジョニング・サーバーにプロビジョニングする場合、このパラメータは使用できません。このケースでは、Oracle ACFSによってファイル・システム内にスナップショット・パスが作成されるためです。

-storagetype {NFS | LOCAL}

ソフトウェア・ホームの記憶域のタイプを指定します。デフォルトはNFSです。

-user user_name

プロビジョニングされる作業用コピーを所有するユーザーの名前を指定します。

このパラメータを指定しない場合、コマンドの実行ユーザーが作業用コピーを所有します。リモート・クラスタにプロビジョニングする場合、ユーザー名にはそのリモート・クラスタの有効なユーザーを指定する必要があります。ユーザーIDは2つのクラスタで同じでなくてもかまいませんが、ユーザー名は両方に存在する必要があります。

-dbname unique_db_name

プロビジョニングするデータベースの一意の名前(DB_UNIQUE_NAME)を指定します。

-dbtype {RACONENODE | RAC
| SINGLE}

データベースがOracle RAC One Node、Oracle RACまたはシングル・インスタンス(Oracle以外のRAC)のいずれであるかを指定します。

-datafileDestination
datafileDestination_path

データ・ファイルの宛先の場所またはOracle Automatic Storage Management (Oracle ASM)ディスク・グループの名前を指定します。

注意:

- -dbtypeにSINGLEを指定した場合、デフォルトはORACLE_BASE/oradataになります。

- このパラメータはORACLEDBSOFTWAREイメージ・タイプのみで必要です。

- 11gリリース2 (11.2)より前のOracle Databaseの場合、Oracle ASMディスク・グループは指定できません。

-dbtemplate file_path |
image_name:relative_file_path

データベース・テンプレートの絶対パス、または高速ホーム・プロビジョニング・サーバー上のイメージ・ホーム・ディレクトリの相対パスを指定します。データベース・テンプレートを指定しない場合は、RHPCTLによりデフォルト・テンプレートが使用されます。

-node node_list

データベースを作成する1つのノードまたは複数のノードのカンマ区切りリストを指定します。

注意: このパラメータは、-dbtypeの値がSINGLEの場合に必要です。

-serverpool
server_pool_name

既存のサーバー・プールの名前を指定します。

注意: デフォルトでは作業用コピーの名前になります。

-newpool
server_pool_name

オプションで、新しいサーバー・プールを作成できます。新しいサーバー・プールの名前を指定します。

-cardinality cardinality

新しいサーバー・プールを作成する場合、サーバー・プールのカーディナリティ値を指定する必要があります。

-pqpool
server_pool_name

既存のサーバー・プールの名前を指定します。

注意: このパラメータはOracle Flex Cluster環境でのみ適用され、リーフ・ノードで実行されているサーバー・プール(この場合のようにあらかじめ定義されているか、-newpqpoolパラメータを使用して作成される)を参照します。

-newpqpool
server_pool_name

オプションで、新しいサーバー・プールを作成できます。新しいサーバー・プールの名前を指定します。

注意: このパラメータは、リーフ・ノードで実行されているサーバー・プールを参照するため、Oracle Flex Cluster環境でのみ適用されます。

-pqcardinality cardinality

新しいサーバー・プールを作成する場合、サーバー・プールのカーディナリティ値を指定する必要があります。

注意: このパラメータは、Oracle Flex Cluster環境でのみ適用されます。

-cdb

データベースをコンテナ・データベース(CDB)として作成する場合は、このパラメータを使用します。

-pdbprefix pdb_prefix

1つ以上のプラガブル・データベース(PDB)を作成する場合は、PDBの接頭辞を指定します。

-pdbcount pdb_count

作成するPDBの数を指定します。

-client cluster_name

クライアント・クラスタの名前を指定します。

使用上の注意

rhpctl add workingcopyコマンドの特定のユースケースについて、次のようにコンテキスト依存ヘルプを取得できます。

$ rhpctl add workingcopy -help [REMOTEPROVISIONING | STORAGETYPE | ADMINDB
| POLICYDB | DBWITHPQPOOLS | DBTEMPLATE | PDB]

例

次の例では、ゴールド・イメージからOracle Databaseソフトウェア・ホームがプロビジョニングされます。

$ rhpctl add workingcopy -workingcopy workingcopy_name -image image_name
-oraclebase oraclebase_path

次の例では、ゴールド・イメージからOracle Databaseソフトウェア・ホームがプロビジョニングされ、ポリシー管理型データベースが作成されます。

$ rhpctl add workingcopy -workingcopy workingcopy_name -image image_name
-oraclebase oraclebase_path -dbname unique_db_name -datafileDestination
datafileDestination_path -serverpool pool_name

次の例では、ユーザーが指定した記憶域の場所にOracle Databaseソフトウェア・ホームがプロビジョニングされ、ポリシー管理型データベースが作成されます。

$ rhpctl add workingcopy -workingcopy workingcopy_name -image image_name
-oraclebase oraclebase_path -storagetype LOCAL –path storage_path -dbname
unique_db_name -datafileDestination datafileDestination_path -newpool
server_pool_name -cardinality cardinality

注意:

Oracleデータベース・ソフトウェアを、ディスク・グループを含むように構成された高速ホーム・プロビジョニング・クライアントにプロビジョニングする場合は、-pathパラメータを指定しないでください。これは、高速ホーム・プロビジョニング・クライアントが高速ホーム・プロビジョニングによって提供される記憶域を使用できるようにするためです。

高速ホーム・プロビジョニング・クライアントがディスク・グループを含むように構成されていない場合は、-pathパラメータを指定して、さらに-storagetypeパラメータとNFSまたはLOCALを指定します。

rhpctl add diskgroup

高速ホーム・プロビジョニング・サーバーでイメージを格納するOracle ACFSにディスク・グループを追加するには、rhpctl add diskgroupコマンドを使用します。

構文

rhpctl add diskgroup –diskgroup diskgroup_name

使用上の注意

- 追加するディスク・グループの名前を指定します

- このコマンドは、高速ホーム・プロビジョニング・サーバーでのみ実行できます

例

高速ホーム・プロビジョニング・サーバーでOracle ACFSにディスク・グループを追加するには、次のコマンドを実行します。

$ rhpctl add diskgroup -diskgroup rhpdg1

rhpctl remove diskgroup

高速ホーム・プロビジョニング・サーバーによってイメージの格納に使用されていないディスク・グループをOracle ACFSから削除するには、rhpctl remove diskgroupコマンドを使用します。

構文

rhpctl remove diskgroup –diskgroup diskgroup_name

使用上の注意

- 削除するディスク・グループの名前を指定します。

- ディスク・グループを構成から削除する前に、そのディスク・グループに格納されているすべてのイメージと作業用コピーを削除する必要があります(そうしないとコマンドは失敗します)。

- このコマンドは、高速ホーム・プロビジョニング・サーバーでのみ実行できます。

例

高速ホーム・プロビジョニング・サーバーでOracle ACFSからディスク・グループを削除するには、次のコマンドを実行します。

$ rhpctl remove diskgroup -diskgroup rhpdg1

rhpctl allow

この項では、rhpctl allow imageコマンドについて説明します。

rhpctl allow image

ユーザーまたはロールによるイメージへのアクセスを許可するには、rhpctl allow imageコマンドを使用します。

構文

rhpctl allow image -image image_name {-user user_name [-client cluster_name]
| -role role_name}

パラメータ

表F-7 rhpctl allow imageのパラメータ

パラメータ

説明

-image image_name

アクセスを許可するイメージの名前を指定します。

-user user_name
-client cluster_name |
-role role_name

次のいずれかを指定します。

- イメージへのアクセスを許可するユーザーと、そのユーザーのクライアント・クラスタのクラスタ名(オプション)。

- イメージへのアクセスを許可するロール。

例

イメージへのアクセスを許可するには、次のコマンドを実行します。

$ rhpctl allow image...

rhpctl delete client

特定の高速ホーム・プロビジョニング・クライアントを構成から削除するには、rhpctl delete clientコマンドを使用します。

構文

rhpctl delete client –client cluster_name [-force]

使用上の注意

- このコマンドを実行する前、または-forceオプションを使用する前には、高速ホーム・プロビジョニング・クライアントを停止する必要があります。

- 構成から削除するクライアント・クラスタの名前を指定します。

例

高速ホーム・プロビジョニング・クライアントを削除するには、次のコマンドを実行します。

$ rhpctl delete client...

rhpctl delete database

作業用コピーから作成されたデータベースを削除するには、rhpctl delete databaseコマンドを使用します。

構文

rhpctl delete database –workingcopy workingcopy_name -dbname unique_db_name

パラメータ

表F-8 rhpctl delete databaseのパラメータ

パラメータ

説明

-workingcopy
workingcopy_name

削除するデータベースの作業用コピーの名前を指定します。

-dbname unique_db_name

削除するデータベースの一意の名前(DB_UNIQUE_NAME)を指定します。

例

作業用コピーからデータベースを削除するには、次のコマンドを実行します。

$ rhpctl delete database -workingcopy -dbname hr1

rhpctl delete image

特定のイメージを削除するには、rhpctl delete imageコマンドを使用します。

構文

rhpctl delete image -image image_name

使用上の注意

- 削除するイメージの名前を指定します。

例

次の例では、PRODIMAGEV0という名前のイメージが削除されます。

$ rhpctl delete image -image PRODIMAGEV0

rhpctl delete role

高速ホーム・プロビジョニング・サーバー構成の既存のロールのリストからロールを削除するには、rhpctl delete roleコマンドを使用します。

構文

rhpctl delete role –role role_name

使用上の注意

- 削除するロールの名前を指定します

- このコマンドは、高速ホーム・プロビジョニング・サーバーでのみ実行できます。

例

高速ホーム・プロビジョニング・サーバーからロールを削除するには、次のコマンドを実行します。

$ rhpctl delete role -role hr_admin

rhpctl delete series

高速ホーム・プロビジョニング・サーバー構成からシリーズを削除するには、rhpctl delete seriesコマンドを使用します。

構文

rhpctl delete series -series series_name [-force]]

パラメータ

表F-9 rhpctl delete seriesのパラメータ

パラメータ

説明

-series series_name

削除するシリーズの名前を指定します

-force

-forceを使用すると、イメージ・シリーズにイメージが含まれている場合でもシリーズが削除されます。

使用上の注意

- イメージ・シリーズを削除する前に、rhpctl deleteimage seriesコマンドを使用して、シリーズからすべてのイメージを削除する必要があります。

例

次の例では、PRODDBSERIESという名前のシリーズが削除されます。

$ rhpctl delete series -series PRODDBSERIES

rhpctl delete user

高速ホーム・プロビジョニング・リポジトリからユーザーを削除するには、rhpctl delete userコマンドを使用します。

構文

rhpctl delete user -user user_name [-client cluster_name]

パラメータ

表F-10 rhpctl delete userのパラメータ

パラメータ

説明

-user user_name

高速ホーム・プロビジョニング・クライアントから削除するユーザーの名前を指定します。

-client cluster_name

必要に応じて、特定のユーザーを削除するクライアント・クラスタの名前を指定できます。

使用上の注意

- 組込みユーザー以外のユーザーは、そのユーザーが作業用コピーを所有していない場合のみ削除できます。

- ユーザーがイメージまたはイメージ・シリーズを作成した場合でもそのユーザーを削除できますが、イメージまたはイメージ・シリーズの作成者がinternal-user@GHSに変更されます。

- ユーザーがイメージ・シリーズの所有者である場合、そのユーザーを削除できますが、イメージ・シリーズの所有者はinternal-user@GHSに変更されます。影響を受けたイメージ・シリーズを通常どおりに使用できます。つまり、影響されたイメージ・シリーズから作業用コピーをプロビジョニングでき、影響されたイメージ・シリーズに対してイメージの挿入または削除を行うことができます。

例

次の例では、サーバー・クラスタ上のmjkeenanという名前のユーザーが高速ホーム・プロビジョニング・リポジトリから削除されます。

$ rhpctl delete user -user mjkeenan

rhpctl delete workingcopy

既存の作業用コピーを削除するには、rhpctl delete workingcopyコマンドを使用します。

構文

rhpctl delete workingcopy -workingcopy workingcopy_name [-force]

使用上の注意

- 削除する作業用コピーの名前を指定します。

- 作業用コピーを強制的に削除するには、-forceオプションを使用します。

- このコマンドは、rhpctl add workingcopyの実行時に作成されたOracleベースを削除しません。

例

作業用コピーを削除するには、次のコマンドを実行します。

$ rhpctl delete workingcopy...

rhpctl deleteimage series

シリーズからイメージを削除するには、rhpctl deleteimage seriesコマンドを使用します。

構文

rhpctl deleteimage series -series series_name -image image_name

パラメータ

表F-11 rhpctl deleteimage seriesのパラメータ

パラメータ

説明

-series series_name

イメージを削除するシリーズの名前を指定します。

-image image_name

シリーズから削除するイメージの名前を指定します。

例

次のコマンドでは、PRODIMAGEV0というイメージがPRODDBSERIESというシリーズから削除されます。

$ rhpctl deleteimage series -series PRODDBSERIES -image PRODIMAGEV0

rhpctl disallow image

ユーザーまたはロールによるイメージへのアクセスを禁止するには、rhpctl disallow imageコマンドを使用します。

構文

rhpctl disallow image -image image_name {-user user_name [-client client_name]
| -role role_name}

パラメータ

表F-12 rhpctl disallow imageのパラメータ

パラメータ

説明

-image image_name

アクセスを禁止するイメージの名前を指定します。

-user user_name
-client cluster_name |
-role role_name

次のいずれかを指定します。

- イメージへのアクセスを禁止するユーザーと、そのユーザーのクライアント・クラスタのクラスタ名(オプション)。

- イメージへのアクセスを禁止するロール。

例

イメージへのアクセスを禁止するには、次のコマンドを実行します。

$ rhpctl disallow image -image PRODIMAGE -user mjk -client GHC1

rhpctl export client

高速ホーム・プロビジョニング・サーバーのリポジトリからクライアント・データ・ファイルにデータをエクスポートするには、rhpctl export clientコマンドを使用します。

構文

rhpctl export client -client cluster_name -clientdata file_path

パラメータ

表F-13 rhpctl export clientのパラメータ

パラメータ

説明

-client cluster_name

エクスポートするクライアント・クラスタの名前を指定します。

-clientdata file_path

クライアント・データ・ファイルの場所のパスを指定します。

使用上の注意

- このコマンドは、高速ホーム・プロビジョニング・サーバーでのみ実行できます。

例

mjk9394という高速ホーム・プロビジョニング・クライアントから、リポジトリ・データをクライアント・データ・ファイル/tmp/mjk9394.xmlにエクスポートするには、次のコマンドを実行します。

$ rhpctl export client -client mjk9394 -clientdata /tmp/mjk9394.xml

rhpctl grant role

クライアント・ユーザーまたは別のロールにロールを付与するには、rhpctl grant roleコマンドを使用します。

構文

rhpctl grant role {–role role_name {-user user_name [-client cluster_name]
| -grantee role_name}}
| {[-client cluster_name] [-maproles role=user_name[+user_name...]
[,role=user_name[+user_name...]...]}

パラメータ

表F-14 rhpctl grant roleのパラメータ

パラメータ

説明

-role role_name

クライアントまたはユーザーに付与するロールの名前を指定します。

-user user_name
-client cluster_name

ロールを付与するユーザーの名前とクライアント・クラスタ(オプション)を指定します。指定するユーザー名は、user@rhpclient (rhpclientは高速ホーム・プロビジョニング・クライアントの名前)という形式にする必要があります。

-grantee role_name

別のロールに付与するロールを指定するには、このパラメータを使用します。

[-client client_name]
-maproles role=
user_name[+user_name...]

組込みロールまたはユーザーが定義したロールのいずれかを、特定のユーザーにマッピングできます。複数のユーザーを特定のロールにマッピングするにはプラス記号(+)を使用します。ロールとユーザーのペアを追加する場合はカンマで区切ります。必要に応じて、クライアント・クラスタを指定できます。

例

次の例では、ロールABCが別のロールXYZに付与されます。

$ rhpctl grant role -role ABC -grantee XYZ

rhpctl import image

指定されたパスのソフトウェアの内容すべてを高速ホーム・プロビジョニング・サーバーにコピーして、イメージを作成するには、rhpctl import imageコマンドを使用します。

構文

rhpctl import image -image image_name -path path_to_installed_home
[-imagetype ORACLEDBSOFTWARE | SOFTWARE] [-owner user_name]
[-state {TESTABLE | RESTRICTED | PUBLISHED}]

パラメータ

表F-15 rhpctl import imageのパラメータ

パラメータ

説明

-image image_name

追加するイメージの名前を指定します。

-path path_to_installed_home

インポートするソフトウェア・ホームの絶対パスの場所を指定します(Oracle Databaseイメージの場合、これはORACLE_HOMEです)。

-imagetype
ORACLEDBSOFTWARE|SOFTWARE

インポートするイメージのタイプを指定します。Oracle Databaseソフトウェアを使用している場合は、ORACLEDBSOFTWAREを指定します。それ以外の場合は、SOFTWAREを指定します。

-pathowner user_name

指定したパスにあるファイルやディレクトリへのアクセス権を持つユーザーを指定します。

注意: このパラメータはOracleデータベース以外のソフトウェア・ホームのみに適用されます。

-state {TESTABLE
| RESTRICTED | PUBLISHED

イメージの状態が、テスト可能、制限または公開済のいずれであるかを指定します。

例

イメージをインポートする手順は次のとおりです。

$ rhpctl import image -image PRODIMAGEV1 -path /u01/app/product/12.1.0/dbhome -pathowner orcl

rhpctl insertimage series

シリーズに新しいイメージを挿入するには、rhpctl insertimage seriesコマンドを使用します。

構文

rhpctl insertimage series -series series_name -image image_name
[-before image_name]

パラメータ

表F-16 rhpctl insertimage seriesのパラメータ

パラメータ

説明

-series series_name

イメージを挿入するシリーズの名前を指定します。

-image image_name

シリーズに挿入するイメージの名前を指定します。

-before image_name

オプションで、新しいイメージを前に挿入するイメージの名前を指定できます。

例

シリーズにイメージを挿入するには、次のコマンドを実行します。

$ rhpctl insertimage series...

rhpctl move database

移動元の作業用コピーまたはOracleホームから、1つ以上のデータベースをパッチ適用済作業用コピーに移動するには、rhpctl move databaseコマンドを使用します。パッチ適用済作業用コピーは存在していなくてもかまいません。動的に作成できます。その場合は、パッチ適用済作業用コピーの作成元のイメージ名を指定する必要があります。

構文

rhpctl move database {-sourcewc workingcopy_name | -sourcehome Oracle_home_path
[-oraclebase Oracle_base_path] [-client cluster_name]} -patchedwc workingcopy_name
[-dbname unique_db_name] [-nonrolling] [-image image_name] [-path where_path]

パラメータ

表F-17 rhpctl move databaseのパラメータ

パラメータ

説明

-sourcewc workingcopy_name

データベースの移動元の作業用コピーの名前を指定します。

-sourcehome Oracle_home_path

移動元のOracleホーム・パスを指定します。

-oraclebase Oracle_base_path

Oracleデータベース・ホームをプロビジョニングするORACLE_BASEパスを指定します(ORACLEDBSOFTWAREイメージ・タイプのみで必要)。

-client cluster_name

クライアント・クラスタの名前を指定します。

-patchedwc workingcopy_name

データベースの移動先の作業用コピーの名前を指定します。

-dbname unique_db_name

プロビジョニングするデータベースの一意の名前(DB_UNIQUE_NAME)を指定します。

-nonrolling

ローリング・モード以外でデータベースを移動する場合にこのパラメータを指定します。デフォルトではデータベースはローリング・モードで移動されます。

-image image_name

必要に応じて、移動するデータベース・ソフトウェア・イメージの名前を指定できます。

-path where_path

必要に応じて、データベースの移動先のディレクトリ・パスを指定できます。

例

ある作業用コピーで実行しているすべてのデータベースを別の作業用コピーにローリング・モードで移動するには、次のコマンドを実行します。

rhpctl move database -sourcewc prodHomeV1 -patchedwc prodHomeV2 -client prodcluster -dbname prod1db

この例では、パッチ適用済作業用コピーprodHomeV2が存在する必要があります。

rhpctl modify client

クライアントを変更するには、rhpctl modify clientコマンドを使用します。

構文

rhpctl modify client –client cluster_name [-enabled {TRUE | FALSE}]
[-maproles role=user_name[+user_name...][,role=user_name[+user_name...]...]
[-password]]

パラメータ

表F-18 rhpctl modify clientのパラメータ

パラメータ

説明

-client cluster_name

変更するクライアント・クラスタの名前を指定します。

-enabled {TRUE | FALSE}

クライアントが有効かどうかを指定します。

-maproles role=
user_name[+user_name...]

組込みロールまたはユーザーが定義したロールのいずれかを、特定のユーザーにマッピングできます。複数のユーザーを特定のロールにマッピングするにはプラス記号(+)を使用します。ロールとユーザーのペアを追加する場合はカンマで区切ります。

-password

必要に応じて、クライアント・クラスタのパスワードを変更できます。

例

クライアントを変更するには、次のコマンドを実行します。

$ rhpctl modify client -client...

rhpctl promote image

イメージをプロモートするには、rhpctl promote imageコマンドを使用します。

構文

rhpctl promote image -image image_name -state {TESTABLE | RESTRICTED | PUBLISHED}

パラメータ

表F-19 rhpctl promote imageのパラメータ

パラメータ

説明

-image image_name

プロモートするイメージの名前を指定します。

-state
{TESTABLE | RESTRICTED
| PUBLISHED}

イメージの状態の名前として次のいずれかを指定します。

- TESTABLE:

- RESTRICTED:

- PUBLISHED:

例

イメージをプロモートするには、次のコマンドを実行します。

$ rhpctl promote image...

rhpctl query client

特定の高速ホーム・プロビジョニング・クライアント・クラスタの構成情報を表示するには、rhpctl query clientコマンドを使用します。

構文

rhpctl query client [–client cluster_name]

使用上の注意

- 構成情報を表示する高速ホーム・プロビジョニング・クライアントが存在しているクライアント・クラスタの名前を指定します。

例

このコマンドでは、次のような出力が表示されます。

rhpctl query image

既存のイメージの構成情報を表示するには、rhpctl query imageコマンドを使用します。

構文

rhpctl query image [-image image_name [-dbtemplate]]

パラメータ

表F-20 rhpctl query imageのパラメータ

パラメータ

説明

-image image_name

構成を表示するイメージの名前を指定します。

-dbtemplate

例

このコマンドを実行すると、次のような情報が表示されます。

rhpctl query role

特定のロールの構成情報を表示するには、rhpctl query roleコマンドを使用します。

構文

rhpctl query role –role role_name

使用上の注意

- 構成情報を表示するロールの名前を指定します

- このコマンドは、高速ホーム・プロビジョニング・サーバーでのみ実行できます。

例

このコマンドでは、次のような出力が表示されます。

rhpctl query series

シリーズの構成を表示するには、rhpctl query seriesコマンドを使用します。

構文

rhpctl query series [-series series_name | [-image image_name]]

パラメータ

表F-21 rhpctl query seriesのパラメータ

パラメータ

説明

-series series_name

構成を表示するシリーズの名前を指定します。

-image image_name

または、構成済イメージの名前を指定できます。

例

このコマンドでは、次のような出力が表示されます。

rhpctl query server

サーバーの構成を表示するには、rhpctl query serverコマンドを使用します。

構文

rhpctl query server]

例

このコマンドでは、次のような出力が表示されます。

rhpctl query workingcopy

既存の作業用コピーの構成情報を表示するには、rhpctl query workingcopyコマンドを使用します。

構文

rhpctl query workingcopy [-workingcopy workingcopy_name | -image image_name]

パラメータ

表F-22 rhpctl query workingcopyのパラメータ

パラメータ

説明

-workingcopy
workingcopy_name

構成情報を表示する作業用コピーの名前を指定します。

-image image_name

または、問い合せる構成済イメージの名前を指定できます。

例

このコマンドを実行すると、次のような情報が表示されます。

rhpctl revoke role

クライアント・ユーザーからロールを削除するには、rhpctl revoke roleコマンドを使用します。

構文

rhpctl revoke role –role role_name {-user user_name [-client cluster_name]
| -grantee role_name}
| {[-client cluster_name] [-maproles role=user_name[+user_name...]
[,role=user_name[+user_name...]...]}

パラメータ

表F-23 rhpctl revoke roleのパラメータ

パラメータ

説明

-role role_name

クライアントまたはユーザーから削除するロールの名前を指定します。

-user user_name
-client cluster_name

ロールを取り消すユーザーの名前とクライアント・クラスタ(オプション)を指定します。指定するユーザー名は、user@rhpclient (rhpclientは高速ホーム・プロビジョニング・クライアントの名前)という形式にする必要があります。

-grantee role_name

ロールの名前を指定します。

[-client client_name]
-maproles role=
user_name[+user_name...]

組込みロールまたはユーザーが定義したロールのいずれかを、特定のユーザーにマッピングできます。複数のユーザーを特定のロールにマッピングするにはプラス記号(+)を使用します。ロールとユーザーのペアを追加する場合はカンマで区切ります。必要に応じて、クライアント・クラスタを指定できます。

例

クライアント・ユーザーからロールを削除するには:

SRVCTLのコマンド・リファレンス

この項では、高速ホーム・プロビジョニングに関連するすべてのSRVCTLコマンドを示して説明します。

関連項目:

SRVCTLコマンドの使用方法の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

srvctl add asm

クラスタ全体にOracle ASMインスタンスに関するレコードを追加します。このコマンドはOracle Grid Infrastructureホームから1回だけ実行される必要があります。

注意:

- 説明されているこのコマンドとパラメータは、Oracle Clusterwareでのみ使用できます。

- Oracle Database 12cインストールでOracle ASMを管理するには、クラスタのOracle Grid Infrastructureホーム(Gridホーム)にあるSRVCTLバイナリを使用します。Oracle RACまたはOracle Databaseがすでにインストールされている場合、データベース・ホームでSRVCTLバイナリを使用してOracle ASMを管理することはできません。

関連項目:

Oracle Restartで使用できるその他のコマンド・パラメータは、『Oracle Database管理者ガイド』を参照してください。

構文およびパラメータ

srvctl add asmコマンドは、次の構文で使用します。

srvctl add asm [-listener listener_name] [-pwfile password_file_path
[-remote [-count {number_of_instances | ALL}] | -proxy]

表F-24 srvctl add asmのパラメータ

パラメータ

説明

-listener listener_name

リスナーの名前を入力します。このパラメータを指定しない場合、リスナー名はデフォルトでLISTENERになります。

-pwfile password_file_path

Oracle ASMのパスワード・ファイルの場所へのフルパスを入力します。

-remote [-count {number_of_instances |ALL}] |
-proxy]

Oracle ASMインスタンスがOracle Flex ASMインスタンスとして構成されていることを示します。必要に応じて、作成するOracle ASMインスタンスの数を指定したり、すべてのノードにOracle ASMインスタンスを作成するよう指定できます。さらに、-proxyパラメータを指定して、Oracle ASM動的ボリューム・マネージャのプロキシ・インスタンス・リソースを構成できます。

例

Oracle ASMのクラスタウェア・リソースをクラスタ内のすべてのノードに追加するには、次のコマンドを使用します。

$ srvctl add asm

srvctl add exportfs

Oracle Clusterwareでエクスポート・ファイル・システムの構成を作成します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl add exportfsコマンドは、次の構文で使用します。

srvctl add exportfs -name unique_name -id havip_name -path path_to_export
[-clients nfs_client_string] [-options nfs_client_string]

表F-25 srvctl add exportfsのパラメータ

パラメータ

説明

-name unique_name

作成するNFSエクスポートの一意の名前を入力します。このパラメータは必須です。

-id havip_name

srvctl add havipコマンドで指定した既存のHAVIPを識別する番号または名前を入力します。このパラメータは必須です。

-path path_to_export

エクスポートするOracle Automatic Storage Management Cluster File System (Oracle ACFS)へのパスを入力します。このパラメータは必須です。

-clients nfs_client_string
-options nfs_client_string

必要に応じて、ファイル・システムのエクスポート先クライアントのカンマ区切りリストを入力します。ネット・グループおよびワイルドカードを入力できます。次に例を示します。

-clients @netgroup1,
*.us.domain.com,
16.140.0.0, hostname1

注意: -clientsパラメータは、Linuxシステムにのみ使用できます。SolarisシステムおよびAIXシステムには、-optionsパラメータを使用します。

使用上の注意

- LinuxおよびUNIXプラットフォームで、rootユーザーとしてこのコマンドを実行する必要があります。

例

オペレーティング・システムのデフォルト値を使用してエクスポートします。

# srvctl add exportfs -name export1 -id havip1 -path /u01/db1

特定のクライアントに読取り専用でエクスポートします。

# srvctl add exportfs -name export1 -id havip1 -path /u01/db1 -clients node1
-options ro

srvctl add filesystem

ファイル・システム(Oracle Automatic Storage Management Cluster File System (Oracle ACFS)またはその他)を含むデバイスをOracle Clusterwareスタックに追加して、自動マウントおよび高可用性を実現します。このコマンドはOracle Grid Infrastructureホームから1回だけ実行される必要があります。

Oracle ACFSファイル・システム・リソースは通常、アプリケーション・リソースの依存性リストで使用するために作成されます。たとえば、Oracle Databaseホームとして使用するためにOracle ACFSファイル・システムが構成されている場合、ファイル・システム用に作成されたリソースは、Oracle Databaseアプリケーションのリソース依存性リストに含まれます。これによって、データベース・アプリケーションの起動アクションのためにファイル・システムおよびスタックが自動的にマウントされます。

注意:

- このコマンドはOracle Clusterwareでのみ使用できます。

- Oracle Database 12cインストールでOracle ACFSを管理するには、クラスタのOracle Grid Infrastructureホーム(Gridホーム)にあるSRVCTLバイナリを使用します。Oracle RACまたはOracle Databaseがすでにインストールされている場合、データベース・ホームでSRVCTLバイナリを使用してOracle ACFSを管理することはできません。

構文およびパラメータ

srvctl add filesystemコマンドは、次の構文で使用します。

srvctl add filesystem -device volume_device -path mountpoint_path
[-volume volume_name] [-diskgroup disk_group_name]
[-node node_list | -serverpool server_pool_list] [-user user_list]
[-fstype {ACFS | EXT3 | EXT4}] [-fsoptions options] [-description description]
[-appid application_id] [-autostart {ALWAYS | NEVER | RESTORE}]

注意:

-fstypeパラメータの値EXT3およびEXT4は、Linuxに対してのみサポートされています。

表F-26 srvctl add filesystemのパラメータ

パラメータ

説明

-device volume_device

追加するファイル・システム・ボリューム・デバイスへのパスを指定します。

-path mountpoint_path

マウントをネストするために他のリソースへの依存性を設定する場合に使用する、マウント・ポイント・パスを指定します。これは、絶対的パスである必要があります。

-volume volume_name

ボリュームの名前を指定します。

-diskgroup disk_group_name

デバイスの追加先のOracle ACFSディスク・グループの名前。

-node node_list |
-serverpool server_pool_list

ファイル・システム・デバイスのマウント先ノードのカンマ区切りリストを指定します。ノードまたはサーバー・プールのリストを指定した場合は、SRVCTLによって単一ノードのファイル・システム・リソースが作成されます。ノードまたはサーバー・プールを指定しない場合、SRVCTLはすべてのクラスタ・ノードで実行されるファイル・システム・リソースを作成します。

ファイル・システムが実行されるサーバー・プールのカンマ区切りリストを指定します。サーバー・プールのリストを指定する場合、ファイル・システムが実行されるノードの数またはタイプを動的に制限します。これは、HANFSなどのクラスタ全体のOracle ACFSリソースを必要とする可能性のある今後の使用に対しては、クラスタ全体のファイル・システムとして考慮されないことに注意してください。

注意: ノードとサーバー・プールは相互に排他的です。

-user user_list

ファイル・システムのマウントおよびアンマウントを許可されたユーザーのカンマ区切りリストを指定します。

ユーザーを指定しない場合、rootのみがファイル・システムをマウントおよびアンマウントできます。ファイル・システムがOracle Databaseソフトウェア用の場合、Oracleホームの所有者の名前を指定します。

-fstype {ACFS | EXT3 | EXT4}

マウントするファイル・システムのタイプを指定します。デフォルト値はACFSです。

マウントするファイル・システムのタイプがACFSではない場合、単一ノードのファイル・システムである必要があり、-nodeまたは-serverpoolを指定する必要があります。

-fsoptions options

ファイル・システムのマウントに使用するオプションを指定します。オプションはファイル・システムおよびオペレーティング・システムによって異なります。

-description description

ファイル・システムの説明を指定します。これは、管理者が後で参照できるよう属性として格納されます。

-appid application_id

アプリケーションID (ファイル・システムを論理グループに分類するために使用する一意の識別子)を指定します。この方法は、各種ノードによって異なる可能性があるファイル・システムのうち、リソース・タイプora.id.fs.typeへの依存が必要なアプリケーションで使用されるファイル・システムを分類する目的で使用します。

-autostart {ALWAYS | NEVER | RESTORE}

ファイル・システム・リソースの自動起動ポリシーを指定します。

ALWAYS: 常にファイル・システム・リソースが自動的に開始されます。

ALWAYS: ファイル・システム・リソースは自動的に開始されません。

RESTORE: ファイル・システムは、最後の状態にリストアされます。このオプションがデフォルトです。

使用上の注意

このコマンドは、LinuxおよびUNIXプラットフォームではrootユーザーとして実行し、Windowsプラットフォームでは管理者ユーザーとして実行する必要があります。

例

ディスク・グループRAC_DATAにd1volume1-295ディスク・デバイスをOracle ACFSボリュームVOLUME1として追加し、マウント・ポイントは/oracle/cluster1/acfsとします。

# srvctl add filesystem -device /dev/asm/d1volume1-295
-path /oracle/cluster1/acfs1

動的ボリューム・デバイスasm-test-55にOracle ACFSファイル・システムを追加し、指定したノードの1つに同時にこのファイル・システムをマウントにします。

# srvctl add filesystem -fstype ACFS -device asm-test-55 -path myacfs
-node node1,node2,node3

srvctl add gns

このコマンドは、DHCPパブリック・ネットワークを使用するときにグリッド・ネーミング・サービス(GNS)をクラスタに追加したり、クライアント・クラスタを作成するために使用します。

注意:

このコマンドはOracle Clusterwareでのみ使用できます。

構文およびパラメータ

srvctl add gnsコマンドは、次の構文モデルの1つで使用します。

現在GNSを実行していないクラスタにGNSを追加します。

srvctl add gns [-domain domain_name] -vip {vip_name | ip_address} [-verbose]

GNSを実行していないクラスタから、GNSを実行している別のクラスタのクライアント・クラスタに切り替えます。

srvctl add gns -clientdata file_name

表F-27 srvctl add gnsのパラメータ

パラメータ

説明

-domain domain_name

クラスタIPアドレスのフォワードDNS参照に使用されるネットワーク・サブドメイン。このパラメータは、-vipを指定する場合にのみ使用でき、GNSの追加先クラスタにGNSゾーン委任があり、DHCPを使用している場合は必須です。-vipと一緒に-domainパラメータを使用してGNSを追加する場合、追加先クラスタはサーバー・クラスタになります。

-domainを指定しない場合、ドメインなしでGNSが追加されます。

-vip {vip_name |ip_address}

GNSがDNSリクエストをリスニングする仮想IP (VIP)名またはIPアドレスのいずれかを指定します。-vipを-clientdataと一緒に使用することはできません。

GNSの追加先クラスタをサーバー・クラスタにするには、-vipと一緒に-domainパラメータを使用してください。

-clientdata path_to_file

srvctl export gnsコマンドで作成したGNS資格証明ファイルへのパスを指定します。srvctl add gnsコマンドを実行する前に、追加先クラスタのノードにこのファイルをコピーしておく必要があります。

-clientdataを使用してGNSを追加する場合、追加先クラスタはクライアント・クラスタになります。

-clientdataパラメータを-vipパラメータと一緒に使用することはできません。

-verbose

詳細な出力

使用上の注意

- このコマンドは、LinuxおよびUNIXプラットフォームではrootユーザーとして実行し、Windowsプラットフォームでは管理者ユーザーとして実行する必要があります。

- GNSをクラスタに初めて追加する場合は、-vipパラメータと一緒に-domainパラメータを使用してください。

- -clientdataパラメータを使用してGNSをクラスタに追加する場合は、まずGNSデータをファイルにエクスポートし、そのファイルを追加先クラスタのノードに手動でコピーする必要があります。-clientdataパラメータを使用し、クラスタ内の任意のノードに対してこのコマンドを実行します。

- -vipパラメータと-clientdataパラメータを同時に指定することはできません。

例

GNSをクラスタに追加し、そのクラスタをサーバー・クラスタにします。

# srvctl add gns -vip 192.168.16.17 -domain cluster.mycompany.com

GNSをクラスタに追加し、そのクラスタをクライアント・クラスタにします。

# srvctl add gns -clientdata /tmp/gnsdata

srvctl add mgmtdb

管理データベース(CHMリポジトリ)・リソースをクラスタに追加します。

注意:

このコマンドはOracle Clusterwareでのみ使用できます。

構文およびパラメータ

srvctl add mgmtdbコマンドは、次の構文で使用します。

srvctl add mgmtdb [-domain domain

表F-28 srvctl add mgmtdbのパラメータ

パラメータ

説明

-domain domain

データベースのドメイン。DB_DOMAINデータベース初期化パラメータを設定している場合は、このパラメータの値を指定する必要があります。

例

管理データベースをクラスタに追加します。

$ srvctl add mgmtdb -domain example.com

srvctl add mgmtlsnr

管理リスナー・リソース(Cluster Health Monitor用)をクラスタに追加します。

注意:

このコマンドはOracle Clusterwareでのみ使用できます。

構文およびパラメータ

srvctl add mgmtlsnrコマンドは、次の構文で使用します。

srvctl add mgmtlsnr [-endpoints "[TCP:]port_list[/IPC:key][/NMP:pipe_name
[/TCPS:s_port][/SDP:port]"] [-skip]]

表F-29 srvctl add mgmtlsnrのパラメータ

パラメータ

説明

-endpoints "[TCP:]port_list
[/IPC:key][/NMP:pipe_name
[/TCPS:s_port][/SDP:port]]

リスナーのプロトコル仕様。port_listはTCPポートまたはリスナー・エンドポイントのカンマ区切りリストです。

-skip

ポートの確認をスキップすることを示します。

例

次のコマンドでは、ポート1341をリスニングする管理リスナーをクラスタに追加します。

$ srvctl add mgmtlsnr -endpoints "TCP:1341"

srvctl add mountfs

Network Attached Storage (NAS)構成をOracle Clusterwareに追加します。

注意:

このコマンドはOracle Clusterwareでのみ使用できます。

構文およびパラメータ

srvctl add mountfsコマンドは、次の構文で使用します。

srvctl add mountfs -name mountfs_name -path mount_path -exportserver server_name
-exportpath path [-mountoptions mount_options] [-user user]

表F-30 srvctl add mountfsコマンドのパラメータ

パラメータ

説明

-name mountfs_name

NASの一意の名前を指定します。

-path mount_path

NASのマウント・パスを指定します。

-exportserver server_name

エクスポート・サーバーの名前を指定します。

-exportpath path

エクスポート・ファイル・パスを指定します。

-mountoptions mount_options

必要に応じて、NASのマウント・オプションを指定できます。

-user user_name

必要に応じて、NASのマウントとマウント解除の権限を持つユーザーを指定できます。

srvctl add rhpclient

高速ホーム・プロビジョニング・クライアントの構成ファイルをOracle Clusterware構成に追加するには、このコマンドを使用します。

構文およびパラメータ

srvctl add rhpclientコマンドは、次の構文で使用します。

srvctl add rhpclient -clientdata path_to_file
[-diskgroup disk_group_list -storage base_path]

注意:

- このコマンドはOracle Clusterwareでのみ使用可能です。

- このコマンドではOracle Clusterwareリソースは作成されません。

表F-31 srvctl add rhpclientのパラメータ

パラメータ

説明

-clientdata
path_to_file

高速ホーム・プロビジョニング・クライアントのデータを含むファイルのパスを指定します。

-diskgroup
disk_group_list

イメージを格納するためのOracle ACFSファイル・システムを作成するディスク・グループのリストを指定します。

-storage base_path

すべてのクラスタ・ノードで利用できる場所を指定します。この場所は、高速ホーム・プロビジョニング・クライアント上のイメージの記憶域として作成するOracle ACFSをマウントするために使用されます。

使用上の注意

- このコマンドは、高速ホーム・プロビジョニング・サーバーでは実行できません。

- このコマンドを実行するには、LinuxおよびUNIXプラットフォームではrootユーザー、Windowsプラットフォームでは管理者ユーザーである必要があります。

- -storageパラメータを指定する場合は、構成済のOracle ACFSが必要です。

- Oracle Clusterwareをインストールしたユーザーがデフォルト・ユーザーになり、ユーザー・リストに追加されます。

例

次に、このコマンドの例を示します。

# srvctl add rhpclient -clientdata /tmp/gnsdata -storage -diskgroups

srvctl add rhpserver

高速ホーム・プロビジョニング・サーバーをOracle Clusterware構成に追加するには、このコマンドを使用します。

構文およびパラメータ

srvctl add rhpserverコマンドは、次の構文で使用します。

srvctl add rhpserver -storage base_path -diskgroup disk_group_name

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

表F-32 srvctl add rhpserverのパラメータ

パラメータ

説明

-storage base_path

すべてのクラスタ・ノードで利用できる場所を指定します。この場所を共有する必要はありません。サーバーのカタログはこの場所に保持され、イメージ・ファイル・システムはすべてbase_path/imagesにマウントされます。

-diskgroup
disk_group_list

イメージを格納するためのOracle ACFSファイル・システムの作成元となる特定のディスク・グループを指定します。

使用上の注意

- このコマンドを実行するには、LinuxおよびUNIXプラットフォームではrootユーザー、Windowsプラットフォームでは管理者ユーザーである必要があります。

- Oracle Clusterwareをインストールしたユーザーがデフォルト・ユーザーになり、高速ホーム・プロビジョニング・サーバー・リソースのユーザー・リストに追加されます。

例

次に、このコマンドの例を示します。

# srvctl add rhpserver -storage ... -diskgroup ...

srvctl config asm

すべてのOracle ASMインスタンスの構成を表示します。

注意:

- このコマンドはOracle Clusterwareでのみ使用できます。

- Oracle Database 12cインストールでOracle ASMを管理するには、クラスタのOracle Grid Infrastructureホーム(Gridホーム)にあるSRVCTLバイナリを使用します。Oracle RACまたはOracle Databaseがすでにインストールされている場合、データベース・ホームでSRVCTLバイナリを使用してOracle ASMを管理することはできません。

構文およびパラメータ

srvctl config asmコマンドは、次の構文で使用します。

srvctl config asm [-proxy] [-detail]

表F-33 srvctl config asmのパラメータ

パラメータ

説明

-proxy

表示するOracle ASM構成がプロキシ・インスタンスであるかを指定します。

-detail

詳細な構成情報の出力

例

srvctl config asmコマンドでは次のような出力が戻されます。

$ srvctl config asm
ASM Home: /u01/app/12.1.0/grid
ASM Listener: LISTENER
ASM instance count: 3
Password file:

ASM instance count:行は、Oracle Flex ASMが有効な場合にのみ表示されます。

srvctl config exportfs

Oracle Clusterwareのエクスポート・ファイル・システムの構成を表示します。

注意:

このコマンドはOracle Clusterwareでのみ使用できます。

構文およびパラメータ

srvctl config exportfsコマンドは、次の構文で使用します。

srvctl config exportfs [-name unique_name | -id havip_name]

表F-34 srvctl config exportfsのパラメータ

パラメータ

説明

-name unique_name

構成を表示するNFSエクスポートの一意の名前を入力します。

-id havip_name

特定のHAVIPの名前を入力し、そのHAVIPに関連付けられているすべてのNFSエクスポートの構成を表示します。

例

-nameパラメータを指定する場合、このコマンドでは、-nameと-idのどちらを指定するかに関係なく、次のような出力が戻されます。

$ srvctl config exportfs -id havip1

export file system kep1 is configured
Exported path: /scratch/ghnew/base/mymount3
Export options:
Exported clients:
export file system kexp2 is configured
Exported path: /scratch/ghnew/base/mymount3
Export options:
Exported clients:

srvctl config filesystem

特定のファイル・システム・リソースの構成を表示します。

注意:

このコマンドはOracle Clusterwareでのみ使用できます。

構文およびパラメータ

srvctl config filesystemコマンドは、次の構文で使用します。

srvctl config filesystem -device volume_device

構成を表示するファイル・システム・リソースへのパスを指定するには、-deviceパラメータを使用します。

例

次の例は、すべてのファイル・システムの構成の一覧を表示します。

$ srvctl config filesystem

次の例は、特定のデバイスの構成を表示します。

srvctl config filesystem -device /dev/asm/d1volume1-295

srvctl config gns

GNSの構成を表示します。

注意:

このコマンドはOracle Clusterwareでのみ使用できます。

構文およびパラメータ

srvctl config gnsコマンドは、次の構文で使用します。

srvctl config gns [-subdomain] [-multicastport] [-node node_name]
[-port] [-status] [-version] [-query name] [-list] [-clusterguid]
[-clustername] [-clustertype] [-loglevel] [-network] [-detail]

表F-35 srvctl config gnsのパラメータ

パラメータ

説明

-subdomain

GNSから供給されるサブドメインの表示。

-multicastport

GNSデーモンがマルチキャスト・リクエストをリスニングしているポートの表示。

-node node_name

指定されたノードのGNSの構成情報の表示。

-port

GNSデーモンがDNSサーバーとの通信に使用するポートの表示。

-status

GNSのステータスの表示。

-version

GNSのバージョンの表示。

-query name

GNSへの、特定の名前に属しているレコードの問合せ。

-list

GNSのすべてのレコードのリスト。

-clusterguid

GNSが実行されているクラスタのグローバル一意識別子の表示。

-clustername

GNSが実行されているクラスタの名前の表示。

-clustertype

このクラスタで使用されるGNSの構成のタイプの表示。

-loglevel

GNSのログ・レベルの印刷。

-network

GNSがリスニングしているネットワークの表示。

-detail

GNSに関する詳細な構成情報の印刷。

srvctl config mgmtdb

管理データベース(CHMリポジトリ)・リソースの構成情報を表示します。

注意:

このコマンドはOracle Clusterwareでのみ使用できます。

構文およびパラメータ

srvctl config mgmtdbコマンドは、次の構文で使用します。

srvctl config mgmtdb [-verbose] [-all]

表F-36 srvctl config mgmtdbのパラメータ

パラメータ

説明

-verbose

冗長出力を表示します

-all

詳細な構成情報の出力

srvctl config mgmtlsnr

管理リスナー・リソース(CHM用)の構成情報を表示します。

注意:

このコマンドはOracle Clusterwareでのみ使用できます。

構文およびパラメータ

srvctl config mgmtlsnrコマンドは、次の構文で使用します。

srvctl config mgmtlsnr [-all]

詳細な構成情報を印刷するには、-allパラメータを使用します。

srvctl config mountfs

特定のNASの構成情報を表示します。

注意:

このコマンドはOracle Clusterwareでのみ使用できます。

構文およびパラメータ

srvctl config mountfsコマンドは、次の構文で使用します。

srvctl config mountfs [-name mountfs_name]

構成情報を表示するNASの一意の名前を指定します。

srvctl config rhpclient

高速ホーム・プロビジョニング・クライアント・インスタンスの構成情報を表示するには、このコマンドを使用します。

構文およびパラメータ

srvctl config rhpclientコマンドは、次の構文で使用します。

srvctl config rhpclient

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

例

このコマンドによって、次のような出力が返されます。

$ srvctl config rhpclient

Rapid Home Provisioning Client is configured
Cluster name: mjk9394
Storage base path: /scratch/aime/storage
Disk group: MJKRHPCDG
Rapid Home Provisioning Server (RHPS): mjk8990clust
Rapid Home Provisioning Server discovery string: 198.51.100.191
Port number: 23795
Rapid Home Provisioning Client is enabled
Rapid Home Provisioning Client is individually enabled on nodes:
Rapid Home Provisioning Client is individually disabled on nodes:

srvctl config rhpserver

高速ホーム・プロビジョニング・サーバーの構成情報を表示するには、このコマンドを使用します。

構文およびパラメータ

srvctl config rhpserverコマンドは、次の構文で使用します。

srvctl config rhpserver

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

例

このコマンドによって、次のような出力が返されます。

$ srvctl config rhpserver

Storage base path: /scratch/aime/storagedg
Disk Groups: MJKRHPSDG
Port number: 23795
Rapid Home Provisioning Server is enabled
Rapid Home Provisioning Server is individually enabled on nodes:
Rapid Home Provisioning Server is individually disabled on nodes:

srvctl disable asm

Oracle ASMプロキシ・リソースを無効にします。Oracle ASMにOracle Clusterwareデータが含まれる場合、またはノードでの障害発生前に実行されていたノードが再起動した場合、Oracle ASMは再起動します。また、srvctl disable asmコマンドを使用すると、srvctl start asmコマンドでOracle ASMインスタンスを起動できなくなります。

Oracle ASMプロキシ・リソースを無効にすると、データベースおよびディスク・グループを起動できなくなります。データベースおよびディスク・グループがOracle ASMプロキシ・リソースに依存しているためです。

注意:

- Oracle Database 12cインストールでOracle ASMを管理するには、クラスタのOracle Grid Infrastructureホーム(Gridホーム)にあるSRVCTLバイナリを使用します。Oracle RACまたはOracle Databaseがすでにインストールされている場合、データベース・ホームでSRVCTLバイナリを使用してOracle ASMを管理することはできません。

- Oracle ASMはOracle Clusterwareスタックの一部であり、Oracle ASMにOCRと投票ファイルが格納されていると、OHASDがOracle Clusterwareスタックを起動するときにOracle ASMが起動します。srvctl disable asmコマンドを使用しても、OHASDで管理されるOracle ASMインスタンスの起動は行われます。したがって、Oracle ASMは、Oracle Clusterwareスタックが必要とする場合に起動します。
srvctl disable asmコマンドを使用すると、Oracle ASM Oracle Clusterwareプロキシ・リソースとそれに依存するすべてのリソースを起動できなくなります。このため、Oracle Clusterwareの管理対象オブジェクト(データベース、ディスク・グループ、Oracle ASMに依存するファイル・システムなど)を起動できなくなります。たとえば、srvctl start database | diskgroup | filesystemコマンドを実行しても、Oracle ASM Oracle Clusterwareプロキシ・リソースが無効になっているノードのオブジェクトを起動することはできません。また、srvctl start asmコマンドでリモート・ノードのOracle ASMの起動することもできません。

構文およびパラメータ

srvctl disable asmコマンドは、次の構文で使用します。

srvctl disable asm [-proxy] [-node node_name]

表F-37 srvctl disable asmのパラメータ

パラメータ

説明

-proxy

プロキシOracle ASM構成を無効化するかを指定します。

-node node_name

ノード名

注意: このコマンドはOracle Clusterwareでのみ使用できます。

例

次の例は、crmnode1という名前のノード上のOracle ASMを無効にします。

$ srvctl disable asm -node crmnode1

srvctl disable exportfs

Oracle Clusterwareで管理されるエクスポート・ファイル・システムを無効化します。

注意:

このコマンドはOracle Clusterwareでのみ使用できます。

構文およびパラメータ

srvctl disable exportfsコマンドは、次の構文で使用します。

srvctl disable exportfs -name filesystem_name

表F-38 srvctl disable exportfsのパラメータ

パラメータ

説明

-name filesystem_name

無効化するNFSエクスポート・ファイル・システムの一意の名前を入力します。このパラメータは必須です。

使用上の注意

- LinuxおよびUNIXプラットフォームで、rootユーザーとしてこのコマンドを実行する必要があります。

例

次に、このコマンドの例を示します。

# srvctl disable exportfs -name export1

srvctl disable mountfs

Oracle Clusterware管理において指定したNASを無効化します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl disable mountfsコマンドは、次の構文で使用します。

srvctl disable mountfs -name mountfs_name [-node node_list]

表F-39 srvctl disable mountfs

パラメータ

説明

-name mountfs_name

無効化するNASの一意の名前を指定します。

-node node_list

必要に応じて、NASを無効化するノードのカンマ区切りリストを指定できます。

srvctl disable rhpclient

Oracle Clusterware管理において特定のノード上の高速ホーム・プロビジョニング・クライアント・インスタンスを無効化するには、このコマンドを使用します。

構文およびパラメータ

srvctl disable rhpclientコマンドは、次の構文で使用します。

srvctl disable rhpclient [-node node_name]

高速ホーム・プロビジョニング・クライアント・インスタンスを無効化するノードを指定します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

表F-40 srvctl disable rhpclientのパラメータ

パラメータ

説明

-node node_name

クラスタのノードの名前

例

次に、このコマンドの例を示します。

srvctl disable rhpclient -node clusterNode01

srvctl disable rhpserver

Oracle Clusterware管理において特定のノード上の高速ホーム・プロビジョニング・サーバーを無効化するには、このコマンドを使用します。

構文およびパラメータ

srvctl disable rhpserverコマンドは、次の構文で使用します。

srvctl disable rhpserver [-node node_name]

高速ホーム・プロビジョニング・サーバーを無効化するノードを指定します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

表F-41 srvctl disable rhpserverのパラメータ

パラメータ

説明

-node node_name

クラスタのノードの名前

例

次に、このコマンドの例を示します。

srvctl disable rhpserver -node clusterNode01

srvctl enable exportfs

Oracle Clusterwareでエクスポート・ファイル・システムの構成を有効化します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl enable exportfsコマンドは、次の構文で使用します。

srvctl enable exportfs -name filesystem_name

表F-42 srvctl enable exportfsのパラメータ

パラメータ

説明

-name filesystem_name

有効化するNFSエクスポート・ファイル・システムの一意の名前を入力します。このパラメータは必須です。

使用上の注意

- LinuxおよびUNIXプラットフォームで、rootユーザーとしてこのコマンドを実行する必要があります。

例

次に、このコマンドの例を示します。

# srvctl enable exportfs -name export1

srvctl enable mountfs

指定されたNetwork Attached Storage (NAS)をOracle Clusterware管理に対して有効化します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl enable mountfsコマンドは、次の構文で使用します。

srvctl enable mountfs -name mountfs_name [-node node_list]

表F-43 srvctl enable mountfsのパラメータ

パラメータ

説明

-name mountfs_name

無効化するNASの一意の名前を指定します。

-node node_list

必要に応じて、NASを有効化するノードのカンマ区切りリストを指定できます。

srvctl enable rhpclient

このコマンドを使用して、特定のノードの高速ホーム・プロビジョニング・クライアント・インスタンスを有効化します。

構文およびパラメータ

srvctl enable rhpclientコマンドは、次の構文で使用します。

srvctl enable rhpclient [-node node_name]

必要に応じて、高速ホーム・プロビジョニング・クライアント・インスタンスを有効化するノードを指定できます。ノードを指定しない場合、Oracle Clusterware構成のすべての高速ホーム・プロビジョニング・クライアントがSRVCTLにより有効化されます。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

例

次に、このコマンドの例を示します。

srvctl enable rhpclient -node clusterNode03

srvctl enable rhpserver

このコマンドを使用して、特定のノードの高速ホーム・プロビジョニング・サーバーを有効化します。

構文およびパラメータ

srvctl enable rhpserverコマンドは、次の構文で使用します。

srvctl enable rhpserver [-node node_name]

高速ホーム・プロビジョニング・サーバーを有効化するノードを指定します。ノードを指定しない場合、Oracle Clusterware構成のすべての高速ホーム・プロビジョニング・サーバーがSRVCTLにより有効化されます。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

例

次に、このコマンドの例を示します。

srvctl enable rhpserver -node clusterNode03

srvctl modify exportfs

Oracle Clusterwareでエクスポート・ファイル・システムの構成を変更します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl modify exportfsコマンドは、次の構文で使用します。

srvctl modify exportfs -name unique_name [-path path_to_export]
[-clients node_list] [-options nfs_options_string]

表F-44 srvctl modify exportfsのパラメータ

パラメータ

説明

-name unique_name

変更するNFSエクスポート・ファイル・システムの一意の名前を入力します。このパラメータは必須です。

-path path_to_export

エクスポートが配置されているOracle Automatic Storage Management Cluster File System (Oracle ACFS)へのパスを変更します。

-clients node_list

ファイル・システムのエクスポート先クライアント(ホスト)のカンマ区切りリストを変更できます。ネット・グループおよびワイルドカードを入力できます。次に例を示します。

-clients @netgroup1,
*.us.domain.com,
16.140.0.0, hostname1

注意: -clientsパラメータは、Linuxシステムにのみ使用できます。SolarisシステムおよびAIXシステムには、-optionsパラメータを使用します。

-options nfs_client_string

このパラメータを使用して、エクスポート・ファイル・システムのエクスポート・オプションを変更します。

使用上の注意

- LinuxおよびUNIXプラットフォームで、rootユーザーとしてこのコマンドを実行する必要があります。

- 変更を有効にするには、事前にNFSエクスポートを開始し、停止する必要があります。

例

次に、このコマンドの例を示します。

# srvctl modify exportfs -name exportfs1 -path /mnt/racdb1

srvctl modify mountfs

Oracle Clusterware内のNetwork Attached Storage (NAS)構成を変更します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl modify mountfsコマンドは、次の構文で使用します。

srvctl modify mountfs -name mountfs_name [-path mount_path] [-exportserver server_name]
[-exportpath path] [-mountoptions mount_options] [-user user]

表F-45 srvctl modify mountfsコマンドのパラメータ

パラメータ

説明

-name mountfs_name

変更するNASの一意の名前を指定します。

-path mount_path

NASのマウント・パスを変更します。

-exportserver server_name

エクスポート・サーバーの名前を変更します。

-exportpath path

エクスポート・ファイル・パスを変更します。

-mountoptions mount_options

NASのマウント・オプションを変更します。

-user user_name

NASのマウントとマウント解除の権限を持つユーザーを変更します。

srvctl modify rhpclient

このコマンドを使用して、高速ホーム・プロビジョニング・クライアントのクライアント・データとイメージの記憶域の場所を変更します。

構文およびパラメータ

srvctl modify rhpclientコマンドは、次の構文で使用します。

srvctl modify rhpclient [-clientdata path_to_client_data] [-port rmi_port]
[-force]

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

表F-46 srvctl modify rhpclientのパラメータ

パラメータ

説明

-clientdata
path_to_client_data

高速ホーム・プロビジョニング・クライアント・データのパスを指定します。

-port rmi_port

高速ホーム・プロビジョニング・クライアントで使用されるRMIポート番号を変更します。

-force

このコマンドの処理を強制します。

使用上の注意

- このコマンドは、LinuxおよびUNIXプラットフォームではrootユーザーとして実行し、Windowsプラットフォームでは管理者ユーザーとして実行する必要があります。

例

次に、このコマンドの例を示します。

# srvctl modify rhpclient -clientdata ...

srvctl modify rhpserver

このコマンドを使用して、高速ホーム・プロビジョニング・サーバーの記憶域を変更します。

構文およびパラメータ

srvctl modify rhpserverコマンドは、次の構文で使用します。

srvctl modify rhpserver -storage base_path [-port rmi_port] [-force]

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

表F-47 srvctl modify rhpserverのパラメータ

パラメータ

説明

-storage base_path

すべてのクラスタ・ノードで利用できる新しい場所を指定します。この場所は、高速ホーム・プロビジョニング・サーバー上のイメージの記憶域として作成するOracle ACFSをマウントするために使用されます。

-port rmi_port

高速ホーム・プロビジョニング・サーバーで使用されるRMIポート番号を変更します。

-force

このオプションでは、変更を有効にするためにリソースを停止し、再起動します。

例

次に、このコマンドの例を示します。

$ srvctl modify rhpserver -storage ...

srvctl relocate rhpclient

このコマンドを使用して、異なるノードに高速ホーム・プロビジョニング・クライアント・インスタンスを再配置します。

構文およびパラメータ

srvctl relocate rhpclientコマンドは、次の構文で使用します。

srvctl relocate rhpclient -node node_name

高速ホーム・プロビジョニング・クライアント・インスタンスの再配置先ノードを指定します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

例

次に、このコマンドの例を示します。

srvctl relocate rhpclient -node crsNode03

srvctl relocate rhpserver

このコマンドを使用して、異なるノードに高速ホーム・プロビジョニング・サーバーを再配置します。

構文およびパラメータ

srvctl relocate rhpserverコマンドは、次の構文で使用します。

srvctl relocate rhpserver [-node node_name]

高速ホーム・プロビジョニング・サーバーの再配置先ノードを指定します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

例

次に、このコマンドの例を示します。

srvctl relocate rhpserver -node crsNode03

srvctl remove exportfs

指定したエクスポート・ファイル・システムの構成を削除します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl remove exportfsコマンドは、次の構文で使用します。

srvctl remove exportfs -name exportfs_name [-force]

表F-48 srvctl remove exportfsのパラメータ

パラメータ

説明

-name exportfs_name

削除するNFSエクスポート構成の一意の名前を入力します。

-force

すべての依存性を無視して、リソースを強制的に削除します。

使用上の注意

- LinuxおよびUNIXプラットフォームで、rootユーザーとしてこのコマンドを実行する必要があります。

- -forceパラメータを使用しない場合は、NFSエクスポートを事前に停止してから削除を実行してください。

- -forceパラメータを使用して得られた構成においては、Oracle Clusterwareスタックをシャットダウンしようとしたときにエラーが発生することがあります。

例

export1という停止済のエクスポート・ファイル・システムを削除します。

# srvctl remove exportfs -name export1

実行中のエクスポートをそのままの状態で削除します。

# srvctl remove exportfs -name export1 -force

srvctl remove mountfs

特定のNAS構成を削除します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl remove networkコマンドは、次の構文で使用します。

srvctl remove mountfs -name mountfs_name [-force]

表F-49 srvctl remove mountfs

パラメータ

説明

-name mountfs_name

マウントするNASの一意の名前を指定します。

-force

NASを削除するときにリソースの依存性を無視するには、-forceを指定します。

srvctl remove rhpclient

このコマンドを使用して、高速ホーム・プロビジョニング・クライアント・インスタンスを削除します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl remove rhpclientコマンドは、次の構文で使用します。

srvctl remove rhpclient [-force]

すべての依存性を無視し、高速ホーム・プロビジョニング・クライアント・インスタンスを強制的に削除するには、-forceパラメータを使用します。

srvctl remove rhpserver

このコマンドを使用して、クラスタに構成されている高速ホーム・プロビジョニング・サーバー・インスタンスを削除します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl remove rhpserverコマンドは、次の構文で使用します。

srvctl remove rhpserver [-force]

すべての依存性を無視し、高速ホーム・プロビジョニング・サーバーを強制的に削除するには、-forceパラメータを使用します。

srvctl start exportfs

Oracle Clusterwareでエクスポート・ファイル・システムの構成を起動します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl start exportfsコマンドは、次の構文で使用します。

srvctl start exportfs {-name unique_name | -id havip_name}

表F-50 srvctl start exportfsのパラメータ

パラメータ

説明

-name unique_name

起動するNFSエクスポートの一意の名前を入力します。

-id havip_name

HAVIPリソースに関連付けられている一意のID。

例

エクスポート・ファイル・システムを起動します。

$ srvctl start exportfs -name export1

srvctl start mountfs

特定のNASをマウントします。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl start mountfsコマンドは、次の構文で使用します。

srvctl start mountfs -name mountfs_name [-node node_list]

表F-51 srvctl start mountfsパラメータ

パラメータ

説明

-name mountfs_name

マウントするNASの一意の名前を指定します。

-node node_list

必要に応じて、NASをマウントするノードのカンマ区切りリストを指定できます。

srvctl start rhpclient

このコマンドを使用して、1つ以上のノードの高速ホーム・プロビジョニング・クライアント・インスタンスを起動します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl start rhpclientコマンドは、次の構文で使用します。

srvctl start rhpclient [-node node_name]

高速ホーム・プロビジョニング・クライアント・インスタンスを起動するノードを指定します。ノードを指定しない場合、高速ホーム・プロビジョニング・クライアントが起動されるノードがOracle Clusterwareによって決定されます。高速ホーム・プロビジョニング・クライアント・リソースのカーディナリティは1です。Oracle Clusterwareは、高速ホーム・プロビジョニング・クライアント・リソースが起動されるときに配置を決定します。

例

このコマンドの例では、crs3という名前のノードで高速ホーム・プロビジョニング・サーバーが起動されます。

$ srvctl start rhpclient -node crs3

srvctl start rhpserver

このコマンドを使用して、特定のノードの高速ホーム・プロビジョニング・サーバーを起動します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl start rhpserverコマンドは、次の構文で使用します。

srvctl start rhpserver [-node node_name]

高速ホーム・プロビジョニング・サーバーを起動するノードを指定します。

例

たとえば、clusterNode03という名前のノードで高速ホーム・プロビジョニング・サーバーを起動するには、次のコマンドを実行します。

srvctl start rhpserver -node clusterNode03

srvctl status exportfs

エクスポート・ファイル・システムの構成のステータスを表示します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl status exportfsコマンドは、次の構文で使用します。

srvctl status exportfs [-name unique_name | -id havip_name]

表F-52 srvctl status exportfsのパラメータ

パラメータ

説明

-name unique_name

ステータスを表示するNFSエクスポートの一意の名前を入力します。

-id havip_name

必要に応じて、HAVIPリソースの名前を指定し、指定したHAVIPリソースに関連付けられている、すべてのNFSエクスポートのステータスを表示できます。

使用上の注意

どのパラメータも指定しない場合、クラスタ内のすべてのNFSエクスポートのステータスがSRVCTLにより表示されます。

例

このコマンドによって、次のような出力が返されます。

$ srvctl status exportfs

export file system export1 is enabled
export file system export1 is not exported
export file system export2 is enabled
export file system export2 is exported on node node1

srvctl status mountfs

特定のNASの現在の状態を表示します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl status mountfsコマンドは、次の構文で使用します。

srvctl status mountfs -name mountfs_name

状態を表示するNASの一意の名前を指定します。

srvctl status rhpclient

高速ホーム・プロビジョニング・クライアント・インスタンスの現在の状態を表示します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl status rhpclientコマンドは、次の構文で使用します。

srvctl status rhpclient

このコマンドには、-help以外のパラメータは指定できません。

例

このコマンドでは、次のような出力が表示されます。

$ srvctl status rhpclient

Rapid Home Provisioning Client is enabled
Rapid Home Provisioning Client is running on node mjk1270093

srvctl status rhpserver

高速ホーム・プロビジョニング・サーバーの現在の状態を表示します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl status rhpserverコマンドは、次の構文で使用します。

srvctl status rhpserver

このコマンドには、-help以外のパラメータは指定できません。

例

このコマンドでは、次のような出力が表示されます。

$ srvctl status rhpserver

Rapid Home Provisioning Server is enabled
Rapid Home Provisioning Server is running on node mjk1270089

srvctl stop exportfs

Oracle Clusterwareで管理されるエクスポート・ファイル・システムの構成を停止するには、このコマンドを使用します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl stop exportfsコマンドは、次の構文で使用します。

srvctl stop exportfs {-name unique_name | -id havip_name} [-force]

表F-53 srvctl stop exportfsのパラメータ

パラメータ

説明

-name unique_name

停止するNFSエクスポートの一意の名前を入力します。

-id havip_name

このパラメータを指定した場合、指定したHAVIPリソースに関連付けられているすべてのNFSエクスポートがSRVCTLにより停止されます。

-force

エラーを無視してNFSエクスポートを停止します。

使用上の注意

- LinuxおよびUNIXプラットフォームで、rootユーザーとしてこのコマンドを実行する必要があります。

例

次に、このコマンドの例を示します。

# srvctl stop exportfs -name export1

srvctl stop mountfs

特定のNASをマウント解除します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl stop mountfsコマンドは、次の構文で使用します。

srvctl stop mountfs -name mountfs_name [-node node_list] [-force]

表F-54 srvctl stop mountfsパラメータ

パラメータ

説明

-name mountfs_name

マウント解除するNASの一意の名前を指定します。

-node node_list

必要に応じて、NASをマウント解除するノードのカンマ区切りリストを指定できます。

-force

NASを停止するときにリソースの依存性を無視するには、-forceを指定します。

srvctl stop rhpclient

このコマンドを使用して、実行中または起動中の高速ホーム・プロビジョニング・クライアント・インスタンスを停止します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl stop rhpclientコマンドは、次の構文で使用します。

srvctl stop rhpclient

このコマンドには、-help以外のパラメータは指定できません。

例

次に、このコマンドの例を示します。

$ srvctl stop rhpclient

srvctl stop rhpserver

このコマンドを使用して、実行中または起動中の高速ホーム・プロビジョニング・サーバーを停止します。

注意:

このコマンドはOracle Clusterwareでのみ使用可能です。

構文およびパラメータ

srvctl stop rhpserverコマンドは、次の構文で使用します。

srvctl stop rhpserver

このコマンドには、-help以外のパラメータは指定できません。

例

次に、このコマンドの例を示します。

srvctl stop rhpserver

G Oracle Clusterware C Application Program Interfaceエージェント・フレームワーク

Oracle Clusterwareは、リソースとしてOracle Clusterwareに登録されたアプリケーションを管理し、特定のリソースを起動、停止および監視できるアプリケーション独自のプリミティブに対するアクセス権限を持つ必要があります。Oracle Clusterwareでは、リソース固有のすべてのコマンドはエージェントと呼ばれるエンティティを介して実行されます。

エージェントは、リソースを管理するためのエージェント・フレームワークおよびユーザー・コードを含むプログラムです。エージェント・フレームワークは、アプリケーション固有のコードを組み込んで、カスタマイズされたアプリケーションを管理できるCライブラリです。アプリケーションの起動、停止、状態のチェックなど、CまたはC++での実際のアプリケーション管理機能のすべてをエージェントにプログラムします。これらの機能はエントリ・ポイントと呼ばれます。Oracle Clusterwareにかわって、エージェント・フレームワークによりこれらのエントリ・ポイント機能が起動されます。エージェントの開発者は、これらのエントリ・ポイントを使用して、リソースの起動、停止および監視方法に関する、機能を特定のリソースに必要な機能を組み込むことができます。エージェントで複数のリソースを管理できます。

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

- エージェント・フレームワークのデータ型

- エージェント・フレームワークのコンテキストの初期化および永続性

- CおよびC++エントリ・ポイント機能のプロトタイプ

- CおよびC++エントリ・ポイント・タイプおよびコード

- CおよびC++エントリ・ポイント・ファンクションの戻り値

- マルチスレッドに関する注意事項

- 非推奨のAPI

- APIリファレンス

- エージェントの例

エージェント・フレームワークのデータ型

Oracle Clusterwareエージェント・フレームワークは、Oracleが定義したポータブル・データ型を使用して文字列および数字を表します。これらのデータ型を使用することで、複数のプラットフォームでエージェント・プログラムを作成および実行できます。表G-1では、エージェント・フレームワークで使用されるOracleデータ型について説明しています。

表G-1 エージェント・フレームワークで使用されるOracleデータ型

Oracleデータ型

説明

ub4

符号なしの32ビット整数

sb4

符号付き32ビット整数

oratext*

CスタイルのNULLで終了する文字列で、char *に明示的にキャストする必要があります

エージェント・フレームワークAPIによって戻されるclsagfwret型のステータス値は、次のとおりです。

- CLSAGFW_SUCCESS: 関数が正常に完了しました。

- CLSAGFW_FAIL: パラメータ内または関数の実行でエラーがありました。

APIによって戻された文字列値は、現在のコマンド・エントリ・ポイントの範囲のみでアクセスできます。エージェントは戻された文字列値をエージェント独自のバッファにコピーして値を保持できます。

エージェント・フレームワークのコンテキストの初期化および永続性

エージェント・フレームワークは、clsagfw_init()ファンクション・コールによって初期化されます。維持する必要があるコンテキストはありません。アクション・エントリ・ポイント・ファンクションは、エージェント・フレームワーク・コンテキスト(type clsagfw_aectx)のポインタに渡されます。このコンテキストは、コールされているエントリ・ポイントに固有のもので、エントリ・ポイントの範囲を超えて使用することはできません。その他のエージェント・フレームワークAPIは、このコンテキスト・ポイントをパラメータとみなします。これは、エージェント・フレームワークが維持する不透明なデータ構造ですが、明示的に初期化されたり破壊されることはありません。

CおよびC++エントリ・ポイント機能のプロトタイプ

エージェントはリソース管理コマンドにエントリ・ポイント・ファンクションを実装し、エージェント・フレームワークにこれらのファンクションを登録します。エージェント・フレームワークは、エントリ・ポイント・ファンクションをコールし、リソース上でコマンドやアクションを実行します。エントリ・ポイント・ファンクションは、次のプロトタイプおよび規則に従う必要があります。

typedef ub4 (*clsagfw_action_entry) (const clsagfw_aectx *aectx)

エントリ・ポイント・ファンクションは、エージェント・フレームワークが維持するコンテキスト・エリアへのポインタを使用してコールされます。このファンクションは、エントリ・ポイントの実行ステータスを示す値を戻します。CHECKエントリ・ポイントの場合、ファンクションはリソースの現在の状態を戻します。

C++を使用してエージェントを作成する場合、extern 'C'キーワードを使用してエントリ・ポイント・ファンクション・プロトタイプを宣言します。

CおよびC++エントリ・ポイント・タイプおよびコード

現在、エージェント・フレームワークは、リソース管理コマンドおよびリソース上で実行される操作に相当する7つのエントリ・ポイントを定義します。エージェントは、START、STOP、CHECKおよびCLEANコマンドのエントリ・ポイントを登録する必要があります。その他のコマンド・エントリ・ポイントはオプションです。エージェントは、各リソース・タイプおよびコマンドにclsagfw_set_entrypoint() APIをコールすることでエントリ・ポイントを登録します。表G-2では、エントリ・ポイント・タイプおよびそれらに相当する型コードについて説明しています。

表G-2 エントリ・ポイント・タイプ

名前

説明

型コード

START

リソースを起動しオンラインにします

CLSAGFW_ACTION_START

STOP

リソースを停止しオフラインにします

CLSAGFW_ACTION_STOP

CLEAN

リソース上でコマンドが失敗した後にクリーンアップします

CLSAGFW_ACTION_CLEAN

CHECK

リソースの状態を確認します

CLSAGFW_ACTION_CHECK

ABORT

時間切れになった実行中のコマンドを終了します

CLSAGFW_ACTION_ABORT

DELETE

リソースは削除されます

CLSAGFW_ACTION_RES_DELETED

MODIFY

リソースは変更されます

CLSAGFW_RESATTR_MODIFIED

ACTION

リソース上のカスタム・アクションを起動します

CLSAGFW_RES_ACTION

関連項目:

エントリ・ポイントの詳細は、「Oracle Clusterwareリソースおよびエージェント」を参照してください。

CおよびC++エントリ・ポイント・ファンクションの戻り値

CHECKエントリ・ポイントを除くすべてのエントリ・ポイント・ファンクションは、次の値のいずれかを戻して、エントリ・ポイントの実行状態を示します。

- CLSAGFW_AE_SUCCESS: エントリ・ポイントの実行が正常に完了した場合

- CLSAGFW_AE_FAIL: エントリ・ポイントの実行が失敗した場合

エージェント・フレームワークは、CHECKエントリ・ポイント・ファンクションをコールして、リソースの状態を監視します。このファンクションは、現在のリソースの状態を表す次のいずれかの値を戻します。

- CLSAGFW_ONLINE

- CLSAGFW_UNPLANNED_OFFLINE

- CLSAGFW_PLANNED_OFFLINE

- CLSAGFW_UNKNOWN

- CLSAGFW_PARTIAL

- CLSAGFW_FAILED

関連項目:

リソースの状態の評価およびリターンの詳細は、「Oracle Clusterwareのエージェント」を参照してください。

マルチスレッドに関する注意事項

Oracle Clusterwareエージェント・フレームワークはマルチスレッド対応に設計されています。また、エージェント・コードは、新しいスレッドを起動して、外部イベント・ソースの監視などのアプリケーション独自の機能を実行できます。エージェント・フレームワークは、一度に1つのエントリ・ポイントのみを実行しますが、リソース上の現在有効なアクションを終了するために起動されるABORTエントリ・ポイントだけは例外です。CおよびC++の開発者は、すべてのエージェント・コードがマルチスレッド環境で正常に動作することを確認する必要があります。グローバル変数および他のリソースへのアクセスを、mutexesなどのロック機構を使用してシリアライズ化する必要があります。エージェントに含まれるCまたはC++の他の外部ライブラリも、マルチスレッド環境で正常に動作する必要があります。

非推奨のAPI

表G-3は、非推奨のエージェント・フレームワークAPIおよびそれに対応するOracle Clusterwareの代替APIを説明しています。

表G-3 非推奨のエージェント・フレームワークAPI

非推奨のAPI

置換

clsagfw_exit()

clsagfw_exit2()

clsagfw_send_status()

clsagfw_send_status2()

APIリファレンス

この項では、次のファンクションについて説明しています。

- clsagfw_add_type()

- clsagfw_check_resource()

- clsagfw_create_attr_iterator()

- clsagfw_delete_cookie()

- clsagfw_exit2()

- clsagfw_get_attr_from_iterator()

- clsagfw_get_attrvalue()

- clsagfw_get_check_type()

- clsagfw_get_cmdid()

- clsagfw_get_cookie()

- clsagfw_get_request_action_name()

- clsagfw_get_resource_id()

- clsagfw_get_resource_name()

- clsagfw_get_retry_count()

- clsagfw_get_type_name()

- clsagfw_init()

- clsagfw_is_cmd_timedout()

- clsagfw_log()

- clsagfw_modify_attribute()

- clsagfw_reset_attr_iterator()

- clsagfw_send_status2()

- clsagfw_set_cookie()

- clsagfw_set_entrypoint()

- clsagfw_set_exitcb()

- clsagfw_set_resource_state_label()

- clsagfw_startup()

clsagfw_add_type()

clsagfw_add_type()ファンクションは、エージェントが管理するリソース・タイプを登録します。

構文

clsagfwret clsagfw_add_type(const oratext *type_name);

入力

type_name: エージェントが管理するリソース・タイプの名前です。

注意

起動時に、エージェントは管理するすべてのリソース・タイプを登録する必要があります。1つのエージェントで、複数のリソース・タイプおよび複数のリソースを管理できます。

clsagfw_check_resource()

clsagfw_check_resource()ファンクションは、特定のリソースでチェック・アクションを開始します。

構文

void clsagfw_check_resource(const oratext *pResId)

パラメータ

pResId: リソースのID

注意

エージェントは、エントリ・ポイントまたは他のバックグラウンド・スレッドでこのファンクションを使用して、特定のリソースでチェック・アクションを開始できます。エージェント・フレームワークは、他のスレッドのチェック・アクションをスケジュールして実行します。このファンクションは、CHECKエントリ・ポイントから起動された場合、何の影響も与えません。

clsagfw_create_attr_iterator()

clsagfw_create_attr_iterator()ファンクションはイテレータを作成して、現在のリソースのすべての属性にアクセスします。

構文

clsagfwret clsagfw_create_attr_iterator(const clsagfw_aectx *pAeCtx,
clsagfw_ai_flags    flags);

入力

pAeCtx: エントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト・ポインタ

flags: CLSAGFW_ALL_ATTRS: リソースのすべての属性

CLSAGFW_MODIFIED_ATTRS: 変更された属性のみ

注意

エージェントはこのファンクションをコールしてイテレータを作成し、リソースのすべての属性にアクセスします。これは、エージェントが異なるタイプの複数のリソースを管理する場合に役立ちます。イテレータは、エージェント・フレームワーク・コンテキストに維持される内部イテレータです。各属性は、clsagfw_get_attr_from_iterator() APIをコールすることで取得されます。変更された属性はMODIFYエントリ・ポイント以外ではアクセスできません。エントリ・ポイントは指定のタイミングでイテレータを1つのみ作成できます。続いてイテレータの作成を試みると、ポインタはいずれの場合も、すでに作成されているイテレータになります。

clsagfw_delete_cookie()

clsagfw_delete_cookie()ファンクションは、エージェント・フレームワークに格納されているCookieを削除します。

構文

clsagfwret clsagfw_delete_cookie(const oratext *key);

入力

key: Cookieのキーで、NULLで終了する文字列

注意

このファンクションは、Cookieを削除し、Cookieおよびその値が使用するすべてのメモリを開放します。

clsagfw_exit2()

clsagfw_exit2()ファンクションは、リソースの再試行フィードバックがあるエージェント・プロセスを終了します。

構文

void clsagfw_exit2(const oratext *rid, sb4 exitCode, bool retry);

入力

rid: 回復不能なエラーの発生原因であるリソースのリソースID

exitCode: プロセス終了コード

retry: リソースを再試行するオプション

注意

リソースにエントリ・ポイントを実行すると、エージェントにリカバリ不能なエラーが発生し、現在のプロセスを終了しなくてはならない場合があります。エージェントはこのAPIを使用してエージェント・プロセスを終了し、リカバリ不能なエラーの原因となっているエージェント・フレームワークにフィードバックを提供できます。再試行パラメータをtrueに設定すると、エージェント・プロセスが再起動したときに、リソースの現在のコマンド,が再試行されます。パラメータをfalseに設定すると、現在のリソースのコマンドは再試行されず、リソースの監視は無効になります。このオプションは、特定のリソースが、繰り返し発生するエージェントの失敗の原因である場合に使用できます。失敗する頻度が多い場合、Oracle Clusterwareサーバーは、エージェントが終了して自動的に無効になるリソースの記録を取ります。失敗する頻度が多いために無効化されるリソースを最有効化するには、リクエストを明示的に発行してリソースを起動する必要があります(たとえば、CRSCTLを使用します)。

Oracle Clusterwareサーバーはエージェントを再起動して、エージェントが管理するリソースの監視を続行します。

clsagfw_get_attr_from_iterator()

clsagfw_get_attr_from_iterator()ファンクションは、次の属性名および作成されたイテレータからの値を戻します。

構文

clsagfwret clsagfw_get_attr_from_iterator(const clsagfw_aectx *pAeCtx,
const oratext **argName,
const oratext **argValue);

入力

pAeCtx: エントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト・ポインタ

出力

argname: 属性名

argValue: 属性値

注意

このファンクションを使用して、エージェント・フレームワーク・コンテキストにイテレータを作成した後に属性を取得します。このファンクションが値を戻すと、イテレータは次の属性に進みます。APIがCLSAGFW_FAILを戻した場合、取得する属性はリソースにこれ以上ありません。

clsagfw_get_attrvalue()

clsagfw_get_attrvalue()ファンクションは、現在のリソースの属性の値を取得します。

構文

void clsagfw_get_attrvalue(const clsagfw_aectx *pAeCtx,
const oratext *pAttrName,
const oratext **pAttrValue);

入力

pAeCtx: エントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト・ポインタ

pAttrName: 取得する属性の名前

出力

pAttrValue: 指定した属性の値

注意

エージェントはこのAPIを使用して、現在のコマンド・リソースの属性1つの値を取得します。

clsagfw_get_check_type()

clsagfw_get_check_type()ファンクションは、現在実行中のチェック・コマンドのタイプを戻します。

構文

clsagfw_checktype
clsagfw_get_check_type(const clsagfw_aectx *pAeCtx);

入力

pAeCtx: エントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト・ポインタ

注意

エージェント・フレームワークは、複数の条件でのリソースのCHECKエントリ・ポイントを起動します。このファンクションを使用することで、エージェントは現在のCHECKエントリ・ポイントの正確な条件を識別し、適切なアクションを実行します。

使用可能な条件は次のとおりです。

- CLSAGFW_INITIAL_CHECK: Oracle Clusterwareサーバーを起動または再起動したときに、最初のプローブ・ステージの一部として起動されるエントリ・ポイントを確認します。

- CLSAGFW_CHECK_AFTER_CMD: アクションが実行された後、結果のリソースを確認するために、起動されるエントリ・ポイントを確認して、以前のアクション(起動または停止など)を確認します。

- CLSAGFW_PERIODIC_CHECK: エージェント・フレームワークが定期的に起動するエントリ・ポイントを確認して、リソースの状態を監視します。時間間隔は、リソースのCHECK_INTERVAL属性で指定します。

- CLSAGFW_EXTERNAL_CHECK: CRSCTLなどの外部エンティティからの明示的な確認リクエストを受け取ると、エージェント・フレームワークが起動するエントリ・ポイントを確認します。

- CLSAGFW_CHECKFROM_EP: clsagfw_check_resource() APIをコールして、エージェントが開始するアクションを確認します。

clsagfw_get_cmdid()

clsagfw_get_cmdid()ファンクションは、エントリ・ポイントを起動するコマンドのタイプを戻します。

構文

clsagfw_aecode clsagfw_get_cmdid(const clsagfw_aectx *pAeCtx);

入力

pAeCtx: エントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト・ポインタ

注意

エージェントは、ABORTエントリ・ポイントでこのAPIをコールして、中断されているリソース・コマンドを判断できます。

clsagfw_get_cookie()

clsagfw_get_cookie()ファンクションは、エージェント・フレームワークに格納されているCookieの値を取得します。

構文

clsagfwret clsagfwret clsagfw_set_cookie(const oratext *key,
const void **value);

入力

key: Cookieのキーで、NULLで終了する文字列

Value: クッキーの値を指すポインタ

注意

なし

clsagfw_get_request_action_name()

clsagfw_get_request_action_name()ファンクションは、リソースで実行されるカスタム・アクションの名前を戻します。

構文

const oratext *
clsagfw_get_request_action_name(const clsagfw_aectx *pAeCtx);

入力

pAeCtx: ユーザーのエントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト

注意

このファンクションをACTIONエントリ・ポイントでコールすると、リクエスト・アクション・コマンドで指定したアクション名が取得されます。リソースのACTION属性に、リソースに対するアクションのリストを構成します。

clsagfw_get_resource_id()

clsagfw_get_resource_id()ファンクションは、エントリ・ポイントを実行するリソースのIDを取得します。

構文

const oratext* clsagfw_get_resource_id(const clsagfw_aectx *pAeCtx);

入力

pAeCtx: エントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト・ポインタ

注意

このファンクションは、Oracle Clusterwareが生成するリソースIDを戻します。リソースのパブリックな表示名を取得するには、clsagfw_get_resource_name() APIを使用します。

clsagfw_get_resource_name()

clsagfw_get_resource_name()ファンクションは、現在のコマンドのリソース名を取得します。

構文

const oratext*
clsagfw_get_resource_name(const clsagfw_aectx *pAeCtx);

入力

pAeCtx: エントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト・ポインタ

注意

このファンクションは、現在のコマンドおよびエントリ・ポイントを実行するリソースの名前を取得します。

clsagfw_get_retry_count()

clsagfw_get_retry_count()ファンクションは、現在のコマンドの再試行回数を戻します。

構文

ub4 clsagfw_get_retry_count(const clsagfw_aectx *pAeCtx)

入力

pAeCtx: ユーザーのエントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト・ポインタ

注意

エージェントは、エントリ・ポイントでこのファンクションをコールして、現在のコマンドが再試行されているか確認できます。リソースでコマンドを実行している途中に、エージェント・プロセスまたはOracle Clusterwareサーバー・プロセスを終了できます。Oracle Clusterwareは、エージェントまたはサーバー・プロセスが再起動したときに、失敗したコマンドを再試行します。コマンドは、前回の試行で正常に実行された場合と一部しか実行されていない場合があります。エージェントは、Oracle Clusterwareがコマンドを再試行するときに、再開またはクリーンアップ・アクションを実行できます。コマンドを再試行できる回数はOracle Clusterwareの内部パラメータです。

clsagfw_get_type_name()

clsagfw_get_type_name()ファンクションは、エントリ・ポイントを実行するリソースのタイプ名を取得します。

構文

const oratext* clsagfw_get_type_name(const clsagfw_aectx *pAeCtx);

入力

pAeCtx: エントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト・ポインタ

注意

このファンクションは、Oracle Clusterwareが生成するリソースIDを戻します。リソースのパブリックな表示名を取得するには、clsagfw_get_resource_name() APIを使用します。

clsagfw_init()

clsagfw_init()ファンクションは、エージェント・ネットワークを初期化します。

構文

clsagfwret clsagfw_init(sb4 argc,
oratext **argv,
ub4 flags,
const oratext *logName,
void *reserved);

入力

argc: エージェント処理に渡されたコマンドライン引数の数

argv: エージェント処理に渡されたコマンドライン引数

flags:

logName: 対象エージェントに対するログ・ファイルの名前

reserved: NULLを渡します

注意

リソースでアクションを実行する必要がある場合、Oracle Clusterwareは、リソースに構成されたエージェントを自動的に起動します。起動時、エージェント・プロセスは最初にこのファンクションをコールして、エージェント・フレームワーク・ランタイムを初期化します。Oracle Clusterwareサーバーによってエージェント・プロセスに渡されるコマンドライン引数は、clsagfw_init()に渡される必要があります。初期化が完了すると、エージェントは、エージェントが管理するリソース・タイプを登録できます。

clsagfw_is_cmd_timedout()

clsagfw_is_cmd_timedout()ファンクションは、ABORTエントリ・ポイントの原因を戻します。

構文

bool clsagfw_is_cmd_timedout(const clsagfw_aectx *pAeCtx);

入力

pAeCtx: エントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト・ポインタ

注意

エージェントは、ABORTエントリ・ポイントでこのファンクションを使用して、ABORTエントリ・ポイントの起動の原因を特定できます。ABORTエントリ・ポイントは、コマンドの実行時間がそのタイムアウト値を超過した場合か、Oracle Clusterwareの管理者がコマンドを中断した場合のいずれかの場合に起動できます。

clsagfw_log()

clsagfw_log()ファンクションは、診断メッセージをエージェント・ログ・ファイルに出力します。

構文

void clsagfw_log(const clsagfw_aectx *pAeCtx,
const ub4 log_level,
const oratext *fmtp, ...);

入力

pAeCtx: ユーザーのエントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト

log_level: 1から5までの範囲のメッセージのログ・レベル

fmtp: 標準Cライブラリ・プリント仕様に基づくメッセージ・フォーマット文字列

...: フォーマット文字に対応する変数パラメータ

注意

エージェントは、このファンクションをコールして、エージェント実行のデバッグや理解に役立つ診断メッセージのログを記録します。LOG_LEVELパラメータを使用して、ログ・メッセージの量を制御できます。CRSCTLを使用して現在のロギング・レベルを次のように構成できます。

$ crsctl set log level res "myResource1=3"

誤用のログは、TODOディレクトリのエージェント・ログ・ファイルに記録されます。デフォルトでは、ログ・ファイルの名前は、エージェント実行ファイル名と同じです。これを変更するには、logNameパラメータをclsagfw_init() APIに渡します。

clsagfw_modify_attribute()

clsagfw_modify_attribute()ファンクションは、現在のリソースの属性を変更します。

構文

void clsagfw_modify_attribute(const clsagfw_aectx *pAeCtx,
const oratext *pAttrName,
const oratext *pAttrValue);

入力

pAeCtx: エントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト・ポインタ

pAttrName: 変更対象の属性の名前

pAttrValue: 属性の新しい値

注意

エージェントは、APIをコールすると、現在のコマンド・リソースの属性の値を変更できます。リソースの変更リクエストは、検証のためにOracle Clusterwareサーバーに送信され、更新された属性値は、Oracle Clusterwareサーバーが確認するまでエージェントに反映されません。このファンクションのコール元はSTART、STOPおよびCLEANエントリ・ポイントのみです。

clsagfw_reset_attr_iterator()

clsagfw_reset_attr_iterator()ファンクションは、属性のイテレータをリセットします。

構文

clsagfwret clsagfw_reset_attr_iterator(const clsagfw_aectx *pAeCtx,
clsagfw_ai_flags    flags);

入力

pAeCtx: エントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト・ポインタ

flags: アクセス対象の属性

CLSAGFW_ALL_ATTRS: リソースのすべての属性

CLSAGFW_MODIFIED_ATTRS: 変更された属性のみ

注意

このファンクションはエージェント・フレームワーク・コンテキストのイテレータをリセットするため、エージェントは属性のナビゲーションを再起動できます。

clsagfw_send_status2()

clsagfw_send_status2()ファンクションは、進捗状況、警告およびエラー・メッセージをOracle Clusterwareサーバーおよびユーザーにレポートします。

構文

void clsagfw_send_status2(const clsagfw_aectx* pAeCtx,
const oratext*       pResId,
clsagfw_status_type type,
const oratext* fmtp,...);

入力

pAeCtx: エントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト・ポインタ

pResId: メッセージが報告されているリソース

type: 次に続くメッセージのタイプの内の1つ

CLSAGFW_STATUS_PROGRESS: 進捗メッセージ

CLSAGFW_STATUS_WARNING: 警告メッセージ

CLSAGFW_STATUS_ERROR: エラー・メッセージ

fmtp: メッセージ・フォーマット文字列

...: フォーマット文字列内の位置に対応する変数

注意

エージェントは、コマンドを実行している間、リソースで操作を実行しているOracle Clusterwareサーバーおよびユーザーに情報メッセージを送信できます。これらのメッセージで、ユーザーに実行の進捗状況および警告やエラーの有無を通知することができます。

clsagfw_set_cookie()

clsagfw_set_cookie()ファンクションは、エージェント・フレームワークにCookieおよびその値を格納します。

構文

clsagfwret clsagfwret clsagfw_set_cookie(const oratext *key,
const void *value);

入力

key: Cookieのキーで、NULLで終了する文字列

Value: 格納対象のクッキーの値を指すポインタ

注意

clsagfw_get_cookie()をコールすると、保存されたCookieの値を後で取得できます。

clsagfw_set_entrypoint()

clsagfw_set_entrypoint()ファンクションは、リソースの特定のアクションで実行されるC/C++エントリ・ポイント・ファンクションを設定します。

構文

void clsagfw_set_entrypoint(const oratext *type_name,
clsagfw_action_entry action_entry,
clsagfw_aecode action_entrycode)

入力

key: Cookieのキーで、NULLで終了する文字列

Value: 格納対象のクッキーの値を指すポインタ

注意

clsagfw_get_cookie()をコールすると、保存されたCookieの値を後で取得できます。

clsagfw_set_exitcb()

clsagfw_set_exitcb()ファンクションは、エージェント・プロセスが終了すると、コールされるファンクションを登録します。

構文

typedef void (*clsagfw_exit_callback) (sb4 exitCode);
void clsagfw_set_exitcb(clsagfw_exit_callback exit_func)

入力

exit_func: エージェント・プロセスが終了すると起動されるファンクション

注意

エージェントは、エージェント・フレームワークがエージェント・プロセスを終了すると、コールバック・ファンクションを登録して起動することができます。コールバック・ファンクションは、エージェントがインスタンス化した内部リソースを適切にクリーンアップできます。エージェント・プロセスがリカバリ不能なエラーから修復するために終了する場合、Oracle Clusterwareサーバーは、古いインカネーションが終了するまでエージェントを再起動しません。

clsagfw_set_resource_state_label()

clsagfw_set_resource_state_label()ファンクションは、現在のリソースにカスタム・ラベルを設定します。

構文

void clsagfw_set_resource_state_label(const clsagfw_aectx *pAeCtx,
const oratext *pLabel);

入力

pAeCtx: エントリ・ポイントに渡されるエージェント・フレームワーク・コンテキスト・ポインタ

pLabel: リソースに関連付けるラベルで、NULLで終了する文字列

注意

エージェントはこのファンクションを使用して、リソースの状態に関連付けられた説明ラベルを設定できます。このラベルはリソースのSTATE_DETAILS属性にレポートされます。

clsagfw_startup()

clsagfw_startup()ファンクションは、エージェント・フレームワークを起動します。

構文

clsagfwret clsagfw_startup(void)

注意

エージェント・フレームワークが初期化され、これらのエントリ・ポイントが登録された後、エージェントはこのAPIをコールしてエージェント・フレームワークを起動し、次にこれにより、マルチスレッド・インフラストラクチャが起動され、リソースのアクションが監視および実行されます。

成功すると、このファンクションがコール中のスレッドに戻ることはありません。リソース・アクションのエントリ・ポイントを起動する必要がある場合は、エージェント・フレームワークを使用します。

エージェントの例

例-1は、ファイルを表すリソースを管理するためのエージェント実装の詳細を説明しています。

例G-1 demoagent1.cpp

/* Copyright (c) 2004, 2012, Oracle and/or its affiliates.
All rights reserved. */

/*
* NAME
* Demoagent1.cpp: Demonstrates agent to monitor a file
*
* DESCRIPTION
* This is a sample program that demonstrates an agent to monitor
* a file. The agent has the following tasks:
*  - On startup         : Create the file.
*  - On shutdown        : Delete the file.
*  - On check command   : Detect whether the file is present or not.
*  - On clean command   : Delete the file.
* This program can be used as a basis to build up more complicated
* agents that manage real-world resources.
*

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <clsagfw.h>

エージェント・フレームワークclsagfw.hヘッダー・ファイルを含めます。

#define TEST_TYPE1                   (oratext *) "HOTFILE_TYPE"
#define TEST_PATHNAME_ATTR           (oratext *) "PATH_NAME"

/*
* NAME
*    test_agent_exit
* DESCRIPTION
*    Function to clean up, called by framework whenever the agent
*    process is about to terminate
* PARAMS
*    exitCode, which is an sb4 describing the reason for exit.
* RETURNS
*    void
*/
void
test_agent_exit(sb4 exitCode)
{
clsagfw_log(NULL, 1, (oratext *)"Demo Agent is exiting..\n");
}

エージェント・フレームワークに登録されているコールバック・ファンクションを終了します。

/*
* NAME
*    type1_start
* DESCRIPTION
*    Action entry point for the 'start' command. Creates the file for
*    monitoring.
* PARAMS
*    Pointer to the agent framework context
* RETURNS
*    ub4 which could be CLSAGFW_AE_FAIL or CLSAGFW_AE_SUCCESS
*    depending on whether the action failed or succeeded.
*/
ub4
type1_start(const clsagfw_aectx *ectx)
{
ub4  ret = CLSAGFW_AE_FAIL;
const oratext   *pResName  = NULL;
const oratext   *pPathName = NULL;
FILE *fp;

clsagfw_log(ectx, 1, (oratext *)"Start action called..");

/* Try to read the resource name */
if (clsagfw_get_attrvalue(ectx, (oratext *)"NAME", &pResName) !=
CLSAGFW_SUCCESS)
{
goto done;
}

/* Try to read the PATH_NAME attribute */
if (clsagfw_get_attrvalue(ectx, TEST_PATHNAME_ATTR, &pPathName) !=
CLSAGFW_SUCCESS)
{
goto done;
}

clsagfw_get_attrvalue()を使用してリソース名およびPATH_NAME属性の名前を取得します。

clsagfw_log(ectx, 1,
(oratext *)"Start action arguments: resName = %s,
pathName = %s", pResName, pPathName);

/* Try to create the file */
fp = fopen((char *)pPathName, "w");

if(!fp)
{
/* Could not create the file */
clsagfw_log(ectx, 1, (oratext *) "START action for resource %s:
FAILED\n", pResName);
ret = CLSAGFW_AE_FAIL;
}
else
{
/* Created the file successfully */
clsagfw_log(ectx, 1, (oratext *) "START action for resource %s:
SUCCESS\n", pResName);
ret = CLSAGFW_AE_SUCCESS;
fclose(fp);
}

done:
return ret;
}

clsagfw_log()をコールすると、診断メッセージおよびエラー・メッセージのログがエージェント・ログ・ファイルに記録されます。

/*
* NAME
*    type1_stop
* DESCRIPTION
*    Action entry point for the 'stop' and 'clean' commands. Deletes
*    the file being monitored.
* PARAMS
*    Pointer to agent framework context
* RETURNS
*    ub4 which could be CLSAGFW_AE_FAIL or CLSAGFW_AE_SUCCESS
*    depending on whether the action failed or succeeded.
*/
ub4
type1_stop (const clsagfw_aectx *ectx)
{
ub4             ret = CLSAGFW_AE_FAIL;
const oratext   *pResName  = NULL;
const oratext   *pPathName = NULL;

clsagfw_log(ectx, 1, (oratext *)"Stop action called..");

/* Try to read the resource name */
if (clsagfw_get_attrvalue(ectx, (oratext *)"NAME", &pResName) !=
CLSAGFW_SUCCESS)
{
clsagfw_log(ectx, 1, (oratext *)"STOP action: %s: Could not
read attribute\n", pResName);
goto done;
}

/* Try to read the PATH_NAME attribute */
if (clsagfw_get_attrvalue(ectx, TEST_PATHNAME_ATTR, &pPathName) !=
CLSAGFW_SUCCESS)
{
pPathName = pResName;
}

clsagfw_log(ectx, 1,
(oratext *)"Stop action arguments: resName = %s,
pathName = %s", pResName, pPathName);

/* Try to delete the file */
if (remove((char *)pPathName))
{
/* Could not delete the file */
clsagfw_log(ectx, 1, (oratext *)"STOP action for resource %s:
FAILED\n", pResName);
ret = CLSAGFW_AE_FAIL;
}
else
{
/* Deleted the file successfully */
clsagfw_log(ectx, 1, (oratext *)"STOP action for resource %s:
SUCCESS\n", pResName);
ret = CLSAGFW_AE_SUCCESS;
}

done:
return ret;
}

/*
* NAME
*    type1_check
* DESCRIPTION
*    Action entry point for the 'check' command. Determines if the
*    file exists.
* PARAMS
*    Pointer to agent framework context.
* RETURNS
*    ub4 which gives the status of the resource. Check the
*    agent framework reference for details on this function's
*     return codes.
*/
ub4
type1_check(const clsagfw_aectx *ectx)
{
ub4             ret = CLSAGFW_UNKNOWN;
const oratext   *pResName  = NULL;
const oratext   *pPathName = NULL;
FILE *fp;

clsagfw_log(ectx, 1, (oratext *)"Check action called..");

/* Try to read the resource name */
if (clsagfw_get_attrvalue(ectx, (oratext *) "NAME", &pResName) !=
CLSAGFW_SUCCESS)
{
goto done;
}

/* Try to read the PATH_NAME attribute */
if (clsagfw_get_attrvalue(ectx, TEST_PATHNAME_ATTR, &pPathName) !=
CLSAGFW_SUCCESS)
{
clsagfw_log(ectx, 1, (oratext *)"CHECK action: %s: Could not
read attribute\n", pResName);
goto done;
}

clsagfw_log(ectx, 1,
(oratext *)"Check action arguments: resName = %s,
pathName = %s", pResName, pPathName);

/* Check if the file is accessible */
fp = fopen((char *)pPathName, "r");
if (!fp)
{
/* Could not open file */
clsagfw_log(ectx, 1, (oratext *)"CHECK action: %s status –
UNPLANNED_OFFLINE\n", pResName);
ret = CLSAGFW_UNPLANNED_OFFLINE;
}
else
{
/* Opened file successfully */
clsagfw_log(ectx, 1,(oratext *)"CHECK action: %s status –
ONLINE\n", pResName);
fclose(fp);
ret = CLSAGFW_ONLINE;
}

done:
return ret;
}

/*
* Initialization of the agent framework and registration of types is
*  done in main.
*/
int main(sb4 argc, oratext **argv)
{
clsagfw_log(NULL, 1, (oratext *)" *** Agent Framework Demo Agent
Started *** \n");

/*
* Initialize the agent framework
*/
if (clsagfw_init(argc, argv, 0, NULL, 0)
!= CLSAGFW_SUCCESS)
{
clsagfw_log(NULL, 1, (oratext *)"Failed to initilize the agent
framework\n");
clsagfw_exit(-1);
}

/*
* Set the exit callback function
*/
clsagfw_set_exitcb(test_agent_exit);

/*
* Add the type definition to the framework
*/
if (clsagfw_add_type(TEST_TYPE1) != CLSAGFW_SUCCESS)
{
clsagfw_log(NULL, 1,(oratext *)"Failed in adding type %s to the
framework\n", TEST_TYPE1);
clsagfw_exit(-1);
}

/*
* Set all entry points for for HOTFILE_TYPE
*/
clsagfw_set_entrypoint(TEST_TYPE1, type1_start,
CLSAGFW_ACTION_START);
clsagfw_set_entrypoint(TEST_TYPE1, type1_stop,
CLSAGFW_ACTION_STOP);
clsagfw_set_entrypoint(TEST_TYPE1, type1_check,
CLSAGFW_ACTION_CHECK);
clsagfw_set_entrypoint(TEST_TYPE1, type1_stop,
CLSAGFW_ACTION_CLEAN);

clsagfw_log(NULL, 1, (oratext *)"Added resource type [%s] to the
agent framework\n", TEST_TYPE1);

/*
* All set to go, Start the framework. This function does not
* return if the framework starts successfully.
*/
clsagfw_startup();

/*** NOT REACHED **/

return 0;
}

H Oracle Clusterware C Application Program Interface

この付録では、Oracle Clusterware C Application Program Interface(API)について説明します。この付録の内容は次のとおりです。

- Oracle Clusterwareのプログラミング・インタフェース(C API)について

- 対話形式CLSCRS API

- 非対話形式CLSCRS API

- What-If API

- サーバーのカテゴリ化API

- STAT3 API

- その他のAPI

関連項目:

Oracle Clusterwareを使用したアプリケーションの高可用性の実現の詳細は、「Oracle Clusterwareを使用したアプリケーションの高可用性の実現」を参照してください。

Oracle Clusterwareのプログラミング・インタフェース(C API)について

この章では、Oracle Clusterware (CLSCRS)のプログラミング・インタフェース(C API)の使用について説明します。

- 概要

- 使用上の注意

- 非推奨のCLSCRS API

- 既存のCLSCRS APIの変更点

概要

CLSCRSは、Oracle ClusterwareのCベースAPIのセットです。CLSCRS APIを使用すると、Oracle Clusterwareによって管理されるエンティティの操作を管理できます。これらのエンティティには、リソース、リソース・タイプおよびサーバー・プールが含まれます。APIを使用してOracle Clusterwareにユーザー・アプリケーションを登録することができるため、クラスタウェアでユーザー・アプリケーションを管理して高可用性を維持できます。アプリケーションが登録されると、そのアプリケーションを管理してステータスを問い合せることができます。アプリケーションが不要になった場合には、そのアプリケーションを停止して、Oracle Clusterwareから登録解除することができます。

Oracle Clusterwareサービスは、Oracle Clusterwareの一部として実行されるクラスタ・レディ・サービスによって提供されます。CLSCRS APIでは、すべての関数コールで明示的に名前が指定されているコンテキストが使用されます。APIでは、処理レベルまたはスレッド・レベルでの格納は行われません。診断ロギングのコールバックを使用できます。

注意:

Oracle Clusterwareの高可用性APIは、Oracle Databaseクライアント・インストール・メディアからインストールできます。

使用上の注意

この項には次のトピックが含まれます:

- コンテキストの初期化および永続性

- スレッドのサポート

- CLSCRS APIデータ構造

- メモリー管理

- エラーの処理およびトレース

- コールバック・メカニズム

- フィルタ

- スクリプト・エージェントの使用方法

- ヘルプ・インタフェース

コンテキストの初期化および永続性

CLSCRS APIを使用する場合、最初にclscrsコンテキストを初期化する必要があります。このコンテキストを作成および終了するためのコールは次のとおりです。

- clscrs_init_crs: clscrsコンテキストを初期化します。

- clscrs_term_crs: clscrsコンテキストを終了します。

コンテキストが不要になると、コール元によってそのコンテキストは終了されます。

スレッドのサポート

CLSCRS_FLAG_USETHREADSフラグを指定して初期化した場合、CLSCRS APIによってスレッドが内部的に生成される場合があります。APIの各関数は、コール元のスレッドのコンテキストで実行されます。APIコンテキスト・オブジェクトは、複数のスレッドによって同時に使用できない場合があります。ただし、クライアント側でのスレッド・アフィニティは必要ありません。一度に対応できるのはコンテキストごとに1つのスレッドであるというルールに従って、プロセスは複数のAPIコンテキストを作成し、様々なスレッドで使用する場合があります。

CLSCRS APIデータ構造

次のエンティティはAPIコールに渡され、APIコールからの戻り値が含まれます。

- clscrs_sp: 文字列ペア(sp)には、名前および値の文字列が含まれます。値はNULLの場合もあります。作成されたり破棄されること、およびその内容を調べることで値を置換することが可能です。文字列ペアは、1つの文字列ペア・リスト(splist)のみのメンバーの場合もあります。

- clscrs_splist: 文字列ペア・リスト(splist)は、様々なコンテキストで使用される0(ゼロ)個以上の文字列ペアのリストです。APIで文字列ペアを文字列ペア・リストに追加したり、リストから削除することまたはAPIで文字列ペアを繰り返し適用することができます。

- clscrs_entity_type: Oracle Clusterwareエンティティのタイプの識別に使用できる列挙タイプ。
列挙タイプは次のように定義します。

/* enum to specify the entity type */
typedef enum
{
clscrs_entity_res              = 1, /* resource */
clscrs_entity_restype          = 2, /* resource type */
clscrs_entity_serverpool       = 3, /* server pool */
clscrs_entity_server           = 4, /* server */
clscrs_entity_resinst          = 5, /* resource instances */
clscrs_entity_config_policy    = 6, /* configuration policy */
clscrs_entity_config_policyset = 7, /* configuration policy
set */
clscrs_entity_server_category  = 8  /* server category */
} clscrs_entity_type;

- clscrs_crsentity: このデータ構造(crsentity)はOracle Clusterwareエンティティを示し、これには、名前、およびOracle Clusterwareエンティティが使用されるコンテキストに適した追加データが含まれます。APIには、Oracle Clusterwareエンティティの属性データが含まれる場合もあれば、操作に関するステータスおよび戻りメッセージが示される場合もあります。シングル・エンティティは、1つのclscrs_crsentitylistのみのメンバーの場合もあります。

- clscrs_crsentitylist: エンティティ・リスト(crsentitylist)は、clscrs_crsentityの0個以上のインスタンスが含まれるデータ構造です。APIによって、エンティティ・リストでエンティティを追加したり削除すること、またはエンティティを繰り返し適用することができます。

メモリー管理

CLSCRS APIは、要素およびリストに対して機能します。要素はリストに追加されます。要素およびリストの両方に対するメモリーの割当ておよび解放は、明示的なAPIコールを介して行われます。割り当てられたメモリーの解放は、コール元によって行われます。ただし、要素がリストに追加されている場合は、そのリストのみを破棄する必要があり、リストを破棄することで、その要素も暗黙的に破棄されます。要素がリストに追加されていない場合は、要素を破棄する必要があります。再帰的リストの場合、親リストを破棄すると、それに含まれるリストもすべて破棄されます。clscrs_spおよびclscrs_crsentity要素は、コール元によって破棄される必要があります。これらがclscrs_splistまたはclscrs_crsentitylistに属する場合は、リストを破棄すると、clscrs_spおよびclscrs_crsentityのエンティティがそれぞれ破棄されます。

たとえば、リソースが作成されてリソース・リストに追加された場合は、そのリソース・リストのみが破棄され、個々のリソースは破棄されません。また、リソース・リストを破棄すると、個々のリソースのメモリーが解放されます。

メモリーは、APIによって、次のコールを介して割り当てられます。

clscrs_sp_create()
clscrs_crsentity_create()
clscrs_serverpool_create()
clscrs_type_create()
clscrs_splist_create()
clscrs_crsentitylist_create()
clscrs_entity_id_create()

前述のリストの各コールには、対応するclscrs_*_destroy()コールがあります。

エラーの処理およびトレース

対話形式および非対話形式のCLSCRS APIは、それぞれ異なるエラー処理メカニズムを使用します。

非対話形式CLSCRS APIでは、エラー・コードは関数コールの戻り値として戻されます。次に例を示します。

clscrsret clscrs_sp_get_value(clscrs_sp *sp, oratext **value);

エラー・コードは、clscrsret値として戻されます。

対話形式CLSCRS APIでは、出力結果は次のように表示されます。

1. 関数コールの戻り値によって、リクエストの概要が出力されます。サーバーでリクエストが受信されたかどうかが示されます。また、正常に完了したか、完全に失敗したか、または一部で失敗したかどうかも示されます。戻り値が正常であるということは、リクエストの受信および処理が行われ、リクエストされたすべてのエンティティに対する結果が正常であったことを示します。

2. リクエストが行われたエンティティごとに、op_statusリストにプログラムの完了コードが格納されます。値がsuccessではない場合は、特定のオブジェクトに対するリクエストの処理で高度な問題が発生したことを示します。

3. 必要に応じて、APIでは、コールバック・メカニズムを使用して、ローカライズされた判読可能なエラー、警告、ステータス・メッセージを受信するように示される場合があります。コールバックが起動されるたびに、コールバックの起動に関するメッセージ、メッセージ・タイプ(重大度)およびオブジェクトIDが表示されます。

次に例を示します。

CLSCRS_STAT clscrs_register_resource2(clscrs_crsentitylist *in_crsentitylist, uword flags,
clscrs_msgf2 msgf, void *msgarg,
clscrs_crsentitylist *op_status);

1. 関数によって、CLSCRS_STATという値のエラー・コードが戻されます。

2. CRSDによって、clscrs_msgf2コールバックを介して、エラー・メッセージ、警告メッセージ、進捗メッセージがクライアントに戻されます。クライアントには、CRSDによって戻されるこれらのメッセージを処理するコールバックが実装されている必要があります。

3. 以前のOracle Clusterwareリリースでは、APIに、op_statusリストの一部としてOracle Clusterwareエンティティの各操作の結果も含まれていました。次のAPIを使用してその情報にアクセスできます。

clscrsret clscrs_entity_get_op_status(clscrs_entity *res, CLSCRS_STAT *status,
oratext **msg);

status引数には、Oracle ClusterwareエンティティのCRSD操作に関するステータス・コードが含まれます。また、msg引数には、操作の結果に関するCRSDからのメッセージが含まれます。msg引数の各Oracle Clusterwareエンティティに対するCRSD操作の結果は引き続きop_statusリストに含まれますが、msg引数の使用によるエラー・コードおよびメッセージの取得は非推奨となり、新しいエンティティのAPIではサポートされていません。既存の使用(特にリソースでの処理)でのみサポートされます。CRSDによって戻されるメッセージを処理する場合は、コールバック関数を使用してください。

コールバック・メカニズム

対話形式CLSCRS APIでは、クライアントがCRSDによって送信されたエラー・メッセージ、警告メッセージおよび進捗メッセージを処理するために使用するコールバック・メカニズムが提供されます。

コールバック・メカニズムのシグネチャは次のとおりです。

typedef  void (*clscrs_msgf2)(void *usrp, const oratext *id, const oratext *msg,
clscrs_msgtype msgtype);

前の構文では:

- usrp: コールのコンテキストが含まれるユーザー指定のポインタ

- id: メッセージに対応するエンティティの識別子

- msg: 出力テキスト

- msgtype: メッセージのタイプ(エラー、警告または進捗)

例H-1に、コールバック・メカニズムの例を示します。

例H-1 コールバック・メカニズム

void myCallback(void *arg, const oratext *pId, const oratext *pMsg,
clscrs_msgtype msgType)
{
if (pMsg != NULL)
{
cout << pMsg << endl;
}
}

例H-2に、対話形式APIでコールバック・メカニズムを使用する方法を示します。

例H-2 対話形式APIでのコールバック・メカニズムの使用

clscrs_start_resource2(pResIdList, NULL,
env, myCallback, NULL,
0, pOpStatus);

コンテキストの作成時にCLSCRS_FLAG_TRACEフラグを渡すことによって、APIのデバッグ・トレース・メッセージを出力することもできます。コンテキスト作成のシグネチャは次のとおりです。

CLSCRS_STAT clscrs_init_crs(clscrs_ctx **ctx, clscrs_msgf2 errf, void *errCtx,
ub4 flags);

トレース・メッセージを機能させるには、clscrs_init_crs APIで、CLSCRS_FLAG_TRACEフラグおよびclscrs_msgf2コールバック・メカニズムの両方を指定する必要があります。

clscrs_msgf2コールバック・メカニズムのシグネチャは次のとおりです。

typedef  void (*clscrs_msgf)(void *usrp, const oratext *msg, sword msglen);

フィルタ

フィルタを使用して、CLSCRS APIが動作するOracle Clusterwareエンティティを絞り込むことができます。簡易フィルタは、演算子を使用した属性/値ペアです。演算子は、例に示すように空白で囲む必要があります。簡易フィルタは、Boolean演算子を使用した式フィルタと呼ばれる式に組み込むことができます。

サポートされるフィルタの演算子は次のとおりです。

- =

- >

- <

- !=

- co: 次を含む

- st: 次で始まる

- en: 次で終わる

サポートされるブール演算子はANDおよびORです。

次にフィルタの例を示します。

- TYPE = type1

- ((TYPE = type1) AND (CHECK_INTERVAL > 50))

- (TYPE = type1) AND ((CHECK_INTERVAL > 30) OR (AUTO_START co never))

- NAME en network.res

- TYPE st ora.db

関連項目:

APIコールの前述のコンパレータおよび演算子は、$ORA_CRS_HOME/crs/demo/clscrsx.hファイルにあるclscrs_comparator enumおよびclscrs_operator enumを使用して、正しいタイプを取得してください。

フィルタは2種類あり、CLSCRSにはこれらのフィルタを作成するAPIのセットがあります。

- 比較フィルタ: 2つの値を比較する簡易フィルタ。次に例を示します。

TYPE = ora.db.type

比較フィルタを作成するには、clscrs_compfilter_create APIを使用します。たとえば、(TYPE = ora.db.type)比較フィルタは次のように作成します。

clscrs_compfilter_create(ctx, clscrs_TYPE,
clscrs_comparator_eq, (const oratext *)"ora.db.type",
&myCompFilter);

- 式フィルタ: 比較フィルタまたは式フィルタ、あるいはその両方の組合せで作成されるフィルタ。次に例を示します。

((TYPE = ora.db.type) AND (CHECK_INTERVAL > 50))

比較フィルタを作成するには、clscrs_expfilter_create APIを使用します。たとえば、式フィルタは次のように作成します。

clscrs_exprfilter_create(myCompFilter1, clscrs_operator_or,
myCompFilter2, &myExprFilter);

関連項目:

clscrs_compfilter_createおよびclscrs_expfilter_create APIの使用方法については、$ORA_CRS_HOME/crs/demo/clscrsx.hファイルを参照してください。

注意:

clscrs_compfilter_createおよびclscrs_expfilter_create APIによって割り当てられるメモリーは、どちらもclscrs_filter_destroy()がコールされると解放されます。

エンティティ・リストのかわりに、次の対話形式CLSCRS APIでフィルタを使用できます。

- clscrs_start_resource2

- clscrs_stat2

- clscrs_stop_resource2

- clscrs_check_resource2

- clscrs_relocate_resource2

例H-3に、対話形式CLSCRS APIでのフィルタの使用を示します。

例H-3 対話形式CLSCRS APIのフィルタ

clscrs_start_resource2(myCompFilter, NULL,
env, msgf2, NULL,
0, pOpStatus);

スクリプト・エージェントの使用方法

スクリプト・エージェントのエントリ・ポイントでCLSCRS APIを使用する場合は、次の点を考慮してください。

1. start、stop、cleanなどの一部のアクションは、リソース・インスタンスでロックされた状態で実行されます。そのため、リソースに対する操作が直接行われるリクエストや、関係性が拡張されることで行われるリクエストをサーバーに発行すると、デッドロックの原因になります。

2. 通常、読取り専用の発行(clscrs_stat2)は初回のチェックでないかぎり安全で、この場合、デッドロックの原因にもなるため、スクリプト・エージェントではサーバー上でのコールバックは実行しないでください。clsagfwAPIを使用して、チェック・エントリ・ポイントを問い合せます。

関連項目:

スクリプト・エージェントの例は、「Oracle Clusterwareのリソース・リファレンス」を参照してください。

ヘルプ・インタフェース

crsapp.cと呼ばれるデモと併用することで、$ORA_CRS_HOME/crs/demo/clscrsx.hファイルで、それぞれの使用方法を含め、CLSCRS APIのリスト全体を検索できます。

非推奨のCLSCRS API

表H-1に非推奨のCLSCRS APIおよびそれに対応するOracle Clusterwareの代替APIを示します。

表H-1 非推奨のCLSCRS API

非推奨のAPI

置換

clscrs_check_resource

clscrs_check_resource2

clscrs_entity

clscrs_entity_type

clscrs_fail_resource

代替はありません

clscrs_msgf

clscrs_msgf2

clscrs_register_resource

clscrs_register_resource2

clscrs_relocate_resource

clscrs_relocate_resource2

clscrs_res_attr_count

clscrs_crsentity_attr_count

clscrs_res_create

clscrs_crsentity_create

clscrs_res_create

clscrs_crsentitylist_create

clscrs_res_destroy

clscrs_crsentity_destroy

clscrs_res_get_attr

clscrs_crsentity_get_attr

clscrs_res_get_attr_list

clscrs_crsentity_get_attr_list

clscrs_res_get_name

clscrs_crsentity_get_name

clscrs_res_get_node_list

clscrs_crsentity_get_node_list

clscrs_res_get_op_status

clscrs_crsentity_get_op_status

clscrs_res_get_reslist

clscrs_crsentity_get_crsentitylist

clscrs_res_set_attr

clscrs_crsentity_set_attr

clscrs_res_set_attr_list

clscrs_crsentity_set_attr_list

clscrs_res_set_reslist

clscrs_crsentity_set_crsentitylist

clscrs_reslist_append

clscrs_crsentitylist_append

clscrs_reslist_count

clscrs_crsentitylist_count

clscrs_reslist_delete_res

clscrs_crsentitylist_delete_crsentity

clscrs_reslist_destroy

clscrs_crsentitylist_destroy

clscrs_reslist_find

clscrs_crsentitylist_find

clscrs_reslist_first

clscrs_crsentitylist_first

clscrs_reslist_next

clscrs_crsentitylist_next

clscrs_start_resource

clscrs_start_resource2

clscrs_stat

clscrs_stat2

clscrs_stop_resource

clscrs_stop_resource2

clscrs_unregister_resource

clscrs_unregister_resource2

既存のCLSCRS APIの変更点

Oracleによって、clscrs_stat2 APIに次のフラグが追加されています。

- CLSCRS_STATFLAG_SERVERBYCATEGORY: 特定のサーバー・カテゴリに一致するサーバーを問い合せるには、このフラグを使用します。

- CLSCRS_STATFLAG_CATEGORYBYSERVER: 特定のサーバーに一致するサーバー・カテゴリを問い合せるには、このフラグを使用します。

Oracleによって、clscrs_start_resource2およびclscrs_stop_resource2 APIに次のフラグが追加されています。

- CLSCRS_FLAG_T_HA_PREPARE: リソースを処理する外部管理インタフェースを準備するようにOracle Clusterwareデーモン(CRSD)に指定するには、透過的HA (start2/stop2 API)でこのフラグを使用します。コールが戻ってきた際、成功の場合は、インタフェースはリソースを起動または停止し、他方のフラグ(CLSCRS_FLAG_T_HA_FINISH)を使用してコールバックすると想定されます。

- CLSCRS_FLAG_T_HA_FINISH: このフラグは、透過的HAでCLSCRS_FLAG_T_HA_PREPAREとともに使用します。起動または停止アクション終了時のCRSD (start2/stop2 API)への2つ目のコールで、このフラグを使用する必要があります。CRSDはAPIの起動が適用されるインスタンスを認識する必要があるため、クライアントはこのフラグで、リソースではなくリソースのインスタンスを指定する必要があることに注意してください。

- CLSCRS_NO_STATE_RESTORATION: このフラグは、リソースAPIを起動および停止するため、および状態が影響を受けたリソースのリソース状態の復元をスキップするようにCRSDに指定するために使用できます。このフラグを使用しない場合、通常はこの手順が試行されます。

対話形式CLSCRS API

表H-2に示すAPIは、コマンドを実行するために、クラスタ・レディ・サービス・デーモン(CRSD)のコールを作成します。これらのAPIが機能するには、CRSDが起動され、実行されている必要があります。

表H-2 Oracle Clusterwareの対話形式CLSCRS APIのサマリー

C API

説明

clscrs_check_resource2

指定されたリソースのチェック・エントリ・ポイントを実行するようにOracle Clusterwareに通知します。

clscrs_get_server_by_category

特定のサーバー・カテゴリに一致するサーバーのリストを取得します。

clscrs_is_crs_admin

ユーザーがOracle Clusterware管理者かどうかをチェックします。

clscrs_register_resource2

入力リソース・リストにリソースを登録します。

clscrs_register_servercategory

入力サーバー・カテゴリ・リストにサーバー・カテゴリを登録します。

clscrs_register_serverpool

サーバーの入力リストに使用するサーバー・プールを登録します。

clscrs_register_type

入力リソース・リストにリソース・タイプを登録します。

clscrs_relocate_resource2

リソース識別子のリストを再配置します。

clscrs_relocate_server

サーバーのリストを再配置します。

clscrs_request_action

特定のアクション・セットを実行するようにOracle Clusterwareに通知します。

clscrs_restart_resource

名前が指定されたリソース・セットを再起動するようにOracle Clusterwareに指定します。

clscrs_start_resource2

名前が指定されたリソース・セットを起動するようにOracle Clusterwareに通知します。

clscrs_stat2

特定のリソースに関する情報を取得します。

clscrs_stat3

特定のエンティティに関する情報を取得します。

clscrs_stop_resource2

名前が指定されたリソース・セットを停止するようにOracle Clusterwareに通知します。

clscrs_stop_resource_in_pools

サーバー・プールの特定のリソースを停止するようにOracle Clusterwareに指定します。

clscrs_start_resource_in_pools

サーバー・プールの特定のリソースを起動するようにOracle Clusterwareに指定します。

clscrs_unregister_resource2

リソース名の入力リストのリソースを登録解除します。

clscrs_unregister_servercategory

入力サーバー・カテゴリ・リストでサーバー・カテゴリを登録解除します。

clscrs_unregister_serverpool

指定されたサーバー・プールを登録解除します。

clscrs_unregister_type

入力リストのリソース・タイプを登録解除します。

clscrs_whatif_add_server

サーバーを追加した場合に発生する事象をシミュレーションします。

clscrs_whatif_delete_server

サーバーを削除した場合に発生する事象をシミュレーションします。

clscrs_whatif_fail_resource

リソースの障害が発生した場合に発生する事象をシミュレーションします。

clscrs_whatif_register_resource

リソースを登録した場合に発生する事象をシミュレーションします。

clscrs_whatif_register_serverpool

サーバー・プールを登録した場合に発生する事象をシミュレーションします。

clscrs_whatif_relocate_resource

リソースを再配置した場合に発生する事象をシミュレーションします。

clscrs_whatif_relocate_server

サーバーを再配置した場合に発生する事象をシミュレーションします。

clscrs_whatif_set_activepolicy

ポリシーをアクティブ化した場合に発生する事象をシミュレーションします。

clscrs_whatif_start_resource

リソースを起動した場合に発生する事象をシミュレーションします。

clscrs_whatif_stop_resource

リソースを停止した場合に発生する事象をシミュレーションします。

clscrs_whatif_unregister_serverpool

サーバー・プールを登録解除した場合に発生する事象をシミュレーションします。

非対話形式CLSCRS API

コンテキストの初期化、対話形式APIのリクエスト・ペイロードの準備、対話形式APIの処理後の出力などの機能には、非対話形式CLSCRS APIを使用できます。非対話形式CLSCRS APIはCRSDをコールしません。

コールバック・エラーのレポート・メカニズムは、非対話形式CLSCRS APIでは使用できません。clscrs_stat2、clscrs_stat3、およびすべてのclscrs_whatif_* APIを除くすべての対話形式CLSCRS APIでは、このコールバック・メカニズムが使用されます。これらのAPIのクライアントは、コールバック・メカニズムを使用して、エラー、警告および進捗メッセージをCRSDから受信します。

フィルタを使用して、Oracle Clusterwareエンティティのリストを減らすこともできます。また、対話形式APIのフィルタを使用して、Oracle Clusterwareエンティティのリストを減らすこともできます。

スレッド・セーフティ

APIデータ構造の管理のために提供されるルーチンは、複数のスレッドの同じAPIコンテキストで同時に使用できませんが、クライアント側でのスレッド・アフィニティは必要ありません。各インスタンスで個別のAPIが使用されている場合は、このプロセスにより、複数のスレッドでこれらのルーチンが起動する可能性があります。

関連項目:

詳細は、「エラーの処理およびトレース」、「コールバック・メカニズム」および「フィルタ」を参照してください。

表H-3に、非対話形式CLSCRS APIを示します。

表H-3 非対話形式CLSCRS API

C API

説明

clscrs_action_getentity

アクションのエンティティを戻します。

clscrs_action_getparams

アクションのパラメータのリストを戻します。

clscrs_action_gettype

アクションのタイプを戻します。

clscrs_actionlist_count

アクション・リスト内のアクションの数を計算します。

clscrs_actionlist_create

アクション・リストを作成します。

clscrs_actionlist_destroy

アクション・リストを破棄します。

clscrs_actionlist_first

アクション・リスト内の最初のアクションを戻します。

clscrs_actionlist_next

アクション・リスト内の次のアクションを戻します。

clscrs_actionlist_print

アクション・リストを出力します。

clscrs_actionlist_seqid

アクション・リストの順序IDを戻します。

clscrs_compfilter_create

2つの値を比較する簡易フィルタを構成します。

clscrs_crsentity_attr_count

エンティティの属性の数をカウントします。

clscrs_crsentity_create

新しいエンティティを作成します(メモリーを割り当てます)。

clscrs_crsentity_destroy

エンティティを破棄してメモリーを解放します。

clscrs_crsentity_get_attr

エンティティ、サーバー・プール、またはサーバー属性の値を取得します。

clscrs_crsentity_get_attr_list

エンティティ、リソース・タイプ、サーバー・プール、またはサーバーの属性リストを取得します。

clscrs_crsentity_get_crsentitylist

エンティティのエンティティ・リストを取得します。

clscrs_crsentity_get_name

エンティティの名前を取得します。

clscrs_crsentity_get_node_list

現在エンティティをホスティングしているノードのリストを取得します。

clscrs_crsentity_get_op_status

エンティティの操作のステータスを取得します。

clscrs_crsentity_get_registered

エンティティの登録ステータスを取得します。

clscrs_crsentity_set_attr

エンティティおよびサーバー・プールの属性を設定します。

clscrs_crsentity_set_attr_list

エンティティ、リソース・タイプ、サーバー・プール、またはサーバーの属性リストを設定します。

clscrs_crsentity_set_crsentitylist

エンティティのリソース・リストを設定します。

clscrs_crsentitylist_append

エンティティ・リストにエンティティを追加します。

clscrs_crsentitylist_count

エンティティ・リストのエンティティの数をカウントします。

clscrs_crsentitylist_create

エンティティのリストを作成します。

clscrs_crsentitylist_delete_crsentity

特定の名前に一致するエンティティをエンティティ・リストから削除します。

clscrs_crsentitylist_destroy

エンティティ・リストを破棄してメモリーを解放します。

clscrs_crsentitylist_find

特定の名前に一致するエンティティ・リストのエンティティを検索します。

clscrs_crsentitylist_first

エンティティ・リストの最初のエンティティを取得します。

clscrs_crslist_next

エンティティ・リストから現行の次のエンティティを取得します。

clscrs_entity_id_create

リソース、リソース・タイプ、サーバー・グループなどのOracle Clusterwareエンティティを識別するエンティティ識別子を作成します。

clscrs_entity_id_destroy

clscrs_entity_id_create()で作成されたエンティティ識別子に関連付けられたメモリーを解放します。

clscrs_exprfilter_create

比較フィルタまたは式フィルタ(あるいはその両方)で式フィルタを構成します。

clscrs_filter_destroy

フィルタのメモリーを解放します。

clscrs_get_entity_type

指定されたエンティティ識別子に対応するエンティティ・タイプを取得します。

clscrs_get_fixed_attrlist

属性グループ識別子に対応する属性のリストを取得します。

clscrs_get_resource_instance_details

使用されているリソース・インスタンス識別子から、リソース名、カーディナリティ、程度などのリソース・インスタンスの詳細を取得します。

clscrs_getnodename

ノード名を取得します。

clscrs_init_crs

Oracle Clusterwareと通信するためにコンテキストを初期化します。

clscrs_sp_get

文字列ペアの名前要素および値要素を取得します。

clscrs_sp_get_value

文字列ペアの値要素を取得します。

clscrs_sp_set

文字列ペアの値の部分を変更します。

clscrs_splist_append

文字列ペア・リスト(splist)に新しい文字列ペア(sp)を追加します。

clscrs_splist_count

文字列ペア・リスト(splist)の文字列ペア(sp)の数をカウントします。

clscrs_splist_create

新しい文字列ペア・リストを作成します。

clscrs_splist_create_and_set

新しい文字列ペア・リスト(splist)を作成し、リストの最初の文字列ペアの名前および値を設定します。

clscrs_splist_delete_sp

文字列ペア・リスト(splist)から文字列ペア(sp)を削除します。

clscrs_splist_destroy

文字列ペア・リスト(splist)のメモリーを解放します。

clscrs_splist_find

文字列ペア・リスト(splist)の文字列ペア(sp)の値を検索します。

clscrs_splist_first

文字列ペア・リスト(splist)の最初の文字列ペア(sp)を取得します。

clscrs_splist_next

文字列ペア・リスト(splist)の現行の次の文字列ペア(sp)を取得します。現行の次の文字列ペアは、実質的に文字列ペア・リストの次の文字列ペアです。リスト・イテレータはAPI内に格納され、公開されません。

clscrs_splist_replace

文字列ペア・リスト(splist)の文字列ペア(sp)の値を置換します。

clscrs_term_crs

Oracle Clusterwareと通信するためにコンテキストを解放します。

clscrs_type_create

新しいリソース・タイプを作成します。

clscrs_type_get_attr

リソース・タイプの属性の値またはプロパティを取得します。

clscrs_type_set_attr

リソース・タイプに属性を追加します。

What-If API

What-If APIを使用して、計画済または計画外の仮定上のイベントに対するOracle Clusterwareの反応を予測できます。Oracle Clusterwareでは、システムでのイベントに応じて、対応アクション計画を生成できます。このアクション計画は、一連のリソース状態の移行またはサーバー・プールの再構成(あるいはその両方)で構成されます。What-If APIは、このアクション計画を外部に公開し、イベントの結果を実際の発生前にクライアントが予測できるようにするメカニズムを備えています。

What-Ifレスポンス計画は、次のイベント・カテゴリで使用可能です。

- リソース: 起動、停止、再配置、追加および変更

- サーバー・プール: 追加、削除および変更

- サーバー: 追加、削除および再配置

- ポリシー: アクティブ・ポリシーの変更

- サーバー・カテゴリ: 変更

Oracle ClusterwareではWhat-Ifの出力がアクションのリストとして提供され、各アクションがOracle Clusterwareによって実行される特定の手順を示します。各アクションはclscrs_action構造によってカプセル化され、clscrs_actionlist構造がアクションの順序全体を表します。また、Oracle Clusterwareでは、それらの構造を作成、調査、反復、および破棄するための関数セット(アクション構造用のclscrs_action_*とアクション・リスト用のclscrs_actionlist_*)が用意されています。使用方法は、対応するエンティティ・リストおよびエンティティの関数と同じです。

また、What-If APIでは、予想されるシステム状態を問合せる機能もクライアントに提供されています。clscrs_querylist構造でstat3書式を使用して問合せを指定し、clscrs_crsentitylist構造によって結果が提供されます。使用方法の詳細は、stat3の項を参照してください。

Oracle Clusterwareによって提供される各What-If応答には、Oracle Clusterwareの現行の状態を示す順序IDが含まれます。順序IDは、Oracle Clusterwareによって管理される新しいイベントごとに増分されます。Oracle Clusterwareでは、順序IDが変更されないかぎり、提供されたアクション計画が対象イベントに対してそのまま実行されることが保証されます。たとえば、whatif start resource FOOリクエストに対してOracle Clusterwareから提供されるアクション計画は、順序IDが変更されていないかぎり、実際のstart resource FOOリクエストが送信されたときにOracle Clusterwareによって実行されるアクションと同じです。

例H-4に、What-If APIを使用する方法を示します。

例H-4 What-If APIの使用例

boolean            tracectx = TRUE;
oratext           *resid;
clscrs_ctx        *ctx;
clscrs_env         env;
clscrs_splist     *resid_list;
clscrs_action     *cur_actn;
clscrs_actionlist *alist;
clscrs_splist     *params;

// Init crs
clscrs_init_crs(&ctx, (clscrs_msgf)clsuslztrace, &tracectx, (ub4)0);

// Init parameters to the call
clscrs_entity_id_create(ctx, "MYRES", clscrs_entity_res, &resid);
clscrs_splist_create(ctx, &resid_list);
clscrs_splist_append(resid_list, resid, NULL);
clscrs_actionlist_create(ctx, &alist);

// Make call into the what-if API
clscrs_whatif_start_resource(resid_list, nodename, flags, NULL, NULL, alist);

// Process the resulting list of actions
for(clscrs_actionlist_first(alist,&cur_actn);cur_actn;clscrs_actionlist_next(alist,&cur_actn))
{
params = clscrs_action_getparams(cur_actn);
switch(clscrs_action_gettype(cur_actn))
{
case clscrs_actiontype_resstate:
// Read params and do something
break;
case clscrs_actiontype_srvmove:
// Read params and do something
break;
case clscrs_actiontype_newgroup:
// Read params and do something
break;
case clscrs_actiontype_errorcase:
// Read params and do something
break;
}
}
clscrs_actionlist_destroy(alist);
clscrs_splist_destroy(resid_list);
clscrs_term_crs(&ctx);

この項では、APIのパラメータを、入力を指定するものと、関数が正常に完了した際に情報を表示するものとに分けて説明します。

clscrs_whatif_register_resource

clscrs_whatif_register_resource APIは、特定のリソースを追加または変更した場合にOracle Clusterwareによって実行されるアクションを特定します。

パラメータ

入力:

- name: リソースの名前。

- attrs: 指定されたリソースの属性。

- flags: CLSCRS_FLAG_NONE

- CLSCRS_FLAG_WHATIF_VERBOSE

- CLSCRS_FLAG_FORCE

- CLSCRS_FLAG_REG_UPDATE (リソースを変更する場合)

関連項目:

詳細は、CLRSCRS_FLAGの列挙を参照してください

qlist: Oracle Clusterwareエンティティ・ステータスのクライアント問合せを指定します。NULLは、問合せを指定しないことを示します。

出力:

- status: 戻されるエンティティ情報が含まれるリスト。

- alist: Oracle Clusterwareによって実行されるアクションが含まれるアクション・リスト。

戻り値

- CLSCRS_STAT_SUCCESS: Oracle Clusterwareによってリクエストが正常に完了されたこと、またはエンティティがフィルタに一致しなかったことを示します。

- CLSCRS_STAT_AUTHORIZATION_FAILURE: 認可が失敗した場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

- CLSCRS_STAT_WRONG_ACTIVE_VERSION: クラスタをOracle Clusterware 12cにアップグレードする前にAPIを使用した場合に表示されます。

- CLSCRS_STAT_INTERNAL_ERROR: 予期しない非ユーザー・エラーが発生した場合に表示されます。

- CLSCRS_STAT_INVALID_ARGS: 正しくない引数が指定された場合に表示されます。

CLSCRS_STAT

clscrs_whatif_register_resource(const oratext *name, clscrs_splist *attrs,
uword flags, clscrs_querylist *qlist,
clscrs_crsentitylist *status,
clscrs_actionlist *alist);

clscrs_whatif_fail_resource

clscrs_whatif_fail_resource APIは、特定のリソースの障害が発生した場合にOracle Clusterwareによって実行されるアクションを特定します。

パラメータ

入力:

- name: リソースID、インスタンスIDまたはフィルタ。

- server: リソースの障害が発生するサーバーの名前。NULLが許可されます。

- flags: CLSCRS_FLAG_NONE

- CLSCRS_FLAG_WHATIF_VERBOSE

関連項目:

詳細は、CLRSCRS_FLAGの列挙を参照してください

qlist: Oracle Clusterwareエンティティ・ステータスのクライアント問合せを指定します。NULLは、問合せを指定しないことを示します。

出力:

- status: 戻されるエンティティ情報が含まれるリスト。

- alist: Oracle Clusterwareによって実行されるアクションが含まれるアクション・リスト。

戻り値

- CLSCRS_STAT_SUCCESS: Oracle Clusterwareによってリクエストが正常に完了されたこと、またはエンティティがフィルタに一致しなかったことを示します。

- CLSCRS_STAT_AUTHORIZATION_FAILURE: 認可が失敗した場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

- CLSCRS_STAT_WRONG_ACTIVE_VERSION: クラスタをOracle Clusterware 12cにアップグレードする前にAPIを使用した場合に表示されます。

- CLSCRS_STAT_INTERNAL_ERROR: 予期しない非ユーザー・エラーが発生した場合に表示されます。

- CLSCRS_STAT_INVALID_ARGS: 正しくない引数が指定された場合に表示されます。

CLSCRS_STAT

clscrs_whatif_fail_resource(clscrs_splist *name, const oratext *server,
uword flags, clscrs_querylist *qlist,
clscrs_crsentitylist *status,
clscrs_actionlist *alist);

clscrs_whatif_start_resource

clscrs_whatif_start_resource APIは、特定のリソースを起動した場合にOracle Clusterwareによって実行されるアクションを特定します。

パラメータ

入力:

- name: リソースID、インスタンスIDまたはフィルタ。

- node: リソースを起動するノードの名前。NULLが許可されます。

- flags: CLSCRS_FLAG_NONE

- CLSCRS_FLAG_WHATIF_VERBOSE

- CLSCRS_FLAG_FORCE

関連項目:

詳細は、CLRSCRS_FLAGの列挙を参照してください

qlist: Oracle Clusterwareエンティティ・ステータスのクライアント問合せを指定します。NULLは、問合せを指定しないことを示します。

出力:

- status: 戻されるエンティティ情報が含まれるリスト。

- alist: Oracle Clusterwareによって実行されるアクションが含まれるアクション・リスト。

戻り値

- CLSCRS_STAT_SUCCESS: Oracle Clusterwareによってリクエストが正常に完了されたこと、またはエンティティがフィルタに一致しなかったことを示します。

- CLSCRS_STAT_AUTHORIZATION_FAILURE: 認可が失敗した場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

- CLSCRS_STAT_WRONG_ACTIVE_VERSION: クラスタをOracle Clusterware 12cにアップグレードする前にAPIを使用した場合に表示されます。

- CLSCRS_STAT_INTERNAL_ERROR: 予期しない非ユーザー・エラーが発生した場合に表示されます。

- CLSCRS_STAT_INVALID_ARGS: 正しくない引数が指定された場合に表示されます。

CLSCRS_STAT

clscrs_whatif_start_resource(clscrs_splist *name, const oratext *node,
uword flags, clscrs_querylist *qlist,
clscrs_crsentitylist *status,
clscrs_actionlist *alist);

clscrs_whatif_stop_resource

clscrs_whatif_stop_resource APIは、特定のリソースを停止した場合にOracle Clusterwareによって実行されるアクションを特定します。

パラメータ

入力:

- name: リソースID、インスタンスIDまたはフィルタ。

- flags: CLSCRS_FLAG_NONE

- CLSCRS_FLAG_WHATIF_VERBOSE

- CLSCRS_FLAG_FORCE

関連項目:

詳細は、CLRSCRS_FLAGの列挙を参照してください

qlist: Oracle Clusterwareエンティティ・ステータスのクライアント問合せを指定します。NULLは、問合せを指定しないことを示します。

出力:

- status: 戻されるエンティティ情報が含まれるリスト。

- alist: Oracle Clusterwareによって実行されるアクションが含まれるアクション・リスト。

戻り値

- CLSCRS_STAT_SUCCESS: Oracle Clusterwareによってリクエストが正常に完了されたこと、またはエンティティがフィルタに一致しなかったことを示します。

- CLSCRS_STAT_AUTHORIZATION_FAILURE: 認可が失敗した場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

- CLSCRS_STAT_WRONG_ACTIVE_VERSION: クラスタをOracle Clusterware 12cにアップグレードする前にAPIを使用した場合に表示されます。

- CLSCRS_STAT_INTERNAL_ERROR: 予期しない非ユーザー・エラーが発生した場合に表示されます。

- CLSCRS_STAT_INVALID_ARGS: 正しくない引数が指定された場合に表示されます。

CLSCRS_STAT

clscrs_whatif_stop_resource(clscrs_splist *name, uword flags,
clscrs_querylist *qlist,
clscrs_crsentitylist *status,
clscrs_actionlist *alist);

clscrs_whatif_relocate_resource

clscrs_whatif_relocate_resource APIは、特定のリソースを再配置した場合にOracle Clusterwareによって実行されるアクションを特定します。

パラメータ

入力:

- name: リソースID、インスタンスIDまたはフィルタ。

- flags: CLSCRS_FLAG_NONE

- CLSCRS_FLAG_WHATIF_VERBOSE

- CLSCRS_FLAG_FORCE

関連項目:

詳細は、CLRSCRS_FLAGの列挙を参照してください

qlist: Oracle Clusterwareエンティティ・ステータスのクライアント問合せを指定します。NULLは、問合せを指定しないことを示します。

出力:

- status: 戻されるエンティティ情報が含まれるリスト。

- alist: Oracle Clusterwareによって実行されるアクションが含まれるアクション・リスト。

戻り値

- CLSCRS_STAT_SUCCESS: Oracle Clusterwareによってリクエストが正常に完了されたこと、またはエンティティがフィルタに一致しなかったことを示します。

- CLSCRS_STAT_AUTHORIZATION_FAILURE: 認可が失敗した場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

- CLSCRS_STAT_WRONG_ACTIVE_VERSION: クラスタをOracle Clusterware 12cにアップグレードする前にAPIを使用した場合に表示されます。

- CLSCRS_STAT_INTERNAL_ERROR: 予期しない非ユーザー・エラーが発生した場合に表示されます。

- CLSCRS_STAT_INVALID_ARGS: 正しくない引数が指定された場合に表示されます。

CLSCRS_STAT

clscrs_whatif_relocate_resource(clscrs_splist *name, const oratext *destnode,
uword flags, clscrs_querylist *qlist,
clscrs_crsentitylist *status,
clscrs_actionlist *alist);

clscrs_whatif_register_serverpool

clscrs_whatif_register_serverpool APIは、特定のサーバー・プールを登録した場合にOracle Clusterwareによって実行されるアクションを特定します。

パラメータ

入力:

- name: サーバー・プールの名前。

- attrs: 指定されたサーバー・プールの属性。

- flags: CLSCRS_FLAG_NONE

- CLSCRS_FLAG_WHATIF_VERBOSE

- CLSCRS_FLAG_FORCE

- CLSCRS_FLAG_REG_UPDATE (サーバー・プールを変更する場合)

関連項目:

詳細は、CLRSCRS_FLAGの列挙を参照してください

qlist: Oracle Clusterwareエンティティ・ステータスのクライアント問合せを指定します。NULLは、問合せを指定しないことを示します。

出力:

- status: 戻されるエンティティ情報が含まれるリスト。

- alist: Oracle Clusterwareによって実行されるアクションが含まれるアクション・リスト。

戻り値

- CLSCRS_STAT_SUCCESS: Oracle Clusterwareによってリクエストが正常に完了されたこと、またはエンティティがフィルタに一致しなかったことを示します。

- CLSCRS_STAT_AUTHORIZATION_FAILURE: 認可が失敗した場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

- CLSCRS_STAT_WRONG_ACTIVE_VERSION: クラスタをOracle Clusterware 12cにアップグレードする前にAPIを使用した場合に表示されます。

- CLSCRS_STAT_INTERNAL_ERROR: 予期しない非ユーザー・エラーが発生した場合に表示されます。

- CLSCRS_STAT_INVALID_ARGS: 正しくない引数が指定された場合に表示されます。

CLSCRS_STAT

clscrs_whatif_register_serverpool(const oratext *pname, clscrs_splist *attrs,
uword flags, clscrs_querylist *qlist,
clscrs_crsentitylist *status,
clscrs_actionlist *alist);

clscrs_whatif_unregister_serverpool

clscrs_whatif_unregister_serverpool APIは、特定のサーバー・プールを登録解除した場合にOracle Clusterwareによって実行されるアクションを特定します。

パラメータ

入力:

- name: サーバー・プールの名前。

- flags: CLSCRS_FLAG_NONE

- CLSCRS_FLAG_WHATIF_VERBOSE

- CLSCRS_FLAG_FORCE

関連項目:

詳細は、CLRSCRS_FLAGの列挙を参照してください

qlist: Oracle Clusterwareエンティティ・ステータスのクライアント問合せを指定します。NULLは、問合せを指定しないことを示します。

出力:

- status: 戻されるエンティティ情報が含まれるリスト。

- alist: Oracle Clusterwareによって実行されるアクションが含まれるアクション・リスト。

戻り値

- CLSCRS_STAT_SUCCESS: Oracle Clusterwareによってリクエストが正常に完了されたこと、またはエンティティがフィルタに一致しなかったことを示します。

- CLSCRS_STAT_AUTHORIZATION_FAILURE: 認可が失敗した場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

- CLSCRS_STAT_WRONG_ACTIVE_VERSION: クラスタをOracle Clusterware 12cにアップグレードする前にAPIを使用した場合に表示されます。

- CLSCRS_STAT_INTERNAL_ERROR: 予期しない非ユーザー・エラーが発生した場合に表示されます。

- CLSCRS_STAT_INVALID_ARGS: 正しくない引数が指定された場合に表示されます。

CLSCRS_STAT

clscrs_whatif_unregister_serverpool(const oratext *poolname, uword flags,
clscrs_querylist *qlist,
clscrs_crsentitylist *status,
clscrs_actionlist *alist);

clscrs_whatif_add_server

clscrs_whatif_add_server APIは、サーバーを追加した場合にOracle Clusterwareによって実行されるアクションを特定します。

パラメータ

入力:

- name: サーバーの名前。

- attrs: 指定されたサーバーの属性。

- flags: CLSCRS_FLAG_NONE

- CLSCRS_FLAG_WHATIF_VERBOSE

- CLSCRS_FLAG_FORCE

関連項目:

詳細は、CLRSCRS_FLAGの列挙を参照してください

qlist: Oracle Clusterwareエンティティ・ステータスのクライアント問合せを指定します。NULLは、問合せを指定しないことを示します。

出力:

- status: 戻されるエンティティ情報が含まれるリスト。

- alist: Oracle Clusterwareによって実行されるアクションが含まれるアクション・リスト。

戻り値

- CLSCRS_STAT_SUCCESS: Oracle Clusterwareによってリクエストが正常に完了されたこと、またはエンティティがフィルタに一致しなかったことを示します。

- CLSCRS_STAT_AUTHORIZATION_FAILURE: 認可が失敗した場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

- CLSCRS_STAT_WRONG_ACTIVE_VERSION: クラスタをOracle Clusterware 12cにアップグレードする前にAPIを使用した場合に表示されます。

- CLSCRS_STAT_INTERNAL_ERROR: 予期しない非ユーザー・エラーが発生した場合に表示されます。

- CLSCRS_STAT_INVALID_ARGS: 正しくない引数が指定された場合に表示されます。

CLSCRS_STAT

clscrs_whatif_add_server(const oratext *name, clscrs_splist *attrs, uword flags,
clscrs_querylist *qlist, clscrs_crsentitylist *status,
clscrs_actionlist *alist);

clscrs_whatif_relocate_server

clscrs_whatif_relocate_server APIは、サーバーを別のサーバー・プールに再配置した場合にOracle Clusterwareによって実行されるアクションを特定します。

パラメータ

入力:

- name: サーバーの名前。

- topool: サーバーの再配置先のサーバー・プールの名前。

- flags: CLSCRS_FLAG_NONE

- CLSCRS_FLAG_WHATIF_VERBOSE

- CLSCRS_FLAG_FORCE

関連項目:

詳細は、CLRSCRS_FLAGの列挙を参照してください

qlist: Oracle Clusterwareエンティティ・ステータスのクライアント問合せを指定します。NULLは、問合せを指定しないことを示します。

出力:

- status: 戻されるエンティティ情報が含まれるリスト。

- alist: Oracle Clusterwareによって実行されるアクションが含まれるアクション・リスト。

戻り値

- CLSCRS_STAT_SUCCESS: Oracle Clusterwareによってリクエストが正常に完了されたこと、またはエンティティがフィルタに一致しなかったことを示します。

- CLSCRS_STAT_AUTHORIZATION_FAILURE: 認可が失敗した場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

- CLSCRS_STAT_WRONG_ACTIVE_VERSION: クラスタをOracle Clusterware 12cにアップグレードする前にAPIを使用した場合に表示されます。

- CLSCRS_STAT_INTERNAL_ERROR: 予期しない非ユーザー・エラーが発生した場合に表示されます。

- CLSCRS_STAT_INVALID_ARGS: 正しくない引数が指定された場合に表示されます。

CLSCRS_STAT

clscrs_whatif_relocate_server(const oratext *name, const oratext *topool,
uword flags, clscrs_querylist *qlist,
clscrs_crsentitylist *status,
clscrs_actionlist *alist);

clscrs_whatif_delete_server

clscrs_whatif_delete_server APIは、サーバーを削除した場合にOracle Clusterwareによって実行されるアクションを特定します。

パラメータ

入力:

- name: サーバーの名前。

- flags: CLSCRS_FLAG_NONE

- CLSCRS_FLAG_WHATIF_VERBOSE

- CLSCRS_FLAG_FORCE

関連項目:

詳細は、CLRSCRS_FLAGの列挙を参照してください

qlist: Oracle Clusterwareエンティティ・ステータスのクライアント問合せを指定します。NULLは、問合せを指定しないことを示します。

出力:

- status: 戻されるエンティティ情報が含まれるリスト。

- alist: Oracle Clusterwareによって実行されるアクションが含まれるアクション・リスト。

戻り値

- CLSCRS_STAT_SUCCESS: Oracle Clusterwareによってリクエストが正常に完了されたこと、またはエンティティがフィルタに一致しなかったことを示します。

- CLSCRS_STAT_AUTHORIZATION_FAILURE: 認可が失敗した場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

- CLSCRS_STAT_WRONG_ACTIVE_VERSION: クラスタをOracle Clusterware 12cにアップグレードする前にAPIを使用した場合に表示されます。

- CLSCRS_STAT_INTERNAL_ERROR: 予期しない非ユーザー・エラーが発生した場合に表示されます。

- CLSCRS_STAT_INVALID_ARGS: 正しくない引数が指定された場合に表示されます。

CLSCRS_STAT

clscrs_whatif_delete_server(const oratext *name, uword flags,
clscrs_querylist *qlist,
clscrs_crsentitylist *status,
clscrs_actionlist *alist);

clscrs_whatif_set_activepolicy

clscrs_whatif_set_activepolicy APIは、特定のポリシーをアクティブ化した場合にOracle Clusterwareによって実行されるアクションを特定します。

パラメータ

入力:

- name: ポリシーの名前。

- flags: CLSCRS_FLAG_NONE

- CLSCRS_FLAG_WHATIF_VERBOSE

- CLSCRS_FLAG_FORCE

関連項目:

詳細は、CLRSCRS_FLAGの列挙を参照してください

qlist: Oracle Clusterwareエンティティ・ステータスのクライアント問合せを指定します。NULLは、問合せを指定しないことを示します。

出力:

- status: 戻されるエンティティ情報が含まれるリスト。

- alist: Oracle Clusterwareによって実行されるアクションが含まれるアクション・リスト。

戻り値

- CLSCRS_STAT_SUCCESS: Oracle Clusterwareによってリクエストが正常に完了されたこと、またはエンティティがフィルタに一致しなかったことを示します。

- CLSCRS_STAT_AUTHORIZATION_FAILURE: 認可が失敗した場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

- CLSCRS_STAT_WRONG_ACTIVE_VERSION: クラスタをOracle Clusterware 12cにアップグレードする前にAPIを使用した場合に表示されます。

- CLSCRS_STAT_INTERNAL_ERROR: 予期しない非ユーザー・エラーが発生した場合に表示されます。

- CLSCRS_STAT_INVALID_ARGS: 正しくない引数が指定された場合に表示されます。

CLSCRS_STAT

clscrs_whatif_set_activepolicy(const oratext *name, uword flags,
clscrs_querylist *qlist,
clscrs_crsentitylist *status,
clscrs_actionlist *alist);

サーバーのカテゴリ化API

Oracle Clusterwareは、clsrcs_entity_server_categoryというエンティティを備えています。

この項では、APIのパラメータを、入力を指定するものと、関数が正常に完了した際に情報を表示するものとに分けて説明します。

clscrs_servercategory_create

clscrs_servercategory_create APIは、サーバー・カテゴリを作成します。

パラメータ

入力:

- ctx: CLSCRSコンテキスト。

- sc_name: サーバー・カテゴリの名前。

出力:

sc: 新しく作成したサーバー・カテゴリ。

戻り値

- clscrsretSUCC: Oracle Clusterwareがリクエストを正常に完了したことを示します。

- clscrsretNOMEM: メモリーを割り当てることができない場合に表示されます。

- clscrsretBADCTX: コンテキストがNULLの場合に表示されます。

- clscrsretBADARG: サーバー名がNULLの場合に表示されます。

clscrsret

clscrs_servercategory_create(clscrs_ctx *ctx, const oratext *sc_name,
clscrs_crsentity **sc);

clscrs_servercategory_destroy

clscrs_servercategory_destroy APIは、サーバー・カテゴリ用のメモリーを解放します。

パラメータ

入力:

sc_name: メモリーを解放するために破棄するサーバー・カテゴリの名前。

戻り値

clscrsretSUCC: Oracle Clusterwareがリクエストを正常に完了したことを示します。

clscrsret

clscrs_servercategory_destroy(clscrs_crsentity **sc);

clscrs_register_servercategory

clscrs_register_servercategory APIは、入力サーバー・カテゴリ・リストに指定するサーバー・カテゴリを登録します。サーバー・カテゴリの属性は、入力サーバー・カテゴリ・リストに含まれます。op_statusリストには、各サーバー・カテゴリの登録操作の結果が含まれ、有効な属性は含まれません。コール元は、in_entitylistを作成して移入する必要があり、op_statusリストを作成する必要があります。これらのリストは両方とも、コール元によって破棄される必要があります。op_statusリストは別のAPIコールで再利用できません。これは、APIコールごとに作成して破棄する必要があります。

CLSCRS_FLAG_REG_UPDATEフラグを渡すことで、すでに登録済のサーバー・カテゴリの1つ以上の属性を変更できます。フラグは、入力エンティティ・リストのすべてのサーバー・カテゴリに適用されます。

パラメータ

入力:

- in_entitylist: 登録するサーバー・カテゴリのリスト。

- flags: CLSCRS_FLAG_REG_UPDATE

- CLSCRS_FLAG_QUEUE

- CLSCRS_FLAG_FORCE

- CLSCRS_FLAG_NONE

関連項目:

詳細は、CLRSCRS_FLAGの列挙を参照してください

- msgf: ユーザー・メッセージ・コールバック(NULLにできます)。

- msgarg: ユーザー・コールバック引数(NULLにできます)。

出力:

op_status: 各サーバー・カテゴリの登録操作のステータスを保持するエンティティ・リスト。

戻り値

- CLSCRS_STAT_SUCCESS: すべての入力サーバー・カテゴリが正常に登録されていることを示します。

- CLSCRS_STAT_FAILURE: 1つ以上のサーバー・カテゴリを登録できない場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

- CLSCRS_STAT_WRONG_ACTIVE_VERSION: クラスタをOracle Clusterware 12cにアップグレードする前にAPIを使用した場合に表示されます。

- CLSCRS_STAT_INVALID_ARGS: 入力エンティティ・リストのいずれかのサーバー・カテゴリに属性がない場合に表示されます。

CLSCRS_STAT

clscrs_register_servercategory(clscrs_crsentitylist *in_entitylist, uword flags,
clscrs_msgf2 msgf, void *msgarg,
clscrs_crsentitylist *op_status);

clscrs_unregister_servercategory

clscrs_unregister_servercategory APIは、入力リストで指定するサーバー・カテゴリを登録解除します。op_statusリストには、各サーバー・カテゴリの登録解除操作の結果が含まれます。

コール元は、sclistを作成して移入する必要があり、op_statusリストを作成する必要があります。これらのリストは両方とも、コール元によって破棄される必要があります。op_statusリストは別のAPIコールで再利用できず、APIコールごとに作成して破棄する必要があります。

パラメータ

入力:

- sclist: 登録を解除するサーバー・カテゴリのリスト。

- flags: オプション・フラグを指定します。

- msgf: ユーザー・メッセージ・コールバック(NULLにできます)。

- msgarg: ユーザー・コールバック引数(NULLにできます)。

出力:

op_status: 各サーバー・カテゴリの登録解除操作のステータスを保持するエンティティ・リスト。

戻り値

- CLSCRS_STAT_SUCCESS: すべての入力サーバー・カテゴリが正常に登録されていることを示します。

- CLSCRS_STAT_FAILURE: 1つ以上のサーバー・カテゴリを登録解除できない場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

- CLSCRS_STAT_WRONG_ACTIVE_VERSION: クラスタをOracle Clusterware 12cにアップグレードする前にAPIを使用した場合に表示されます。

CLSCRS_STAT

clscrs_unregister_servercategory(clscrs_splist *sclist, uword flags,
clscrs_msgf2 msgf, void *msgarg,
clscrs_crsentitylist *op_status);

clscrs_get_server_by_category

clscrs_get_server_by_category APIは、特定のサーバー・カテゴリに一致するサーバーのリストを取得します。

パラメータ

入力:

- in_list: サーバー・カテゴリのリストまたはフィルタ。

出力:

out_entitylist: サーバー・カテゴリに一致しているサーバーをリストします。

戻り値

- CLSCRS_STAT_SUCCESS: すべての入力サーバー・カテゴリが正常に登録されていることを示します。

- CLSCRS_STAT_FAILURE: 1つ以上のサーバー・カテゴリを登録解除できない場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

CLSCRS_STAT

clscrs_get_server_by_category(clscrs_splist *in_list,
clscrs_crsentitylist *out_entitylist);

clscrs_register_server

clscrs_register_server APIは、サーバー属性を変更します。サーバーの属性は、入力サーバー・リストに含まれます。op_statusリストには、各サーバーの変更操作の結果が含まれますが、有効な属性は含まれません。

コール元は、in_entitylistを作成して移入する必要があり、op_statusリストを作成する必要があります。これらのリストは両方とも、コール元によって破棄される必要があります。op_statusリストは別のAPIコールで再利用できず、APIコールごとに作成して破棄する必要があります。

注意:

現在、Oracleではサポートされているのみであるため、CLSCRS_FLAG_REG_UPDATEフラグは常に渡される必要があります。フラグは、入力エンティティ・リストのすべてのサーバーに適用されます。

パラメータ

入力:

- in_entitylist: 登録するサーバー・カテゴリのリスト。

- flags: CLSCRS_FLAG_QUEUE

- CLSCRS_FLAG_FORCE

- CLSCRS_FLAG_REG_UPDATE

- CLSCRS_FLAG_NONE

関連項目:

詳細は、CLRSCRS_FLAGの列挙を参照してください

- msgf: ユーザー・メッセージ・コールバック(NULLにできます)。

- msgarg: ユーザー・コールバック引数(NULLにできます)。

出力:

op_status: 各サーバーの登録操作のステータスを保持するエンティティ・リスト。

戻り値

- CLSCRS_STAT_SUCCESS: すべての入力サーバー・カテゴリが正常に登録されていることを示します。

- CLSCRS_STAT_FAILURE: 1つ以上のサーバー・カテゴリを登録できない場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

- CLSCRS_STAT_WRONG_ACTIVE_VERSION: クラスタをOracle Clusterware 12cにアップグレードする前にAPIを使用した場合に表示されます。

- CLSCRS_STAT_INVALID_ARGS: 入力エンティティ・リストのいずれかのサーバー・カテゴリに属性がない場合に表示されます。

CLSCRS_STAT

clscrs_register_server(clscrs_crsentitylist *in_entitylist, uword flags,
clscrs_msgf2 msgf, void *msgarg,
clscrs_crsentitylist *op_status);

STAT3 API

Oracle Clusterware 11gリリース2 (11.2)では、リソースやサーバー・プールなどのいくつかのエンティティが管理されます。ただし、このリリースのインタフェースでは、タイプによるエンティティの取得(読取り)のみが許可されており、1回の取得で1つのタイプのエンティティ以外を戻すことができませんでした。そのため、異なるタイプのエンティティを取得する必要があったり、さらに決定を下すためにデータ構造の一貫したビューが必要なクライアントは、特殊なイベント順序IDを使用した回避策に頼ることになり、必要に応じて問合せリクエストを複数回にわたって再発行する必要がありました(理論上、状態/構成が変化し続けるシステムでは、このような解決策には無限に時間がかかります)。

Oracle Clusterware 12cは、複数の種類のエンティティの一貫した読取りを実行するメカニズムを備えています。このメカニズムはエンティティに対して透過的に機能するため、新しい管理対象エンティティを追加してもメカニズムを変更する必要はありません。

このために使用されるのが、clscrs_stat3 APIです。

clscrs_stat3

clscrs_stat3 APIは、qlistで識別されたOracle Clusterwareエンティティに関する情報を取得します。情報はout_entitylistに戻されます。問合せは、その後の出力セットが一貫性を持つように実行されます。

clscrs_queryオブジェクトを作成し、それらをclscrs_querylistオブジェクトに追加してから、そのオブジェクトをこの関数に渡します。各エンティティ・タイプに必要な属性は、clscrs_queryオブジェクトに含まれている必要があります。属性リストが空の場合、Oracle Clusterwareによってすべての属性が戻されます。

out_entitylistは空のリストとして作成して渡す必要があります。エンティティのエラーはout_entitylistに戻されます。

出力はネストされたエンティティ・リストとして戻されます。個々の問合せの結果は、out_entitylistの各エンティティとして戻されます。個々の問合せの出力は、その特定のエンティティのエンティティ・リストとして戻されます。out_entitylistに含まれるエンティティのOracle Clusterwareエンティティ・タイプを取得するためにclscrs_crsentity_get_typeをコールすることで、エンティティの結果のタイプを確認できます。

たとえば、一方はリソース、もう一方はリソース・タイプに対する2つの問合せがある場合、out_entitylistには前述のOracle Clusterwareエンティティ・タイプそれぞれに対して1つずつ、2つのエンティティ・オブジェクトが含まれます。それらの各エンティティ・オブジェクトのエンティティ・リストには、問合せの結果が含まれます。特定のオブジェクトがどのようなタイプのエンティティ・オブジェクトかを判断するには、そのエンティティ・オブジェクトに対してclscrs_crsentity_get_type関数をコールする必要があります。問合せで0個の一致が戻された場合、そのエンティティ・オブジェクトのエンティティ・リストのサイズはゼロになります。

注意:

Oracleでは、エンティティ・タイプごとに1つのclscrs_queryオブジェクトのみがサポートされています。同じエンティティ・タイプに対して複数のclscrs_queryオブジェクトが作成された場合、Oracleではstat3 APIの動作は保証されません。

パラメータ

入力:

qlist: 問合せるOracle Clusterwareエンティティのリスト。

出力:

out_entitylist: 戻されたエンティティ情報を保持するエンティティ・リスト。

戻り値

- CLSCRS_STAT_SUCCESS: APIがOracle Clusterwareに正常に問合せを実行したことを示します。

- CLSCRS_STAT_FAILURE: Oracle Clusterwareへの問合せでエラーが発生した場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

CLSCRS_STAT

clscrs_stat3(clscrs_querylist *qlist,
uword flags,
clscrs_crsentitylist *out_entitylist);

その他のAPI

この項では、APIのパラメータを、入力を指定するものと、関数が正常に完了した際に情報を表示するものとに分けて説明します。

clscrs_get_error_details

clscrs_get_error_details APIは、他のCLSCRS APIの起動時に障害が発生した場合にclsk例外スタックを取得して戻します。

注意:

コール元がerror_bufのメモリーを割り当てます。

パラメータ

入力:

- error_buf: エラー・スタックが移入されるバッファ。

- buf_size: error_bufのバッファのサイズ。特定のバッファのサイズが必要なものよりも小さい場合、APIによって必要なバッファ・サイズの値が戻されます。

戻り値

- clscrsretSUCC: エラー・スタックが正常に出力されたことを示します。

- clscrsretEMPTY: エラー・スタックが空の場合に表示されます。

- clscrsretBADARG: error_bufかbuf_sizeのいずれかがNULLの場合に表示されます。

- clscrsretBUFFSMALL: 指定したバッファ・サイズが必要なサイズよりも小さい場合に表示されます。

clscrsret

clscrs_get_error_details(oratext* error_buf, size_t* buf_size);

clscrs_request_action

clscrs_request_action APIは、名前が指定されたリソース・セットでアクションを実行するようにOracle Clusterwareに指定します。1つ目の引数には、リソースIDのリストまたはフィルタのいずれかを指定できます。フィルタを指定すると、1回のコールで問合せとアクションを実行できます。フィルタによってすべての登録済リソースが検索されます。

パラメータ

入力:

- action_name: 実行されるアクションの名前。

- ridlist: 停止するリソースまたはリソース・インスタンスのIDのリスト、あるいはフィルタ。

- env: 停止操作に環境引数を指定します。

- msgf: ユーザー・メッセージ・コールバック(NULLにできます)。

- msgarg: ユーザー・コールバック引数(NULLにできます)。

- flag: asyncまたはqueueオプションのいずれか。

出力:

op_status: 各リソースのアクション操作のステータスを保持するリソース・リスト。

戻り値

- CLSCRS_STAT_INVALID_RESNAME: ridlistが空の場合に表示されます。

- CLSCRS_STAT_AUTHORIZATION_FAILURE: 認可が失敗した場合に表示されます。

- CLSCRS_STAT_SUCCESS: リクエストしたすべてのエンティティに対してリクエストが正常に完了した場合またはフィルタに一致するエンティティがない場合に表示されます。

- CLSCRS_STAT_FAILURE: 1つ以上のリソースまたはリソースIDが正常に停止しない場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

CLSCRS_STAT

clscrs_request_action(oratext *action_name, clscrs_splist *ridlist,
clscrs_env env, clscrs_msgf2 msgf,
void *msgarg, uword flag, clscrs_reslist *op_status);

clscrs_stop_resource_in_pools

clscrs_stop_resource_in_pools APIは、サーバー・プールで名前が指定されたリソース・セットを停止するようにOracle Clusterwareに指定します。clscrs_stop_resource2と似た機能ですが、この関数は追加の引数spoollist (サーバー・プールのリストが生成される基になるサーバー・プール名のリストまたはフィルタ)を取る点が異なります。この関数は、引数としてnodeを取りません。

パラメータ

入力:

- ridlist: 停止するリソースまたはリソース・インスタンスのIDのリスト、あるいはフィルタ。

- spoollist: 停止するリソースが実行されているサーバー・プール名のリスト、またはフィルタ。

- env: 停止操作に環境引数を指定します。

- msgf: ユーザー・メッセージ・コールバック(NULLにできます)。

- msgarg: ユーザー・コールバック引数(NULLにできます)。

- flag: async、forceまたはeventオプションのいずれか。

出力:

op_status: 各リソースの停止操作のステータスを保持するリソース・リスト。

戻り値

- CLSCRS_STAT_INVALID_RESNAME: ridlistが空の場合に表示されます。

- CLSCRS_STAT_AUTHORIZATION_FAILURE: 認可が失敗した場合に表示されます。

- CLSCRS_STAT_SUCCESS: リクエストしたすべてのエンティティに対してリクエストが正常に完了した場合またはフィルタに一致するエンティティがない場合に表示されます。

- CLSCRS_STAT_FAILURE: 1つ以上のリソースまたはリソースIDが正常に停止しない場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

CLSCRS_STAT

clscrs_stop_resource_in_pools(clscrs_splist *ridlist,clscrs_splist *spoollist,
clscrs_env env,clscrs_msgf2 msgf2, void *msgarg,
uword flags, clscrs_reslist *op_status);

clscrs_start_resource_in_pools

clscrs_start_resource_in_pools APIは、サーバー・プールで名前が指定されたリソース・セットを起動するようにOracle Clusterwareに指定します。clscrs_start_resource2と似た機能ですが、この関数は追加の引数spoollist (サーバー・プールのリストが生成される基になるサーバー・プール名のリストまたはフィルタ)を取る点が異なります。この関数は、引数としてnodeを取りません。

パラメータ

入力:

- ridlist: 起動するリソースまたはリソース・インスタンスのIDのリスト、あるいはフィルタ。

- spoollist: 起動するリソースが実行されているサーバー・プール名のリスト、またはフィルタ。

- env: 起動操作に環境引数を指定します。

- msgf: ユーザー・メッセージ・コールバック(NULLにできます)。

- msgarg: ユーザー・コールバック引数(NULLにできます)。

- flag: async、forceまたはeventオプションのいずれか。

出力:

op_status: 各リソースの起動操作のステータスを保持するリソース・リスト。

戻り値

- CLSCRS_STAT_INVALID_RESNAME: ridlistが空の場合に表示されます。

- CLSCRS_STAT_AUTHORIZATION_FAILURE: 認可が失敗した場合に表示されます。

- CLSCRS_STAT_SUCCESS: リクエストしたすべてのエンティティに対してリクエストが正常に完了した場合またはフィルタに一致するエンティティがない場合に表示されます。

- CLSCRS_STAT_FAILURE: 1つ以上のリソースまたはリソースIDが正常に起動しない場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

CLSCRS_STAT

clscrs_start_resource_in_pools(clscrs_splist *ridlist,clscrs_splist *spoollist,
clscrs_env env,clscrs_msgf2 msgf2, void *msgarg,
uword flags, clscrs_reslist *op_status);

clscrs_restart_resource

clscrs_restart_resource APIは、名前が指定されたリソース・セットを再起動するようにOracle Clusterwareに指定します。フラグがasyncの場合、指定したmsgfコールバック関数はコールされません。このAPIでは、Oracle Clusterwareへのコール開始後にOKステータスが戻され、非同期に再起動が実行されます。

フラグがasync以外で、msgfがNULL以外の場合、APIでは再起動プログラムから収集された出力によってmsgfが一度に1行ずつ処理されます。オプションのeventフラグを渡すことで、これがアクションを実行するリクエストではなく、アクションがすでに開始されていることを通知するものであると示すことができます。このフラグは、共通管理対象リソースの限定的なセットのみに対して使用することをお薦めします。

1つ目の引数には、リソースIDのリストまたはフィルタのいずれかを指定できます。フィルタを指定すると、1回のコールで問合せとアクションを実行できます。フィルタによってすべての登録済リソースが検索されます。

パラメータ

入力:

- ridlist: 再起動するリソースまたはリソース・インスタンスのIDのリスト、あるいはフィルタ。

- env: 再起動操作に環境引数を指定します。

- msgf: ユーザー・メッセージ・コールバック(NULLにできます)。

- msgarg: ユーザー・コールバック引数(NULLにできます)。

- flag: async、forceまたはeventオプションのいずれか。

出力:

op_status: 各リソースの再起動操作のステータスを保持するリソース・リスト。

戻り値

- CLSCRS_STAT_INVALID_RESNAME: ridlistが空の場合に表示されます。

- CLSCRS_STAT_AUTHORIZATION_FAILURE: 認可が失敗した場合に表示されます。

- CLSCRS_STAT_SUCCESS: リクエストしたすべてのエンティティに対してリクエストが正常に完了した場合またはフィルタに一致するエンティティがない場合に表示されます。

- CLSCRS_STAT_FAILURE: 1つ以上のリソースまたはリソースIDが正常に起動しない場合に表示されます。

- CLSCRS_STAT_CONNECTION: 通信エラーが発生した場合に表示されます。

- CLSCRS_STAT_WRONG_ACTIVE_VERSION: クラスタをOracle Clusterware 12cにアップグレードする前にAPIを使用した場合に表示されます。

CLSCRS_STAT

clscrs_restart_resource(clscrs_splist *ridlist,
clscrs_env env, clscrs_msgf2 msgf, void *msgarg,
uword flag, clscrs_reslist *op_status);

I Oracle Cluster Registryユーティリティ・リファレンス

この付録はOracle Cluster Registry(OCR)構成ユーティリティOCRCONFIGの構文およびOCRのトラブルシューティングについて説明します。OCRCHECKとOCRDUMPに関する説明および使用情報も含まれています。

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

- OCRCONFIGについて

- OCRCONFIGコマンド・リファレンス

- Oracle Cluster Registryのトラブルシューティングおよび診断出力

OCRCONFIGについて

ocrconfigコマンドを使用して、OCRを管理します。このユーティリティを使用すると、OCRのインポート、エクスポート、追加、削除、リストア、上書き、バックアップ、修復、置換、移動、アップグレードまたはダウングレードを行うことができます。

使用方法

- OCRCONFIG実行可能ファイルは、Grid_home/binディレクトリに格納されています。

- ocrconfig コマンドの構文は次のとおりです。

ocrconfig -option

ユーティリティ・ヘルプの使用

OCRCONFIGユーティリティのヘルプ出力を表示するには、次のコマンドを使用します。

ocrconfig -help

権限およびセキュリティ

OCRCONFIGユーティリティを使用するには、管理権限を持つユーザーとしてオペレーティング・システムにログインする必要があります。

ログ・ファイル

OCRCONFIGユーティリティを実行すると、Grid_home/log/host_name/clientにログ・ファイルが作成されます。

ロギングの量を変更するには、Grid_home/srvm/admin/ocrlog.iniファイルのパスを編集します。

OCRCONFIGコマンド・リファレンス

この項では、CRCONFIGコマンドについて説明します。

ocrconfig -add

ocrconfig -addコマンドを使用して、共有ファイル・システムまたはOracle Automatic Storage Management (Oracle ASM)ディスク・グループにOCRの場所を追加します。追加するOCRの場所が存在し、十分な権限を所有している必要があり、また、Oracle ASMディスク・グループの場合、この場所はマウントしてから追加する必要があります。

構文

ocrconfig -add location_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- location_name変数は、ファイル名またはOracle ASMディスク・グループの名前です。次に例を示します。

- /oradbocfs/crs/data.ocr: 空(0バイト)のOCRの場所を作成する必要があります

- d:\oracle\mirror.ocr: 空(0バイト)のOCRの場所を作成する必要があります

- +newdg: ディスク・グループが存在し、マウントされていることを確認します。
Oracle ASMディスク・グループを指定する場合は、ディスク・グループの名前の前にプラス記号(+)を付ける必要があります。

関連項目:

- OCRの場所の作成、および適切な権限の設定の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

例

dataというOracle ASMのデフォルトの場所にOCRの場所を追加するには、次のコマンドを使用します。

# ocrconfig -add +data

ocrconfig -backuploc

ocrconfig -backuplocコマンドを使用して、OCRバックアップ・ディレクトリの場所を指定します。

構文

ocrconfig [-local] -backuploc file_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- -localオプションを使用して、OLRバックアップ・ディレクトリの場所を指定します。

- file_name変数は、すべてのノードからアクセス可能なディレクトリのフルパス名です。OCRバックアップの場所の場合、file_name変数はOracle ASMディスク・グループにすることもできます。次に例を示します。

- Grid_home/cdata/cluster3/: 場所が存在することを確認します

- d:\cdata\cluster3: 場所が存在することを確認します

- +bkupdg: Oracle ASMディスク・グループが存在し、すべてのノードにマウントされていることを確認します
Oracle ASMディスク・グループを指定する場合は、ディスク・グループの名前の前にプラス記号(+)を付けてください。

Oracle ASMディスク・グループをバックアップの場所として使用することは、OCRに対してのみサポートされています。

OCRバックアップの場所をOracle ASMディスク・グループに変更する前に、OCRをOracle ASMに移行する必要があります。

別個のディスク・グループに1つ以上のOracle ASM OCRの場所がある場合のみ、OCRバックアップの場所をOracle ASMディスク・グループに変更できます。

- LinuxまたはUNIXシステムでOCRバックアップが生成されるデフォルトの場所は、Grid_home/cdata/cluster_nameで、cluster_nameは、使用しているクラスタ名です。WindowsでOCRバックアップが生成されるデフォルトの場所は、同じパス構造を使用します。

- LinuxまたはUNIXシステムでOLRバックアップが生成されるデフォルトの場所はGrid_home/cdata/host_nameで、host_nameは、バックアップ対象のOLRが存在するノードの名前です。WindowsでOLRバックアップが生成されるデフォルトの場所は、同じパス構造を使用します。

例

ディレクトリのOCRバックアップの場所を指定するには、次のコマンドを使用します。

# ocrconfig -backuploc $Grid_home/cdata/cluster3

OCRバックアップの場所をOracle ASMディスク・グループに指定するには、次のようにします。

# ocrconfig –backuploc +bkupdg

ocrconfig -copy

ocrconfig -copyコマンドを使用して、OCRバックアップ・ファイルを別の場所にコピーします。

構文

ocrconfig -copy source_file_name destination_file_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- source_file_nameには有効なOCRバックアップ・ファイルを指定する必要があります。次に例を示します。

- /oradbocfs/crs/BACKUP00.ocr

- d:\oracle\BACKUP01.ocr

- +bkupdg:/aimev1/ocrbackup/day.ocr.260.739756845

Oracle ASMディスク・グループを指定した場合は、そのディスク・グループが存在し、マウントされていることを確認します。

有効なdestination_file_name値の例を次に示します。

- /oradbocfs/crs/mybkp01.ocr

- d:\oracle\mybkp01.ocr

- +bkupdg:mybkp01

Oracle ASMディスク・グループの名前の前にプラス記号(+)を付ける必要があります。

例

OCRバックアップ・ファイルをファイル・システムからOracle ASMディスク・グループにコピーするには、次のコマンドを実行します。

# ocrconfig -copy /oradbocfs/crs/BACKUP00.ocr +bkupdg:mybkp01.ocr

OCRバックアップ・ファイルをOracle ASMディスク・グループからファイル・システムにコピーするには、次のコマンドを実行します。

$ ocrconfig -copy +bkupdg:/aimev1/ocrbackup/day.ocr.260.739756845 /oradbocfs/crs/mybkp01.ocr

OCRバックアップ・ファイルをあるOracle ASMディスク・グループから別のOracle ASMディスク・グループにコピーするには、次のコマンドを実行します。

$ ocrconfig -copy +bkupdg01:/aimev1/ocrbackup/day.ocr.260.739756845 +bkupdg02:mybkp01.ocr

ocrconfig -delete

ocrconfig -deleteコマンドを使用して、OCRデバイスまたはファイルを削除します。

構文

ocrconfig -delete file_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- file_name変数は、ファイル名またはOracle ASMディスク・グループの名前です。次に例を示します。

- /oradbocfs/crs/data.ocr

- d:\oracle\mirror.ocr

- +olddg

Oracle ASMディスク・グループを指定する場合は、ディスク・グループの名前の前にプラス記号(+)を付ける必要があります。

- 構成済の唯一のOracle ASM OCRの場所は、Oracle ASM OCRバックアップの場所とは異なるOracle ASMディスク・グループにあり、削除することはできません。

例

OCRの場所を削除するには、次のコマンドを使用します。

# ocrconfig -delete +olddg

ocrconfig -downgrade

ocrconfig -downgradeコマンドを使用して、指定した以前のバージョンにOCRをダウングレードします。

構文

ocrconfig -downgrade [-version version_string]

使用上の注意

このコマンドは、rootで実行する必要があります。

例

OCRを以前のバージョンにダウングレードするには、次のコマンドを使用します。

# ocrconfig -downgrade -version 11.1.0.7

ocrconfig -export

ocrconfig -exportコマンドを使用して、OCRの内容をターゲット・ファイルにエクスポートします。

構文

ocrconfig [-local] -export file_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- -localオプションを使用して、OLRの内容をエクスポートします。

- file_name変数は、フル・パス名です。次に例を示します。

- /oradbocfs/crs/data.ocr

- d:\oracle\

例

OCRの内容をファイルにエクスポートするには、次のコマンドを使用します。

# ocrconfig -export d:\tmp\a

ocrconfig -import

ocrconfig -importコマンドを使用して、ターゲット・ファイルの内容(OCRの内容をエクスポートしたもの)を、OCRにインポートします。

構文

ocrconfig [-local] -import file_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- -localオプションを使用して、OLRの内容をファイルからインポートします。

- file_name変数は、すべてのノードからアクセス可能なフルパス名です。次に例を示します。

- /oradbocfs/crs/data.ocr

- d:\oracle\

- このコマンドを実行する前にOracle Clusterwareを停止する必要があります。

例

ファイルの内容をOCRにインポートするには、次のコマンドを使用します。

# ocrconfig -import d:\tmp\a

ocrconfig -manualbackup

ocrconfig -manualbackup コマンドを使用して、-backuplocオプションで指定した場所に必要に応じてOCRをバックアップします。

構文

ocrconfig [-local] -manualbackup

使用上の注意

- このコマンドは、rootで実行する必要があります。

- -localオプションを使用して、OLRの手動バックアップを実行します。

例

OCRをバックアップするには、次のコマンドを使用します。

# ocrconfig -manualbackup

ocrconfig -overwrite

ocrconfig -overwriteコマンドを使用して、OCRメタデータのOCR構成を、このコマンドが実行されたノードで検出された現行のOCR構成情報で上書きします。

構文

ocrconfig -overwrite

使用上の注意

このコマンドは、rootで実行する必要があります。

例

OCR構成を上書きするには、次のコマンドを使用します。

# ocrconfig -overwrite

ocrconfig -repair

ocrconfig -repairコマンドを使用して、このコマンドを実行するノードのOCR構成を修復します。このコマンドを使用して、クラスタのOCR構成の変更中に停止していた可能性のあるノードのOCRの場所を追加、削除または置換します。追加するOCRの場所が存在し、十分な権限を所有している必要があり、また、Oracle ASMディスク・グループの場合、この場所はマウントしてから追加する必要があります。

構文

ocrconfig -repair -add file_name | -delete file_name | -replace
current_file_name -replacement new_file_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- 修復を正常に完了させるには、Oracle高可用性サービスを起動する必要があります。

- ocrconfig -repairを実行する前にクラスタ・レディ・サービス・デーモンを停止する必要があります。

- file_name変数は、有効なOCRと、既存のファイルの絶対パス名またはOracle ASMディスク・グループの名前のいずれかです。次に例を示します。

- /oradbocfs/crs/data.ocr

- d:\oracle\mirror.ocr

- +newdg/mycluster/OCRFILE/registry.255.842574125
Oracle ASMディスク・グループを指定する場合は、ディスク・グループの名前の前にプラス記号(+)を付ける必要があります。

Oracle ASMディスク・グループの名前を取得するには、OCR構成を修復する必要がないノードでocrcheck -config -detailsコマンドを実行します。

関連項目:

- OCRの作成および適切な権限の設定の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

- ocrcheck -config -detailsコマンドの詳細は、「OCRCHECKユーティリティの使用」を参照してください。

- ocrconfig -repairと同時に使用できるオプションは1つのみです。

- このコマンドの実行によって変更されるのはローカル構成のみであり、影響を受けるのは現行のノードのみです。

例

OCR構成を修復するには、次の手順を実行する必要があります。

# ocrconfig -repair -delete +olddg

ocrconfig -replace

ocrconfig -replaceコマンドを使用して、このコマンドを実行するノードのOCRデバイスまたはファイルを置換します。追加するOCRの場所が存在し、十分な権限を所有している必要があり、また、Oracle ASMディスク・グループの場合、この場所はマウントしてから追加する必要があります。

構文

ocrconfig -replace current_location_name -replacement new_location_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- new_location_name変数は、ファイル名またはOracle ASMディスク・グループの名前です。次に例を示します。

- /oradbocfs/crs/data.ocr: 空(0バイト)のOCRの場所を作成する必要があります

- d:\oracle\mirror.ocr: 空(0バイト)のOCRの場所を作成する必要があります

- +newdg: ディスク・グループが存在し、マウントされていることを確認します。
Oracle ASMディスク・グループを指定する場合は、ディスク・グループの名前の前にプラス記号(+)を付ける必要があります。

関連項目:

- OCRの作成および適切な権限の設定の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

- このコマンドを使用するには2つ以上のOCRデバイスが必要です。OCRデバイスが2つ未満の場合、ocrconfig -addコマンドを実行して新しいOCRデバイスを追加してからocrconfig -deleteコマンドを実行し、置換するOCRデバイスを削除します。

例

OCRデバイスまたはファイルを置換するには、次のコマンドを使用します。

# ocrconfig -replace /oradbocfs/crs/data.ocr -replacement +newdg

ocrconfig -restore

ocrconfig -restoreコマンドを使用して、自動的に作成されたOCRバックアップ・ファイルからOCRをリストアします。

構文

ocrconfig [-local] -restore file_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- OCRバックアップ・ファイルがOracle ASMディスク・グループにある場合、ディスク・グループが存在し、マウントされていることを確認します。

- このコマンドを実行する前に、元のOCRファイルまたはOLRファイルが存在することを確認します。元のファイルが存在しない場合、空のファイルを作成する必要があります。

注意:

ocrconfig -exportによって生成されたファイルを使用してOCRをリストアすることはできません。ファイルは手動バックアップまたは自動バックアップである必要があります。

- -localオプションを使用して、OLRのバックアップをリストアします。

- 次にファイル名の例を示します。

- /oradbocfs/crs/BACKUP00.ocr

- d:\oracle\BACKUP01.ocr

- +bkupdg:/aimev1/ocrbackup/day.ocr.260.739756845

- OCRがOracle ASMディスク・グループに存在する場合、ディスク・グループが存在し、マウントされていることを確認します。

例

ファイルからOCRをリストアするには、次のコマンドを使用します。

# ocrconfig -restore /oradbocfs/crs/BACKUP00.ocr

ocrconfig -showbackup

ocrconfig -showbackupコマンドを使用して、使用可能なすべてのバックアップを表示します。このコマンドにautoまたはmanualを指定しないと、自動および手動の両方のバックアップに関する情報がデフォルトで表示されます。

構文

ocrconfig [-local] -showbackup [auto | manual]

使用上の注意

- -localオプションを使用して、手動のOLRバックアップ情報を表示します。-localフラグは、manualオプションとあわせて指定した場合にのみ機能します。

- 必要に応じてautoまたはmanualを指定して、自動バックアップまたは手動バックアップのいずれかの情報のみを表示することもできます。

- auto: 過去4時間、8時間、12時間、前日および先週に作成された自動バックアップの情報を表示します。

- manual: ocrconfig -manualbackupコマンドを使用して、最後から最大5つの手動バックアップの情報を表示します。

例

このコマンドは、次のようにOLRの手動バックアップ情報を表示します。

$ ocrconfig -local -showbackup manual

cc40524 2012/10/12 15:06:57 /mjk_has5/oracle/log/srvm/backup_20121012_150657.olr

ocrconfig -showbackuploc

ocrconfig -showbackuplocコマンドを使用して、OCRおよびOLRバックアップ・ファイルのバックアップの場所を表示します。

構文

ocrconfig [-local] -showbackuploc

使用上の注意

- このコマンドは、rootで実行する必要があります

- -localオプションを使用して、OLRバックアップの場所を表示します。

例

ocrconfig -showbackuplocコマンドでは次のような出力が返されます。

# ocrconfig -showbackuploc

The Oracle Cluster Registry backup location is [+bkupdg]

# ocrconfig -local -showbackuploc

The Oracle Local Registry backup location is [/gridhome/oracle/log/srvm]

ocrconfig -upgrade

rootスクリプトのみがocrconfig -upgradeコマンドを使用して、OCRを以前のバージョンからアップグレードします。

Oracle Cluster Registryのトラブルシューティングおよび診断出力

この項では、OCRに関する問題のトラブルシューティングを行う様々な方法およびOCRの管理に使用されるユーティリティから診断情報を取得する様々な方法について説明します。これらのユーティリティは、OLRのトラブルシューティングにも使用できます。

この項では、次の項目について説明します。

- Oracle Cluster Registryのトラブルシューティング

- OCRCHECKユーティリティの使用

- OCRDUMPユーティリティを使用したOracle Cluster Registryの内容の表示

Oracle Cluster Registryのトラブルシューティング

表I-1に、OCRの一般的な問題およびそれに対応する推奨の解決策を示します。

表I-1 Oracle Cluster Registryの一般的な問題および解決策

問題点

解決策

現在使用されていないOCRのミラー化を有効にする必要があります。

-replaceオプションを指定してocrconfigコマンドを実行します。

OCRに障害が発生したため、置換する必要があります。Oracle Enterprise ManagerまたはOCRのログ・ファイルにエラー・メッセージが書き込まれます。

-replaceオプションを指定してocrconfigコマンドを実行します。

OCRの構成が不適切です。

説明されているように、-repairオプションを指定してocrconfigコマンドを実行します。

OCRの処理によってパフォーマンスに重大な影響が及ぼされたか、または他の理由のためにOCRを削除します。

説明されているように、-replaceオプションを指定してocrconfigコマンドを実行します。

OCRに障害が発生したため、修正する前に、1つのOCRのみを使用してノードを再起動する必要があります。

-repairオプションを指定してocrconfigを実行し、問題のあるOCRの場所を削除します。定義済のすべてのOCRが見つからない場合、Oracle Clusterwareは起動されません。

OCRCHECKユーティリティの使用

OCRCHECKユーティリティを実行すると、構成したOCRのブロック形式のバージョン、使用可能な領域の合計、使用済の領域、OCRのIDおよび場所が表示されます。OCRCHECKでは、構成したすべてのOCRにあるすべてのブロックに対して、ブロック単位のchecksum操作が実行されます。各ファイルごとのステータスと、OCR全体の整合性チェックの結果も返されます。

注意:

Oracleでは、最低でもOracleクラスタ・レディ・サービス・スタックがクラスタ内のすべてのノードでOFFLINEの場合、ocrcheckの使用がサポートされています。これは、スタックがONLINEの場合でもコマンドは実行されますが、OCRの更新が進行中のときにチェックが実行されると、OCRは破損していると誤って示されることがあるためです。

関連項目:

Oracleクラスタ・レディ・サービス・スタックの詳細は、「Oracle Clusterware技術スタック」を参照してください。

構文

ocrcheck [-local] [-config] [-details] [-help]

ocrcheck -helpコマンドを実行して、このユーティリティの使用方法を表示します。

-detailsオプションを指定すると、Oracle ASMディスク・グループの名前を含む、詳しいOCR構成情報が表示されます。

例

例I-1 OCRCHECKユーティリティのサンプル出力

# ocrcheck

Status of Oracle Cluster Registry is as follows :
Version                  :          4
Total space (kbytes)     :     409568
Used space (kbytes)      :      17012
Available space (kbytes) :     392556
ID                       :  467263828
Device/File Name         : +ocrdg1
Device/File integrity check succeeded
Device/File Name         : +ocrdg2
Device/File integrity check succeeded
Device/File not configured
Device/File not configured
Device/File not configured
Cluster registry integrity check succeeded
Logical corruption check succeeded

注意:

論理破損チェックは、rootとしてocrcheckコマンドが実行される場合のみ実行されます。

例I-2では、ocrcheck -local -configコマンドを使用してOLR情報を取得します。

注意:

Oracleクラスタ・レディ・サービス・スタックとOracle高可用性サービス・スタックの両方がローカル・ノードでOFFLINEの場合、Oracleでは、ocrcheck -localコマンドの使用がサポートされています。

関連項目:

Oracleクラスタ・レディ・サービス・スタックおよびOracle高可用性サービス・スタックの詳細は、「Oracle Clusterware技術スタック」を参照してください。

例I-2 OLR情報を取得するOCRCHECKの使用

$ ocrcheck -local -config

Oracle Local Registry configuration is :
Device/File Name         : /scratch/oracle/crshome/cdata/rwsbg08.olr

例I-3では、ocrcheck -config -detailsコマンドを使用して、Oracle ASMディスク・グループでのOCRの場所を取得します。

例I-3 OCR情報を取得するOCRCHECKの使用

$ ocrcheck -config -details

Oracle Cluster Registry configuration is :
Device/File Name         : +ocrvd11/mjk_1/OCRFILE/registry.255.842574113
Device/File Name         : +ocrdv2/mjk_1/OCRFILE/registry.255.842574125

例I-4では、ocrcheck -detailsコマンドを使用して、さらに詳しいOCR構成を取得します。

例I-4 OCRの詳細情報を取得するOCRCHECKの使用

$ ocrcheck -details

Status of Oracle Cluster Registry is as follows :
Version                  :          4
Total space (kbytes)     :     409568
Used space (kbytes)      :      17012
Available space (kbytes) :     392556
ID                       :  467263828
Device/File Name         : +OCRVD11/mycluster/OCRFILE/registry.255.842574113
Device/File integrity check succeeded
Device/File Name         : +OCRVD2/mycluster/OCRFILE/registry.255.842574125
Device/File integrity check succeeded
Device/File not configured
Device/File not configured
Device/File not configured
Cluster registry integrity check succeeded
Logical corruption check succeeded

例I-5では、共有ファイル・システムにあるOCRの例を示します。

例I-5 共有ファイル・システムにあるOCR

$ ocrcheck -config

Oracle Cluster Registry configuration is :
Device/File Name         : /nas/data.ocr
Device/File Name         : /nas2/mirror.ocr
Device/File Name         : /nas3/mirror2.ocr
.
.
.
Status of Oracle Cluster Registry is as follows :
Version                  :          4
Total space (kbytes)     :     409568
Used space (kbytes)      :      17012
Available space (kbytes) :     392556
ID                       :  157485888
Device/File Name         : /dev/raw/raw15
Device/File integrity check succeeded
Device/File Name         : /dev/raw/raw17
Device/File integrity check succeeded
Device/File Name         : /dev/raw/raw16
Device/File integrity check succeeded
Device/File not configured
Device/File not configured
Cluster registry integrity check succeeded
Logical corruption check succeeded

OCRCHECKによって、Grid_home/diag/crs/host_name/crs/traceディレクトリにログ・ファイルが作成されます。ログ・レベルを変更するには、Grid_home/srvm/admin/ocrlog.iniファイルを編集します。

OCRDUMPユーティリティを使用したOracle Cluster Registryの内容の表示

この項では、OCRDUMPユーティリティを使用してトラブルシューティングのためにOCRおよびOracle Local Registry(OLR)の内容を表示する方法について説明します。OCRDUMPユーティリティを使用すると、OCRおよびOLRの内容を読みやすい形式でファイルまたはstdoutに書き込むことによって表示できます。

OCRDUMPにはいくつかのオプションを使用できます。たとえば、出力をキーおよびその子に制限できます。ブラウザを使用して表示可能なXMLファイルに内容を書き込むこともできます。OCRDUMPは、ASCII文字列およびデータ型形式の値としてOCRのキーを書き込みます。OCRDUMPは、ベスト・エフォート原則に基づいてヘッダー情報を取得します。

また、OCRDUMPを実行すると、Grid_home/log/host_name/clientにログ・ファイルが作成されます。ログ・レベルを変更するには、Grid_home/srvm/admin/ocrlog.iniファイルを編集します。

ロギング・コンポーネントを変更するには、comploglvl=エントリを含むエントリを編集します。たとえば、OCRAPIコンポーネントのログ・レベルを3に変更し、OCRRAWコンポーネントのログ・レベルを5に変更するには、ocrlog.iniファイルに次のエントリを作成します。

comploglvl="OCRAPI:3;OCRRAW:5"

注意:

OCRDUMPユーティリティを使用する前に、Grid_homeディレクトリにファイルを作成する権限を持っていることを確認してください。

この項には次のトピックが含まれます:

- OCRDUMPユーティリティの構文およびオプション

- OCRDUMPユーティリティの例

- OCRDUMPユーティリティの出力例

OCRDUMPユーティリティの構文およびオプション

この項では、OCRDUMPユーティリティのコマンド構文および使用方法について説明します。次の構文を使用してocrdumpコマンドを実行します(この場合、file_nameにはOracle Cluster Registryの出力を書き込むターゲット・ファイルの名前、key_nameにはOracle Cluster Registryのサブツリーの内容を書き込むキーの名前を指定します)。

$ ocrdump [file_name | -stdout] [-local] [-backupfile backup_file_name
[-keyname key_name] [-xml] [-noheader]
]

表I-2に、OCRDUMPユーティリティのオプションおよびオプションの説明を示します。

表I-2 OCRDUMPのオプションおよびオプションの説明

オプション

説明

file_name

OCRDUMPによって出力を書き込むファイルの名前です。

デフォルトでは、OCRDUMPによって、事前定義された出力ファイルOCRDUMPFILEに出力が書き込まれます。file_nameオプションによって、OCRDUMP出力は指定したファイルにリダイレクトされます。

-stdout

このオプションを使用して、プログラムを起動したテキスト端末にOCRDUMP出力をリダイレクトできます。

出力をリダイレクトしない場合、OCRDUMPによって、事前定義された出力ファイルOCRDUMPFILEに出力が書き込まれます。

-local

OLRの内容をダンプするには、このオプションを使用します。

-backupfile

OCRバックアップ・ファイルの内容を表示するには、このオプションを使用します。-localオプションをこのオプションとともに使用すると、OLRバックアップ・ファイルの内容が表示されます。

backup_file_name

表示する内容を含むバックアップ・ファイルの名前です。ocrconfig -showbackupコマンドを使用して、バックアップを問い合せることができます。バックアップ・ファイルがOracle ASMディスク・グループにある場合、ディスク・グループが存在し、マウントされていることを確認します。

-keyname key_name

サブツリーがダンプされるOracle Cluster Registryキーの名前です。

-xml

出力をXML形式で書き込むにはこのオプションを使用します。

-noheader

コマンドを実行した時間およびOracle Cluster Registry構成が作成された時間を出力しません。

OCRDUMPユーティリティの例

次に示すocrdumpユーティリティの例では、様々なタイプのOCR情報を抽出し、様々なターゲットに書き込みます。

ocrdump

OCRの内容を現在のディレクトリのOCRDUMPFILEというファイルに書き込みます。

ocrdump MYFILE

OCRの内容を現在のディレクトリのMYFILEというファイルに書き込みます。

ocrdump -stdout -keyname SYSTEM

OCRの内容をSYSTEMキーのサブツリーから端末ウィンドウに表示します。

ocrdump -stdout -xml

OCRの内容をXML形式で端末ウィンドウに表示します。

ocrdump -stdout -backupfile Grid_home/cdata/cluster_name/file_name

Grid_home/cdata/cluster_name/file_nameディレクトリのコンテンツを表示します。すべてのキーを表示できるようにするには、このコマンドをrootで実行する必要があります。OCRバックアップ・ファイルであることを認識できるように、ファイルにはBACKUPOO.ocrなどの適切な名前を付けてください。

OCRDUMPユーティリティの出力例

次のOCRDUMPの例は、ocrdumpコマンドの2つの実行例について、KEYNAME、VALUE TYPE、VALUE、権限のセット(user、group、world)およびアクセス権を示します。テキスト値がAMERICAN_AMERICA.WE8ASCII37であるSYSTEM.languageキーの出力を次に示します。

[SYSTEM.language]
ORATEXT : AMERICAN_AMERICA.WE8ASCII37
SECURITY : {USER_PERMISSION : PROCR_ALL_ACCESS, GROUP_PERMISSION : PROCR_READ,
OTHER_PERMISSION : PROCR_READ, USER_NAME : user, GROUP_NAME : group}

3という整数値を持つSYSTEM.versionキーの出力を次に示します。

[SYSTEM.version]
UB4 (10) : 3
SECURITY : {USER_PERMISSION : PROCR_ALL_ACCESS, GROUP_PERMISSION : PROCR_READ,
OTHER_PERMISSION : PROCR_READ, USER_NAME : user, GROUP_NAME : group}

J Oracle Clusterwareのトラブルシューティング

この付録では、Oracle Clusterware環境の監視について説明し、動的デバッグを有効にして、Oracle Clusterwareの処理のトラブルシューティングを行う方法、また特定のコンポーネントおよび特定のOracle Clusterwareリソースのデバッグおよびトレースを有効にして、トラブルシューティングの対象を絞り込む方法について示します。

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

- Oracle Clusterwareの監視

- Oracle Clusterwareの診断およびアラート・ログ・データ

- 診断収集スクリプト

- ローリング・アップグレードおよびドライバのインストールに関する問題

- Oracleトレース・ファイル・アナライザ・コレクタ

- ゾーン委任のテスト

- Oracle Clusterwareアラート

Oracle Clusterwareの監視

様々なツールを使用して、Oracle Clusterwareを監視できます。円滑な操作を確実に行うために、Oracle Enterprise Managerを使用してOracle Clusterwareの日々の操作を監視することをお薦めしますが、Cluster Health Monitor (CHM)は、オペレーティング・システムを含む技術スタック全体を監視します。いずれのツールもOracleクラスタに対してデフォルトで有効であり、これらを使用することをお薦めします。

この項には次のトピックが含まれます:

- Oracle Enterprise Manager

- クラスタ状態モニター

- OCLUMONコマンドのリファレンス

Oracle Enterprise Manager

Oracle Enterprise Managerを使用して、Oracle Clusterware環境を監視できます。クライアント・ブラウザを使用してOracle Enterprise Managerにログインすると、クラスタ・データベースの「ホーム」ページが表示され、両方のOracle Clusterware環境のステータスを監視できます。監視には次のタスクが含まれます。

- VIPの再配置が行われた場合の通知

- クラスタ検証ユーティリティ(cluvfy)により取得した情報を使用する、クラスタの各ノードのOracle Clusterwareのステータス

- ノード・アプリケーション(nodeapps)が起動または停止した場合の通知

- Oracle Cluster Registryに対するOracle Clusterwareのアラート・ログの問題、投票ファイルの問題(発生した場合)およびノードの排除の通知

「クラスタ・データベース: ホーム」ページは、単一インスタンスの「データベース: ホーム」ページに似ています。ただし、クラスタ・データベースの「ホーム」ページには、Oracle Enterprise Managerにより、システムの状態と可用性が表示されます。これには、アラート・メッセージおよびジョブ・アクティビティのサマリーと、すべてのデータベースおよびOracle Automatic Storage Management (Oracle ASM)インスタンスへのリンクも含まれます。たとえば、すべての優先インスタンスでサービスが実行されていない場合、またはサービスの応答時間のしきい値条件が満たされていない場合などに、クラスタでのサービスに関する問題を追跡できます。

Oracle Enterprise Managerの「インターコネクト」ページを使用して、Oracle Clusterware環境を監視できます。「インターコネクト」ページには、次に示すように、クラスタのパブリックおよびプライベートのインタフェース、プライベート・インターコネクトの全体的なスループット、各ネットワーク・インタフェースの個々のスループット、エラー率(発生した場合)およびインターコネクトのデータベース・インスタンスによる負荷が表示されます。

- プライベート・インターコネクトでの全体的なスループット

- 構成ミスのためデータベース・インスタンスがパブリック・インタフェースを使用している場合の通知

- インターコネクトのスループットおよびエラー(発生した場合)

- インスタンスごとのインターコネクトのスループット

これらの情報はすべて、履歴表示を含む収集としても使用することができます。これは、クラスタの待機イベントに関連する問題を診断する場合など、クラスタ・キャッシュ一貫性と併用すると役立ちます。クラスタ・データベースの「ホーム」ページで、「インターコネクト」タブをクリックすると、「インターコネクト」ページにアクセスできます。

また、Oracle Enterprise Managerのクラスタ・データベースの「パフォーマンス」ページには、データベースのパフォーマンス統計のサマリーが表示されます。統計は、グラフにあるクラスタ・データベース内のすべてのインスタンス間でロールアップされます。グラフの横のリンクを使用すると、より詳細な情報を取得したり、次のタスクを実行することができます。

- パフォーマンスの問題の原因の特定。

- リソースを追加または再分散する必要があるかどうかの判別。

- SQL計画およびスキーマのチューニングによる最適化。

- パフォーマンスの問題の解決

クラスタ・データベースの「パフォーマンス」ページには、次のグラフが含まれます。

- 「クラスタ・ホストのロード平均」グラフ: クラスタ・データベースの「パフォーマンス」ページの「クラスタ・ホストのロード平均」グラフには、データベース外部で発生する可能性がある問題が表示されます。このグラフには、クラスタ内で使用可能なノードについて、過去1時間のロードの最大値、平均値および最小値が表示されます。

- 「グローバル・キャッシュ・ブロックのアクセス待機時間」グラフ: 各クラスタ・データベース・インスタンスのシステム・グローバル領域(SGA)には、独自のバッファ・キャッシュが存在します。キャッシュ・フュージョンの使用によって、Oracle RAC環境で各インスタンスのバッファ・キャッシュが論理的に結合され、論理的に結合された単一のキャッシュにデータが存在する場合と同様に、データベース・インスタンスでデータを処理できます。

- 「平均アクティブ・セッション」グラフ: クラスタ・データベースの「パフォーマンス」ページの「平均アクティブ・セッション」グラフには、データベース内で発生する可能性がある問題が表示されます。「カテゴリ」は待機クラスとも呼ばれ、データベース内でCPUやディスクI/Oなどのリソースを使用している部分が表示されます。CPU時間を待機時間と比較すると、レスポンス時間のうちどれくらいの時間が、他のプロセスに保持されている可能性のあるリソースの待機ではなく有効な作業に消費されているかを確認できます。

- 「データベース・スループット」グラフ: 「データベース・スループット」グラフは、「平均アクティブ・セッション」グラフに表示される任意のリソース競合を要約する他、ユーザーやアプリケーションのためにデータベースが実行中の作業の量を示します。「1秒当たり」ビューは、1秒当たりのログオン数に対するトランザクションの数、REDOサイズに対する物理読取りの量を示します。「1トランザクション当たり」ビューは、トランザクション当たりのREDOサイズに対する物理読取りの量を示します。「ログオン」は、データベースにログオンしているユーザー数を示します。

さらに、クラスタ・データベースの「パフォーマンス」ページにある「トップ・アクティビティ」ドロップダウン・メニューでは、待機イベント、サービスおよびインスタンス単位でアクティビティを表示できます。また、グラフのスライダを使用して以前の時点に移動することによって、SQL/セッションの詳細を表示できます。

関連項目:

『Oracle Database 2日でReal Application Clustersガイド』

クラスタ状態モニター

クラスタ状態モニター(CHM)は、オペレーティング・システムおよびクラスタ・リソースに関連する状態の悪化や障害を検出し、分析します。CHMには、ご使用のクラスタに今後問題が発生した場合のトリアージにMy Oracle Supportとともに使用できる、Oracle Grid Infrastructure管理リポジトリにリアルタイムのオペレーティング・システム・メトリックが格納されています。

この項ではCHMについて説明します。内容は次のとおりです。

- CHMサービス

- CHMデータの収集

CHMサービス

CHMは、次のサービスで構成されています。

- システム監視サービス

- クラスタ・ログ出力サービス

- Oracle Grid Infrastructure管理リポジトリ

システム監視サービス

各ノードには、1つのシステム監視サービスがあります。システム監視サービス(osysmond)は、監視や、データをクラスタ・ログ出力サービスに送信するオペレーティング・システム・メトリック収集をリアルタイムに行うサービスです。クラスタ・ログ出力サービスによってすべてのノードから情報が受信され、Oracle Grid Infrastructure管理リポジトリのデータベースに保持されます。

クラスタ・ログ出力サービス

クラスタの32ノードごとに1つのクラスタ・ログ出力サービス(OLOGGERD)があります。32ノード(ハブおよびリーフ・ノードの合計であることが可能)を追加するたびに、もう1つのOLOGGERDが生成されます。定められた回数の再試行後にサービスが起動できなかったことや、実行されていたノードが停止したことが原因で、クラスタ・ログ出力サービスに障害が発生すると、Oracle Clusterwareは別のノードでOLOGGERDを起動します。クラスタ・ログ出力サービスは、Oracle Grid Infrastructure管理リポジトリのオペレーティング・システム・メトリック・データベースを管理します。

Oracle Grid Infrastructure管理リポジトリ

Oracle Grid Infrastructure管理リポジトリ

- CHMによって収集されたリアルタイムのオペレーティング・システム・メトリックを格納する、Oracle Databaseです。クラスタ上でOracle Clusterware 12cのインストールまたはこれへのアップグレード中に、Oracle Grid Infrastructure管理リポジトリを構成します。

注意:

Oracle ClusterwareをOracle Clusterware 12cにアップグレード中で、Oracle Cluster Registry (OCR)および投票ファイルがRAWまたはブロック・デバイス上に格納されている場合、ご使用のソフトウェアをアップグレードする前に、これらをOracle ASMまたは共有ファイル・システムに移動する必要があります。

- クラスタ上の1つのノードで動作し(こOracle Flex Cluster構成のハブ・ノードである必要がある)、ノードやストレージでの障害に備えて別のノードへのフェイルオーバーがサポートされている必要があります。
Oracle Grid Infrastructure管理リポジトリをOLOGGERDと同じノードに配置して、パフォーマンスを向上させ、プライベート・ネットワークのトラフィックを減少できます。

- プライベート・ネットワークを介して、あらゆるクラスタ・クライアント(OLOGGERDおよびOCLUMONなど)との通信を行います。Oracle Grid Infrastructure管理リポジトリは、パブリック・ネットワークを介して外部クライアントのみと通信します。

- データ・ファイルはOCRおよび投票ファイルと同じディスク・グループにあります。
OCRが+MYDGというOracle ASMディスク・グループにある場合、構成スクリプトは、Oracle Grid Infrastructure管理リポジトリの格納に同じディスク・グループを使用します。

オラクル社では、Oracle Grid Infrastructure管理リポジトリ(ネットワーク・ファイル・システム(NFS)、クラスタ・ファイル・システム、Oracle ASMディスク・グループなど)に対応するために、Oracle Clusterwareの共有ストレージ要件を増やしました。

- サイズおよび保存は、OCLUMONで管理されます。

CHMデータの収集

ノードでGrid_home/bin/diagcollection.plスクリプトを実行することで、クラスタのいずれのノードからでもCHMデータを収集できます。

注意:

- diagcollection.plスクリプトを実行してCHMデータを収集する場合、クラスタのすべてのノードでスクリプトを実行して、分析に必要なすべての情報を確実に収集します。

- 権限を持つユーザーとしてこのスクリプトを実行する必要があります。

関連項目:

diagcollection.plの詳細は、「診断収集スクリプト」を参照してください

クラスタ・ログ出力サービスが実行中のノードのみでデータ収集スクリプトを実行するには、次の手順を実行します。

1. 次のコマンドを実行して、クラスタ・ログ出力サービスが実行しているノードを識別します。

$ Grid_home/bin/oclumon manage -get master

2. Gridホームの外部にある書込み可能なディレクトリから、権限を持つユーザーとしてクラスタ・ログ出力サービス・ノードで次のコマンドを実行して、Oracle Grid Infrastructure管理リポジトリで使用できるすべてのデータを収集します。

# Grid_home/bin/diagcollection.pl --collect

Windowsの場合は、次のコマンドを実行します。

C:\Grid_home\perl\bin\perl.exe
C:\Grid_home\bin\diagcollection.pl --collect

diagcollection.plスクリプトは、次のように、chmosData_host_name_time_stamp.tar.gzというファイルを作成します。

chmosData_stact29_20121006_2321.tar.gz

収集するデータの量を制限するには、次のコマンドを1行で入力します。

# Grid_home/bin/diagcollection.pl --collect --chmos
--incidenttime time --incidentduration duration

前述のコマンドでは、--incidenttime引数の書式はMM/DD/YYYY24HH:MM:SSで、--incidentduration引数の書式はHH:MMです。次に例を示します。

# Grid_home/bin/diagcollection.pl --collect --crshome Grid_home
--chmos --incidenttime 07/21/2013 01:00:00 --incidentduration 00:30

OCLUMONコマンドのリファレンス

OCLUMONコマンドライン・ツールは、CHMに付属しており、CHMリポジトリの問合せに使用して、指定した期間のノード固有のメトリックを表示することができます。また、OCLUMONを使用して、デバッグ・レベルの変更、CHMバージョンの問合せ、メトリック・データベース・サイズの変更など、様々な管理タスクを実行できます。

この項では、次のOCLUMONコマンドについて説明します。

- oclumon debug

- oclumon dumpnodeview

- oclumon manage

- oclumon version

oclumon debug

oclumon debugコマンドを使用して、CHMサービスのログ・レベルを設定します。

構文

oclumon debug [log daemon module:log_level] [version]

パラメータ

表J-1 oclumon debugコマンドのパラメータ

パラメータ

説明

log daemon module:log_level

デーモンのログ・レベルおよびデーモン・モジュールを変更する場合に、このオプションを使用します。サポートされているデーモンは次のとおりです。

- osysmond

- ologgerd

- client

- all

サポートされているデーモン・モジュールは次のとおりです。

- osysmond: CRFMOND、CRFMおよびallcomp

- ologgerd: CRFLOGD、CRFLDREP、CRFMおよびallcomp

- client: OCLUMON、CRFMおよびallcomp

- all: allcomp

サポートされているlog_levelの値は0、1、2および3です。

version

デーモンのバージョンを表示する場合に、このオプションを使用します。

例

次の例では、システム監視サービス(osysmond)のログ・レベルを設定します。

$ oclumon debug log osysmond CRFMOND:3

oclumon dumpnodeview

oclumon dumpnodeviewコマンドを使用して、ノード・ビューの形式でシステム監視サービスからログ情報を表示します。

ノード・ビューは、ある時点のノードに対してCHMが収集したすべてのメトリックの集合です。CHMでは、各ノードに対して5秒に1回のメトリックの収集が試行されます。一部のメトリックは静的ですが、その他のメトリックは動的です。

詳細な出力を表示する場合、ノード・ビューは次の8つのビューで構成されています。

- SYSTEM: CPU数、CPU使用率、メモリー使用量などのシステム・メトリックをリストします。

- TOP CONSUMERS: 消費する上位のプロセスを次の形式でリストします。

metric_name: 'process_name(process_identifier) utilization'

- PROCESSES: PID、名前、スレッド数、メモリー使用量、ファイル記述子の数などのプロセス・メトリックをリストします。

- DEVICES: ディスクの読取り速度および書込み速度、キューの長さ、I/O当たりの待機時間などのデバイス・メトリックをリストします。

- NICS: ネットワークの受信速度および送信速度、有効バンド幅、エラー率などのネットワーク・インタフェース・カードのメトリックをリストします。

- FILESYSTEMS: 合計領域、使用済領域、使用可能な領域などのファイル・システムのメトリックをリストします。

- PROTOCOL ERRORS: プロトコル・エラーをリストします。

- CPUS: 各CPUの統計情報をリストします。

SYSTEMビューおよびTOP CONSUMERSビューのみを含むサマリー・レポートを生成できます。

「メトリックの説明」に、前述のリストの各ビューに関連付けられたすべてのメトリックの説明を示します。

注意:

TOP CONSUMERSビューに表示されるメトリックは、表J-4を参照してください。

例J-1に、ノード・ビューの例を示します。

構文

oclumon dumpnodeview [[-allnodes] | [-n node1 node2 noden] [-last "duration"] |
[-s "time_stamp" -e "time_stamp"] [-i interval] [-v]] [-h]

パラメータ

表J-2 oclumon dumpnodeviewコマンドのパラメータ

パラメータ

説明

-allnodes

クラスタ内のすべてのノードのノード・ビューをダンプするには、このオプションを使用します。

-n node1 node2

ノード・ビューをダンプする1つのノード(または、空白区切りのリストで複数のノード)を指定します。

-last "duration"

最後のメトリックを取得する時間(二重引用符("")で囲んだHH24:MM:SS形式)を指定するには、このオプションを使用します。次に例を示します。

"23:05:00"

-s "time_stamp" -e "time_stamp"

-sオプションを使用して一連の問合せを開始するタイム・スタンプを指定し、-eオプションを使用して一連の問合せを終了するタイム・スタンプを指定します。二重引用符("")で囲んだYYYY-MM-DD HH24:MM:SS形式で時間を指定します。

"2011-05-10 23:05:00"

注意: 範囲を得るには、これらの2つのオプションの両方を指定する必要があります。

-i interval

収集間隔を5秒ごとに指定します。

-v

ノード・ビューの詳細出力を表示します。

-h

oclumon dumpnodeviewコマンドのオンライン・ヘルプを表示します。

使用上の注意

- 特定の環境では、このコマンドによってリプレイされる前にデータがしばらくの間遅延します。たとえば、crsctl stop cluster -allコマンドによってデータが遅延する可能性があります。crsctl start cluster -allを実行した後で、oclumon dumpnodeviewによって期間中に収集されたデータが表示されるまでに数分間かかることがあります。

- デフォルトでは、ノード・ビューが連続的にダンプされます。連続的な表示を停止するには、LinuxおよびWindowsでは[Ctrl]+[C]を使用します。

- ノード・ビューのダンプを取得するには、ローカル・システム監視サービス(osysmond)およびクラスタ・ログ出力サービス(ologgerd)の両方が実行されている必要があります。

例

次の例では、過去12時間に収集された、node1、node2およびnode3のノード・ビューをダンプします。

$ oclumon dumpnodeview -n node1 node2 node3 -last "12:00:00"

次の例では、過去15分間で30秒ごとに収集された、すべてのノードのノード・ビューを表示します。

$ oclumon dumpnodeview -allnodes -last "00:15:00" -i 30

メトリックの説明

この項では、次の表にリストされた、ノード・ビューを構成する7つの各ビューのメトリックについて説明します。

表J-3 SYSTEMビューのメトリックの説明

メトリック

説明

#pcpus

物理CPUの数

#vcpus

論理演算ユニットの数

cpuht

CPUのハイパースレッディングが有効(Y)または無効(N)

chipname

CPUベンダーの名前

cpu

現在のサンプル間隔内での処理装置ごとの平均CPU使用率(%)。

cpuq

現在のサンプル間隔内で、実行キューで待機中のプロセスの数

physmemfree

RAMの空き容量(KB)

physmemtotal

使用可能なRAMの合計容量(KB)

mcache

ファイル・バッファに使用される物理RAMの量にキャッシュ・メモリーとして使用される物理RAMの量を加えたもの(KB)

Windowsシステムでは、ファイル・システム・キャッシュによって現在使用されているバイト数です。

注意: このメトリックは、Solarisでは使用できません。

swapfree

スワップ・メモリーの空き容量(KB)

swaptotal

物理スワップ・メモリーの合計容量(KB)

hugepagetotal

ヒュージの合計サイズ(KB)

注意: このメトリックは、SolarisまたはWindowsシステムでは使用できません。

hugepagefree

ヒュージ・ページの空きサイズ(KB)

注意: このメトリックは、SolarisまたはWindowsシステムでは使用できません。

hugepagesize

ヒュージ・ページの最小ユニット・サイズ

注意: このメトリックは、SolarisまたはWindowsシステムでは使用できません。

ior

現在のサンプル間隔内での平均の合計ディスク読取り速度(KB/秒)

iow

現在のサンプル間隔内での平均の合計ディスク書込み速度(KB/秒)

ios

I/Oリクエストを処理するためのI/O操作の平均時間

swpin

現在のサンプル間隔内での平均スワップ・イン率(KB/秒)

注意: このメトリックは、Windowsシステムでは使用できません。

swpout

現在のサンプル間隔内での平均スワップ・アウト率(KB/秒)

注意: このメトリックは、Windowsシステムでは使用できません。

pgin

現在のサンプル間隔内での平均ページ・イン率(ページ/秒)

pgout

現在のサンプル間隔内での平均ページ・アウト率(ページ/秒)

netr

現在のサンプル間隔内での平均の合計ネットワーク受信速度(KB/秒)

netw

現在のサンプル間隔内での平均の合計ネットワーク送信速度(KB/秒)

procs

プロセスの数

procsoncpu

CPUで現在実行中のプロセス数

rtprocs

リアルタイム・プロセスの数

rtprocsoncpu

CPUで現在実行中のリアルタイム・プロセス数

#fds

オープン・ファイル記述子の数

または

Windows上のオープンしているハンドルの数

#sysfdlimit

ファイル記述子の数に対するシステム制限

注意: このメトリックは、SolarisまたはWindowsシステムでは使用できません。

#disks

ディスク数

#nics

ネットワーク・インタフェース・カードの数

nicErrors

現在のサンプル間隔内での平均の合計ネットワーク・エラー率(エラー/秒)

表J-4 PROCESSESビューのメトリックの説明

メトリック

説明

name

実行可能なプロセスの名前

pid

オペレーティング・システムによって割り当てられたプロセス識別子

#procfdlimit

このプロセスのファイル記述子の数に対する制限

注意: このメトリックは、Windows、AIXおよびHP-UXシステムでは使用できません。

cpuusage

プロセスのCPU使用率(%)

注意: 使用率の最大値は、処理装置の数の100倍です。

privmem

プロセスのプライベート・メモリー使用量(KB)

shm

プロセスの共有メモリー使用量(KB)

注意: このメトリックは、Windows、SolarisおよびAIXシステムでは使用できません。

workingset

プログラムのワーキング・セット(KB)

注意: このメトリックは、Windowsでのみ使用可能です。

#fd

このプロセスでオープンしているファイル記述子の数

または

Windows上のこのプロセスでオープンしているハンドルの数

#threads

このプロセスで作成されたスレッドの数

priority

プロセス優先度

nice

プロセスの正常値

注意: このメトリックは、Windowsシステムには適用されません。

state

プロセスの状態

注意: このメトリックは、Windowsシステムには適用されません。

表J-5 DEVICESビューのメトリックの説明

メトリック

説明

ior

現在のサンプル間隔内での平均のディスク読取り速度(KB/秒)

iow

現在のサンプル間隔内での平均のディスク書込み速度(KB/秒)

ios

現在のサンプル間隔内での平均のディスクI/O操作速度(I/O操作/秒)

qlen

現在のサンプル間隔内で待機状態のI/Oリクエストの数

wait

現在のサンプル間隔内でのI/O当たりの平均待機時間(ミリ秒)

type

適用可能な場合は、デバイスの使用目的を示します。表示される値は、SWAP、SYS、OCR、ASMおよびVOTINGです。

表J-6 NICSビューのメトリックの説明

メトリック

説明

netrr

現在のサンプル間隔内での平均のネットワーク受信速度(KB/秒)

netwr

現在のサンプル間隔内での平均のネットワーク送信速度(KB/秒)

neteff

現在のサンプル間隔内での平均の有効バンド幅(KB/秒)

nicerrors

現在のサンプル間隔内での平均エラー率(エラー/秒)

pktsin

現在のサンプル間隔内での平均の受信パケット率(パケット/秒)

pktsout

現在のサンプル間隔内での平均の発信パケット率(パケット/秒)

errsin

現在のサンプル間隔内での受信パケットの平均エラー率(エラー/秒)

errsout

現在のサンプル間隔内での発信パケットの平均エラー率(エラー/秒)

indiscarded

現在のサンプル間隔内での受信パケットの平均ドロップ率(パケット/秒)

outdiscarded

現在のサンプル間隔内での発信パケットの平均ドロップ率(パケット/秒)

inunicast

現在のサンプル間隔内での平均のユニキャスト・パケット受信率(パケット/秒)

type

PUBLICまたはPRIVATE

innonunicast

平均のマルチキャスト・パケット受信率(パケット/秒)

latency

このネットワーク・インタフェース・カードの推定待機時間(ミリ秒)

表J-7 FILESYSTEMSビューのメトリックの説明

メトリック

説明

total

領域の合計容量(KB)

mount

マウント・ポイント

type

ファイル・システムのタイプ(ローカル・ファイル・システム、NFSまたはその他)

used

使用済領域の量(KB)

available

使用可能な領域の量(KB)

used%

使用済領域の割合(%)

ifree%

空きファイル・ノードの割合(%)

注意: このメトリックは、Windowsシステムでは使用できません。

表J-8 PROTOCOL ERRORSビューのメトリックの説明

メトリック

説明

IPHdrErr

IPv4ヘッダー内のエラーのため破棄された入力データグラムの数

IPAddrErr

IPv4ヘッダーの宛先フィールド内のIPv4アドレスがこのエンティティで受信できる有効なアドレスではなかったため破棄された入力データグラムの数

IPUnkProto

正常に受信されたものの、不明またはサポートされていないプロトコルのため破棄された、ローカルにアドレス指定されたデータグラムの数

IPReasFail

IPv4の再アセンブリ・アルゴリズムによって検出された障害の数

IPFragFail

フラグメンテーション・エラーのため破棄されたIPv4データグラムの数

TCPFailedConn

TCP接続がSYN-SENT状態またはSYN-RCVD状態からCLOSED状態に直接遷移した回数と、TCP接続がSYN-RCVD状態からLISTEN状態に直接遷移した回数

TCPEstRst

TCP接続がESTABLISHED状態またはCLOSE-WAIT状態からCLOSED状態に直接遷移した回数

TCPRetraSeg

再送信されたTCPセグメントの合計数

UDPUnkPort

宛先ポートにアプリケーションが存在しなかった受信済UDPデータグラムの合計数

UDPRcvErr

宛先ポートにアプリケーションが存在しないこと以外の理由で配信できなかった受信済UDPデータグラムの数

表J-9 CPUSビューのメトリックの説明

メトリック

説明

cpuid

仮想CPU

sys-usage

システム領域でのCPUの使用量

user-usage

ユーザー領域でのCPUの使用量

nice

特定のCPUのNICの値

usage

特定のCPUのCPU使用量

iowait

I/O操作へのCPU待機時間

例J-1 ノード・ビュー例

----------------------------------------
Node: rwsak10 Clock: '14-04-16 18.47.25 PST8PDT' SerialNo:155631
----------------------------------------

SYSTEM:
#pcpus: 2 #vcpus: 24 cpuht: Y chipname: Intel(R) cpu: 1.23 cpuq: 0
physmemfree: 8889492 physmemtotal: 74369536 mcache: 55081824 swapfree: 18480404
swaptotal: 18480408 hugepagetotal: 0 hugepagefree: 0 hugepagesize: 2048 ior: 132
iow: 236 ios: 23 swpin: 0 swpout: 0 pgin: 131 pgout: 235 netr: 72.404
netw: 97.511 procs: 969 procsoncpu: 6 rtprocs: 62 rtprocsoncpu N/A #fds: 32640
#sysfdlimit: 6815744 #disks: 9 #nics: 5 nicErrors: 0

TOP CONSUMERS:
topcpu: 'osysmond.bin(30981) 2.40' topprivmem: 'oraagent.bin(14599) 682496'
topshm: 'ora_dbw2_oss_3(7049) 2156136' topfd: 'ocssd.bin(29986) 274'
topthread: 'java(32255) 53'

CPUS:

cpu18: sys-2.93 user-2.15 nice-0.0 usage-5.8 iowait-0.0 steal-0.0
.
.
.

PROCESSES:

name: 'osysmond.bin' pid: 30891 #procfdlimit: 65536 cpuusage: 2.40 privmem: 35808
shm: 81964 #fd: 119 #threads: 13 priority: -100 nice: 0 state: S
.
.
.

DEVICES:

sdi ior: 0.000 iow: 0.000 ios: 0 qlen: 0 wait: 0 type: SYS
sda1 ior: 0.000 iow: 61.495 ios: 629 qlen: 0 wait: 0 type: SYS
.
.
.

NICS:

lo netrr: 39.935  netwr: 39.935  neteff: 79.869  nicerrors: 0 pktsin: 25
pktsout: 25  errsin: 0  errsout: 0  indiscarded: 0  outdiscarded: 0
inunicast: 25 innonunicast: 0  type: PUBLIC
eth0 netrr: 1.412  netwr: 0.527  neteff: 1.939  nicerrors: 0 pktsin: 15
pktsout: 4  errsin: 0  errsout: 0  indiscarded: 0  outdiscarded: 0
inunicast: 15  innonunicast: 0  type: PUBLIC  latency: <1

FILESYSTEMS:

mount: / type: rootfs total: 563657948 used: 78592012 available: 455971824
used%: 14 ifree%: 99 GRID_HOME
.
.
.

PROTOCOL ERRORS:

IPHdrErr: 0 IPAddrErr: 0 IPUnkProto: 0 IPReasFail: 0 IPFragFail: 0
TCPFailedConn: 5197 TCPEstRst: 717163 TCPRetraSeg: 592 UDPUnkPort: 103306
UDPRcvErr: 70

oclumon manage

oclumon manageコマンドを使用して、システム監視サービスから構成情報を表示して変更します。

構文

oclumon manage -repos {{changeretentiontime time} | {changerepossize
memory_size}} | -get {key1 [key2 ...] | alllogger [-details] | mylogger [-details]}

パラメータ

表J-10 oclumon manageコマンドのパラメータ

パラメータ

説明

-repos
{{changeretentiontime time} |
{changerepossize memory_size}}

次のCHMリポジトリ関連オプションを指定するには、-reposフラグが必要です。

- changeretentiontime time: 特定の期間に蓄積できるCHMデータ量を保持するために十分な表領域があるかを確認するには、このオプションを使用します。
注意: このオプションは保存時間を変更しません。

- changerepossize memory_size: 指定したMB数にCHMリポジトリの領域制限を変更する場合に、このオプションを使用します。
注意: CHMリポジトリの容量制限を小さくした場合、サイズの変更操作を行う前に収集したすべてのデータは永続的に削除されます。

-get key1 [key2 ...]

次のキーワードを使用してCHMリポジトリ情報を取得する場合に、このオプションを使用します。

- repsize: CHMリポジトリのサイズ(秒)

- reppath: CHMリポジトリへのディレクトリ・パス

- master: マスター・ノードの名前

- alllogger: クラスタ・ログ出力サービスが実行されているすべてのノードのリストを取得するための特殊キー

- mylogger: 現在のノードにサービスを提供しているクラスタ・ログ出力サービスが実行されているノードを取得するための特殊キー

- -details: クラスタ・ログ出力サービスが機能しているノードをリストするために、このオプションをallloggerおよびmyloggerとともにを使用します。

-getフラグの後のスペース区切りリストに、任意の数のキーワードを指定できます。

-h

oclumon manageコマンドのオンライン・ヘルプを表示します。

使用上の注意

- CHMリポジトリの保存時間を変更するために、ローカル・システム監視サービスが実行される必要があります。

- CHMリポジトリの保存時間を変更するために、クラスタ・ログ出力サービスが実行される必要があります。

例

次の例では、コマンドと出力例を示します。

$ oclumon manage -get MASTER
Master = node1

$ oclumon manage -get alllogger -details
Logger = node1
Nodes = node1,node2

$ oclumon manage -repos changeretentiontime 86400

$ oclumon manage -repos changerepossize 6000

oclumon version

oclumon versionコマンドを使用して、使用中のCHMのバージョンを取得します。

構文

oclumon version

例

このコマンドを実行すると、次のような出力が生成されます。

Cluster Health Monitor (OS), Version 12.1.0.0.2 - Production Copyright 2013
Oracle. All rights reserved.

Oracle Clusterwareの診断およびアラート・ログ

Oracle Clusterwareは、Oracle Database障害診断インフラストラクチャを使用して診断データとアラート・ログを管理します。このため、ほとんどの診断データは自動診断リポジトリ(ADR)(インストール時に指定したベース・ディレクトリ内のディレクトリとファイルのコレクション)に含まれます。この項では、Oracle ClusterwareでのADRの使用方法についてクラスタウェア固有の情報を説明します。

関連項目:

- 障害診断インフラストラクチャおよびADRの詳細は、『Oracle Database管理者ガイド』を参照してください。

- ADRコマンド・インタプリタ(ADRCI)の詳細は、『Oracle Databaseユーティリティ』を参照してください。

この項には次のトピックが含まれます:

- ADRディレクトリ構造

- traceディレクトリのファイル

- Oracle Clusterwareアラート・ログ

- インシデント・トレース・ファイル

- その他の診断データ

ADRディレクトリ構造

Oracle Clusterware ADRデータは、ADRベースと呼ばれるルート・ディレクトリに書き込まれます。ADR以外のコンポーネントもこのディレクトリを使用するため、Oracleベースと呼ばれることもあります。ベースとして使用するファイル・システム・パスをOracle Grid Infrastructureのインストール時に指定します。これを変更するには、Oracle Grid Infrastructureを再インストールするしかありません。

ADRファイルはADRホーム・ディレクトリに存在します。任意のホストで実行するOracle ClusterwareでもADRホームの構造は常に次のようになります。

ORACLE_BASE/diag/crs/host_name/crs

この例で、ORACLE_BASEはOracle Grid Infrastructureのインストール時に指定したOracleベース・パス、host_nameはホストの名前です。Windowsプラットフォームでは、円記号(\)でパスのディレクトリ名が区切られます。

ADRホーム内には、特定のタイプのADRデータのための様々なディレクトリがあります。特に重要なディレクトリはtraceとincidentです。traceディレクトリには、Oracle Clusterwareデーモンとコマンドライン・プログラムによって書き込まれる正常なトレース・ファイルすべて(インシデント以外)と、Oracle Clusterwareアラート・ログの単純なテキスト・バージョンが含まれます。この構成は、Oracle Clusterware 12cリリース1 (12.1.0.2)より前のバージョンとは大幅に異なります。以前のバージョンでは診断ログ・ファイルはデーモンごとに個別のディレクトリに書き込まれていました。

traceディレクトリのファイル

Oracle Clusterware 12cリリース1 (12.1.0.2)以降、Oracle Clusterwareプログラムによって書き込まれる診断データ・ファイルは、トレース・ファイルと呼ばれ、.trcファイル拡張子が付けられて、ADRホームのtraceサブディレクトリにまとめられます。これらのファイルのネーミング規則では、通常、ファイル名として実行可能プログラム名が使用され、プログラムの種類によって他のデータが追加されることもあります。

Oracle Clusterwareコマンドライン・プログラムによって書き込まれるトレース・ファイルでは、同じコマンド・プログラムの複数の呼出しとデータを区別するために、オペレーティング・システム・プロセスID (PID)がトレース・ファイル名に含まれます。たとえば、CRSCTLによって書き込まれるトレース・データの名前は、crsctl_PID.trcのような構造になります。この例では、PIDは、10進数として表示されるオペレーティング・システム・プロセスIDです。

Oracle Clusterwareデーモン・プログラムによって書き込まれるトレース・ファイルはファイル名にPIDを含みません。また、ファイル・ローテーション・メカニズムの対象であり、名前に影響があります。ローテーションでは、現在のデーモン・トレース・ファイルが特定のサイズになると、そのファイルが閉じて名前が変更され、新しいトレース・ファイルが開きます。これが決められた回数行われます。その後、デーモンの一番古いトレース・ファイルが破棄され、ローテーション・セットが設定されたサイズに保たれます。

ほとんどのOracle Clusterwareデーモンで使用されるファイル・サイズの制限は10 MB、ローテーション・セット・サイズは10ファイルです。この場合、合計100 MBのトレース・データが保存されます。任意のデーモンの現在のトレース・ファイルではファイル名としてプログラム名のみが使用されます。ローテーション内の古いファイルにはファイル名に番号が付けられます。たとえば、Oracle高可用性サービス・デーモン(OHASD)が現在書き込んでいるトレース・ファイルの名前はohasd.trcです。直前にローテーションされたトレース・ファイルの名前はohasd_n.trcです(nは増分する10進数)。nが最も大きいファイルは、最も新しくアーカイブされたトレースです。nが最も小さいファイルは最も古いトレースです。

Oracle Clusterwareエージェントはデーモン・プログラムです。このトレース・ファイルには、エージェントの生成元(OHASDとCluster Ready Servicesデーモン(CRSD)のどちらによって生成されたか)と、エージェントを実行しているオペレーティング・システム・ユーザー名を示す特別なネーミング規則があります。つまり、エージェントでの名前の構造は次のようになります。

origin_executable_user_name

注意:

この名前構造の最初の2つのアンダースコア(_)は、リテラルとしてトレース・ファイル名に含まれます。user_nameのアンダースコアは、ファイルのネーミング規則の一部ではありません。

この例で、originはohasdまたはcrsd、executableは実行可能プログラム名、user_nameはオペレーティング・システム・ユーザー名です。また、これらはデーモンであるため、エージェント・トレース・ファイルは前述のローテーション・メカニズムの対象になります。ローテーションが発生すると、ファイルに_n接尾辞が追加されます。

Oracle Clusterwareアラート・ログ

トレース・ファイルの他に、Oracle Clusterware ADRホームのtraceサブディレクトリには単純なテキストのOracle Clusterwareアラート・ログが含まれます。名前は常にalert.logです。アラート・ログは、ADRホームのalertサブディレクトリにXMLファイルとしても書き込まれますが、テキスト・アラート・ログは簡単に読むことができます。

Oracle Clusterwareで問題が発生した場合に、まず確認するのがアラート・ログです。Oracle Databaseインスタンスのアラート・ログとは異なり、Oracle Clusterwareアラート・ログのメッセージは、識別番号が付き、ドキュメント化とローカライズ(翻訳)が行われています。Oracle Clusterwareアラート・メッセージは、発生した重要なイベントまたはエラーのほとんどに対して書き込まれます。

注意:

Oracle Clusterwareトレース・ファイルに書き込まれるメッセージとデータは、通常はドキュメント化も翻訳も行われません。主にMy Oracle Supportが問題を診断するために使用します。

インシデント・トレース・ファイル

Oracle Clusterwareプログラムで特定のエラーが発生すると、ADRインシデントが発生します。ほとんどのケースで、このようなエラーは診断のためにMy Oracle Supportに報告する必要があります。通常、1つのインシデントが発生すると、1つ以上の説明メッセージがOracle Clusterwareアラート・ログに生成されます。

アラート・メッセージに加えて、インシデントの影響を受けたプログラムによって、エラーに関連する診断データを含む特別なトレース・ファイルが別に生成されます。このようなインシデント固有のトレース・ファイルは、ADRホームのtraceサブディレクトリではなくincidentサブディレクトリに収集されます。エラーを報告する際に、通常のトレース・ファイルとインシデント・トレース・ファイルが収集されてオラクル社に提出されます。

関連項目:

インシデントとデータ収集の詳細は、『Oracle Database管理者ガイド』を参照してください。

その他の診断データ

Oracle Clusterwareでは、ADRデータの他にも問題の診断に関連する他のデータを収集または使用します。Oracle Clusterware 12cリリース1 (12.1.0.2)以降、このデータはADRによって使用される同じベース・パス内の別のディレクトリ構造(ORACLE_BASE/crsdata/host_nameという形式)に存在します。この例で、ORACLE_BASEはGrid Infrastructureのインストール時に指定したOracleベース・パス、host_nameはホストの名前です。

任意のホストで、このディレクトリにはいくつかのサブディレクトリが含まれます。問題の発生時に重要になる2つのサブディレクトリの名前は、coreとoutputです。coreディレクトリは、コア・ファイルのために使用する通常のADRの場所が使用できない場合(ADRサービスがプログラムで初期化される前など)に、Oracle Clusterwareデーモン・コア・ファイルが書き込まれるところです。outputディレクトリは、Oracle ClusterwareデーモンがC標準出力と標準エラー・ファイルをリダイレクトする場所です。通常、これらのファイルの名前は、実行可能ファイル名にOUTという語と.trcファイル拡張子(トレース・ファイルと同様)が付いて構成されます。たとえば、Cluster Time Synchronization Serviceデーモンからリダイレクトされる標準出力の名前はoctssdOUT.trcです。一般的に、デーモンによってこれらのファイルに書き込まれる内容はごくわずかですが、特定の障害シナリオでは重要なデータが書き込まれる場合があります。

診断収集スクリプト

Oracle Clusterwareでエラーが発生する場合は、diagcollection.pl診断収集スクリプトを実行して、Oracle Clusterwareからトレース・ファイルに診断情報を収集します。診断によって、My Oracle Supportが問題を解決するための追加情報を取得できます。Grid_home/binディレクトリから、このスクリプトをrootとして実行します。

構文

diagcollection.plスクリプトは、次の構文で使用します。

diagcollection.pl {--collect [--crs | --acfs | -all] [--chmos [--incidenttime time [--incidentduration time]]]
[--adr location [--aftertime time [--beforetime time]]]
[--crshome path | --clean | --coreanalyze}]

注意:

diagcollection.plスクリプトのすべての引数の前には、2本のダッシュ(--)を付けます。

パラメータ

表J-11に、diagcollection.plスクリプトで使用されるパラメータのリストおよび説明を示します。

表J-11 diagcollection.plスクリプトのパラメータ

パラメータ

説明

--collect

このパラメータは、次のいずれかの引数とともに使用します。

- --crs: Oracle Clusterwareの診断情報を収集する場合に、この引数を使用します。

- --acfs: Oracle ACFSの診断情報を収集する場合に、この引数を使用します。
注意: この引数は、UNIXシステムでのみ使用できます。

- --all: CHM (OS)データを除くすべての診断情報を収集する場合に、この引数を使用します。
注意: これはデフォルトです。

- --chmos: 次のCHMの診断情報を収集する場合に、この引数を使用します。
--incidenttime time: 指定した時刻からCHM (OS)データを収集する場合に、この引数を使用します。

注意: 時刻書式はMM/DD/YYYYHH24:MM:SSです。

--incidentduration time: 指定した時刻の後の期限内にCHM (OS)データを収集する場合に、この引数を--incidenttimeとともに使用します。

注意: 時刻書式はHH:MMです。--incidentdurationを使用しない場合は、--incidenttimeで指定した時刻の後にすべてのCHM (OS)データが収集されます。

- --adr location: 自動診断リポジトリ・コマンド・インタプリタ(ADRCI)はこの引数を使用して、ADRのために診断情報を収集する場所を指定します。
関連項目: ADRCIの詳細は、『Oracle Databaseユーティリティ』を参照してください。

- --aftertime time: 指定した時刻の後にアーカイブを収集する場合に、この引数を--adr引数とともに使用します。
注意: 時刻書式はYYYYMMDDHHMISS24です。

- --beforetime time: 指定した時刻の前にアーカイブを収集する場合に、この引数を--adr引数とともに使用します。
注意: 時刻書式はYYYYMMDDHHMISS24です。

- --crshome path: Oracle Clusterwareホームの場所を上書きする場合に、この引数を使用します。
注意: diagcollection.plスクリプトは、通常、システム構成(olr.locファイルまたはWindowsレジストリのいずれか)からOracle Clusterwareホームの場所を導出するため、この引数は不要です。

--clean

diagcollection.plスクリプトで収集された診断情報をクリーンアップする場合に、このパラメータを使用します。

注意: このパラメータは、--collectとともに使用することはできません。

--coreanalyze

コア・ファイルから情報を抽出してテキスト・ファイルに格納する場合に、このパラメータを使用します。

注意: このパラメータは、UNIXシステムでのみ使用できます。

ローリング・アップグレードおよびドライバのインストールに関する問題

アップグレード中に、Oracle Clusterware root.shスクリプトを実行していると、次のメッセージが表示される場合があります。

- ACFS-9427 「ADVM/ACFSドライバのアンロードに失敗しました。」システムの再起動をお薦めします。

- ACFS-9428 「ADVM/ACFSドライバのロードに失敗しました。」システムの再起動をお薦めします。

初期(最初の)ノードのアップグレード中にこのようなエラー・メッセージが表示された場合、次の手順を行います。

1. クラスタ内の他のすべてのノードでアップグレードを完了します。

2. 初期ノードを再起動します。

3. 初期ノードで、root.shスクリプトを再度実行します。

4. アップグレードを完了するために、rootとして、Oracle_home/cfgtoollogs/configToolAllCommandsスクリプトを実行します。

初期ノード(インストールを開始したノード)以外のノード:

1. エラーが発生したノードを再起動します。

2. エラーが発生するノードで、rootとしてorainstRoot.shスクリプトを実行します。

3. ディレクトリをGridホームに変更し、エラーが発生するノードでroot.shスクリプトを実行します。

ゾーン委任のテスト

関連項目:

この手順で言及されているCRSCTLコマンドの使用の詳細は、「Oracle Clusterware制御(CRSCTL)ユーティリティ・リファレンス」を参照してください。

次の手順を使用して、ゾーン委任をテストします。

1. rootとして次のコマンドを実行し、GNS VIPを起動します。

# crsctl start ip -A IP_name/netmask/interface_name

interface_nameは、パブリック・ネットワークのパブリック・インタフェースおよびネットマスクである必要があります。

2. 次のコマンドを実行し、GNS VIPでテストDNSサーバーを起動します(ポート番号が1024より小さい場合はrootとしてこのコマンドを実行する必要があります)。

# crsctl start testdns -address address [-port port]

このコマンドによって、指定したIPおよびポートで、DNSが転送したパケットをリスニングするテストDNSサーバーが起動されます。

3. rootとして次のコマンドを実行し、GNS VIPが他のノードから到達可能であることを確認します。

crsctl status ip -A IP_name

4. 次のコマンドを実行し、直接DNSサーバーに問い合せます。

crsctl query dns -name name -dnsserver DNS_server_address

このコマンドは、次のエラーが発生して失敗します。

CRS-10023: 名前asdf.foo.comのドメイン名参照に失敗しました。オペレーティング・システム・エラー: ホスト名参照エラー

Grid_home/log/host_name/client/odnsd_*.logを参照して、問合せがテストDNSサーバーで受信されたかどうかを確認します。これにより、DNS問合せがファイアウォールによってブロックされていないことが確認されます。

5. 次のコマンドを実行し、GNSドメイン問合せのDNS委任を問い合せます。

crsctl query dns -name name

注意:

この手順と前の手順の違いは、-dnsserver DNS_server_addressオプションを指定しないことのみです。これにより、コマンドは/etc/resolv.confで構成されているネーム・サーバーに問い合せます。前の手順と同様に、コマンドは同じエラーが発生して失敗します。再度、odnsd*.logを参照して、odnsdで問合せが受信されたことを確認します。手順5が成功し、手順6が成功しない場合は、DNS構成を確認する必要があります。

6. 次のコマンドを実行し、テストDNSサーバーを停止します。

crsctl stop testdns -address address

7. rootとして次のコマンドを実行し、GNS VIPを停止します。

crsctl stop ip -A IP_name/netmask/interface_name

Oracleトレース・ファイル・アナライザ・コレクタ

注意:

この機能はWindowsオペレーティング・システムではサポートされていません。

Oracleトレース・ファイル・アナライザ(TFA)コレクタは、Oracle Clusterware、Oracle Grid InfrastructureおよびOracle RACシステムの診断データ収集を簡素化し、ターゲット診断を収集するためのツールです。TFAには、診断データを収集およびパッケージ化し、診断情報の収集を集中化および自動化する機能があります。

TFAは、Oracle Database 12cリリース1 (12.1.0.2)のインストール時、またはこのリリースへのアップグレード時に、Oracle Grid Infrastructureホームにインストールされます。TFAデーモンは、関連トレース・ファイル・ディレクトリを検出し、検出されたディレクトリ内のトレース・ファイルを分析して、ファイル・タイプ(たとえば、データベース・トレース・ファイルまたはログ・ファイル、またはOracle Clusterwareトレース・ファイルまたはログ・ファイル)と、それらのファイルの最初と最後のタイムスタンプを特定します。TFAは、このデータを、BerkeleyデータベースのGridホーム所有者のORACLE_BASEディレクトリに格納します。

TFAデーモンは、追加する新しいトレース・ディレクトリを定期的にチェックし(新しいデータベース・インスタンスを作成した場合など)、トレース・ファイル・メタデータの更新が必要かどうかも定期的にチェックします。TFAは、診断データ収集時に、このメタデータを使用します。

TFAによる診断収集は、オンデマンドまたは自動のいずれか2つの方法で実行されます。

- tfactl setを使用して、トレース・ファイル内の一定のエラー・セットの検出時に、診断の自動収集を有効にします。

関連項目:

「tfactl set」

- tfactl diagcollectコマンドは、すべてのコンポーネントの、特定の時間範囲内のトリムされたトレース・ファイルを収集します。

この項には次のトピックが含まれます:

- TFAデーモンの管理

- TFA制御ユーティリティのコマンド・リファレンス

- TFAでのデータ・リダクション

TFAデーモンの管理

TFAは、ノードが起動されるたびに自動的に開始します。TFAを手動で開始または停止するには、次のコマンドを使用します。

- /etc/init.d/init.tfa start: TFAデーモンを起動します。

- /etc/init.d/init.tfa stop: TFAデーモンを停止します。

- /etc/init.d/init.tfa restart: TFAデーモンを停止し、その後起動します。

- /etc/init.d/init.tfa shutdown: TFAデーモンを停止し、適切なオペレーティング・システム構成からエントリを削除します。

TFAデーモンが失敗した場合は、オペレーティング・システムによって自動的に再起動されます。

TFA制御ユーティリティのコマンド・リファレンス

TFA制御ユーティリティTFACTLは、TFAのためのコマンドライン・インタフェースで、Grid_home/tfa/binディレクトリに格納されています。通常、rootアクセスのみ可能なトレース・ファイルにアクセスできるように、TFACTLはrootまたはsudoで実行する必要があります。一部のコマンド(tfactl host addなど)には、rootアクセスが必須です。

TFACTLコマンドに、-helpフラグを追加すると、オンラインの使用方法を取得できます。

この項では、次のTFACTLコマンドについて説明します。

- tfactl print

- tfactl purge

- tfactl directory

- tfactl host

- tfactl set

- tfactl diagcollect

tfactl print

tfactl printコマンドを使用して、Berkeleyデータベースから情報を表示します。

構文

tfactl print [status | config | directories | hosts | actions | repository | cookie

パラメータ

表J-12 tfactl printコマンドのパラメータ

パラメータ

説明

status

クラスタ内のすべてのノードにわたってTFAの状態を表示します。また、TFAのバージョンおよび実行中のポートも表示します。

config

現在のTFA構成設定を表示します。

directories

TFAがトレース・ファイルまたはログ・ファイル・データをスキャンするすべてのディレクトリを表示し、データベース、Oracle ASMおよびインスタンスに割り当てられているトレース・ディレクトリの場所を表示します。

hosts

TFAクラスタの一部で、クラスタ全体のコマンドを受信できるホストを表示します。

actions

TFAに送信される、診断の収集などのすべてのアクションを表示します。デフォルトでは、tfactl print actionsは、最近1時間に実行中または完了したアクションのみを表示します。

repository

リポジトリ・ディレクトリの現在の場所および使用済領域の量を表示します。最初、リポジトリ・ディレクトリの最大サイズは、10GBまたは使用可能なファイルシステム領域の50%のいずれか小さい方になります。最大サイズを超えた場合またはファイルシステム領域が1GB以下になった場合、TFAは操作を一時停止し、リポジトリがクローズされます。tfactl purgeコマンドを使用して、リポジトリからコレクションを消去します。

cookie

tfactl setコマンドで使用する識別コードを生成および表示します。

例

tfactl print configコマンドでは次のような出力が戻されます。

Configuration parameter                                Value
------------------------------------------------------------
TFA Version                                          2.5.1.5
Automatic diagnostic collection                          OFF
Trimming of files during diagcollection                   ON
Repository current size (MB) in node1                    526
Repository maximum size (MB) in node1                  10240
Trace Level                                                1

前述の出力例では、次のとおりです。

- Automatic diagnostic collection: ONの場合(デフォルトはOFF)、アラート・ログのスキャンでログ内に特定のイベントが検出されたときに、診断収集がトリガーされます。

- Trimming of files during diagcollection: TFAで、特定の時間範囲内のデータのみを含めるために、大規模なファイルの切捨てを行うかどうかを指定します。OFFの場合、自動診断収集でのトレース・ファイルの切捨ては発生しません。

- Repository current size in MB: リポジトリの現在の使用量です。

- Repository maximum size in MB: リポジトリ内の記憶領域の最大サイズです。最初、最大サイズは、10GBまたは使用可能なファイルシステム領域の50%のいずれか小さい方に設定されています。

- Trace Level: デフォルトは1で、値を2、3および4にすると詳細度が高まります。トレース・レベルは実行中のTFAデーモンに対して動的に設定できますが、トレース・レベルを上げるとTFAのパフォーマンスに大幅に影響するため、My Oracle Supportからリクエストがあった場合にのみ行います。

tfactl purge

tfactl purgeコマンドを使用して、TFAリポジトリから特定の時間より古い診断収集を削除します。

構文

tfactl purge -older number[h | d]

数値の後にhまたはd(それぞれ、時間数と日数)を指定して、特定の時間制約より古いファイルを削除します。次に例を示します。

# tfactl purge -older 30d

前述のコマンドでは、30日間より古いファイルが削除されます。

tfactl directory

tfactl directoryコマンドを使用して、分析されたトレース・ファイルまたはログ・ファイルを格納するディレクトリの一覧にディレクトリを追加したり、一覧からディレクトリを削除できます。また、このコマンドを使用して、ディレクトリ権限を変更できます。自動検出によってディレクトリが追加されるとパブリックとして追加され、そのディレクトリ内のすべてのファイルは、tfactl diagcollectコマンドを実行する権限を持つすべてのユーザーによって収集可能になります。これは、ユーザーにroot以外にsudoによってTFACTLコマンドを実行する権限を与えている場合に重要です。ディレクトリがプライベートとマークされている場合、TFAはTFACTLコマンドを実行しているユーザーを判別し、ユーザーにディレクトリ内のファイルを参照する権限があるか検証してから、ファイルの収集を許可します。

注意:

ユーザーがTFAに追加できるのは読取り権限を持つディレクトリのみで、また、TFAの自動収集は(設定されている場合)rootとして実行されるため、常に、使用可能なすべてのファイルを収集できます。

構文

tfactl directory [add directory | remove directory | modify directory -private | -public]

パラメータ

表J-13 tfactl directoryコマンドのパラメータ

パラメータ

説明

add directory

特定のディレクトリを追加します

remove directory

特定のディレクトリを削除します

modify directory
-private | -public

特定のディレクトリをプライベートまたはパブリックに変更して、情報の収集を、特定のオペレーティング・システム権限を持つユーザーにのみ許可したり(-private)、tfactl diagcollectionコマンドを実行する権限をもつすべてのユーザーに許可できます(-public)

使用上の注意

Berkeleyデータベースにすべてのトレース・ディレクトリ名を追加し、TFAがそのディレクトリ内のファイル・メタデータを収集できるようにする必要があります。検出プロセスでは、ほとんどのディレクトリが検出されますが、新しいまたは未検出のディレクトリが必要な場合tfactl directoryコマンドを使用して、手動でこれらのファイルを追加できます。TFACTLを使用してディレクトリを追加する場合、TFAは、ディレクトリの対象がデータベース、Oracle Clusterware、オペレーティング・システム・ログまたはその他のコンポーネントのどれか、および対象がデータベースかインスタンスかを判別しようと試みます。TFAがこの情報を判別できない場合、エラーが戻され、次のような情報を入力するように求められます。

# tfactl directory add /tmp

Failed to add directory to TFA. Unable to determine parameters for directory: /tmp
Please enter component for this Directory [RDBMS|CRS|ASM|INSTALL|OS|CFGTOOLS] : RDBMS
Please enter database name for this Directory :MYDB
Please enter instance name for this Directory :MYDB1

tfactl host

tfactl hostコマンドを使用して、TFAクラスタにホストを追加したり、TFAクラスタからホストを削除できます。

構文

tfactl host [add host_name | remove host_name]

次の例に示すように、追加または削除するホスト名を指定します。

# tfactl host add myhost.domain.com

使用上の注意

tfactl host addコマンドでは、ネットワーク上のその他のノードがローカルTFAに通知されます。ホストが追加されると、TFAはそのホストに接続し、そのホスト上でTFAが実行中の場合、両方のホストでホスト・リストが同期されます。TFAは、Cookieを使用してホストの追加を認証します。追加するホストが正しいCookieを持たない場合、クラスタ内の既存のホストからCookieを取得し、次の例に示すように、追加するホストに設定する必要があります。

#tfactl host add node2

Failed to add host: node2 as the TFA cookies do not match.
To add the host successfully, try the following steps:
1. Get the cookie in node1 using:
./tfa_home/bin/tfactl print cookie
2. Set the cookie from Step 1 in node2 using:
./tfa_home/bin/tfactl set cookie=<COOKIE>
3. After Step 2, add host again:
./tfa_home/bin/tfactl host add node2

ホストが正常に追加されると、Berkeleyデータベースに登録されているすべてのノードでクラスタ全体のコマンドがアクティブになります。

tfactl set

tfactl setコマンドを使用して、TFAの実行方法を調整できます。

構文

tfactl set [autodiagcollect=ON | OFF | cookie=UID | trimfiles=ON | OFF |
tracelevel=1 | 2 | 3 | 4 | reposizeMB=number | repositorydir=directory] [-c]

パラメータ

表J-14 tfactl setコマンドのパラメータ

パラメータ

説明

autodiagcollect=ON | OFF

OFFの場合(デフォルト)、自動診断収集は無効になります。ONに設定すると、アラート・ログのスキャン中に特定のパターンが発生した場合、TFAが自動的に診断を収集します。

TFAクラスタのすべてのノードに対して自動収集を設定するには、-cパラメータを指定する必要があります。

cookie=UID

tfactl print cookieコマンドを使用して、Cookieの識別を生成できます。

trimfiles=ON | OFF

ONに設定されている場合、スキャンの一部として診断収集を行うときに、TFAは関連データのみを含むようにファイルの切捨てを行います。

注意: tfactl diagcollectを使用する場合、このコマンドにパラメータを指定して、切捨てに対して時間範囲を指定する必要があります。切捨てされていないデータは非常に大きくなるため、このパラメータをOFFにしないことをお薦めします。

tracelevel=1 | 2 | 3 | 4

My Oracle Supportで指示されないかぎり、トレース・レベルは変更しないでください。

-c

このパラメータを指定して、設定をTFA構成内のすべてのノードに伝播します。

自動診断収集

TFAが最初にトレース・ファイル・メタデータを収集した後、特定の文字列が発生した場合に処理できるように、デーモンはtailを使用して、アラート・ログと判別されるすべてのファイルを監視します。

デフォルトでは、これらのログは、データベース・アラート・ログ、Oracle ASMアラート・ログおよびOracle Clusterwareアラート・ログです。Berkeleyデータベースに保存されているログ内で特定のパターンが発生した場合、自動診断収集が実行されます。

実際に収集されるものは、一致するパターンによって異なります。TFAは、一致するパターンの情報の格納のみを行う場合や、ローカルの診断収集を開始する場合があります。TFAは、ログを常に監視しデータベースに情報を収集しますが、自動診断収集は、最初にtfactl setコマンドを使用して有効にした場合のみ発生します。

tfactl diagcollect

tfactl diagcollectコマンドを使用して、オンデマンドの診断収集を実行できます。いくつかの異なるパラメータを設定して、収集の大きさや詳細度を指定できます。収集するデータに対して、あるインシデントの特定の時刻を指定したり、時間範囲を指定して、関連データを含むファイル全体を収集するか、それらのファイルの中からある時間間隔のデータのみを収集するかを決定できます。

注意:

パラメータを指定しない場合、tfactl diagcollectコマンドは、最近4時間にファイルが更新されたすべてのコンポーネントのすべてのノードからファイルが収集され、過剰なファイルは切捨てられます。この期間より前にインシデントが発生した場合、正しいデータ収集期間のためにこの項で説明するパラメータを使用してください。

構文

tfactl diagcollect [-all | -database all | database_1,database_2,... | -asm | -crs | -os | -install]
[-node all | local | node_1,node_2,...][-tag description] [-z file_name]
[-since numberh | d | -from "mmm/dd/yyyy hh:mm:ss" -to "mmm/dd/yyyy hh:mm:ss"
| -for "mmm/dd/yyyy hh:mm:ss" [-nocopy] [-nomonitor]]

パラメータ

表J-15 tfactl diagcollectコマンドのパラメータ

パラメータ

説明

-all | -database all
| database_1,database_2,...
| -asm | -crs | -os |
-install

トレース・ファイルまたはログ・ファイルを収集する1つ以上の個別のコンポーネントを選択するか、-allを選択して、インベントリ内のすべてのファイルを収集できます。時間間隔を指定しない場合、TFACTLは最近4時間のファイルを収集します。

-node all | local |
node_1,node_2,...

診断情報を収集するカンマ区切りのノード・リストを指定できます。デフォルト値はallです。

-tag description

このパラメータを使用すると、TFAリポジトリ内の収集に対してサブディレクトリを作成できます。

-z file_name

このパラメータを使用すると、出力ファイル名を指定できます。

-since numberh | d |
-from "mmm/dd/yyyy hh:mm:ss"
-to "mmm/dd/yyyy hh:mm:ss" |
-for "mmm/dd/yyyy hh:mm:ss"

-sinceパラメータを指定すると、過去の特定の時間数(h)または日数(d)の関連データを含むファイルを収集します。デフォルトでは、このパラメータを指定してコマンドを実行すると、大きなファイルは切捨てされ、特定の間隔のファイルのみが表示されます。

-fromおよび-toパラメータを指定して(この2つのパラメータは両方指定する必要があります)、特定の時間間隔中の関連データを含むファイルを収集し、ファイルが大きい場合、この時刻より前のデータが切捨てられます。

-forパラメータを指定して、指定した時刻の関連データを含むファイルを収集できます。TFACTLによって収集されるファイルには、-forの後に指定した時刻までの間のタイムスタンプが含まれます。このオプションでは、データの切捨ては行われません。

注意: 日付と時刻の両方を指定する場合、両方の値を二重引用符("")で囲む必要があります。日付のみまたは時刻のみを指定する場合、単一の値を引用符で囲む必要はありません。

-nocopy

このパラメータを使用すると、トレース・ファイルの収集が開始ノードにコピーされません。ファイルは、TFAリポジトリ内の実行ノードに残ります。

-nomonitor

このパラメータを使用すると、コマンドを実行する端末にコマンドの進捗状況が表示されません。

例

- 次のコマンドでは、クラスタ全体の最近4時間に更新されたすべてのファイル(chmosおよびoswデータを含む)が切捨ておよび圧縮され、開始ノードに収集されます。

# tfactl diagcollect

- 次のコマンドでは、クラスタ全体の最近8時間に更新されたすべてのファイル(chmosおよびoswデータを含む)が切捨ておよび圧縮され、開始ノードに収集されます。

# tfactl diagcollect –all –since 8h

- 次のコマンドでは、データベース(hrdbおよびfdb)の過去1日間に更新されたすべてのファイルが切捨ておよび圧縮され、開始ノードに収集されます。

# tfactl diagcollect -database hrdb,fdb -since 1d -z foo

- 次のコマンドでは、node1およびnode2の最近6時間に更新されたすべてのOracle Clusterwareファイル、オペレーティング・システム・ログおよびchmos、oswデータが切捨ておよび圧縮され、開始ノードに収集されます。

# tfactl diagcollect –crs -os -node node1,node2 -since 6h

- 次のコマンドでは、2014年7月4日から2015年7月5日の午後9時までに更新されたnode1のすべてのOracle ASMログが切捨ておよび圧縮され、開始ノードに収集されます。

# tfactl diagcollect -asm -node node1 -from Jul/4/2014 -to "Jul/5/2014 21:00:00"

- 次のコマンドでは、2014年7月2日に更新されたすべてのログ・ファイルが切捨ておよび圧縮され、開始ノードに収集されます。

# tfactl diagcollect -for Jul/2/2014

- 次のコマンドでは、2014年7月2日午前9時から2014年7月3日午前9時の間(コマンドに指定した時刻の前後12時間)に更新されたすべてのログ・ファイルが切捨ておよび圧縮され、開始ノードに収集されます。

# tfactl diagcollect -for "Jul/2/2014 21:00:00"

TFAでのデータ・リダクション

ファイル内のデータまたはファイル名のパスを置換して、機密データを非表示にできます。この機能を使用するには、redaction.xmlというファイルをtfa_home/resourcesディレクトリに置きます。TFAはredaction.xmlファイルに含まれるデータを使用して、ファイル名および内容の文字列を置換します。redaction.xmlファイルの書式は次のとおりです。

<replacements>
<replace>
<before>securestring</before>
<after>nonsecurestring</after>
</replace>
<replace>
<before>securestring2</before>
<after>nonsecurestring2</after>
</replace>
Etc…
</replacements>

Oracle Clusterwareアラート

すでに説明したように、Oracle Clusterwareによって様々な重要なイベントに関するメッセージがADRアラート・ログに書き込まれます。通常、アラート・ログのメッセージはローカライズ(翻訳)され、メッセージの詳細の検索に使用できるメッセージIDが付いています。Oracle Clusterwareに問題があるように見える場合には、まずアラート・ログを確認します。

次に、2つの異なるCRSデーモン・プロセスのアラート・ログ・メッセージの例を示します。

2014-07-16 00:27:22.074 [CTSSD(12817)]CRS-2403:The Cluster Time Synchronization Service on host stnsp014 is in observer mode.
2014-07-16 00:27:22.146 [CTSSD(12817)]CRS-2407:The new Cluster Time Synchronization Service reference node is host stnsp013.
2014-07-16 00:27:22.753 [CTSSD(12817)]CRS-2401:The Cluster Time Synchronization Service started on host stnsp014.
2014-07-16 00:27:43.754 [CRSD(12975)]CRS-1012:The OCR service started on node stnsp014.
2014-07-16 00:27:46.339 [CRSD(12975)]CRS-1201:CRSD started on node stnsp014.

次に、クラスタ再構成後のOracleクラスタ時刻同期化サービス(OCTSS)の起動例を示します。

2014-07-15 23:51:17.532 [CTSSD(12813)]CRS-2403:The Cluster Time Synchronization Service on host stnsp014 is in observer mode.
2014-07-15 23:51:18.292 [CTSSD(12813)]CRS-2407:The new Cluster Time Synchronization Service reference node is host stnsp013.
2014-07-15 23:51:18.961 [CTSSD(12813)]CRS-2401:The Cluster Time Synchronization Service started on host stnsp014.

Diagnostic Record Unique IDを使用したアラート・メッセージ

Oracle Database 11gリリース2(11.2)以降では、特定のOracle Clusterwareメッセージに、「(:」および「:)」で囲まれたテキスト識別子が含まれます。通常、この識別子は「Details in...」で始まるメッセージ・テキストの一部で、次の例のようなOracle Clusterware診断ログ・ファイルのパスおよび名前が含まれます。この識別子はDRUID (Diagnostic Record Unique ID)と呼ばれます。

2014-07-16 00:18:44.472 [ORAROOTAGENT(13098)]CRS-5822:Agent
'/scratch/12.1/grid/bin/orarootagent_root' disconnected from server. Details at
(:CRSAGF00117:) in /scratch/12.1/grid/log/stnsp014/agent/crsd/orarootagent_
root/orarootagent_root.log.

DRUIDは、外部製品のメッセージを、診断ログ・ファイルのエントリおよび内部Oracle Clusterwareプログラム・コードの場所に関連付けるために使用されます。これらはユーザーには直接関係ありませんが、主に、問題を診断するときにMy Oracle Supportによって使用されます。

用語集

アクション・スクリプト

リソースのstart、stop、stopおよびcheckアクションを定義するスクリプト。startアクションはリソースの起動中に起動され、stopアクションはリソースを停止するために起動され、checkアクションはリソースの動作ステータスのチェック中に起動されます。

管理者管理

データベース・リソースを実行するサーバーをデータベース管理者が定義し、必要に応じてリソースを手動で配置します。これは、以前のリリースで使用されていた管理方法です。

エージェント

リソースを管理するためのエージェント・フレームワークおよびユーザー・コードを含むプログラム。

エージェント・フレームワーク

カスタマイズ・アプリケーションを管理するためにアプリケーション固有のコードをユーザーがプラグインできるようにするCライブラリ。

可用性ディレクティブ

クラスタに対してサーバーが削除または追加された際にシステムを再構成するためのOracle Clusterwareに対する指示。

カーディナリティ

リソースを同時に実行できるサーバーの数。

クライアント・クラスタ

マルチクラスタ環境では、クライアント・クラスタは、サーバー・クラスタを使用して名前を通知します。

クラスタ

エンド・ユーザーおよびアプリケーションからは1つのサーバーとして認識される、相互に接続された複数のコンピュータまたはサーバー。

クラスタ対応

クラスタウェアを使用してデプロイされるように設計されたアプリケーション。

クラスタ管理者

設定されたポリシーおよび権限に基づいてクラスタの特定部分を管理できる管理者。

クラスタ構成ポリシー

システムで定義されているサーバー・プールごとに1つのみの定義を含む、ポリシー管理クラスタ用のドキュメント。

クラスタ構成ポリシー・セット

1つ以上の構成ポリシーを含むクラスタに構成されているすべてのサーバー・プールの名前を定義するドキュメント。一度に有効にできるのは1つのポリシーのみですが、管理者は、ビジネスのニーズおよびシステムの要求に従って、様々な日付または時刻で有効になるように様々なポリシーを設定できます。

クラスタ状態モニター

オペレーティング・システムおよびクラスタ・リソースに関連する状態の悪化および障害を検出および分析します。

クラスタ・リソース

クラスタ環境を認識し、ノード間のスイッチオーバーとフェイルオーバーの対象となるリソース。

クラスタ時刻同期化サービス

クラスタ内のすべてのノードの内部クロックがすべて同期化されるようにする時刻同期メカニズム。

クラスタ検証ユーティリティ(CVU)

共有ストレージ・デバイス、ネットワーク構成、システム要件、Oracle Clusterware、グループ、ユーザーなどのOracle RACの様々なコンポーネントを検証するツール。

データベース・クラウド

高パフォーマンス、可用性、およびリソースの最適使用率を確保しながら、1つ以上のグローバル・サービスを提供する単一仮想サーバーに対して、グローバル・サービスおよびロード管理フレームワークによって統合されている一連のデータベース。

依存性

2つ以上のリソース間の関係、およびそれらの間で示される相互作用。

ディスク・グループ

Oracle ASMディスクは、Oracle ASMで1つの単位として管理されるディスクの集合です。ディスク・グループ内では、Oracle Databaseファイルのファイルシステム・インタフェースがOracle ASMにより公開されます。ディスク・グループ内に保存されたファイルの内容は、均等に分散されるか、またはストライプ化されるため、ホット・スポットがなくなり、ディスク間のパフォーマンスが均一になります。必要に応じて、ディスク・グループ内でOracle ASMファイルをミラー化することもできます。ディスク・グループ内のディスクのパフォーマンスは、RAWデバイスのパフォーマンスと同程度です。

動的ホスト構成プロトコル(DHCP)

インターネット・プロトコル・ネットワークにおける操作用の構成情報を取得するために、デバイス(DHCPクライアント)によって使用されるネットワーク・アプリケーション・プロトコル。このプロトコルによってシステム管理のワークロードが軽減され、手動操作をほとんどまたはまったく行わずに、デバイスをネットワークに追加できます。

fixupスクリプト

インストールの最小要件を満たしていない場合はOracle Universal Installerによって検知され、要件を満たしていないシステム構成の多くを解決するために、修正スクリプトと呼ばれるシェル・スクリプト・プログラムが作成されます。Oracle Universal Installerは不完全なタスクを検出すると、修正スクリプトを作成してから別のターミナル・セッションで修正スクリプトを実行するように求めます。特定のCVUコマンドで-fixupフラグを使用して、修正スクリプトを生成することもできます。

ゴールド・イメージ

ホーム固有の詳細情報が使用できないOracleホームにインストールされているソフトウェアのみのコピー。これにより、有効で使用可能なOracleホームとして機能させるために、Oracleホームのイメージを、新しいファイル・システム上の新しいホストに簡単にコピーできます。

一般にゴールド・イメージはアプリケーションに対応していますが、このドキュメントのコンテキストでは、ゴールド・イメージはOracle Databaseに対応しています。また、ゴールド・イメージは出荷ホームではなく、ゴールド・イメージをデプロイするときにOracle Universal Installerを実行する必要がないことを意味しています。

Gridホーム・クライアント

Gridホーム・クライアントは、ゴールド・イメージをプロビジョニングするための高速ホーム・プロビジョニング・サーバーをサブスクライブするリモートのOracle Grid Infrastructureクラスタです。

Oracle Grid Infrastructure

エンタープライズ・グリッド・アーキテクチャ用のインフラストラクチャを提供するソフトウェア。クラスタの場合、このソフトウェアにはOracle Clusterwareと Oracle ASM が含まれます。スタンドアロン・サーバーの場合、このソフトウェアにはOracle RestartとOracle ASMが含まれます。Oracle Database 12cでは、これらのインフラストラクチャ製品が組み合されて、Oracle Grid Infrastructureホーム(Grid_home)という1つのソフトウェア・インストールになっています。

グリッド・ネーミング・サービス(GNS)

委任を受けた標準DNSゾーン内のホスト名をそのゾーンのIPアドレスにマッピングすることで、ホスト名を解決する汎用サービスです。GNSを使用すると、Oracle RACデータベース・ノードに対して動的ホスト構成プロトコル(DHCP)によるアドレスが使用されるため、デプロイメントが容易になります。また、GNSでは、SCANリスナーから戻されたホスト名の解決も行われます。

ハブ・アンカー

1つ以上のリーフ・ノードのクラスタ・メンバーシップのための接続ポイントとして機能する、Oracle Flex Cluster内のハブ・ノード。リーフ・ノードは、単一ハブ・アンカーとハートビートを交換します。

ハブ・ノード

他のサーバーと密接続して、共有ディスクに直接アクセスする、Oracle Flex Cluster内のノード。

イメージ

高速ホーム・プロビジョニング・サーバーに存在する、Oracleデータベース・ホーム・ソフトウェアのマスター・コピー。

IPv4

インターネット・プロトコル・バージョン4。IPv4は、現在の標準のIPプロトコルです。IPv4は32ビット(4バイト)アドレスを使用します。通常、ドット区切りの10進数表記で表現されます。各オクテットの10進数の値は、192.168.2.22のようにピリオドで区切られます。

IPv6

インターネット・プロトコル・バージョン6。IPv4の後継として設計されたプロトコル。IPv6では、IPアドレスは通常、2001:0DB8:0000:0000:0000:0000:1428:57ABのように、コロンで区切られた8つのフィールドの16進数の値で表現されます。2001:DB8::1428:57ABのように、値が0のフィールドを圧縮することもできます。

リーフ・ノード

共有ストレージに直接アクセスできない、ハブ・ノードと疎結合されたサーバー。

ローカル・リソース

クラスタのノード上で実行され、ノードの範囲外のものは認識しないリソース。

OCRライター

各CRSDプロセスもOCRサーバーとして機能します。クラスタのCRSDプロセスの1つは、ディスク・グループまたはファイル、あるいはブロックまたはRAWデバイス対してI/Oを実行するOCRサーバーです。

Oracle Automatic Storage Management(Oracle ASM)

Oracle ASMはOracle ClusterwareおよびOracle RACで使用される記憶域ディスクをディスク・グループ内で管理します。デフォルトでは、Oracle ClusterwareはOracle ASMを使用してOCRおよび投票ファイルを格納します。

Oracle Cluster Registry(OCR)

クラスタ・ノード・リストに関する情報およびインスタンスからノードへのマッピング情報を管理するOracle RAC構成情報のリポジトリ。OCRは、カスタマイズされたアプリケーション用のOracle Clusterwareリソース・プロファイルに関する情報も管理します。

Oracle Clusterware

接続されたサーバーのグループ(クラスタ)が動作すること、または1つの単位として制御されることを可能にするソフトウェア。

Oracle Clusterwareスタック

Oracle Clusterwareスタックには、Oracleクラスタ・レディ・サービス、イベント・マネージャ、クラスタ同期サービスおよびOracle ASM(使用する場合)が含まれます。

Oracle Flex Cluster

ハブ・ノードとリーフ・ノードという2つのタイプのノードで構成された大きなクラスタ。ハブ・ノードは、現在のメンバーシップ・アルゴリズムを使用してクラスタを形成し、リーフ・ノードは、ハブ・アンカーという単一のハブ・ノードに対してメンバーシップを接続します。

ポリシー管理型

データベース管理者は、データベース・リソースを実行するサーバー・プール(汎用および空きを除く)を指定します。Oracle Clusterwareによって、データベース・リソースがサーバーに配置されます。

高速ホーム・プロビジョニング・サーバー

高速ホーム・プロビジョニング・サーバーは、ゴールド・イメージのリポジトリを保持できるサーバー・クラスタ上の1サーバーです。

resource

Oracle Clusterwareによって管理されるデータベース、アプリケーションまたはプロセス。

リソースの状態

特定の時間の特定のリソースの状態。これによってクラスタの可用性を確認します。

リソース・タイプ

リソースがクラスタ・リソースまたはローカル・リソースのいずれであるかを定義します。

サーバーのカテゴリ化

一連のサーバー属性を使用して、クラスタ内のサーバーを様々なカテゴリに分類する方法。管理者は、受け入れるカテゴリを制限するようにサーバー・プールを構成できます。サーバー・カテゴリは、SERVER_CATEGORYパラメータの属性を提供して作成します。

サーバー・クラスタ

マルチクラスタ環境では、サーバー・クラスタは、グリッド・ネーミング・サービス(GNS)・プロセスを実行するクラスタです。

サーバー・プール

アプリケーション、データベースまたはその両方をホスティングするグループに論理的に分割されているクラスタ内のサーバー。

単一クライアント・アクセス名(SCAN)

パブリック・ネットワークで3つのIPアドレスに解決される1つの名前。

起動試行の評価

Oracle Clusterwareがリソースを起動するときに実行する処理。この処理の間、Oracle Clusterwareはリソースのプロファイルに含まれるリソースの依存性を考慮します。

state

特定のリソースの状態を示す一連の値。

作業用コピー

ソフトウェアのみがインストールされたOracleホーム、またはインスタンス化された構成済のOracleホームのいずれかにできるゴールド・イメージのOracle ACFSスナップショット。

索引

A  B  C  D  E  F  G  H  I  L  M  N  O  P  Q  R  S  T  U  V  W

A

- アクセス制御リスト(ACL) 1

- ACL

- リソース属性 1

- ACTION_FAILURE_EVENT_TEMPLATE

- リソース属性 1

- ACTION_SCRIPT

- リソース属性 1

- ACTION_TIMEOUT

- リソース属性 1

- アクション・エントリ・ポイント

- 定義 1

- ACTIONS

- リソース属性 1

- アクション・スクリプト 1

- アクション・スクリプト

- アクション 1

- ACTIVE_PLACEMENT

- リソース属性 1

- アドレス, 手動構成 1

- 管理ツール

- 概要および概念 1

- ADR

- ディレクトリ構造 1

- ADRホーム

- ディレクトリ

- インシデント 1

- トレース 1

- エージェント

- 定義 1

- AGENT_FILENAME

- リソース属性 1

- エージェント・フレームワーク

- 定義 1

- エージェント・プログラム 1

- エージェント

- appagent 1 , 2

- appagent.exe 1 , 2

- scriptagent 1 , 2

- scriptagent.exe 1 , 2

- ALERT_TEMPLATE

- リソース属性 1

- アラート・メッセージ

- CRSD 1

- API

- エージェント・フレームワーク

- clsagfw_add_type() 1

- clsagfw_check_resource() 1

- clsagfw_create_attr_iterator() 1

- clsagfw_delete_cookie() 1

- clsagfw_exit2() 1

- clsagfw_get_attr_from_iterator() 1

- clsagfw_get_attrvalue() 1

- clsagfw_get_check_type() 1

- clsagfw_get_cmdid() 1

- clsagfw_get_cookie() 1

- clsagfw_get_request_action_name() 1

- clsagfw_get_resource_id() 1

- clsagfw_get_resource_name() 1

- clsagfw_get_retry_count() 1

- clsagfw_get_type_name() 1

- clsagfw_init() 1

- clsagfw_is_cmd_timedout() 1

- clsagfw_log() 1

- clsagfw_modify_attribute() 1

- clsagfw_reset_attr_iterator() 1

- clsagfw_send_status2() 1

- clsagfw_set_cookie() 1

- clsagfw_set_entrypoint() 1

- clsagfw_set_exitcb() 1

- clsagfw_set_resource_state_label() 1

- clsagfw_startup() 1

- clscrs_stat2 1

- その他

- clscrs_get_error_details 1

- clscrs_request_action 1

- clscrs_restart_resource 1

- clscrs_start_resource_in_pools 1

- clscrs_stat3 1

- clscrs_stop_resource_in_pools 1

- サーバーのカテゴリ化

- clscrs_get_server_by_category 1

- clscrs_register_server 1

- clscrs_register_servercategory 1

- clscrs_servercategory_create 1

- clscrs_servercategory_destroy 1

- clscrs_unregister_servercategory 1

- What-If

- clscrs_whatif_add_server 1

- clscrs_whatif_delete_server 1

- clscrs_whatif_fail_resource 1

- clscrs_whatif_register_resource 1

- clscrs_whatif_register_serverpool 1

- clscrs_whatif_relocate_resource 1

- clscrs_whatif_relocate_server 1

- clscrs_whatif_set_activepolicy 1

- clscrs_whatif_start_resource 1

- clscrs_whatif_stop_resource 1

- clscrs_whatif_unregister_serverpool 1

- アプリケーション・エージェント 1 , 2

- アプリケーション

- VIPアドレスの定義 1

- 高可用性 1

- CLSCRSコマンドを使用した管理 1

- アプリケーションVIP

- 削除 1

- appvipcfg create 1

- attraction起動依存性

- 修飾子 1

- AUTO_START

- リソース属性 1

- autoconfig 1 , 2

- 自動アドレス構成 1

- 自動クラスタ・アドレス構成 1

- 自動診断リポジトリ

- 「ADR」を参照:

B

- バックグラウンド・プロセス 1

- Baseboard Management Controller(BMC)

- 「Intelligent Platform Management Interface(IPMI)」を参照:

- ブロック単位のチェックサム操作 1

- 組込みエージェント 1

C

- キャッシュ・フュージョン

- 通信 1

- CARDINALITY

- リソース属性 1

- ネットワーク・インタフェースの変更

- ネットワーク・インタフェース

- 変更 1

- インタフェース名の変更, 結果 1

- クラスタ・モードの変更 1

- VIPアドレスの変更 1

- CHECK_INTERVAL

- リソース属性 1

- CHECK_TIMEOUT

- リソース属性 1

- チェックサム操作

- ブロック単位 1

- CHM

- 「クラスタ状態モニター(CHM)」を参照:

- CLEAN_TIMEOUT

- リソース属性 1

- クライアント・クラスタ 1

- クライアント・データ・ファイル

- 共有GNSを構成するための使用 1

- クライアント側の診断インフラストラクチャ(CRSD)

- アラート 1

- クローニング

- Oracle Clusterware 1

- Oracle Grid Infrastructure 1

- クローニング, クラスタウェアの概要 1

- CLSCRS

- What-If API

- 説明 1

- clscrs_crsentity 1

- clscrs_crsentitylist 1

- clscrs_entity_type 1

- clscrs_sp 1

- clscrs_splist 1

- CLSCRS API

- コールバック・メカニズム 1

- データ構造

- clscrs_crsentity 1

- clscrs_crsentitylist 1

- clscrs_entity_type 1

- clscrs_sp 1

- clscrs_splist 1

- 非推奨 1

- エラーの処理およびトレース 1

- フィルタ

- 比較フィルタ 1

- 式フィルタ 1

- 初期化および永続性 1

- メモリー管理 1

- 概要 1

- スレッドのサポート 1

- CLSCRSコマンド

- 概要 1

- CLSD-1009メッセージ

- 解決 1

- CLSD-1011メッセージ

- 解決 1

- CLUSTER_INTERCONNECTインタフェース

- OIFCFGでの指定 1

- CLUSTER_INTERCONNECTS初期化パラメータ 1

- cluster_resource 1

- クラスタ対応リソース 1

- クラスタ構成ポリシー 1

- クラスタ状態モニター(CHM)

- CHMデータの収集 1

- デーモン 1

- OCLUMON 1

- サービス

- クラスタ・ログ出力 1

- システム監視 1

- クラスタ状態モニター(crf)

- デバッグ 1

- クラスタ・インターコネクト

- キャッシュ・フュージョン通信 1

- プライベート・ネットワーク・アドレスの変更 1

- クラスタ・モード

- 変更 1

- クラスタ・レディ・サービス(CRS)

- デバッグ 1

- 定義 1

- クラスタ・リソース 1

- クラスタ

- 変換 1

- Oracle Flex Clusterへの変換 1

- クラスタ記憶域

- OCRによる記録 1

- クラスタ同期サービス(css)

- デバッグ 1

- クラスタ同期サービス(CSS)

- 定義 1

- クラスタの時間管理 1

- クラスタ時刻同期化サービス(CTSS)

- デバッグ 1

- クラスタ検証ユーティリティ(CVU)

- 「CVU」を参照:

- クラスタウェア, クローニングの概要 1

- cluvfy

- 「CVU」を参照:

- 互換性

- Oracle Clusterware、Oracle ASMおよびデータベース 1

- component_nameパラメータ

- crsctl set traceコマンドへの指定 1

- 構成

- OCRの再初期化 1

- 構成

- 投票ファイル 1

- クラスタの変換 1

- CPUS

- ノード・ビュー 1

- CRS

- 「クラスタ・レディ・サービス(CRS)」を参照:

- CRSCTL

- Oracle Clusterwareのステータスのチェック 1

- コマンド

- add category 1

- add crs administrator 1

- add css votedisk 1

- add policy 1

- add resource 1

- add serverpool 1

- add type 1

- add wallet 1

- check cluster 1

- check crs 1

- check css 1

- check ctss 1

- check evm 1

- check has 1

- check resource 1

- config crs 1

- config has 1

- create policyset 1

- delete category 1

- delete crs administrator 1

- delete css votedisk 1

- delete node 1

- delete policy 1

- delete resource 1

- delete serverpool 1

- delete type 1

- delete wallet 1

- disable crs 1

- disable has 1

- discover dhcp 1

- enable crs 1

- enable has 1

- eval activate policy 1

- eval add resource 1

- eval add server 1

- eval add serverpool 1

- eval delete server 1

- eval delete serverpool 1

- eval fail resource 1

- eval modify serverpool 1

- eval relocate resource 1

- eval relocate server 1

- eval start resource 1

- eval stop resource 1

- get clientid dhcp 1

- get cluster hubsize 1

- get cluster mode 1

- get cpu equivalency 1

- get css 1

- get css ipmiaddr 1

- get css leafmisscount 1

- get hostname 1

- get nodename 1

- get node role 1

- getperm resource 1

- getperm serverpool 1

- getperm type 1

- get resource use 1

- get server label 1

- lsmodules 1

- modify category 1

- modify policy 1

- modify policyset 1

- modify resource 1 , 2

- modify server 1

- modify serverpool 1

- modify type 1

- modify wallet 1

- pin css 1

- query crs activeversion 1

- query crs administrator 1

- query crs autostart 1

- query crs releasepatch 1

- query crs releaseversion 1

- query crs softwarepatch 1

- query crs softwareversion 1

- query css ipmiconfig 1

- query css ipmidevice 1

- query css votedisk 1

- query dns 1

- query has releaseversion 1

- query has softwareversion 1

- query socket udp 1

- query wallet 1

- release dhcp 1

- relocate resource 1

- relocate server 1

- replace discoverystring 1

- replace votedisk 1

- request action 1

- request dhcp 1

- restart resource 1

- set cluster hubsize 1

- set cluster mode 1

- set cpu equivalency 1

- set crs autostart 1

- set css 1

- set css ipmiaddr 1

- set css ipmiadmin 1

- set css leafmisscount 1

- set log 1

- set node role 1

- setperm resource 1

- setperm serverpool 1

- setperm type 1

- set resource use 1

- set server label 1

- start cluster 1

- start crs 1

- start has 1

- start ip 1

- start resource 1

- start rollingpatch 1

- start rollingupgrade 1

- start testdns 1

- status category 1

- status ip 1

- status policy 1

- status policyset 1

- status resource 1

- status server 1

- status serverpool 1

- status testdns 1

- status type 1

- stop cluster 1

- stop crs 1

- stop has 1

- stop ip 1

- stop resource 1

- stop rollingpatch 1

- stop testdns 1

- unpin css 1

- unset css 1

- unset css ipmiconfig 1

- unset css leafmisscount 1

- デュアル環境のコマンド 1

- Oracle RAC環境のコマンド 1

- Oracle Restart環境のコマンド 1

- CRSCTLコマンド

- クラスタ対応 1

- component_nameパラメータ 1

- デバッグ・ログ 1

- lsmodules 1

- module_nameパラメータ 1

- 概要 1

- resource_nameパラメータ 1

- set log 1

- set trace 1

- crsctl set log 1

- crsctl set trace 1

- CRSDバックグラウンド・プロセス

- アラート・メッセージ 1

- CSS

- 「クラスタ同期サービス(CSS)」を参照:

- CVU

- 概要 1

- ベースラインの作成 1

- コマンド

- cluvfy comp acfs 1

- cluvfy comp admprv 1

- cluvfy comp asm 1

- cluvfy comp baseline 1

- cluvfy comp clocksync 1

- cluvfy comp clumgr 1

- cluvfy comp crs 1

- cluvfy comp dns 1

- cluvfy comp freespace 1

- cluvfy comp gns 1

- cluvfy comp gpnp 1

- cluvfy comp ha 1

- cluvfy comp healthcheck 1

- cluvfy comp nodeapp 1

- cluvfy comp nodecon 1 , 2

- cluvfy comp nodereach 1

- cluvfy comp ocr 1

- cluvfy comp ohasd 1

- cluvfy comp olr 1

- cluvfy comp peer 1

- cluvfy comp scan 1

- cluvfy comp software 1

- cluvfy comp space 1

- cluvfy comp ssa 1

- cluvfy comp sys 1

- cluvfy comp vdisk 1

- cluvfy stage -post acfscfg 1

- cluvfy stage -post cfs 1

- cluvfy stage -post crsinst 1

- cluvfy stage -post hacfg 1

- cluvfy stage -post hwos 1

- cluvfy stage -post nodeadd 1

- cluvfy stage -pre acfscfg 1

- cluvfy stage -pre cfs 1

- cluvfy stage -pre crsinst 1

- cluvfy stage -pre dbcfg 1

- cluvfy stage -pre dbinst 1

- cluvfy stage -pre hacfg 1

- cluvfy stage -pre nodeadd 1

- コンポーネント検証

- Oracle ClusterwareおよびOracle Databaseインストールのチェック 1

- Cluster Managerサブコンポーネント 1

- クラスタ・ノード間の接続性 1

- CTSSの整合性 1

- ドメイン名サービス(DNS) 1

- 空き領域 1

- グリッド・ネーミング・サービス(GNS) 1

- グリッド・プラグ・アンド・プレイ・サービスおよびプロファイル 1

- 高可用性の整合性 1

- OCRの整合性 1

- ohasdの整合性 1

- OLRの整合性 1

- Oracle ACFSの整合性 1

- Oracle ASMの整合性 1

- 投票ファイルの整合性 1

- ノード・アプリケーション 1

- ノードの比較 1

- Oracle Clusterwareコンポーネント 1

- ノードの到達可能性 1

- SCAN構成 1

- ノードへのソフトウェア配布 1

- 記憶域 1

- システム要件 1

- ユーザーおよび権限 1

- runcluvfy.shとcluvfyの違い 1

- インストール要件 1

- 既知の問題 1

- ノード・リストのショートカット 1

- オンライン・ヘルプ・システム 1

- 概要および概念 1

- 検証の実行 1

- runcluvfy.sh 1

- ステージ検証

- データベース構成 1

- 高可用性インストール 1

- すべてのノードのネットワークおよび記憶域 1

- ノードのインストール 1

- Oracle ACFS 1

- Oracle ACFS構成 1

- Oracle Clusterwareのインストール 1

- Oracle RACのインストール 1

- UNKNOWN出力 1

- 冗長モード 1

D

- デバッグ

- CRS、CSSおよびEVMモジュール 1

- Oracle Clusterwareリソース 1

- デフォルト・アプリケーションVIP

- 作成

- appvipcfg create 1

- ネットワーク・インタフェースの定義

- OIFCFGコマンドライン・インタフェース 1

- DELETE_TIMEOUT

- リソース属性 1

- delifコマンド

- OIFCFGコマンドライン・インタフェース 1

- デプロイメント・スキーム

- 決定 1

- DESCRIPTION

- リソース属性 1

- DEVICES

- ノード・ビュー 1

- DHCP構成 1

- diagcollection.pl 1

- 診断ディレクトリ

- アラート 1

- コア 1

- インシデント 1

- 出力 1

- トレース 1

- 診断収集スクリプト 1

- ディスク・グループの冗長性

- 外部 1

- 高 1

- 標準 1

- dispersion起動依存性

- 修飾子 1

- DNS、GNSおよびSCANのエントリの例 1

- DRUID

- Diagnostic Record Unique ID 1

- DHCP(動的ホスト構成プロトコル) 1

E

- ENABLED

- リソース属性 1

- Oracle Clusterwareリソースのデバッグの有効化 1

- CRS、CSSおよびEVMモジュールのデバッグの有効化 1

- Oracle Clusterwareコンポーネントのトレースの有効化 1

- エントリ・ポイント

- ABORT 1

- ACTION 1

- CHECK

- CLSAGFW_FAILED状態 1

- CLSAGFW_ONLINE状態 1

- CLSAGFW_PARTIAL状態 1

- CLSAGFW_PLANNED_OFFLINE状態 1

- CLSAGFW_UNKNOWN状態 1

- CLSAGFW_UNPLANNED_OFFLINE状態 1

- CLEAN 1

- 定義 1

- DELETE 1

- MODIFY 1

- 監視 1

- START 1

- STOP 1

- イベント管理(EVM)

- 定義 1

- イベント・マネージャ(evm)

- デバッグ 1

- EVM

- 概要 1

- exclusion起動依存性

- 修飾子 1

- Oracle Databaseホームの拡張

- 非共有記憶域 1

- 共有ストレージ

- Network Attached Storage 1

- Oracle ACFS 1

F

- FAILURE_INTERVAL

- リソース属性 1

- FAILURE_THRESHOLD

- リソース属性 1

- 障害グループ

- クォーラム 1

- 障害分離

- IPMIの構成 1

- 高速アプリケーション通知(FAN) 1

- FILESYSTEMS

- ノード・ビュー 1

- 空きサーバー・プール

- 説明 1

G

- generic_application

- リソース・タイプ

- リソースの作成 1

- 汎用サーバー・プール

- 説明 1

- 汎用サーバー・プール 1

- getifコマンド

- OIFCFGコマンドライン・インタフェース 1

- グローバル・インタフェース

- 格納されるネットワーク・インタフェース 1

- GNS

- 管理 1

- 起動 1

- 停止 1

- GNS、GNS VIP 1

- GNSデーモン

- およびGNS VIP 1

- ポート番号 1

- ゴールド・イメージ 1

- ゴールド・イメージ

- 高速ホーム・プロビジョニング・サーバーへの追加 1

- グリッド・プロセス間通信(gipc)

- デバッグ 1

- グリッド・プロセス間通信(GIPC) 1

- グリッド・ネーミング・サービス(GNS)

- 定義 1

- 「GNS」を参照 1

- グリッド・プラグ・アンド・プレイ(gpnp)

- デバッグ 1

- グリッド・プラグ・アンド・プレイ(GPNPD) 1

H

- HAIP

- 高可用性IPアドレス 1

- hard起動依存性

- 修飾子 1

- hard停止依存性

- 修飾子 1

- ハードウェアの要件 1

- 高可用性

- Oracle Clusterware 1

- Application Program Interface 1

- フレームワーク 1

- HOSTING_MEMBERS

- リソース属性 1

- ハブ・ノード 1

I

- iflistコマンド

- OIFCFGコマンドライン・インタフェース 1

- インポート

- OCR 1

- インシデント・トレース・ファイル 1

- 初期化パラメータ

- CLUSTER_INTERCONNECTS 1

- インストール

- 概要 1

- インストール

- 投票ファイルの構成 1

- INSTANCE_COUNT

- リソース属性 1

- INSTANCE_FAILOVER

- リソース属性 1

- Intelligent Management Platform Interface(IPMI)

- 障害分離のための構成 1

- IPMI構成の変更 1

- IPMI構成の削除 1

- Intelligent Platform Management Interface(IPMI)

- CRSCTLコマンド

- get css ipmiaddr 1

- query css ipmiconfig 1

- query css ipmidevice 1

- set css ipmiaddr 1

- set css ipmiadmin 1

- unset css ipmiconfig 1

- 「インターコネクト」ページ

- Oracle Enterprise Managerによるクラスタウェアの監視 1

- インタフェース名, 変更の結果 1

- INTERMEDIATE_TIMEOUT

- リソース属性 1

- INTERNAL_STATE

- リソース属性 1

- IPMI

- 管理者の変更 1

- IPアドレスの取得 1

- IPアドレスの格納 1

- IPv4

- 動的IPv6アドレスへの変更 1

- 静的IPv6アドレスへの変更 1

- ネットワーク構成

- IPv6ネットワークの追加 1

- ネットワーク

- IPv6ネットワークへの移行 1

- IPv6

- 名前解決 1

- IPv6ステートレス・アドレス自動構成プロトコル 1

L

- LAST_SERVER

- リソース属性 1

- LAST_STATE_CHANGE

- リソース属性 1

- リーフ・ノード 1

- リスナー

- OCR 1

- LOAD

- リソース属性 1

- local_resource 1

- ローカル・リソース 1

- ログ・レベル

- Oracle Clusterwareの設定 1

- lsmodulesパラメータ

- CRSCTLコマンド 1

M

- アプリケーションの管理

- CLSCRSコマンド 1

- Oracle Clusterwareの管理

- CRSCTL 1

- アドレスの手動構成 1

- mDNS

- 「マルチキャスト・ドメイン名サービス(mDNS)」を参照:

- mDNSResponder

- 用途 1

- メモリー不足 1

- ミラー化

- OCR(Oracle Cluster Registry) 1

- MODIFY_TIMEOUT

- リソース属性 1

- module_nameパラメータ

- CRSCTLコマンドへの指定 1

- モジュール

- デバッグ

- crf 1

- crs 1

- css 1

- ctss 1

- evm 1

- gipc 1

- gpnp 1

- マルチキャスト・ドメイン名サービス(mDNS)

- 定義 1

N

- NAME

- リソース属性 1

- ネットワーク・ファイル・システム

- 「NFS」を参照:

- ネットワーク・インタフェース

- 構成 1

- グローバル 1

- ノード固有 1

- OIFCFGの構文 1

- ネットワーク・インタフェース・カード 1

- ネットワーク・インタフェース

- OIFCFGによる定義 1

- タイプ 1

- subnet分類の更新 1

- ネットワーク

- 作成 1

- Oracle Flex Clusters 1

- NFSホーム・クライアント 1

- NICS

- ノード・ビュー 1

- ノード・ロール

- 変更 1

- ノード

- クラスタへの追加

- LinuxまたはUNIX 1

- Windows 1 , 2

- クラスタからの削除

- LinuxまたはUNIX 1

- VIPアドレス 1

- ノード固有のインタフェース

- 格納されるネットワーク・インタフェース 1

- ノード・ビュー

- 定義 1

- ノード・ビュー

- CPUS 1

- DEVICES 1

- FILESYSTEMS 1

- NICS 1

- PROCESSES 1

- PROTOCOL ERRORS 1

- SYSTEM 1

- TOP CONSUMERS 1

- 非デフォルト・アプリケーションVIP

- 作成 1

O

- OCLUMON

- コマンド

- debug 1

- dumpnodeview 1

- manage 1

- version 1

- ocr.locファイル 1

- OCR(Oracle Cluster Registry)

- 追加 1 , 2

- 自動バックアップ 1

- バックアップ 1

- バックアップ・ファイルの場所の変更 1

- 内容 1

- OCRDUMPに関する問題の診断 1

- ダウングレード 1

- エクスポート 1

- インポート

- Windowsシステム 1

- 内容のインポート

- LinuxおよびUNIXシステム 1

- バックアップ・ファイルのリスト 1

- 管理 1

- 手動バックアップ 1

- Oracle ASMからの移行 1

- Oracle ASMへの移行 1

- ocr.locファイル 1

- OCRDUMPユーティリティのコマンド例 1

- データ損失保護メカニズムの無効化 1

- クラスタ構成情報の記録 1

- クラスタ記憶域の記録 1

- 削除 1 , 2

- 修復 1 , 2

- 置換 1 , 2

- リストア

- Oracle Restart 1

- LinuxおよびUNIXシステム 1

- Windowsシステム 1

- 自動的に生成されたOCRバックアップの使用 1

- トラブルシューティング 1 , 2

- アップグレード 1

- OCRDUMPのコンテンツの表示 1

- OCRCHECK

- コマンド

- -config 1

- -local 1

- OCRCHECKユーティリティ

- OLRのステータスのチェック 1

- OCRの問題の診断 1

- ログ・ファイル 1

- サンプル出力 1

- OCRコンフィギュレーション・ツール

- 「OCRCONFIGユーティリティ」を参照:

- OCRCONFIGユーティリティ

- OLRの管理 1

- コマンド

- -add 1

- -backuploc 1

- -copy 1

- -delete 1

- -downgrade 1

- -export 1

- -import 1 , 2

- -manualbackup 1

- -overwrite 1

- -repair 1

- -replace 1

- -restore 1

- -showbackup 1

- -showbackuploc 1

- -upgrade 1

- ログ・ファイル 1

- 概要および概念 1

- 構文 1

- OCRDUMPユーティリティ

- ロギングの量の変更 1

- コマンド例 1

- コマンド

- バックアップ 1

- OCR問題の診断 1 , 2

- OLRの内容のダンプ 1

- ログ・ファイル 1

- サンプル出力 1

- 構文およびオプション 1

- SYSTEM.languageキー出力 1

- SYSTEM.versionキー出力 1

- ocrlog.iniファイル

- 編集 1

- OFFLINE_CHECK_INTERVAL

- リソース属性 1

- OIFCFGコマンドライン・インタフェース

- コマンド 1

- インタフェース・タイプ 1

- 起動 1

- 概要および概念 1 , 2

- 構文 1

- OLR(Oracle Local Registry)

- 管理 1

- バックアップ 1

- ステータスのチェック 1

- 定義 1

- 内容のダンプ 1

- ファイルへのエクスポート 1

- ファイルのインポート 1

- リストア 1

- バックアップ・ファイルの表示 1

- OCRDUMPのコンテンツの表示 1

- OLSNODESコマンド

- 参照 1

- ONS

- 「Oracle Notification Service (ONS)」を参照:

- オペレーティング・システム

- Oracle Clusterwareの要件 1

- oraagent

- 定義 1 , 2

- Oracle Agent 1 , 2

- Oracle ASM

- ディスク・グループ

- 冗長性 1

- 障害グループ 1

- OCRの場所の移行 1

- Oracle Cluster Registry

- 「OCR (Oracle Cluster Registry)」を参照:

- Oracle Clusterware

- 新規ノードへのホームの追加 1

- アラート・ログ 1

- バックグラウンド・プロセス

- Windows 1

- デバッグ

- コンポーネント・レベル 1

- 動的 1

- 定義 1

- OCR

- Oracle ASMからの移行 1

- Oracle ASMへの移行 1

- プロセス

- クラスタ・レディ・サービス(CRS) 1

- クラスタ同期サービス(CSS) 1

- イベント管理(EVM) 1

- グリッド・プロセス間通信(GIPC) 1

- グリッド・ネーミング・サービス(GNS) 1

- マルチキャスト・ドメイン名サービス(mDNS) 1

- oraagent 1 , 2

- Oracle Notification Service(ONS) 1

- orarootagent 1 , 2

- アップグレード

- アウトオブプレース 1

- Oracle Clusterware制御(CRSCTL)

- 「CRSCTL」を参照:

- Oracle Clusterwareホーム

- 追加 1 , 2

- 手動で削除 1

- Oracle Database

- 障害診断インフラストラクチャ 1

- Oracle Enterprise Manager

- リソースの追加のための使用 1

- VIPの追加のための使用 1

- 概要および概念 1

- 「インターコネクト」ページを使用したOracle Clusterwareの監視 1

- Oracle Flex Cluster

- Oracle Flex ASMクラスタ 1

- Oracle Clusterware標準クラスタからの変更 1

- CRSCTLコマンド

- get cluster hubsize 1

- get cluster mode 1

- get css leafmisscount 1

- get node role 1

- set cluster hubsize 1

- set cluster mode 1

- set css leafmisscount 1

- set node role 1

- unset css leafmisscount 1

- ハブ・ノード 1

- リーフ・ノード 1

- 管理 1

- Oracle Grid Infrastructure

- クローニング 1

- Oracle Clusterwareのクローニング 1

- 構成ウィザード 1

- Oracle Grid Infrastructure管理リポジトリ

- 属性および要件 1

- Oracle Interface Configurationツール

- 「OIFCFG」を参照 1

- Oracle Local Registry

- 「OLR (Oracle Local Registry)」を参照:

- Oracle Notification Service(ONS)

- 定義 1

- Oracle Real Application Clusters

- 管理の概要 1

- Oracle Restart

- OCRのリストア 1

- Oracle Root Agent 1 , 2

- Microsoftトランザクション・サーバー用のOracleサービス

- OraMTSサービスの作成 1

- Oracleトレース・ファイル・アナライザ(TFA)コレクタ

- 「TFA」を参照:

- Oracle Universal Installer

- 共有GNSクライアントのクライアント・データ・ファイル 1

- Oracle Clusterwareのインストール 1

- OraMTS

- 「Microsoftトランザクション・サーバー用のOracleサービス」を参照:

- orarootagent

- 定義 1 , 2

- アウトオブプレース・アップグレード 1

P

- PLACEMENT

- リソース属性 1

- ポリシーベース管理

- サーバー・プールへのリソースの追加 1

- プライベート・ネットワーク・アドレス

- 変更 1

- PROCESSES

- ノード・ビュー 1

- PROFILE_CHANGE_EVENT_TEMPLATE

- リソース属性 1

- PROTOCOL ERRORS

- ノード・ビュー 1

- ソフトウェアのプロビジョニング 1

- パブリック・インタフェース

- OIFCFGでの指定 1

- pullup起動依存性

- 修飾子 1

Q

- クォーラム障害グループ 1

R

- 高速ホーム・プロビジョニング

- アーキテクチャ 1

- コンポーネント

- NFSホーム・クライアント 1

- 高速ホーム・プロビジョニング・クライアント 1

- 高速ホーム・プロビジョニング・サーバー 1

- ディスク・グループ操作 1

- イメージ 1

- イメージ・シリーズ 1

- イメージの状態 1

- クライアントの管理 1

- ロール

- 基本組込み 1

- 複合組込み 1

- 高速ホーム・プロビジョニング・クライアント

- ユーザーへのロールの割当て 1

- 作成 1

- ユーザーの作成 1

- 有効化と無効化 1

- 管理 1

- パスワードの管理 1

- 高速ホーム・プロビジョニング・サーバー

- 作成 1

- クラスタ構成情報の記録 1

- ノード・メンバーシップ情報の記録

- 投票ファイル 1

- 冗長性

- 投票ファイル 1

- 冗長なインターコネクトの使用 1

- リソースの登録 1

- RELOCATE_BY_DEPENDENCY

- リソース属性 1

- resource_nameパラメータ

- CRSCTLコマンドへの指定 1

- リソース属性

- ACL 1

- ACTION_FAILURE_EVENT_TEMPLATE 1

- ACTION_SCRIPT 1

- ACTION_TIMEOUT 1

- ACTIONS 1

- ACTIVE_PLACEMENT 1

- AGENT_FILENAME 1

- ALERT_TEMPLATE 1

- AUTO_START 1

- CARDINALITY 1

- CHECK_INTERVAL 1

- CHECK_TIMEOUT 1

- CLEAN_TIMEOUT 1

- DELETE_TIMEOUT 1

- DESCRIPTION 1

- ENABLED 1

- FAILURE_INTERVAL 1

- FAILURE_THRESHOLD 1

- HOSTING_MEMBERS 1

- INSTANCE_COUNT 1

- INSTANCE_FAILOVER 1

- INTERMEDIATE_TIMEOUT 1

- INTERNAL_STATE 1

- LAST_SERVER 1

- LAST_STATE_CHANGE 1

- LOAD 1

- MODIFY_TIMEOUT 1

- NAME 1

- OFFLINE_CHECK_INTERVAL 1

- PLACEMENT 1

- PROFILE_CHANGE_EVENT_TEMPLATE 1

- RELOCATE_BY_DEPENDENCY 1

- RESTART_ATTEMPTS 1

- RESTART_COUNT 1

- SCRIPT_TIMEOUT 1

- SERVER_CATEGORY 1

- SERVER_POOLS 1

- START_CONCURRENCY 1

- START_DEPENDENCIES 1

- START_TIMEOUT 1

- STATE_CHANGE_EVENT_TEMPLATE 1

- STATE_DETAILS 1

- STOP_CONCURRENCY 1

- STOP_DEPENDENCIES 1

- STOP_TIMEOUT 1

- TARGET 1

- TARGET_SERVER 1

- TYPE 1

- UPTIME_THRESHOLD 1

- USE_STICKINESS 1

- USER_WORKLOAD 1

- リソース依存性

- 定義 1

- 起動依存性

- attraction 1 , 2

- dispersion 1 , 2

- exclusion 1 , 2

- hard 1 , 2

- pullup 1 , 2

- weak 1 , 2

- 停止依存性

- hard 1 , 2

- リソース権限

- 変更 1

- リソース

- 追加

- Oracle Enterprise Manager 1

- サーバー・プールへの追加 1

- サーバー固有のデプロイメントを使用した追加 1

- generic_applicationリソース・タイプを使用した作成 1

- 定義 1

- Oracle Clusterwareに登録 1

- リソース・タイプ

- cluster_resource 1

- 定義 1

- generic_application 1

- local_resource 1

- RESTART_ATTEMPTS

- リソース属性 1

- RESTART_COUNT

- リソース属性 1

- リストア

- OCR 1

- サービス登録の制限 1

- RHPCTL

- コマンド

- add client 1

- add database 1

- add diskgroup 1 , 2

- add image 1

- add role 1

- add series 1

- add workingcopy 1

- allow image 1

- delete client 1

- delete database 1

- delete image 1

- deleteimage series 1

- delete series 1

- delete user 1

- delete workingcopy 1

- disallow image 1

- export client 1

- grant role 1

- import image 1

- insertimage series 1

- modify client 1

- move database 1

- promote image 1

- query client 1

- query image 1

- query role 1

- query series 1

- query server 1

- query workingcopy 1

- revoke role 1

- コマンド構文 1

- ヘルプ 1

- ロール別管理

- 水平実装

- 構成 1

- 垂直実装 1

- runcluvfy.sh 1

S

- スケーラビリティ

- ノードおよびインスタンスの追加, クイック・スタート形式 1

- SCAN

- 概要 1

- SCANリスナー 1

- SCRIPT_TIMEOUT

- リソース属性 1

- 順序ID 1

- SERVER_CATEGORY

- リソース属性 1

- SERVER_POOLS

- リソース属性 1

- サーバーのカテゴリ化

- 作成するための属性の使用 1

- サーバー中心のリソース 1

- サーバー・クラスタ 1

- サーバー制御ユーティリティ(SRVCTL)

- SRVCTLを参照 1

- サーバー・プール

- 作成 1

- 説明 1

- 空き 1

- 汎用 1

- サーバー

- 説明 1

- Oracle Clusterwareでの割当て方法 1

- Oracle Clusterwareの要件 1

- 状態 1

- サービス

- リスナーへの登録の制限 1

- setifコマンド

- OIFCFGコマンドライン・インタフェース 1

- 共有GNS

- 管理 1

- 構成のためのクライアント・データ・ファイルの生成 1

- 起動 1

- 停止 1

- 単一クライアント・アクセス名(SCAN)

- 「SCAN」を参照

- シングルトン 1

- 時刻の同期化(Slew) 1

- ソフトウェア要件 1

- SRVCTL

- コマンド

- add asm 1

- add exportfs 1

- add filesystem 1

- add gns 1

- add mgmtdb 1

- add mgmtlsnr 1

- add mountfs 1

- add rhpclient 1

- add rhpserver 1

- config asm 1

- config exportfs 1

- config filesystem 1

- config gns 1

- config mgmtdb 1

- config mgmtlsnr 1

- config rhpclient 1

- config rhpserver 1

- disable asm 1

- disable exportfs 1

- disable mountfs 1

- disable rhpclient 1

- disable rhpserver 1

- enable exportfs 1

- enable mountfs 1

- enable rhpclient 1

- enable rhpserver 1

- modify exportfs 1

- modify mountfs 1

- modify rhpclient 1

- modify rhpserver 1

- relocate rhpclient 1

- relocate rhpserver 1

- remove exportfs 1

- remove rhpclient 1

- remove rhpserver 1

- start exportfs 1

- start rhpclient 1

- start rhpserver 1

- status exportfs 1

- status mountfs 1

- status rhpclient 1

- status rhpserver 1

- stop exportfs 1

- stop mountfs 1

- stop rhpclient 1

- stop rhpserver 1

- 概要および概念 1

- srvctl stop nodeappsコマンド 1

- START_CONCURRENCY

- リソース属性 1

- START_DEPENDENCIES

- リソース属性 1

- START_TIMEOUT

- リソース属性 1

- 起動試行の評価

- 説明 1

- OIFCFGインタフェースの起動 1

- STATE_CHANGE_EVENT_TEMPLATE

- リソース属性 1

- STATE_DETAILS

- リソース属性 1

- ステートレス・アドレス自動構成プロトコル

- 「autoconfig」を参照:

- ステップ時間の同期 1

- STOP_CONCURRENCY

- リソース属性 1

- STOP_DEPENDENCIES

- リソース属性 1

- STOP_TIMEOUT

- リソース属性 1

- サブネット

- 変更 1

- VIPアドレスの構成 1

- 構文

- OCRDUMPユーティリティ 1

- SYSTEM

- ノード・ビュー 1

- SYSTEM.languageキー

- 出力 1

- SYSTEM.versionキー

- 出力 1

T

- TARGET

- リソース属性 1

- TARGET_SERVER

- リソース属性 1

- TFA

- デーモン

- 再開 1

- シャットダウン 1

- 起動 1

- 停止 1

- データ・リダクション機能 1

- TFAデーモンの管理 1

- TFACTL

- コマンドライン・ユーティリティ 1

- TFACTL

- コマンド

- tfactl diagcollect 1

- tfactl directory 1

- tfactl host 1

- tfactl print 1

- tfactl purge 1

- tfactl set 1

- TFAコマンドライン・ユーティリティ 1

- スレッド・セーフティ 1

- TOP CONSUMERS

- ノード・ビュー 1

- トレース・ファイル 1

- トレース

- Oracle Clusterwareの有効化 1

- Oracle Clusterwareコンポーネントの有効化 1

- Oracle Clusterwareコンポーネント 1

- トラブルシューティング

- OCR 1

- TYPE

- リソース属性 1

U

- 共通 1

- アップグレード

- 記憶域の移行 1 , 2

- アウトオブプレース 1

- アップグレード

- SCAN 1

- UPTIME_THRESHOLD

- リソース属性 1

- USE_STICKINESS

- リソース属性 1

- USER_WORKLOAD

- リソース属性 1

V

- 有効なノードの確認 1

- バージョン

- Oracle Clusterware、Oracle ASMおよびOracle Databaseソフトウェアの互換性 1

- VIP

- 追加

- Oracle Enterprise Manager 1

- アドレス

- 変更 1

- アプリケーションの定義 1

- 要件 1

- 仮想インターネット・プロトコル・アドレス(VIP) 1

- 仮想IP

- 「VIP」を参照:

- 投票ファイル

- 追加 1

- Oracle ASM以外の記憶域への追加 1

- Oracle ASMへの追加 1

- 管理 1

- バックアップ 1

- 削除 1 , 2

- ファイル・ユニバーサル識別子(FUID)

- 取得 1 , 2

- 管理 1

- 移行 1

- Oracle ASMへの移行 1 , 2

- Oracle ASMに格納されていない場合の変更 1

- Oracle ASMに格納されている場合の変更 1

- Oracle ASM以外の記憶域の置換 1

- リストア 1

- Oracle ASMに格納 1

W

- weak起動依存性

- 修飾子 1

- What-If API

- 順序ID 1

- Windowsシステム

- クラスタウェア用のサービス 1

- 作業用コピー

- 高速ホーム・プロビジョニング・クライアントでの作成 1

- 高速ホーム・プロビジョニング・サーバーでの作成 1

Oracleの法律上の注意点

コピーライト

Copyright © 1994-2017, Oracle and/or its affiliates. All rights reserved.

ライセンス制約の保証と結果的に生じる損害の免責

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

保証免責

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクルまでご連絡ください。

制限付権利について

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

危険な用途への使用について

このソフトウェアまたはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアまたはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、Oracle Corporationおよびその関連会社は一切の責任を負いかねます。

商標と登録商標について

OracleおよびJavaはオラクルおよびその関連会社の登録商標です。その他の社名、商品名等は各社の商標または登録商標である場合があります。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

第三者のコンテンツ、製品、サービスに対する免責事項

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。適用されるお客様とOracle Corporationとの間の契約に別段の定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。適用されるお客様とOracle Corporationとの間の契約に定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

Pre-General Availability (一般提供前)版のドキュメントについて

このドキュメントがPre-General Availability (一般提供前)版の場合:

このドキュメントはPre-General Availability (一般提供前)版であり、デモおよび暫定使用のみを目的としたものです。このソフトウェアを使用するハードウェアに限定するものではありません。Oracle Corporationおよびその関連会社は、このドキュメントに関して一切の責任を負わず、いかなる保証もいたしません。また、このドキュメントを使用したことによって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。

非公開のPre-General Availability (一般提供前)版のドキュメントについて

このドキュメントが非公開のPre-General Availability (一般提供前)版の場合:

このドキュメントに含まれる情報は、情報の共有のみを目的としたものであって、顧客諮問委員会(Customer Advisory Board)のメンバーとしてのお客様の立場でのみ、またはお客様のPre-General Availability Trial Agreement (Pre-GAトライアル契約)のみに従って検討されるべきものとします。マテリアル、コード、または機能の提供をお約束するものではなく、購入決定を行う際の判断材料とすべきではありません。このドキュメントに記載されている特徴または機能の開発、リリースおよび時期については、オラクルの裁量により決定されます。

このドキュメントには、ソフトウェアまたは印刷物などの形式を問わず、オラクルが独占的な権利を有する財産的情報が含まれています。この機密資料へのアクセスと使用は、お客様とオラクルとの間で締結され、お客様が遵守に同意した、Oracle Master Agreement、Oracle License and Oracle Services Agreement (オラクル・ライセンスおよびサービスに関する契約書)、Oracle Partner Network Agreement、Oracle Distribution Agreementまたはその他のライセンス契約の条件に従うものとします。このドキュメントとその内容の開示、コピー、複製および配布には、オラクルによる事前の承諾を必要とします。このドキュメントはライセンス契約の一部となるものではなく、オラクルおよびその子会社や関連会社との契約を構成するものではありません。

ドキュメントのアクセシビリティ

オラクルのアクセシビリティについての詳細情報は、Oracle Accessibility ProgramのWebサイト(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc)を参照してください。

Oracle Supportへのアクセス

サポートをご契約のお客様には、My Oracle Supportを通して電子支援サービスを提供しています。詳細情報は(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info)か、聴覚に障害のあるお客様は(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs)を参照してください。