SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

直近開催のイベントはこちら!

EnterpriseZine編集部ではイベントを随時開催しております

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けの講座「EnterpriseZine Academy」や、すべてのITパーソンに向けた「新エバンジェリスト養成講座」などの講座を企画しています。EnterpriseZine編集部ならではの切り口・企画・講師セレクトで、明日を担うIT人材の育成をミッションに展開しております。

お申し込み受付中!

翔泳社の本

【後編】:オブジェクトストレージとWebシステムの構築例

抄録:『絵で見てわかるクラウドインフラとAPIの仕組み』


 前回は、書籍『絵で見てわかるクラウドインフラとAPIの仕組み』(翔泳社 平山 毅、中島 倫明、中井 悦司、矢口 悟志、森山 京平、元木 顕弘 著)より、サーバーリソースとブロックストレージリソースを解説した部分を抜粋して紹介しました。今回は、第2章(中井 悦司 著)の締めとなる部分からオブジェクトストレージとWebアプリケーションシステムというテーマで抜粋。ぜひ、最後まで読んでクラウドのコンポーネントに関する知識習得にお役立てください。

2.5 オブジェクトストレージ

 オブジェクトストレージは、ファイル単位でデータを格納するデータストアです。HTTP/HTTPS のプロトコルを用いてファイルを出し入れするファイルサーバー的な機能を提供します。仮想マシンインスタンスのゲスト OS からファイルを出し入れするほかに、外部ネットワークから直接にファイルを出し入れすることも可能です。

2.5.1 オブジェクトストレージの基本機能

 オブジェクトストレージは、ファイル単位でデータを格納する機能を提供します。格納したファイルの一部を上書きで変更することはできないので、ファイルの内容を書き換える場合は、一度、ファイルを取り出した後、変更したファイルを再格納する必要があります。

 このように、提供する機能はとてもシンプルですが、高い可用性と高速なスループットを持つので、動画ファイルや画像ファイルなど、大量のファイルを保存するのに適しています。オブジェクトストレージに格納するファイルのことを「オブジェクト」と呼ぶこともあります。

 また、これまでに説明したコンポーネントは、リージョンやアベイラビリティゾーンによって特定の場所や地域にひも付けられていましたが、オブジェクトストレージは、複数の場所や地域から共通に利用することができます。

 たとえば、AWS が提供するオブジェクトストレージのサービスである「Amazon S3」では、オブジェクトの保存領域となる「S3 バケット」はリージョンごとに用意されますが、他のリージョンの仮想マシンインスタンスからでも、インターネットを介してアクセスすることが可能です。

 あるリージョンの仮想マシンインスタンスからファイルを保存した後、それを他のリージョンの仮想マシンインスタンスから取り出すような使い方が可能になります(図 2.19)。

図2.19 リージョンを越えて利用できるオブジェクトストレージ
図2.19 リージョンを越えて利用できるオブジェクトストレージ

 オブジェクトストレージにファイルを保存する際は、オブジェクトの入れ物となる「コンテナ」を作成します。AWS では、先ほどの「S3 バケット」がコンテナに相当します[※7]。Linux のディレクトリに似ていますが、コンテナの中にコンテナを作成することはできません。ただし、ディレクトリ名付きでファイルを出し入れすることは可能です。

 たとえば、ディレクトリ名を付けて「dir01/file01」というファイルを保存すると、内部的には、「dir01/file01」という名称のオブジェクトがコンテナに保存される形になります(図 2.20)。格納したファイルに対するアクセス権の設定は、コンテナの単位で行ないます。

 また、それぞれのオブジェクトには、(Key, Value)形式のメタデータを付与することが可能です。アプリケーションと連携して利用する際は、メタデータによって、アプリケーションが取り出すファイルを選択するなどの使い方ができます。

※7 AWS の用語に合わせて、コンテナのことを「バケット」と呼ぶこともあります。

図2.20 擬似的なディレクトリの利用
図2.20 擬似的なディレクトリの利用

2.5.2 バージョニングと静的 Web ホスティング

 バージョニングは、コンテナに保存するオブジェクトにバージョン番号を付与する機能です。同じ名前のファイルを上書き保存した際は、新しいバージョン番号で保存されて、過去のファイルもそのまま残ります。必要な際は、過去のバージョンにファイルの内容を戻すことが可能になります。

 また、静的 Web ホスティングは、オブジェクトストレージを簡易的な Web サーバーとして利用する機能です。コンテナのアクセス権をパブリック(だれでも読み出し可能)にセットして、その中に静的 HTML ファイルを保存しておきます。外部のWeb ブラウザから、この保存オブジェクトに割り当てられた URL にアクセスすると、HTML のコンテンツがブラウザに表示されます。HTML ファイルの他にも、画像ファイルを保存して、ブラウザから閲覧することもできます。

2.5.3 仮想ストレージのバックアップ

 仮想ストレージのボリュームは、オブジェクトストレージにバックアップすることができます。内部的には、ボリューム全体を一定サイズのブロックに分割して、それぞれのブロックを 1 つのファイルとしてオブジェクトストレージに保存する形になります。

 オブジェクトストレージは複数のリージョン/アベイラビリティゾーンから共通に利用できるので、リージョン/アベイラビリティゾーン間でボリュームの内容をコピーする際にも使えます[※8]。コピー元のボリュームの内容をオブジェクトストレージにバックアップしておき、それをコピー先のボリュームにリストアします(図2.21)。

 ※8 AWS では、仮想ストレージのスナップショットや仮想マシンイメージ(テンプレートイメージ)をリージョン間でコピーする機能も提供されています。

図2.21 オブジェクトストレージを利用したボリュームの複製
図2.21 オブジェクトストレージを利用したボリュームの複製

次のページ
2.6 Web アプリケーションシステムの構築例

この記事は参考になりましたか?

  • Facebook
  • Twitter
  • Pocket
  • note
関連リンク
翔泳社の本連載記事一覧

もっと読む

この記事は参考になりましたか?

この記事をシェア

EnterpriseZine(エンタープライズジン)
https://enterprisezine.jp/article/detail/13481 2020/11/27 19:27

Job Board

AD

おすすめ

アクセスランキング

アクセスランキング

イベント

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング