| Oracle® Exalytics In-Memory Machineオーナーズ・ガイド Exalytics X2-4およびX3-4 リリース1 (1.0) E47893-02 |
|
![]() 前 |
![]() 次 |
この章では、Oracle Exalytics In-Memory MachineとOracle Exadata Database Machineを同じInfiniBandファブリックで一緒に接続する方法について説明します。
次のトピックが含まれます:
このセクションの内容は次のとおりです。
各Oracle Exalytics In-Memory Machineには、2ポートのQDR InfiniBandホスト・チャネル・アダプタ(HCA)などのInfiniBandカードが付属しています。
このInfiniBandカードは、Oracle Exalytics In-Memory MachineのPCIeスロット6に入れます。
Oracle Exadata Database Machineに付属の5mの予備用InfiniBandケーブルを使用できます。サポートが必要な場合は、オラクル社のサポート担当者にお問い合せください。Oracle Exalytics In-Memory MachineとOracle Exadata Database Machineを同じInfiniBandファブリックで接続するには、これらのケーブルが必要です。
Oracle Exadata Database Machineには、36ポートのInfiniBandリーフ・スイッチ(Sun Datacenter QDR InfiniBand Switch 36)が2個付属しています。ラックの中央にあるこの2つのスイッチをリーフ・スイッチといいます。スパイン・スイッチは、Oracle Exadata Database Machineのフル・ラック構成およびハーフ・ラック構成のユニット1にあります。
|
注意: このドキュメントでは、Oracle Exadata Database Machineラックの下部ユニットにあるリーフ・スイッチをリーフ1と呼びます。Oracle Exadata Database Machineラックのリーフ1の上にあるリーフ・スイッチをリーフ2と呼びます。 Oracle Exadata Database Machineラックのレイアウトとハードウェア・コンポーネントの詳細は、Oracle Exadata Database Machineオーナーズ・ガイドを参照してください。 |
この項では、次の項目について説明します。
シナリオ1: 1台のExalytics In-Memory MachineとOracle Exadata Database Machine
シナリオ2: クラスタ化されたExalytics In-Memory MachineとOracle Exadata Database Machine
Oracle Exalytics In-Memory Machineを格納するラックとOracle Exadata Database Machineラックは、データ・センターに並べて配置することが前提になります。データ・センターにラックを配置する際に、接続するInfiniBandケーブルの長さに注意してください。Oracle Exadata Database MachineラックにOracle Exalytics In-Memory Machineを置かないでください。
図7-1に、1台の(非クラスタ化)Oracle Exalytics In-Memory MachineをOracle Exadata Database Machineラックに接続する状況を示します。
図7-1 Oracle Exadata Database Machineに接続する非クラスタ化Oracle Exalytics In-Memory Machine

高可用性を実現するため、Oracle Exalytics In-Memory Machineに挿入されるInfiniBandカードの2つのポートを、Oracle Exadata Database Machineの個々のリーフ・スイッチに接続します。たとえば、図7-1に示すように、Oracle Exalytics In-Memory MachineのInfiniBandカードのポート1を、リーフ1スイッチ(Oracle Exadata Database Machineの下部ユニットに設置されているSun Datacenter InfiniBand Switch 36)に接続できます。また、Oracle Exalytics In-Memory MachineのInfiniBandカードのポート2を、リーフ2スイッチ(Oracle Exadata Database Machineの上部ユニットに設置されているSun Datacenter InfiniBand Switch 36)に接続する必要があります。ポート1はアクティブ・ポートとして機能し、ポート2はパッシブ・ポートとして機能します。
|
注意: Oracle Exadata Database Machineのリーフ・スイッチでは、次の空きポートを使用できます。 ポート5B、6A、6B、7A、7B、12A |
図7-2に、Oracle Exalytics In-Memory MachineのクラスタをOracle Exadata Database Machineラックに接続する状況を示します。
図7-2 Oracle Exadata Database Machineに接続するクラスタ化Oracle Exalytics In-Memory Machine

