Oracle Cloud Infrastructureドキュメント

Storage Gatewayの概要

Storage Gatewayは、Oracle Cloud Infrastructureでオンプレミス・アプリケーションを接続できるクラウド・ストレージ・ゲートウェイです。 NFSターゲットにデータを書き込むことができるアプリケーションは、REST APIを使用するためのアプリケーションの変更を必要とせずに、Oracle Cloud Infrastructure Object Storageにデータを書き込むこともできます。

重要

Storage Gatewayは、Oracle Cloud Infrastructure Classicで起動されたStorage Software Applianceの発展です。
Oracle Cloud Infrastructure Object Storageに移行した後は、Storage Gatewayを使用して、拡張されたファイル対オブジェクトの透過性およびスケールとパフォーマンスが向上します。

Storage GatewayおよびOracle Cloud Infrastructureの概念

以下に、主要なStorage GatewayおよびOracle Cloud Infrastructureに関連する概念をまとめます。

ファイル・システム
ローカル・ホスト上のStorage Gatewayファイルシステムは、Oracle Cloud Infrastructure内の対応するObject Storageバケット内の同じ名前を持つオブジェクトに、ファイルおよびディレクトリをマップします。
ファイル・システム・キャッシュ
Storage Gateway構成可能なファイル・システム・キャッシュにより、クラウドへのデータの非同期および最適化された移動が可能になります。 ファイル・システム・キャッシュは、データのストレージと取得に2つのロールを果たします: ライト・バッファとリード・キャッシュを含む。 書き込みバッファには、ディスク・キャッシュにコピーされたデータが含まれ、Oracle Cloud Infrastructureにアップロードされるようにキューに入れられます。 読み取りキャッシュには、読み取り操作のためにローカルにアクセスできる頻繁に取得されるデータが含まれています。
ファイル・システムの適切なキャッシュ構成は、Storage Gatewayのパフォーマンスにとって重要です。 詳細については、「ファイル・システムのキャッシュの構成」を参照してください。
メタデータ
Storage Gatewayファイルに関連付けられたメタデータは、Oracle Cloud Infrastructure Object Storage内の対応するオブジェクトのカスタム・メタデータとして格納されます。 ファイル・メタデータの例には、: オブジェクトID、作成日、変更日、サイズ、および権限が含まれます。 Storage Gatewayでは、ファイル・システムのすべてのメタデータがローカルにキャッシュされます。
nfsv4
NFSは、ネットワーク・ストレージを利用するために確立され広く採用されている分散ファイル・システム・プロトコルです。 NFSを使用すると、クライアント・コンピュータはファイル・システムをリモート・サーバーにマウントし、ローカル・ファイル・システムのようにネットワーク経由でリモート・ファイル・システムにアクセスできます。 Storage Gatewayは、NFS to REST API変換を実行してOracle Cloud Infrastructure Object Storageと対話します。
Oracle Cloud Infrastructure
Oracle Cloud Infrastructureは、高度に利用可能なホスト環境におけるアプリケーションやサービスを広範囲に構築して実行できる一連の補完クラウド・サービスです。 Oracle Cloud Infrastructureは、オンプレミス・ネットワークから安全にアクセスできる柔軟なオーバーレイ仮想ネットワーク内の高性能コンピューティング機能(物理ハードウェア・インスタンスなど)とストレージ容量を提供します。
テナンシ
テナンシは、クラウド・リソースを作成、整理、および管理できるOracle Cloud Infrastructure内の安全で隔離されたパーティションです。
Oracle Cloud Infrastructure Object StorageおよびArchive Storage
Oracle Cloud Infrastructureでは、構造化されていないデータを保存するために、2つの異なるストレージ層が用意されています。 高速アクセス、即時アクセスおよび頻繁なアクセスが必要なデータには、Object Storage 「標準」層を使用します。 アクセスすることはほとんどないかごくまれに、長期にわたって保持および保持する必要があるデータには、Archive Storage 「アーカイブ」層を使用します。 どちらのストレージ層も、同じ管理可能なリソースを使用します(たとえば、「オブジェクト」「バケット」)。 相違点は、Archive Storageにファイルをアップロードすると、オブジェクトはすぐにアーカイブされることです。 アーカイブ済オブジェクトにアクセスするには、まずオブジェクトを標準階層に戻す必要があります。

