もしもみなみんがDBをクラウドで動かしてみたら indexページ ▶▶
※本記事は2019/4時点のものになります
こんにちは。先日Oracle Technology Nightで、本連載の第9回でも取り上げたOracle Cloud Infrastructure(OCI)上のOracle Databaseのサービスの違いについて話してきました。連載記事よりも情報量は多く細かくなっているので、「どれを使ったらいいんだろう…」「どう違うんだろう…」と迷われた方、記事よりももっと詳細が知りたい方はぜひ下記の資料もご覧ください。
・[資料] Oracle Cloud Infrastructure Database – Oracle Database のサービス比較編 (2019/03/29)
では、今回の記事の内容に入りましょう!
前回はOracle Cloud Infrastructure(以降OCI) Exadataの概要と作り方を取り上げましたが、今回はOCI Exadata (ExaCS) のサービス構成について解説します。
OCI ExadataはOracle Exadata Database Machine(以降Exadata)が利用可能なサービスです。
前回解説したように、作成時にいくつかインフラ側の設定を指定しましたが、図にすると下記のようなイメージとなります。
さらっとまとめると
OCI Exadataのシステム構成としては、指定したシェイプに合わせてコンピュート・ストレージなど物理サーバーが専有の形で提供されます。下記は、Half Rack(Compute 4台、Storage 6台)の図です。
次の章から、コンピュートとストレージに分けて解説していきます。
・マニュアル(以降は日本語マニュアルをポイントしていきます)
日本語 Oracle Cloud Infrastructure Documentation > Database > Exadata DBシステム
英語 Oracle Cloud Infrastructure Documentation > Database > Exadata DB systems
コンピュートはシェイプによってサーバー数が決まります。Base/Quarterは2台、Halfは4台、Fullだと8台です。
Oracle Grid Infrastructureで管理されており、コンピュート側はOracle Clusterwareでデータベース関連のプロセスの管理・監視が行われています。また、データベースはOracle Real Application Clustersでクラスタ構成となり、複数のコンピュートにまたがって一つのデータベースとして扱うことができるため、高い可用性・高性能な環境となります。
・コンピュートの構成・管理
各コンピュートは、仮想マシンとして別物理サーバー上で動きます。
専有環境のためH/Wリソースとして利用可能な領域は全て割り当てられます。ただし、コア数(Oracle CloudではOCPU)を利用する分だけ有効にしますので、H/Wとしては割り当て済ですが課金を抑えるために必要な分だけに絞ることが可能です。また、システム全体なコア数(OCPU数)を指定して各コンピュートに割り振るため、有効なコア数はコンピュート数の倍数が指定可能です。一方で、ローカルストレージやメモリは、全て利用可能な状態になっているので変更はせずに済みます。
コア数(OCPU数)の変更は、オンラインで変更が可能です。つまり、データベースを止めずにトランザクション実行中に処理能力を上げることができます。オンライン・スケーリングについては、また別の回で解説するのでお楽しみに。
コンピュート内(OS以上)はユーザー管理の領域になり、コンピュート内に含まれるソフトウェアのパッチ適用やアップグレードはユーザー管理の範囲になるので、含まれるソフトウェアについて説明します。
・コンピュート内のソフトウェア
環境作成後、OS、Oracle Grid Infrastructure(Clusterewareなど)とOracle Databaseが構築済の状態になっています。
各種ソフトウェアのインストール場所は固定されていて、下記の通りとなります。
ソフトウェア | ディレクトリ | 補足 |
Oracle Grid Infrastructure | /u01/app/<version>/grid 例:/u01/app/18.1.0.0/grid |
1環境につき1つインストールされます |
Oracle Database | /u02/app/oracle/product//dbhome_ 例: /u02/app/oracle/product/18.0.0.0/dbhome_2 |
サブディレクトリとしてORACLE_HOMEごとにディレクトリが作られていきます |
クラウド・ツール | /var/opt/oracle | クラウドサービスの機能として提供されている監視・管理ツールが含まれます |
よく間違えるのが、Oracle Databaseのインストール・ディレクトリが/u01ではなく/u02配下なのでご注意ください。
コンピュート内(OS以上)はユーザー管理の領域のため、OS含めこれらのパッチ適用やアップグレードはユーザー管理の範囲になるので、適用タイミングや判断はユーザーになので、これまで同様に定期的なパッチ適用を検討ください。
この中で特に忘れがちなのは、クラウド・ツールです。クラウドの新機能やアップデートが頻繁に入りますが、UIやCLIと連携して動くのがこのクラウド・ツールになりますので、最新機能を利用するためにもクラウド・ツールは定期的にアップデートするのがおすすめです。
・マニュアル
OSとクラウド・ツールに関して
Oracle Cloud Infrastructure Documentation > Database > Exadata DBシステム> Exadata DBシステムの更新
Oracle DatabaseとOracle Grid Infrastructureに関して
Oracle Cloud Infrastructure Documentation > Database > Exadata DBシステム> Exadata DBシステムの更新
ストレージもシェイプによってサーバー数が決まり、専有環境のためH/Wリソースとして利用可能な領域は全て割り当てられます。Quarterは3台、Halfは6台、Fullだと12台です。
・ストレージの構成・管理
ストレージ領域はOracle Automatic Storage Management(ASM)で管理・構成されます。ASMで管理されることで、サーバー数・ディスク数がいくつであろうと、ディスク・グループと呼ばれる一つの領域として扱うことができ、冗長構成がとられリバランスが自動的に行われます。冗長性は、OCI Exadataでは三重化(トリプル・ミラー)で組まれています。
ストレージはオラクル管理の領域になるので、ユーザーからストレージ(セル・サーバー)へ直接アクセスはできないのですが、ASMのインスタンスはコンピュート上で稼働するので、ユーザーもASMインスタンスへのアクセスや操作・情報参照は可能です。
・ストレージの領域の割り当てられ方(サイズ)
ディスクグループは、下記の2もしくは3個が用意されます。
ディスク・グループ名 | 用途 |
DATA | Oracle Databaseのデータ関連の領域 |
RECO | Fast Recovery Area(FRA)と呼ばれるOracle Databaseのバックアップ関連(RMANバックアップファイル/REDOなど)の領域 |
SPARSE | Exadataスナップショット(SPARSE CLONE)の機能を利用する際に必要な領域 |
X6モデルだと上記に加えてDBFS/ACFSという別のディスク・グループが作成されますが、X7の場合は上記のディスク・グループのみとなっています。
それぞれに割り当てられるストレージ領域のサイズは、環境作成時の下記の選択によって変わります。
・マニュアル
Oracle Cloud Infrastructure Documentation > Database > Exadata DBシステム>ストレージ構成
ここでポイントなのが、「使用可能なストレージ容量」 のサイズは「データベース/データのサイズ」ではないということです。
使用可能なストレージ容量の中で、DATA/RECO/SPARSEの各ディスク・グループに割り当てられます。
コンピュート側のメモリと同じく、シェイプで決まっているH/Wリソースは全て割り当てられているので、拡張はできません。
一般的なPaaSサービスは、1環境につき1データベースがユーザーに提供されますが、OCI ExadataやOCI Database - Bare Metalなどの専有環境では、リソースが許す限り1環境で複数データベースが作成できます。
最初に環境を作成したタイミングでは、環境上に1つデータベースが作成されている状態です。
追加でデータベースを作成したい場合には、『データベースの作成』をクリックし、作成したいデータベースの状況を入力します。
ちなみに、Oracle Grid Infrastructureのバージョンと同じもしくは下位のバージョンのデータベースが作成可能です。 Oracle Grid Infrastructureのバージョンは、環境を作成する時に選択したデータベースのバージョンによって決まります。
下記は2019/04現在利用可能なバージョンになります。
今回の環境は、初回のデータベースとして18cを選択していたので、Grid Infrastructureも18cで構築されています。
そのため、2個目以降のデータベースのバージョンとしては18cもしくは下位バーションが利用可能となるので、18c/12.2.0.2/12.1.0.2/11.2.0.4のデータベースを作成することが可能です。
なので、上記の例では追加するデータベースで12.2.0.1を選択してみました。
今回は、OCI Exadata の構成やリソース、そして利用可能なデータベース数について解説しました。
H/Wリソースは全て利用可能=最初から大きなサイズが割り当てられており、異なるバージョンの複数データベースが作成可能な環境です。そのため、例えばミッションクリティカルや大規模システムのデータベース、サーバー/データベース統合、既存システムのレプリケーション、複数バージョンでの検証・開発環境など、様々な利用ケースが考えられるので、適用可能なケースでぜひご利用いただければと思います。