TOP>企業情報>コラム>技術情報>徹底解説!Oracle Database 12cのすべて Vol.4

徹底解説!Oracle Database 12cのすべて Vol.4

前回はOracle Database 12cで新しく実装されたセキュリティとバックアップの新機能を紹介しました。第4回目となる今回は、RACとASMが11gR2からどう変わったのかを解説します。

Vol.4 12cのRACとASMは何が変わったのか

クラスタのタイプを2種類から選択可能に


Oracle Databaseの代表的なクラスタ構成とい言えば、Oracle Real Application Clusters(RAC)です。アクティブ-アクティブ型のクラスタであるため可用性、対障害性、拡張性に優れ、ノード間のブロック転送(キャシュ・フュージョン)によってディスクI/Oを削減することができます。

Oracle Database 10gからStandard Editionでも使用可能になったため、2ノードの小規模なクラスタから数十ノードといった大規模なクラスタまで幅広く採用されるようになりました。また、Oracle Database 11gR2(11gR2)からはOracle Real Application One Node(RAC One Node)が新しく提供され、アクティブ-スタンバイ型のように片方だけのライセンスで可用性を確保できるようになりました。Oracle ExadataやOracle Database ApplianceなどのOracle Engineered SystemsでもRACが採用されており、ミッション・クリティカルなデータベース基盤を構築するには欠かせない機能です。

Oracle Database 12c(12c)では、クラスタ構成のタイプを「標準クラスタ」と「Flex Cluster」の2種類から選択できるようになりました。標準クラスタは11gR2までのRACと同じ構成です。データベース・インスタンスが起動するノード同士をインターコネクト(ノード間ネットワーク)で結び、すべてのノードから共有ストレージ上にあるデータベースにアクセスします。

標準クラスタ

標準クラスタ

Flex Clusterは12cから登場した新しい構成です。ハブ・ノードと呼ばれる標準クラスタと同じデータベース・サーバに加え、リーフ・ノードという共有ストレージへのアクセス・パスを持たないアプリケーション用のサーバをまとめて管理できるようになりました。

Flex Cluster

Flex Cluster

リーフ・ノードにはハブ・ノードと同じくOracle Grid Infrastructureがインストールされていますが、ストレージへのアクセスを行わず、リーフ・ノード間の通信(ハートビート)もありません。ハブ・ノードのいずれかと接続しているだけという軽量タイプの新しいノードです。ハブ・ノードがデータベース・インスタンス用であるのに対し、リーフ・ノードはアプリケーションやWebサーバなどを稼働させるために使われます。

Grid Infrastructureがインストールされているというのがポイントで、アプリケーションやWebサーバがクラスタのリソースとして管理されます。そのため、リソースの依存関係を利用してデータベースの起動停止とアプリケーションの起動停止を連動して行うといった操作を行うことができます。また、リーフ・ノードはハブ・ノードと異なるレイヤとして扱われるため、リーフ・ノードに障害が発生してもハブ・ノードにあるDBインスタンスには影響を与えません。

標準クラスタとFlex Clusterのいずれを使用するかは、インストール画面で選択することができます。一度標準クラスタで構築してからFlex Clusterに変更することはできますが、Flex Clusterから標準クラスタに変更することはできません。また、現時点でWindowsにおけるFlex Clusterはサポートされていないのでご注意ください。

12cのクラスタ・タイプの選択

12cのクラスタ・タイプの選択

リーフ・ノードとハブ・ノードの指定もインストール時に行いますが、後から変更することもできます。ただし、ハブ・ノードはストレージに直接アクセスできなければなりません。

リーフ・ノードとハブ・ノードの指定

リーフ・ノードとハブ・ノードの指定

ハブ・ノードには従来のRACと同じくOracle DatabaseやRACオプションのライセンスが必要ですが、リーフ・ノードには必要ありません。リーフ・ノードにインストールされるGrid Infrastructureは無償で提供されており、Oracle LinuxやSolarisなどのオラクル製品と組み合わせて使用している場合はサポートを受けることもできます。

ASMインスタンスとデータベース・インスタンスを分離できる


