オブジェクトストレージWebコンテンツパターン#

本構成は東日本/西日本リージョン1・2向けとなります。

要求事項#

  • 大量にあるWebコンテンツ、あるいは大容量のコンテンツを、負荷分散等の設定を施すことなく、簡単に公開したい

対応するデザインパターン概要#

FJcloud-Oのオブジェクトストレージ機能を用います。 内容が動的に変化しないコンテンツであれば、サイズが大きいコンテンツや、多数のコンテンツを、信頼性の高いオブジェクトストレージに搭載し、そのままWebで公開することが可能です。

本パターンでは、IaaSポータルよりコンテナ (=コンテンツを搭載する器) を作成する操作と、 コンテナへコンテンツを搭載する操作について記載します。

構造 (イメージ図)#

image

実装サンプル#

1. オブジェクトを搭載するコンテナの作成#

(1) コンテナ一覧画面の表示#

※IE11の方は、先に下記の注意事項をご覧ください。

  • IaaSポータルにログインします。
  • [ストレージ]→[オブジェクトストレージ]を押下し、コンテナ一覧画面を表示します。
  • この画面で各コンテナのコンテナ名、オブジェクト数、使用容量およびアクセスポリシー(ACL)の情報を参照することができます。
  • コンテナ一覧画面で「+」ボタンをクリックし、コンテナ作成画面を表示します。

(2) コンテナの作成#

  • コンテナ作成画面で設定項目を入力後、「作成」ボタンを押下し、コンテナを作成します。
  • ポップアップ画面「アクセス権確認 コンテナがpublicに設定されている可能性があります。続行しますか?」が表示される。
  • 「OK」ボタンを押下する。
  • コンテナ一覧画面に、作成されたコンテナが表示されます。
  • コンテナを作成する際に必要な設定項目を以下に示します。
項目 必須 設定値例 内容
コンテナ名 必須 (コンテナの名前) コンテナの名前
X-Container-Read 任意 .r:* リード権限のアクセスポリシー(ACL)設定
"r:*":すべてのアクセス元のドメインに対して Read の ACL に許可を設定
X-Container-Write 任意   ライト権限のアクセスポリシー(ACL)設定
適宜設定してください。
X-Versions-Location 任意   バージョニング管理用コンテナの名前
適宜設定してください。
コンテナメタデータ 任意   コンテナメタデータに設定するキーおよび値
適宜設定してください。
X-Container-Meta-Access-Control-Allow-Origin 任意 * “*”(初期値)
(注)変更した場合はIaaSポータルからファイルのアップロード及びダウンロードが利用できません。
X-Container-Meta-Access-Control-Max-Age 任意 3628800 (初期値)

※各項目の詳細については『API リファレンス(Foundation Service 編)』を参照してください。

2. オブジェクトの搭載#

(1) コンテナ詳細画面よりオブジェクト一覧情報の表示#

  • コンテナ詳細画面からオブジェクト一覧情報を参照できます。
  • オブジェクト一覧情報では、オブジェクト名、サイズ、Content-Type、更新日時(UTC)が表示されます。
  • コンテナ詳細画面のオブジェクトの「+」ボタンをクリックし、オブジェクト作成画面を表示します。

(2) オブジェクトの作成#

  • オブジェクト画面で設定項目を入力後、「作成」ボタンを押下して、オブジェクトを作成します。
  • 既存オブジェクトと名前が一致する場合は、更新確認用のダイアログが表示されます。
  • オブジェクト作成画面に表示される項目を以下の表に示します。
