テックノート

テックノート>徹底解説!Oracle Database 12cのすべて Vol.4

  • DB(Oracle Database)
2013.10.24

徹底解説!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にするかどうかを検討しておくようにしましょう。


連載記事

徹底解説!Oracle Database 12cのすべて Vol.1
徹底解説!Oracle Database 12cのすべて Vol.2
徹底解説!Oracle Database 12cのすべて Vol.3
徹底解説!Oracle Database 12cのすべて Vol.5


執筆者のご紹介

アシスト岸和田 隆

岸和田 隆
ビジネスインフラ技術本部

1995年入社。Oracle Database の研修講師、フィールドサポート、新バージョンの検証を経て、2007年 自社ブランド「DODAI」の準アプライアンス製品の企画・開発、2009年 PostgreSQL、2011年 EDB Postgres、MySQL /MariaDB、2012年 Oracle Database Appliance、2016年 Delphix の事業立上を経験。 現在は「データベースのアシスト」を目指した事業戦略やプロダクトマーケティングを担当している。
趣味:フットサル、ゴルフ、スキー、キャンプ、子供のサッカーチームのカメラマン担当。

アシスト関 俊洋

関 俊洋
ビジネスインフラ技術本部

2006年入社。データベース・システムの構築や運用トラブルの解決といった業務を経験し、その後新製品の検証やソリューションの立ち上げを経てエバンジェリストへ。2016年にクラウド事業を立ち上げ、現在はクラウドとデータベースの二足の草鞋を履いている。

本記事をご覧いただいている方へのご案内

最後までご覧いただきありがとうございました。
本記事でご紹介した製品・サービスに関するコンテンツをご用意しています。また、この記事の他にも、IT技術情報に関する執筆記事を多数公開しておりますのでぜひご覧ください。


関連している記事

  • DB(Oracle Database)
2020.01.28

Oracle OpenWorld 2019 視察記

2019年9月16~19日に開催された世界最大規模のITイベントOracle OpenWorld 2019の様子を紹介します。

  • DB(Oracle Database)
2019.09.18

超入門「PL/SQL」

Oracle Database向けにデータベース言語 SQLを拡張したプログラミング言語であるPL/SQLを理解し、活用していくための実践講座です。

  • DB(Oracle Database)
2019.01.29

Oracleサポート出張所

Oracle Databaseで発生するトラブルを「どんな方法で」「どのように」解決していくか。データベースの運用管理において、より円滑に業務を進めるために必要なノウハウを紹介していきます。

ページの先頭へ戻る