AWS Builder Labs (セルフペースラボ) の Introduction to Amazon CloudFront をやってみた

AWS Builder Labs (セルフペースラボ) で提供されている Introduction to Amazon CloudFront を実際にやってみました。
2023.04.21

AWS Builder Labs (セルフペースラボ) とは

AWS Builder Labs (セルフペースラボ) とは、AWS Skill Builder 内で提供されている AWS の学習コンテンツであり、以下の特徴があります。

  • ハンズオン形式で実践的な学習ができる
  • AWS のラボ環境が提供されるため、コストを気にせずに学習できる
  • オンデマンドで利用可能なため、時間や場所を問わずに学習できる

注意点として、AWS Builder Labs の利用には、個人またはチームのサブスクリプション契約が必要となります。

詳細は公式サイトをご参照ください。

Introduction to Amazon CloudFront とは

Introduction to Amazon CloudFront とは、AWS Builder Labs (セルフペースラボ) で提供されているコースの1つです。

コースの概要は公式サイトより引用いたします。

概要

このガイドでは、Amazon CloudFront についてご説明します。このラボでは、Amazon S3 バケットに保存されたパブリックアクセス可能な画像ファイルを URL に CloudFront ドメイン名を使用して配信する、Amazon CloudFront ディストリビューションを作成します。

取り上げるトピック

このラボを修了すると、以下ができるようになります。

  • 新しい Amazon CloudFront ディストリビューションを作成する
  • Amazon CloudFront ディストリビューションを使用して、画像ファイルを配信する
  • 不要になった Amazon CloudFront ディストリビューションを削除する

本コースの所要時間は約1時間です。
日本語版のコースも提供されています、今回は日本語版コースをやってみました。

コースの流れは以下です。

  1. パブリックアクセス可能な画像ファイルを Amazon S3 バケットに保存する
  2. Amazon CloudFront ウェブディストリビューションを作成する
  3. オブジェクトへのリンクを作成する
  4. Amazon CloudFront ディストリビューションを削除する
  5. Amazon S3 バケットを削除する

やってみた

1. パブリックアクセス可能な画像ファイルを Amazon S3 バケットに保存する

ここでは S3 バケットを作成し、画像ファイルのアップロード後、画像ファイルをパブリックアクセス可能なように設定変更していきます。

まずはラボの指示に従い、S3 バケットを作成していきます。
ACL 有効化、オブジェクト所有者をオブジェクトライターとなるように設定したうえで作成しましょう。

次に作成した S3 バケットのブロックパブリックアクセスをオフに設定します。

続いて画像ファイルを用意のうえ、S3 バケットへアップロードしていきます。
私は画像ファイルは以下の introduction-to-cloudfront-clanyan.png を用意しました。

introduction-to-cloudfront-clanyan.png

それでは S3 バケットにアップロードしていきます。

アップロードした画像ファイルオブジェクトの ACL を変更していきます。
全員 (パブリックアクセス) のオブジェクト、オブジェクト ACL の読み込みチェックボックスをオンに設定しましょう。

では画像ファイルのオブジェクト URL にアクセスしましょう。

S3 バケットにアップロードした画像ファイルへパブリックアクセス可能であることが確認できました。

2. Amazon CloudFront ウェブディストリビューションを作成する

続いては CloudFront ウェブディストリビューションを作成していきます。

オリジンドメインには先ほど作成した S3 バケットを選択のうえ、作成していきましょう。

CloudFront ウェブディストリビューションが無事に作成されたことを確認できました。

3. オブジェクトへのリンクを作成する

ここではオブジェクトへのリンクを作成して、CloudFront 経由で画像ファイルにアクセスしていきます。

ラボ側で以下の HTML ファイルを用意してくれています。

myimage.html

<html>
<head>My CloudFront Test</head>
<body>
<p>My text content goes here.</p>
<p><img src="http://DOMAIN/OBJECT" alt="my test image" /></p>
</body>
</html>

DOMAIN を作成した CloudFront のディストリビューションドメイン名に、OBJECT を画像ファイル名 introduction-to-cloudfront-clanyan.png に修正しましょう。

myimage.html

<html>
<head>My CloudFront Test</head>
<body>
<p>My text content goes here.</p>
<p><img src="http://d3pxqldzi63fj6.cloudfront.net/introduction-to-cloudfront-clanyan.png" alt="my test image" /></p>
</body>
</html>

HTML ファイルをブラウザで開いてみましょう。
CloudFront 経由で画像ファイルにアクセスできたことを確認できました。

4. Amazon CloudFront ディストリビューションを削除する

ここでは CloudFront ディストリビューションを削除していきます。

まずは CloudFront ディストリビューションを無効化します。

一定時間経過後に無効化が完了したら、CloudFront ディストリビューションを削除していきましょう。

CloudFront ディストリビューションが削除されたことを確認できました。

5. Amazon S3 バケットを削除する

ここでは S3 バケットを削除していきます。

まずは S3 バケットを空にしましょう。

続いては S3 バケットを削除していきます。

S3 バケットが削除されたことを確認できました。

まとめ

実際に本コースをやってみて、初めて CloudFront を触るという方には勉強になるコンテンツではないかと思いました。

ラボ側で詳細に手順を提示してくれるため、特につまずくことなく誰でもコースを完走することができるかと思います。
提示される手順と、実際のマネジメントコンソール画面にほとんど差異がないのが本当に良いですね。

今後も AWS Builder Labs のコンテンツを試してはブログ化していきたいと考えています。

最後までお読みいただき、ありがとうございました!