項目 必須 設定値例 内容
オブジェクト名 必須 (オブジェクトの名前) オブジェクトの名前
ファイル 任意   登録するファイル
ファイルサイズの最大制限は1GB
1GBを超える場合は、ラージオブジェクトの設定が必要になります。
ファイル分割は利用者により実施してください。
X-Detect-Content-Type 任意   オブジェクトのMIMEタイプの自動および手動設定
適宜設定してください。
Content-Type 任意   オブジェクトのMIMEタイプ設定
適宜設定してください。
X-Copy-From コンテナ 任意   複製元オブジェクトのコンテナ名
適宜設定してください。
X-Copy-From オブジェクト 任意   複製元オブジェクト名
適宜設定してください。
ETag 任意   オブジェクトのMD5 チェックサムの設定
適宜設定してください。
Content-Disposition 任意   ブラウザの振る舞いの設定
適宜設定してください。
削除予定日時(UTC) 任意   オブジェクトが削除される予定日時をUTC形式での指定
適宜設定してください。
ラージオブジェクト 任意 (設定無し) ラージオブジェクトに関する設定
設定方法は以下の三種類
  • 設定無し:ラージオブジェクトとして扱わない場合の設定
  • X-Object-Manifest:動的ラージオブジェクトの設定。コンテナ名/オブジェクト名を設定します。
  • multipart-manifest:静的ラージオブジェクトの設定。JSON 形式にて設定します。

  • 適宜設定してください。
    オブジェクトメタデータ 任意   オブジェクトメタデータに設定するキーおよび値
    適宜設定してください。

    ※各項目の詳細については『API リファレンス(Foundation Service 編)』を参照してください。

    (3) オブジェクト詳細画面の確認#

    • コンテナ詳細画面のオブジェクト一覧からオブジェクト名をクリックすることにより、オブジェクトの詳細画面が表示されます。
    • オブジェクトメタデータなどの詳細情報を参照できます。

    3. オブジェクトとコンテナの削除#

    (1) オブジェクトの削除#

    • コンテナ詳細画面のオブジェクト一覧から「アクション」→「削除」ボタンを選択する。

    (2) コンテナの削除#

    • コンテナの削除機能は、コンテナ内のオブジェクト数が0 の場合だけ、コンテナの一覧画面のアクションメニュー「削除」から実行できます。

    メリット・効果#

    オブジェクトストレージをWebコンテンツ格納に利用した場合のメリット・効果は以下の通りです。

    • Webサーバ、コンテンツ格納用のストレージ、ロードバランサ、 オートスケールグループなどのリソースの作成/保有/運用コスト削減

    • Webサーバ間で、同じコンテンツを共有する仕組み(NASなど)が不要

    • オブジェクトストレージは、仮想ディスクより信頼性が高いため、コンテンツを安全に保管可能

    注意事項#

    • 本パターンは2018年2月時点のFJcloud-O 東日本/西日本リージョン1・2で動作検証しています。

    • IE 11 において以下の設定が必要になります。
      [ツール]→[インターネットオプション(O)]→[セキュリティ]→[レベルのカスタマイズ(C)]→[ドメイン間でのデータソースのアクセス]→[有効にする]を選択

    • IE 11 において以下の利用制限があります。
      オブジェクトのサイズが4GB を超える場合は、コンテナ詳細画面から以下の操作がご利用になれません。
      オブジェクト参照/再アップロード/メタデータ編集操作を行いたい場合はchrome ブラウザをご利用ください。

    • Webアクセス時に、動的に内容を生成するコンテンツには、オブジェクトストレージはご利用いただけません。

    • オブジェクトストレージでは、HTTPSのみサポートしています。

    • 負荷が非常に高い場合は、コンテンツ配信サービスの併用をご検討ください。

    • オブジェクトストレージはインターネットにのみ公開できるため、内部向け(インターネットに接続しない状態)で公開する形態ではご利用いただけません。

    • FJcloud-Oのオブジェクトストレージは、下記の URL形式でアクセス可能です。
      下記 URL中の FQDNについては、DNS の CNAMEで別名定義してアクセスすることはできません。

      https://objectstorage.<リージョン>.cloud.global.fujitsu.com/v1/AUTH_<プロジェクトID>/<コンテナ名>/<ファイル名>