※本ページは、”Snapshots and Clones using ACFS and Exascale Volumes” の翻訳です。

(訳注:本記事はオンプレミス環境のExascaleでの内容になります。Exadata Cloud 環境の Exascale 環境には適用されません。)


Exadata Exascale (Exascale)は、Exadataの新しい革新的なソフトウェア・アーキテクチャです。Exascaleは、オンプレミスまたはクラウドのいずれにデプロイされても、究極のパフォーマンス、高可用性、スケーラビリティ、セキュリティおよび効率というExadataの長所と、クラウド特性(マルチテナンシ、リソース・プーリングおよび弾力性)を組み合せています。Exascaleは、ストレージ管理の分離と簡素化、および多くの革新的な新機能の追加によって、Exadataプラットフォームでのコンピュート・リソースとストレージ・リソースの管理方法を再考します。これにより、組織がExadataに期待する、業界をリードするデータベース・パフォーマンス、可用性およびセキュリティ標準が保証されます。

Exascaleはマルチテナントのクラウド・サービスであるExadata Database Service on Exascale Infrastructureとして使用でき、わずか数コアと数百GB/秒のストレージ容量から始めて、あらゆる規模の組織がクラウドでExadataのメリットを得られるようになり、柔軟にスケーリングでき、使用対象のみの料金がかかります。オンプレミスのお客様、Exadata Cloud@Customer、およびまもなくクラウド内のExadata Database on Dedicated Infrastructureのお客様の場合、Exascaleは既存の環境に簡単にデプロイできます。Exascaleの複数のデプロイメント製品により、すべてのExadataのお客様は、Exascaleボリューム、Advanced Cluster File System (ACFS)、Exascaleの高度なスナップショットおよびクローン機能の可能性を最大限に引き出すなど、この投稿のテーマを含む、Exascaleが提供する多くの素晴らしい機能を利用できます。

Exascale Files と Exascale Volumes

Exascaleで一般的に表示されるストレージの最小単位はファイルです。ファイルはExascaleボールト内のストレージのセグメントで、冗長性の定義済セットおよびその他の特性を持つデータが含まれます。Exascaleボールトは、Exascaleクラスタのストレージを分離し、他のボールトから安全に独立して、ファイル・グループの論理コンテナとして機能する、定義済のポリシーです。

Exascaleのファイルには、次の2つの方法でアクセスできます。

  • ASMファイルと同様に、データベースおよびその他のExascaleボールト対応アプリケーションによるアクセス
  • ASM動的ボリューム・マネージャ(ADVM)と同様に、Exascaleダイレクト・ボリュームと呼ばれるブロック・ボリューム・デバイスを使用したアクセス

Exascale Direct Volume (EDV)は、ExascaleストレージをLinux OSのブロック・ボリューム・デバイスとして表示するための高速な方法です。具体的には、EDVはExascaleに”ファイル”として格納され、RDMA対応プロトコルを使用してブロック・デバイスとしてサーバーに接続されます。これにより、ネイティブのExascale対応ではないアプリケーションは、Exascaleストレージの機能およびパフォーマンスを利用することが可能になります。EDVはExascale上に構築されているため、Exascaleファイルのセキュリティ、速度、機能など、クラス最高の特性をすべて保持します。

Exascaleの画期的な機能の1つは、Exadata上のスナップショットおよびクローンに対する再考されたアプローチです。これにより、EDVからの領域効率の高いシン・クローンが可能になり、開発者の生産性が大幅に向上します。Exascaleは開発、テストおよびデプロイメント・パイプラインの要件とシームレスに統合され、ネイティブのExadataパフォーマンスを提供します。

Oracleでは、EDVに加えて、Exascaleの高度な機能を利用するために開発されたファイル・システムACFSも提供しています。ACFSはExascaleスタックのクラス最高のコンポーネントであり、Exascale自体と同じ高可用性、パフォーマンスおよびスケーラビリティを提供します。ACFSおよびEDVを使用すると、すべてのアプリケーションで、スナップショットやクローンなどのExascaleの新機能を利用できます。

Exascale ACFS

管理者は、既存のボリュームまたは別のスナップショットまたはボリュームのクローンをソースとしてExascaleボリューム・スナップショットまたはクローンを作成できます。この機能により、これらの強力な機能の多くのユース・ケースへの扉が開かれます。すべてのExascaleクローンおよびスナップショットはシン・プロビジョニングされます。つまり、クローンが元のデータから変更された場合を除き、追加の領域を消費しません。

また、スナップショットまたはクローンの操作中はI/Oは影響を受けず、Exascaleボリュームのすべての継続的な使用に対してパフォーマンスが維持されます。

Exascale内のスナップショットおよびクローンを定義しましょう:

  • クローン – クローンは、読み取りおよび書き込み可能なファイルのシンプロビジョニングされたポイントインタイムコピーです。クローンでは、クローンに新しいデータを格納するためにリダイレクトオンライトが使用されます。元の(変更されていない)データは複製されません。
  • スナップショット – スナップショットは、シンプロビジョニングされたファイルの読み取り専用コピーです。

ボリューム・スナップショットはボリューム・レイヤーで機能し、Exascaleツールによって管理されますが、ACFSでは、ACFSツールによって管理されるファイル・システム・レイヤーで追加のスナップショット・タイプが有効になります。ACFSスナップショットおよびクローンは、リダイレクトオンライト・テクノロジ(ACFSではコピーオンライトと呼ばれる)を使用し、読取り専用または読取り/書込みが可能です。

  • ACFS
    • ファイル・スナップショット(fshare)– Linux reflinkの概念と同様に、単一のファイルへの新しい参照を作成します。
    • ファイルシステムのスナップショット – ファイルシステム全体への新しい参照を作成します。
  • Exascaleボリューム:
    • ボリューム・スナップショット/クローン –Exascaleボリューム全体への新しい参照を作成します。

可視性

ACFSスナップショットおよびクローンは、それらが作成されたファイル・システムでのみ表示されます。管理者は、’acfsutil’コマンドを使用してACFSスナップショットを作成します。ACFSスナップショットがファイル・システム /u01 に作成されている場合、ACFSスナップショットは /u01 にのみ表示されます。/u01を含むボリュームがマウントされている任意の場所からACFSスナップショットを表示できます。ACFSスナップショットは、ACFSファイル・システムの固有の特性です。ACFSファイル・システムから切り離したり、別のACFSファイル・システムで使用したり、ボリューム全体を移動せずに別のACFSクラスタで使用することはできません。

Exascaleボリュームのスナップショットおよびクローンは、それらが存在するExascaleボールトが表示されている任意の場所から表示できます。たとえば、/u01ファイル・システムを含むボリュームのスナップショットが取得された場合、スナップショットのクローンは、EDVデバイスとして別のクラスタまたはノードに独立してアタッチできます。

作成方法

ACFSスナップショットは、’acfsutil’コマンドを使用して管理します。Exascaleボリュームがマウントされている場合、’acfsutil’コマンドもボリューム・スナップショットの管理に使用することが可能です

  • ‘acfsutil snap’– ファイル・システムのスナップショット
  • ‘acfsutil fshare’– ファイル・スナップショット(fshares)
  • ‘acfsutil volsnap’– ボリューム・スナップショット

Exascaleコマンドライン・インタフェース・ユーティリティ(escli)は、ExascaleボリュームがマウントされていないときにExascaleボリューム・スナップショットおよびクローンを管理します。

  • ‘escli mkvolumesnapshot’– ボリューム・スナップショットを作成します
    • ノート— Exascale ボリュームがマウントされたACFSファイル・システムがある場合、このコマンドは失敗します。この場合、’acfsutil’コマンドを使用する必要があります。
  • ‘escli rmvolumesnapshot’– ボリューム・スナップショットを削除します

Oracle Cloudでは、コマンドライン・ユーティリティとして’escli’を使用できませんが、その関数はOCI Cloudコンソールおよび関連するREST APIを介して使用できます。

次の表に、ACFSボリューム・スナップショットとExascaleボリューム・スナップショットとクローンの違いの概要を示します。

 

異なるVMクラスタでの使用可否

新しいExascaleボリュームが構成されるか?

Read-Only

Read-Write

シンプロビジョニング

Exascale Read-Only Volume Snapshot / acfsutil volsnap create -r

Y (新しいデバイスとして接続可能)

Y

Y

N

Y

Exascale Writable Volume Snapshot / acfsutil volsnap create -w

Y (新しいデバイスとして接続可能)

Y

N

Y

Y

ACFS fshare

N (ファイル・システム内の単一ファイルのため)

N

Y

Y

Y

ACFS Snapshot

N (ファイル・システムに含まれるため)

N

Y

Y

Y

 

ACFSとExascaleの統合

Exascaleボリューム・スナップショットおよびクローンは、ソース・ボリュームと同じ属性を使用して作成されます。したがって、ボリュームのスナップショットまたはクローンが作成されると、そのスナップショットまたはクローンへのアクセスは、デフォルトでそのホストに固有になります。

Exascaleボリューム・スナップショットの作成時にACFSファイル・システムの一貫性を維持するには、acfsutil volsnap createコマンドの’-f’オプションによってファイル・システムが凍結されます。これにより、ボリューム上のI/Oが一時的に中断され、書込みテアリングが防止されます。この場合、ファイルに対する変更の一部は、Exascaleボリューム・スナップショットの作成時にボリュームに完全にコミットされません。マウントされたボリュームのスナップショットを作成する場合は、’acfsutil volsnap create -f’コマンドを使用します。

ユースケース

