Oracle Cloud Infrastructureドキュメント

ストレージ・ゲートウェイの概要

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

重要

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

ストレージ・ゲートウェイおよびOracle Cloud Infrastructureの概念

次の概念は、Oracle Cloud Infrastructure Storage Gatewayを使用する場合に不可欠です。

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

ノート

ストレージ・ゲートウェイ・ドキュメントでは、「オブジェクト・ストレージ」の一般的な参照には、標準ストレージ層とアーカイブ・ストレージ層の両方が含まれています。

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

ストレージ・ゲートウェイのしくみ

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

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

ストレージ・ゲートウェイオブジェクト・ストレージの間には、ファイルからオブジェクトへの透過性があります:

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

エンタープライズ・アプリケーションは通常、ネストされたディレクトリ内のファイルで動作します。 「オブジェクト・ストレージ」バケットおよびこれらのバケット内のオブジェクトは、フラットな階層に存在します。 ストレージ・ゲートウェイは、ディレクトリ階層をオブジェクト・ストレージのネストされたオブジェクト接頭辞にフラット化します。 詳細については、「オブジェクト・ストレージとの相互作用」を参照してください。

以下に、ストレージ・ゲートウェイを使用できるいくつかの方法をまとめます。

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

ストレージ・ゲートウェイにより、従来のアプリケーションでは、データを永続的なオブジェクト・ストレージに移動できます。 データをリカバリする必要がある場合は、「オブジェクト・ストレージ」からデータを戻すためにストレージ・ゲートウェイの新しいインスタンスを作成します。

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

ストレージ・ゲートウェイは、以下の使用と作業負荷をサポートしていません。

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

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

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

ストレージ・ゲートウェイ・リソースの制限

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

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

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

    • 5000万ファイルまであるファイル・システムには、32 GBのメモリーが必要です。
    • ファイルが1億まである大規模なファイル・システムでは、64 GBのメモリーが必要です。
  • キャッシュ内のファイル数は、指定したキャッシュ・サイズ(バイト単位)にかかわらず、20,000に制限されます。
  • ファイル収集、クラウド・アップロード操作の効率を向上させ、ネームスペース内のオブジェクト数を削減するために、バイナリ・パックまたはzip小さいファイルをストレージ・ゲートウェイに書き込む前に削減します。

ストレージ・ゲートウェイ・リリース・ノート

リリース・ノートでは、バージョン固有のリリース情報および重要なストレージ・ゲートウェイの問題について、次の点に注意する必要があります:

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