高可用性を実現するため、各Oracle Exalytics In-Memory Machineに付属のInfiniBandカードのアクティブ・ポートを、リーフ1スイッチ(Oracle Exadata Database Machineの下部ユニットに設置されているSun Datacenter InfiniBand Switch 36)に接続します。また、各Oracle Exalytics In-Memory Machineに付属のInfiniBandカードのパッシブ・ポートを、リーフ2スイッチ(Oracle Exadata Database Machineの上部ユニットに設置されているSun Datacenter InfiniBand Switch 36)に接続する必要があります。ポート1はアクティブ・ポートとして機能し、ポート2はパッシブ・ポートとして機能します。
|
注意: Oracle Exadata Database Machineのリーフ・スイッチでは、次の空きポートを使用できます。 ポート5B、6A、6B、7A、7B、12A |
各InfiniBandネットワークには、サブネット・マネージャ(SM)が必要です。使用するファブリックのOracle Exadata Database Machineのいずれかのリーフ・スイッチで実行するSMを使用できます。
InfiniBandスイッチの使用の詳細は、次のドキュメントを参照してください。
ExalyticsとExadata間でInfiniBandを構成する手順は次のとおりです。
Exalyticsへの自動RDSカーネル・モジュール・ローディングを有効化します。
/etc/infiniband/openib.confファイルを編集し、SDP_LOAD=yesおよびRDS_LOAD=yesを設定します。
ノードを再起動します。
InfiniBandリスナーをExadata計算ノードに作成します。
/etc/infiniband/openib.confファイルを編集し、SDP_LOAD=yesおよびRDS_LOAD=yesを設定します。
/etc/ofed/libsdp.confファイルを編集し、次の行を検索します。
use both server * : use both client * :
これらの行を次のように変更します。
use tcp server * *:* use tcp client * *:*
use tcpは、TCPがデフォルト・プロトコルであることを示し、SDPが特定のアプリケーションにおいてそのローカル構成で使用されることを示します。
/etc/modprobe.confファイルを編集し、次の行を末尾に追加します。
options ib_sdp sdp_zcopy_thresh=0 recv_poll=0
各計算ノードを再起動します。
ExalyticsマシンおよびExadata Database Machine計算ノードでそれぞれの/etc/hostsファイルを編集し、Exadata Database Machineクオータ・ラック(2つの計算ノード)など、InfiniBandネットワークで使用するための仮想IPアドレスを追加します。次のIPアドレスがプライベート・ネットワークで使用されていないことを確認します。
192.168.10.21 dm01db01-ibvip.mycompany.com dm01db01-ibvip 192.168.10.22 dm01db02-ibvip.mycompany.com dm01db02-ibvip
Exadata Database Machine計算ノードの1つで、rootユーザーとして次のコマンドを実行し、InfiniBandネットワークのネットワーク・リソースを作成して各計算ノードの開始仮想IPアドレスを追加します。プライベート・ネットワークで使用しているネットワークとサブネット・マスクの代替を適切に作成します(192.168.10.0/255.255.255.0は使用できません)。管理者に問い合せるか、ipcalcを使用し、ネットワーク・マスクに基づいてネットワークを割り出してください。
srvctl add network -k 2 -S 192.168.10.0/255.255.255.0/bondib0 srvctl add vip -n dm01db01 -A dm01db01-ibvip/255.255.255.0/bondib0 -k 2 srvctl add vip -n dm01db02 -A dm01db02-ibvip/255.255.255.0/bondib0 -k 2 srvctl start vip -i dbm01db01-ibvip srvctl start vip -i dbm01db02-ibvip
Exadata Database Machine計算ノードの1つで、oracleユーザー(またはGrid InfrastructureのORACLE_HOMEの所有者)として次のコマンドを実行します。
srvctl add listener -l LISTENER_IB -k 2 -p TCP:1522/SDP:1522
Exadata Database Machine計算ノードのそれぞれに、oracleユーザー(またはGrid InfrastructureのORACLE_HOMEの所有者)として次の新規エントリを使用し、GRID_HOME/network/adminにtnsnames.oraを作成するか追加します。(*IBREMOTEエントリおよび*IBLOCALエントリは適切なリモート名およびローカルVIP名を参照する目的において各ノードでわずかに違いがあります。これらのエントリを変更なしにノード間でコピーすることはできません。)
DBM = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = dm01-scan)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = dbm) )) DBM_IB = (DESCRIPTION = (LOAD_BALANCE=on) (ADDRESS = (PROTOCOL = TCP)(HOST = dm01db01-ibvip)(PORT = 1522)) (ADDRESS = (PROTOCOL = TCP)(HOST = dm01db02-ibvip)(PORT = 1522)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = dbm) )) LISTENER_IBREMOTE = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = dm01db02-ibvip.mycompany.com)(PORT = 1522)) )) LISTENER_IBLOCAL = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = dm01db01-ibvip.mycompany.com)(PORT = 1522)) (ADDRESS = (PROTOCOL = SDP)(HOST = dm01db01-ibvip.mycompany.com)(PORT = 1522)) )) LISTENER_IPLOCAL = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = dm0101-vip.mycompany.com)(PORT = 1521)) )) LISTENER_IPREMOTE = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = dm01-scan.mycompany.com)(PORT = 1521)) ))
Exadata Database Machine計算ノードの1つで、sysdbaとして次のようにデータベース・インスタンスに接続します。
SQLPLUS> alter system set listener_networks='((NAME=network2) (LOCAL_LISTENER=LISTENER_IBLOCAL)(REMOTE_LISTENER=LISTENER_IBREMOTE))', '((NAME=network1)(LOCAL_LISTENER=LISTENER_IPLOCAL) (REMOTE_LISTENER=LISTENER_IPREMOTE))' scope=both;
Exadata Database Machine計算ノードの1つで、oracleユーザー(またはGrid InfrastructureのORACLE_HOMEの所有者)として次のコマンドを実行し、LISTENER_IBという名前のリスナーを再起動します。
srvctl stop listener -l LISTENER_IB srvctl start listener -l LISTENER_IB
Exalyticsマシンで、sys.odbc.iniファイルを編集し、Exadata DBホストを指すエントリを次のように作成します。
OracleNetServiceName=DWH.ESS.LOCAL_IB
InfiniBandファブリックの様々な面を監視するには、Oracle Exadata Database Machineに付属のSun Datacenter InfiniBand Switch 36でInfiniBandコマンドを実行します。
これらのコマンドの詳細は、Sun Datacenter InfiniBand Switch 36コマンド・リファレンスを参照してください。
InfiniBandネットワーク接続を確立した後は、Exalyticsマシンでibstatコマンドを使用することにより、rds-ping、rds-info -lを使用して基本InfiniBandネットワーク接続のステータスを確認できます。
ibstatコマンドでは、次の例のように基本ステータスが表示されます。
# ibstat
CA 'mlx4_0'
CA type: MT26428
Number of ports: 2
Firmware version: 2.7.8130
Hardware version: b0
Node GUID: 0x0021280001cf577e
System image GUID: 0x0021280001cf5781
Port 1:
State: Active
Physical state: LinkUp
Rate: 40
Base lid: 106
LMC: 0
SM lid: 54
Capability mask: 0x02510868
Port GUID: 0x0021280001cf577f
Link layer: IB
Port 2:
State: Active
Physical state: LinkUp
Rate: 40
Base lid: 95
LMC: 0
SM lid: 54
Capability mask: 0x02510868
Port GUID: 0x0021280001cf5780
Link layer: IB
接続するポートの物理状態はLinkUpで示されます。
InfiniBandネットワークの基本接続を確認したら、スイッチのCLIでibhosts、ibswitchesおよびibnetdiscoverの各コマンドを実行できます。
ibhostsコマンドでは、InfiniBandファブリックのホスト・ノードが表示され、ibswitchesコマンドでは、ファブリック内のInfiniBandスイッチ・ノードが表示されます。また、ibnetdiscoverコマンドでは、InfiniBandトポロジが検出されます。
このような監視と診断コマンドの詳細は、Sun Datacenter InfiniBand Switch 36コマンド・リファレンスを参照してください。