ノート

Storage Gatewayドキュメントを簡略化するために、一般的にはObject Storageを参照し、アプリケーションが標準ストレージ層またはアーカイブ・ストレージ層のいずれかにバケットにデータを格納するように指示できます。

どちらのストレージ層も使用が簡単で、十分に機能し、無制限の容量にスケーリングされます。
バケット
Object Storageバケットは、オブジェクトを格納するための論理コンテナです。 Storage Gatewayで作成されたファイル・システムは、Object Storage内の同じ名前の対応するバケットにマップされます。 バケットは、バケットおよびバケット内のすべてのオブジェクトでユーザーが実行できるアクションを決定するポリシーを持つ、単一のOracle Cloud Infrastructureコンパートメントに関連付けられます。
オブジェクト
NFS共有上のStorage Gatewayファイル・システムに書き込まれる個別のファイルまたはディレクトリは、ターゲットのObject Storageバケット内に同一の名前のオブジェクトを作成します。 オブジェクトは、オブジェクト自体とそのオブジェクトに関するメタデータで構成されます。
ネームスペース
すべてのOracle Cloud Infrastructure Object Storageバケットとオブジェクトのトップレベル・コンテナとして機能する論理エンティティで、テナンシ内でのバケットの名前付けを制御できます。 各テナンシには、すべてのコンパートメントとリージョンにまたがる、グローバルな1つのユニークで編集不可能なObject Storage namespaceが用意されています。 バケット名は、あなたのテナンシ内で一意でなければなりません。
コンパートメント
管理者によって明示的にアクセス許可が与えられたユーザーおよびグループのみがアクセスできるOracle Cloud Infrastructure関連のリソースの集合。 コンパートメントは、リソースを整理し、それらのリソースへのアクセスを簡単に制御できるようにします。 Object Storageは、コンパートメントがプロビジョニングされると自動的にルート・コンパートメントを作成します。 管理者は、ルート・コンパートメント内でより多くのコンパートメントを作成し、それらのコンパートメントのアクセス・ルールを追加することができます。 バケットは1つのコンパートメントにしか存在できません。

Storage Gatewayのしくみ

Storage Gatewayは、Oracle Cloud Infrastructureコンピュート・インスタンスに、またはオンプレミス・データセンター内の1つ以上のホスト上にLinux Dockerインスタンスとしてインストールされます。 アプリケーションは、Storage Gatewayで作成した「ファイル・システム」を通じて、Oracle Cloud Infrastructure Object Storageからオブジェクトを格納および取得します。

Storage Gatewayは、NFSv4クライアントをサポートする任意のホストにマウントできるNFSマウント・ポイントを公開します。 Storage Gatewayマウント・ポイントは、Object Storageバケットにマップされます。

Storage GatewayObject Storageの間には、ファイルからオブジェクトへの透過性があります:

  • ローカル・ホスト上のStorage Gatewayファイル・システム・ディレクトリは、Oracle Cloud Infrastructure Object Storageに同じ名前のバケットにマップされます。
  • Storage Gatewayファイル・システムに書き込まれるファイルは、関連するObject Storageバケット内に、同じ名前のオブジェクトとして書き込まれます。 関連付けられたファイル属性はオブジェクト・メタデータとして格納されます。
  • ネイティブAPI、SDK、サードパーティのツール、HDFSコネクタ、Oracle Cloud Infrastructure CLIおよびコンソールを使用して、Object Storageオブジェクトに直接アクセスできます。 その後、Storage Gateway「リフレッシュ」操作を使用して、Object Storageで直接追加または変更されたデータを取り込みます。

エンタープライズ・アプリケーションは通常、ネストされたディレクトリ内のファイルで動作します。 Object Storage内では、バケットとそのバケット内のオブジェクトはフラットな階層に存在します。 Storage Gatewayは、ディレクトリ階層をObject Storageのネストされたオブジェクト・プレフィクスにフラット化します。 詳細については、「Object Storageと対話」を参照してください。

以下に、Storage Gatewayを使用できるいくつかの方法をまとめます。

