2. Fastly の使用を開始する

では、Fastly アカウントを作成し、Fastly コントロールパネルにログインしてみましょう。無料トライアルに登録することができます。クレジットカード情報は必要ありません。登録してアカウントを認証すると、以下の画面が表示されます。

Fastly コントロールパネル

サービス / Service名の変更

Fastly は、アカウントに登録したときに、サービスを作成しました上のスクリーンショットでサービス設定を確認します。Fastly アカウントに複数のサービスが存在します。どれも異なる Web サイトまたはアプリケーションに対応することができます。サービス設定では、ドメイン名、オリジン、ヘッダー、キャッシュ設定など、Fastly サービスに関するあらゆる設定を行うことができます。

以下のように、現在の名前 (Unnamed Service) をクリックして Taco Labs のように覚えやすい名前を指定してサービス名を変更します。

サービス名の変更

現在、設定されているサービスは1つのみですが、今後さらに追加することがあるかもしれません。サービスに分かりやすい名前をつけることで、すべてのサービスが表示されるコントロールパネルのホームページで他のサービスと見分けがつきやすくなります。

ドメインの追加

これで、サービス設定にドメインを追加する準備ができました。ドメインにはユーザーがアクセスするパブリック URL を設定します。これを設定することで、Fastly は、サービスへのトラフィックがどこから発生するかを把握することができます。以下のように、ドメインフィールドに www.tacolabs.com を入力し、Add をクリックしてサービス設定にドメインを保存します。

ドメインの追加

オリジンホスト名の追加

次に、サービス設定にオリジンのホスト名を追加し、Fastly がコンテンツをどこからプルするかを把握できるようにします。サイドバーの Hosts リンクをクリックし、以下のように S3 でホストされた静的 Web サイトのパブリック URL (www.tacolabs.com.s3-website.us-east-2.amazonaws.com) を入力します。

オリジンホスト名の追加

オリジン接続の TLS を無効化する

TLS で保護できる接続には、オリジンと Fastly 間の接続、および Fastly とユーザー間の接続の2つがあります。以下の図で2つの接続の違いを確認できます。

TLS 証明書で保護できる2つの接続

Fastly は、Web コントロールパネルをホスト名に入力した場合、オリジンと Fastly の間で TLS を自動的に有効化します。(IP アドレスを入力すると、TLS は自動的に無効化されます。)S3 の静的ホスト機能は TTLS をサポートしていないため、S3 バケットと Fastly の間で TLS を無効化するオリジン設定を調整する必要があります。Fastly とユーザー間の TLS は後で設定します。

下に示しているように、オリジン設定を編集ペンシルアイコンをクリックし、いいえ、TLS を有効化しませんを選択してください。次に、Update ボタンをクリックして設定を保存します。これですべて完了です!

S3 バケットと Fastly 間の TLS を無効化する

サービスのバージョン管理

サービス設定の有効化の準備ができましたが、そうする前に、Fastly がどのようにしてサービス設定の変更を管理するかについて説明しましょう。これは、多くの新規ユーザーが混乱する問題です。ですから、進める前に、ここで仕組みを説明します。

Fastly のバージョンサービス設定。これは Fastly サービス設定にコントロールパネルを適用するようなものです。このチュートリアルではこれまで、ドラフトバージョンのサービス設定を使って作業してきました。*ドラフトバージョンのサービス設定を有効にすると、Fastly は設定を本番環境にプッシュし、サービス設定をロックします。変更を行う場合、アクティブなバージョンをクローン*し、新しいバージョンを編集する必要があります。

コントロールパネルを使用してサービス設定のバージョンを切り替える

上の図が示すように、サービス設定の各バージョンにはバージョン番号が割り当てられています。以前のサービス設定とアクティブな設定は編集することはできませんが、前のバージョンをクローンして新しいバージョンで変更することは可能です。コントロールパネルを使用して、バージョンにコメントを追加し、2つの異なるバージョンの違いを表示することができます。また、以前のサーバー設定のバージョンにロールバックすることができます。サービスと仕組みについての詳細を知るには、サービスの操作に関するドキュメントをご覧ください。

サービス設定の有効化

サービス設定を有効化しましょう。そうすることで、Fastly がどのように Web サイトをキャッシュし、配信するかをプレビューできます。以下のように、画面の右上にある Activate ボタンをクリックします。これは、どの本番環境の Web サイトにも影響しません。DNS レコードはまだ変更されていません。

Active ボタンをクリックして、サービス設定をデプロイする

Fastly は、サービス設定をロックし、設定を本番環境にプッシュします。

Web サイトのプレビュー

