Fastly ステージング環境のご紹介 : 自信を持ってテストし、簡単にデプロイ

Simon Wistow

VP Strategic Initiatives, Fastly

本日よりご利用いただける Fastly のステージング環境では、CDN と Compute の設定を本番稼動前にクリックひとつで簡単にテストすることができます。デプロイの完全な信頼性で安心を手に入れ、完璧なパフォーマンスを確保し、トラブルシューティングの時間を削減しましょう。

こうなるまでにどのようなことがあったのでしょうか。

Fastly が2011年に立ち上げられたとき、その指針の一つは「即時性」であり、それは今でも変わりません。

当時、他社のコンテンツ配信ネットワークでは、コンテンツの更新に数時間かかることが一般的でした。数分で完了する「高速パージ」を利用するには、追加料金を支払って限定回数のみ使用可能なオプションが必要でした。今でさえ、私たちが他社の CDN 向けパージシステムの構築方法を詳細に記したブログ記事を投稿してから10年以上経過しているにもかかわらず、同等のレベルに到達した競合はほとんどありません

ログや指標は24時間に1回 FTP で送信され (FTPS や SFTP ではなく、単純な安全でない FTP)、CDN の設定変更のデプロイには何時間もかかるため、何か問題が発生したかどうかがわからず、もし問題が発生しても修正できないため、すべての変更がリスキーでした。このため、すべての Fastly のデプロイはバージョン管理されています。変更が本番環境にプッシュされると、それはデータベース内で不変的にロックされ、お客様、または必要に応じて私たちが数秒でロールバックできるようになりました。

そして、これは10年以上にわたって驚くほどうまく機能してきました。お客様は、これがもたらしたパワーと柔軟性に満足していました。Velocity 2009で John Allspaw 氏と Paul Hammond 氏が発表した 「10+ Deploys Per Day: Dev and Ops Cooperation at Flickr」という DevOps の先駆的プレゼンテーションと同様に、迅速な変更を頻繁に実施可能な体制がお客様の安全性を確保しました。各変更は個別のテストが容易で、問題発生時のロールバックや、より頻繁に発生するケースとして修正とロールフォワードが可能な設計だったためです。

お客様は、CI/CD パイプラインとアーキテクチャに Fastly を組み込み、Chef と Terraform またはカスタム API フックを使用しました。また、Fastly の Edge Scripting に機能フラグシステムを組み込み、カナリアリリースや段階的ロールアウトを実施しました。

しかし、ステージング環境を組み込んでほしいという要望が寄せられるようになりました。特に、Fastly を使用して大規模なイベント、主要なプロモーション、プロダクトリリースなどを行っている大口のお客様から多くのご要望が寄せられるようになりました。

Fastly のステージング環境とは何ですか?

ステージング環境の構築方針に関して、私たちが明確にした点がありました。それは、ステージング用 PoP や独立したステージングネットワークにテストを限定しないということです。本番環境と可能な限り近いステージング環境を構築し、異なるリージョン、異なるハードウェア、異なるレイテンシ環境でのテストを排除することを目指しました。

「インスタント」という指針に従い、私たちはお客様が何も変更しなくても、すべてが機能することを望んでいました。

ステージングドメインなし (必要な場合を除く)、サービス固定、リージョンコンプライアンス、PCI、TLS 証明書、分散型 DDoS 攻撃対策...あらゆる機能がシームレスに動作することを実現しました。

そして、これが私たちがリリースした内容です - すべてが問題なく動作します。裏では多くの作業が行われていますが、ユーザー側では「ステージ」ボタンをクリックする (または API を呼び出す、CLI コマンドを実行する) だけで、すべてが自動的に実行されます。コードの変更は不要です。コード内に「if (staging) { …  }」のような条件分岐も必要ありません。

間もなく、実際のお客様を徐々に新しいバージョンに移行するカナリアデプロイメント (別名、ブルー/グリーンデプロイまたは段階的ロールアウト) が可能になります。

いつものように、私たちが構築したものはすべて、私たちのプラットフォーム哲学の一部です。私たちはコンポーネントを構築し、そのコンポーネントによって私たちとお客様は、プラットフォーム上にさらに多くのものを構築できるようになります。

今すぐFastly のステージング環境を使用して、安心を得て、完璧なパフォーマンスを確保し、トラブルシューティングの時間を節約しましょう。いつものように、ご質問、ご提案、機能リクエスト、コメントなどがございましたらお気軽にお問い合わせください。