スナップショットおよびクローンのユースケースは多数あります。スナップショットのスコープと、必要な可能性のあるそれ以上の操作は、使用する正しいテクノロジの定義に役立ちます。

  • ACFSスナップショット
    • Oracleプラガブル・データベース(PDB)のシン・クローン
      • ACFSスナップショットはOracle Database PDBのクローン機能に統合され、PDBを簡単に作成および保守するために使用できます。ACFSファイル・システム上のスナップショット・コピーを使用してPDBが作成されると、Oracle Databaseは自動的にACFSスナップショットを使用します。
    • テストおよび開発データベース
      • ACFSスナップショットは、コンテナ・データベース(CDB)または非CDBのいずれかのデータベース全体のテスト・クローンおよび開発クローンを簡単に作成および保守できます。gdbCloneは、Oracle提供のツールで、ACFS上のデータベース全体のクローニングを自動化します。ACFSの使いやすさは、開発者にとって迅速かつ効率的に作成できることを意味します。
    • バックアップのための一貫性のあるファイル・システムの作成
      • ACFSスナップショットは一貫性があります。つまり、処理中の書込みは、スナップショットが作成される前にディスクに書き込まれます。ACFSスナップショットは、定期的な間隔(スナップショット・カルーセル)で取得して、クイック・リストア機能を備えた第1レベルのバックアップを作成できます。また、従来のバックアップ・ツールのソースとしても使用できます。
    • ゴールド・イメージの作成
      • ACFSスナップショットを使用して、ACFSファイル・システムにインストールおよび構成されたソフトウェアのマスター・コピーを作成できます。
  • ACFS fshares
    • Oracle Databaseシン・クローン
      • Oracle DatabaseがACFSに格納されると、スナップショット・カルーセルまたはスナップショット・コピーを介してPDBのシン・クローンを作成するときには、ACFS fsharesが自動的に利用されます。Oracle Database 21c以降では、ACFS fsharesがPDBシン・クローンのデフォルトです。
    • VMイメージ・ファイル
      • ACFS fsharesは、VMイメージ・ファイルのマスター・コピーを作成するために使用されます。このファイルを使用して、VMのバックアップを作成したり、クローンVMを作成するソースとして使用できます。これにより、ストレージの効率を維持しながら、VMの構成とインスタンス化が分離されます。
    • 効率的な領域使用量
      • Linux reflinksなどのfsharesを使用すると、同じファイルシステム内に領域効率の高いファイルコピーをすばやく作成できます。これは、AIデータセットなどの大きなファイルを操作する場合には大きな利点となる可能性があります。新しいバージョンのOracle Linuxのcpコマンドは、デフォルトで、ACFSファイル・システム上のファイルのコピーにfsharesを使用します。
  • Exascaleボリューム・スナップショット
    • 他のVMクラスタのゴールド・イメージ
      • Exascaleボリューム・スナップショットは、他のクラスタにアタッチして、1つのクラスタにストレージを構成し、他の多くのクラスタで使用できます。マスター・コピーのクローンを作成し、目的のターゲット・クラスタの構成値を調整するだけです。
    • 効率的なデータ・アクセス
      • Exascaleボリューム・スナップショットにより、異なるクラスタおよびノード上のデータに迅速かつ効率的にアクセスできます。スナップショット操作はバックグラウンドで迅速に完了します。データは新しいボリュームにコピーする必要がなくなり、クローニングして新しいクラスタで使用できるようになります。
    • VMファイル
      • Exascaleボリューム・クローンを使用すると、VMは、VMの領域効率を維持し、目的のVMインスタンス化の読取り/書込み構成を実現しながら、Exascaleボリュームのクラスタ・ノード間を移動するネイティブ機能を利用できます。
    • テスト、開発環境での利用
      • Exascaleボリューム・クローンは、実行中のソフトウェアの構成の変更、クローンの迅速な取得および削除、および格納された情報の変更を行う機能により、様々な構成、ソフトウェア・バージョン、更新済構成およびその他のシステム・レベルの操作を迅速かつ効率的に処理できます。
    • バックアップ
      • Exascaleスナップショットではデータの読取り専用コピーが作成され、このデータはExascale Vaultでホストされるため、データのバックアップを作成する効率的な方法となります。単純なスナップショット・アタッチメントは、データが再度必要になった場合(リストアなど)にアクセスできるようにします。
    • マスター・イメージ
      • Exascaleスナップショットは読取り専用であるため、構成が完了したときにソフトウェアまたはVMイメージの変更を凍結するのに最適な方法です。これらの凍結イメージを使用するには、管理者がクローンを作成して、特定のソフトウェア・インスタンス化へのアクセスと変更を許可します。

ご覧のとおり、ACFSおよびExascaleボリュームのスナップショットおよびクローンの利点は数多くあります。今後の投稿では、ACFSとExascaleの仕組みと、前述の多くのユースケースについて詳しく説明します。お待ちください! 一方、ACFSおよびExascaleの詳細を提供する多くの貴重なリソースがすでに使用可能です。下からチェックしてください。

さらなる情報