Fastly がサービス設定の変更を伝播するのに、数分かかる場合があります。変更が有効になったら、Fastly がどのように Web サイトをキャッシュし、配信するかをプレビューすることができます。Fastly はすべてのサービスにテストドメイン名を提供します。以下のように、Domains ページにテストドメインへのリンクが表示されます。

Web サイトをプレビューするテストドメインリンク

Web ブラウザでリンクをクリックして開きます。表示されました!http://www.tacolabs.com.global.prod.fastly.net/にウェブサイトがあります。Fastly は S3 の静的サイトから Web サイトをプルして POP サーバーにキャッシュし、テストドメインを介して配信しました。

キャッシュ状態の確認

この初期段階で、Fastly がどのように Web サイトを配信しているかを確認するため、キャッシュをチェックして、HTTP ヘッダーを確認することをお勧めします。そうするには、2つの方法があります。コントロールパネルを使用して、オブジェクトのキャッシュ状態をチェックするか、または curl と呼ばれるコマンドラインユーティリティを使用することもできます。

まず、コマンドラインインターフェースを使用してみましょう。通常 curlは Unix と Linux ベースのシステムにデフォルトでインストールされています。端末アプリケーションを開き、次のコマンドを入力します:

1
$ curl -svo /dev/null -H "Fastly-Debug:1" http://www.tacolabs.com.global.prod.fastly.net

出力で以下のように表示されます。

1
2
3
4
< Age: 585551
< X-Served-By: cache-sna10742-LGB
< X-Cache: HIT
< X-Cache-Hits: 1

X-Cache: HIT は、オブジェクトが Fastly のキャッシュにあることを意味しています。(Web サイトにアクセスする前にコマンドを実行すると、X-Cache: MISS が確認できます。これは、Web サイトがまだ Fastly のキャッシュにないことを意味します。)また、キャッシュ内に現在のオブジェクトの時代と、コンピュータにコンテンツを提供するキャッシュノードが表示されます。

このチュートリアル全体で、キャッシュの確認とヘッダーの検証を続けていきます。詳細に興味をお持ちの方は、キャッシュのチェックに関するガイドまたは HTTP ヘッダー参照ドキュメントをご覧ください。

無料 TLS でサイトを保護する

プレビューサイトの URL は、S3 の静的サイトの URL のように、TLS で保護されていません。Fastly の無料TLSオプションを使用することで、これを修正できます。これにより、サービスに別のプレビュー URL を付与することができます。デフォルトで TLS を使用するように設計されたものです。

新しい TLS ドメインを追加する前に、サービス設定のアクティブなバージョンをクローンする必要があります。Clone をクリックして新しいドラフトバージョンを作成します。次に、以下のように Domains ページで Create Domain ボタンをクリックして新しいドメインを追加します。Fastly の共有 TLS ドメイン (<name>.global.ssl.fastly.net) を使用し、最初に tacolabs を入力します。従って URL は tacolabs.global.ssl.fastly.net になります。

新しい TLSドメインの追加

追加ボタンをクリックしてドメインを追加しましょう。次に、有効化ボタンをクリックして、サーバー設定の新しいバージョンを有効化します。Fastly は変更をデプロイし、Web サイトhttps://tacolabs.global.ssl.fastly.netで見ることができます。これで接続が暗号化されます。いかがですか?

オリジンに Host ヘッダーをオーバーライドする

有効化されたサービス設定のバージョンには若干、問題があることが分かりました。https://tacolabs.global.ssl.fastly.net にアクセスすると、以下のページが表示されます。何が問題なのでしょうか?

オーバーライドするホストを指定していないため、Amazon はコンテンツを見つけることができません。

HTTP ヘッダーについては、先ほど簡単にご説明しました。今度は、Amazon がリクエストを正しくルーティングできるよう、ヘッダーを設定する必要があります。この場合、オリジナルレベルでオーバーライドする Host ヘッダーを設定することで、オーバーライドするホストを指定できます。Amazon は、Fastly が送信するものとは別の Host ヘッダーを期待するため、これを行う必要があります。

設定を編集するボタンをクリックして、サーバーをクローンし、新しいドラフトバージョンを作成しましょう。次に、Origins ページでペンシルアイコンをクリックして、オリジン設定を編集します。Advanced options セクションのすぐ上で、Override host フィールドに以下のようにオリジンのホスト名 (www.tacolabs.com.s3-website.us-east-2.amazonaws.com) を入力し、Update ボタンをクリックします。

オーバーライドホストの設定

Activate ボタンをクリックしてサービス設定の新しいバージョンを有効化します。Fastly が変更をデプロイします。これには数分かかることがあります。終わると、https://tacolabs.global.ssl.fastly.net で Web サイトにアクセスできるようになります。



Back to Top