12cではRAC構成における共有ストレージの記憶域に関して2つの大きな変更があります。1つは、RAWデバイスが非サポートになったことです。以前からサポート終了が宣言されていましたが、11gR2では旧バージョンからアップグレードを行う場合など限定的に使用が認められていました。12cではアップグレード用途でもRAWデバイスが非サポートとなっているのでご注意ください。

 ※RAWデバイスのサポートに関する詳細は、以下のアップグレード・ガイドを参照してください。
  http://docs.oracle.com/cd/E49329_01/server.121/b71306/deprecated.htm#BABFGIBC

RAWデバイスが非サポートになったことで、12cで使用できる記憶域はASM、クラスタ・ファイル・システム、NFSの3つになりました。このうちOracleの推奨でもあるASMにはバージョンアップごとに毎回新機能が実装されてきましたが、12cでは、ASMインスタンスとデータベース・インスタンスを同じノードで起動しないFlex ASMという構成をとることができます。

Flex ASM

Flex ASM

11gR2以前の場合、上記のような5ノードRAC構成ではすべてのノードでデータベース・インスタンスとASMインスタンスが起動していました。これは記憶域としてASMを使用するうえで避けられない動作であり、軽微ではあるもののASMインスタンスを起動するために一定以上のメモリ領域が必要でした。また、ASMインスタンスに障害が発生した場合、データベース・インスタンスも巻き込んで停止してしまうため、結果的に障害点が増えるという課題もありました。

12cのFlex ASMでは、5ノードRAC構成でもデフォルトで3つのASMインスタンスしか起動しません。単純計算で2ノード分のリソース消費と障害点を削減できますが、ノード数が多いほどその効果が高くなるため、中~大規模のクラスタを前提とした機能であると言えます。

もちろん、ASMインスタンスが起動していないノードでも通常のRACと同じように処理することができます。Flex ASMでは、ASM用のネットワークを使用してデータベース・インスタンスとASMインスタンスが通信を行います。そのため、データベース・インスタンスとASMインスタンスのマッピングが1:1ではなくなり、ASMインスタンスをネットワーク越しに共有して使用するというアーキテクチャになっています。ASM用のネットワークはインストール時に指定できますが、専用のネットワークがない場合はインターコネクトと兼用にすることもできます。

ASM用ネットワークの選択

ASM用ネットワークの選択

Flex ASMの使用は必須ではないため、11gR2以前と同じ構成(標準ASM)をとることもできます。一度標準ASMで構築してからFlex ASMに変更することはできますが、Flex ASMから標準ASMに変更することはできないのでご注意ください。12cでRACを構築する際は、あらかじめFlex ASMにするかどうかを検討しておくようにしましょう。


執筆者紹介

岸和田隆

岸和田 隆(Takashi Kishiwada)

株式会社アシスト データベース技術本部

アシスト入社後、Oracle Database の研修講師、フィールド・ サポート、新バージョンの検証を経て、2007年 自社ブランド 「DODAI」の準アプライアンス製品の企画・開発、2009年 PostgreSQL、2011年 EDB Postgres、MySQL / MariaDB の事業立上を担当。 現在は「データベースのアシスト」を目指した活動を行っている。

岸和田の紹介記事はこちら



関 俊洋(Toshihiro Seki)

株式会社アシスト データベース技術本部

2006年、株式会社アシスト入社。データベース・システムの構築や運用トラブルの解決といったフィールド・サポート業務を経験し、その後は新製品の検証やハードウェアとデータベースを組み合わせたソリューション(DODAI)の立ち上げに従事。現在はデータベースの価値や魅力を伝えるための執筆・講演活動を行っている。『SQL逆引き大全363の極意』共著。

関の紹介記事はこちら

「徹底解説!Oracle Database 12cのすべて」 連載記事一覧

関連製品


Facebookで情報をお届けしています

Facebookでは、アシストの「今」を週3回のペースでお届けしています。「めげない、逃げない、あまり儲けない」を合言葉に日々頑張っておりますので、応援よろしくお願いします。



ページの先頭へ戻る