自己啓発・勉強AWS認定資格を取ってみる~対策編-ストレージ-S3~前回からもう一週間が経ってしまいました。時が経つのは早いものですね。今回も引き続き、ストレージサービスです。SAアソシエイトで必ず出題される、しかも出題数の多いS3についてです。S3とは、SimpleStorageServiceの略で、バックアップデータや写真、動画など、様々なデータを様々なプラットフォームから利用できるストレージサービスとなります。5Gまでは無料なので、とにかく使ってみましょう。S3では、データをオブジェクトと呼びます。普段使い慣れたフォルダのような概念はなく、バケット(バケツ)を用意し、そこにオブジェクトがフラットに格納されます。よって、まずバケットを作成しましょう。バケットにはユニークな名前を付けます。オブジェクトをバージョン管理することで、誤って変更しても戻すことが可能となります。ここはテストに出るかも。今回はお試しなので、そのまま次へ進んでください。デフォルトではインターネット越しにオブジェクトにアクセスできません。S3では、オブジェクトへのアクセスを詳細に設定できますが、今回はお試し目的なので「パブリックアクセスをすべてブロック」のチェックを外します。これでバケットが作成されます。このバケットにオブジェクトを追加します。S3の特徴でもある「静的ウェブサイトホスティング」を試してみましょう。ホームページなどのウェブサイトを作るには、LinuxにApacheなどのWEBサーバを立ち上げ、ややこしい設定をして・・・と敷居が高かったのですが、S3にコンテンツを載せるだけで、ウェブサイトが超簡単に公開できます。サーバーサイドスクリプトは使えませんが、javaScriptなどクライアントサイドスクリプトは使えますので、静的といいながら高度なサイトが作れます。今回はお試しなので、「ハローワールド!」と表示されるサイトを作ってみましょう。以下のようなhtmlファイルをテキストエディタで作成し、assets/img/フォルダと、適当な画像ファイルを用意してください。用意できたら早速アップロードしていきましょう。アップロードはフォルダまるごとドラッグアンドドロップできます。次へを押し、アクセスの設定をします。パブリックアクセス許可の管理で、読み取りアクセス権限を付与します。これでインターネット越しに参照が可能となります。hosting」を選択して行います。インデックスドキュメントに、先ほど保存したhtmlのファイル名を指定します。エンドポイントに表示されているURLが、このサイトへのURLとなります。このURLにアクセスすると、インデックスドキュメントが表示されます。ブラウザにエンドポイントのURLを張り付けると、この通り!実際にウェブサービスとして提供するには、DNSやキャッシュ、バランシングなどを組み合わせてやります。ちなみにARKが提供する介護システムの「あゆむ」のウェブ画面もこの構成を使っています。応用として、クライアントからのデータを加工してS3にアップロードすることもできます。データ加工をJavaのアプリケーションでやろうとすると、先ほどの例のようにLinuxにウェブサーバを立ち上げ、tomcatをインストールしてアプリケーションを配置する、なんて面倒な手順が必要で、しかもウェブサーバをずっと動かし続ける必要があります。アップロードは一日一回、なんてときに24時間365日サーバを動かしつづけると、リソースが無駄ですよね。そんなときこそAWSの本領発揮です。Lambdaというイベント駆動型のスクリプト実行サービスを使い、データを加工してS3に格納することができます。Gatewayを使い、HTTPで受け取ります。このように、サーバーレスなサービスが簡単に作れてしまうのです。ちなみに「あゆむ」も、アプリからのバイタルサインをLambdaを使ってDBに格納しています。いうことで、もう大分長くなってしまったのでそろそろ終わりますが、最後にもう一つだけ!S3にも種類がありまして、どんなにばかでかいデータも保存できるのですが、データ量に比例してお金がかかります。そのため、たまにしか使わないデータはお安く格納できる種類があります。・低頻度アクセスアクセス頻度が低いデータ向けですが、使いたいときにすぐ使えます。標準タイプでは複数のアベイラビリティゾーンに保存されるので可用性が高いのですが、このタイプは単一のゾーン保存となるため、可用性が下がります。Glacierアーカイブのように滅多に使わないデータ向けです。特徴は「使いたいときにすぐ使えない」。使うには手続きが必要で、数時間かかることも。Glacierには「迅速取り出し」というオプションもありますが、それでも「すぐには使えない」。「すぐ使いたい」ときにはGlacierは使えない、ここだけでも覚えておけば、良いことあるかも!?開始から早一か月半、そろそろ折り返し地点が見えてきましたよ。