データ転送
Storage Gatewayを使用して、オンプレミス・データからOracle Cloud Infrastructureにデータを移動します。 Storage Gatewayは汎用NAS (Network Attached Storage)の代わりではありませんが、NASと同様に動作します。 Storage Gateway統合「クラウド同期」機能を使用して、Oracle Cloud Infrastructureにデータを転送および同期します。
クラウド階層化
Storage Gatewayを使用して、設備投資なしでオンプレミス・ストレージ・ソリューションの容量を拡張します。 Oracle Cloud Infrastructure Object Storageへの大規模なキャッシュを使用したStorage Gatewayファイル・システムの構成および接続は、無制限の方法でクラウドに自動的に移動され、オンデマンドで取得されるワークフローを作成します。 オンデマンド検索はローカル・ストレージへのアクセスよりも遅いものの、設備投資や既存のツールやソフトウェアの変更は必要ありません。
バックアップ
Storage Gatewayを使用して、費用効果の高いバックアップ・ソリューションとしてOracle Cloud Infrastructure Archive Storageにファイルを移動します。 個々のファイル、圧縮または非圧縮のZIPまたはTARアーカイブを移動できます。 データの二次コピーを格納することは、Storage Gatewayの理想的な使用例です。
アーカイブ
Storage Gatewayは、アーカイブの使用例に最適です。
障害時リカバリ

Storage Gatewayを使用すると、従来のアプリケーションではデータを耐久性の高いオブジェクト・ストレージに移動できます。 データを回復する必要がある場合、Storage Gatewayの新しいインスタンスが作成され、データを簡単に回復できます。

サポートされていない使用と作業負荷

Storage Gatewayは、以下の使用と作業負荷をサポートしていません。

汎用のネットワーク・ストレージ
Storage Gatewayは汎用のストレージ・フィルタではなく、従来のネットワーク・ストレージ・アプライアンスの交換用として使用しないでください。
ファイルの同期と共有
Storage Gatewayは有効なバーですが、ファイル同期や共有サービスの代わりにはなりません。 ファイル同期と機能の共有が必要な場合は、Oracle Document CloudサービスなどのOracleサービスを評価してください。
コンテンツ・コラボレーション
Storage Gatewayは、複数のStorage Gatewayインスタンスを同時にサポートしていないため、単一のObject Storageバケットとの間で読み書きを行うことはできません。 分散チームがコンテンツの作成と管理に協力するためのツールとしてStorage Gatewayを使用しないでください。
頻繁に変更されるファイル
データを頻繁に変更すると思われる場合は、Storage Gatewayを使用しないでください。 ファイルが変更されて閉じられるたびに、Storage Gatewayは新しいオブジェクトとしてObject Storageにアップロードされる新しいバージョンを作成します。 頻繁に変更されたデータは、アップロード/ダウンロード帯域幅の消費と容量の使用の両方において、実質的に非効率的になります。
大きいディレクトリ・ツリーの名前変更
Storage Gatewayでディレクトリの名前を変更すると、小さいディレクトリ・ツリーでも効果的に機能します。 ただし、子が多数ある親ディレクトリの名前を変更すると、非常に遅くなる場合があります。 このサービスは、オブジェクト・ストア内の対応するすべての子オブジェクトのオブジェクトIDを更新して、新しいパスを反映します。 名前の変更を開始する場合は、Storage Gatewayユーザー・インタフェースの「保留中のアップロード」フィールドをモニタリングし、処理を終了させてください。

セキュリティに関する考慮事項

管理パスワード
Storage Gateway管理者はファイル・システムの作成、変更、および削除を行うことができるため、次のパスワードのガイドラインに従ってください。
  • 強力なパスワードを設定します。
  • パスワードがセキュアであることを確認してください。
  • パスワードを他人と共有する必要があるのは、分かりやすいだけです。
Docker
Storage Gatewayは、セキュリティと隔離のためにDockerコンテナ内で実行されます。 Docker関連のガイドラインと推奨事項に従ってください:
  • Dockerインスタンス操作を回避または最小化します。
  • Dockerコンテナへのログインは避けてください。 Dockerコンテナに本当にログインする必要がある場合は、サービスの中断を避けるために十分注意してください。 Oracleサポートの個人による指示を受けないかぎり、ドッキング構成またはドッキング・インスタンスを変更しないでください。
  • NFSプロトコルによりクライアントからファイル・システムへのアクセスが制御されますが、Storage Gatewayファイル・システムもdockerコンテナ内にローカルにマウントされます。 ファイル・システム・データへの権限のないアクセスを防止するには、管理者または認可されたユーザーのみがdockerコンテナにアクセスできることを確認してください。
  • Dockerホストを構成して、Storage Gatewaydockerコンテナへのユーザー・アクセスを制限します。
  • Dockerコンテナ内のファイルおよびディレクトリも、Dockerホストにプロビジョニングされ、コンテナにマップされているDockerホストおよびディレクトリに表示されます。 管理者または認可ユーザーのみがこれらのフォルダにアクセスできるように、適切な所有権とモードを設定してください。 以下を推奨します:
    • 専用のStorage Gatewayホスト
    • Storage Gatewayホストにアクセスできるユーザーを制限
    • DockerホストとDockerコンテナへのアクセスを制限するファイアウォール・ルールを設定
    • Storage Gatewayに関連付けられたファイルのバックアップおよび保存ポリシーを実装します。
アクセス制御
デフォルトのファイル・システムのエクスポート・オプションは許可されすぎます。 信頼できるNFSクライアントのみがファイル・システムのデータやメタデータにアクセスできるように、より制限的なエクスポート・オプションを設定します。 「NFSで許可されたホスト」および「NFSエクスポート・オプション」の詳細ファイル・システム設定を変更して、ファイル・システムへのアクセスを制限します。 NFSプロトコルのセキュリティだけでなく、ファイル・システムへのアクセスを制御するために、ホストにファイアウォールを設定して構成することもできます。 UID/GID/modesは、ファイルとディレクトリへのアクセスを制御します。 機密データを保護するための適切な所有権モードを設定します。
Object Storage
ファイル・システム内のファイルは、Oracle Cloud Infrastructureにアップロードされ、Object Storageバケット内のオブジェクトとして格納されます。 関連付けられたファイル属性はオブジェクト・メタデータとして格納されます。 Object Storageのアクセス制御は、従来のファイル・システムのアクセス制御とは異なります。 バケット内のオブジェクトを読み取ったり変更したりする権限を持つ人は、バケット内のすべてのオブジェクトを読み取り/変更できます。 機密データを保護するには、Oracle Cloud Infrastructure IAMポリシーを設定して、バケット内のオブジェクトにアクセスできるユーザーを制限します。
Storage Gatewayは、Storage Gatewayとクラウド間のデータ・パケットを暗号化するHTTPSを使用して、Oracle Cloud Infrastructureにデータを転送します。 Object Storageに書き込まれたデータは常にクラウド内で自動的に暗号化されます。

Storage Gatewayリソースの制限

適用可能な制限の一覧と制限の増加をリクエストする手順については、「サービス制限」を参照してください。

その他の制限は次のとおりです:

  • Storage Gatewayごとのファイル・システムの数が10を超えないようにします。 最高のパフォーマンスを実現するには、各ファイル・システムを専用のStorage Gateway上にホストします。
  • Storage Gatewayファイル・システムに格納されているオブジェクトの数が100百万を超えていないことを確認します。 100百万を超えるオブジェクトから構成されるデータセットの場合、複数のStorage Gatewayにオブジェクトを配布します。
  • ファイル・システム・キャッシュの適切なローカル・ストレージを構成していることを確認してください。 Storage Gateway推奨500 GB未満を構成した場合は、警告が表示されます。
  • Storage Gatewayファイル・システムに必要な最小メモリー量は、16 GBです。

    • 50百万までのファイル・システムの場合、必要なメモリー量は32 GBです。
    • 最大100百万個のファイル数を持つ大規模ファイル・システムの場合、必要なメモリー量は64 GBです。
  • キャッシュ内のファイル数は、指定されたキャッシュ・サイズ(バイト数)に関係なく、20,000に制限されています。
  • ファイルの取り込みとクラウド・アップロード操作の効率を高め、ネームスペース内のオブジェクトの数を減らすには、小さなファイルをbin-packまたはzipしてからStorage Gatewayに書き込みます。

Storage Gatewayリリース・ノート

リリース・ノートは、バージョン固有のリリース情報と、認識する必要がある重要なStorage Gateway問題を提供します:

https://docs.cloud.oracle.com/iaas/releasenotes/services/storage-gateway/