会社概要
Postman は、開発者がシンプルで、より優れた、より高速な API 開発を行えるように支援する API 開発環境です。500 万人の開発者と 10 万社以上の企業により毎月 1 億 3 千万の API へのアクセスに使用されている Postman は、世界有数の API 開発環境です。Microsoft、Adobe、PayPal、Atlassian などの大企業も、API を改善するための最適なプラットフォームとして Postman を利用しています。
スポット フリートでスポット インスタンスを活用することは困難
Postman のエンジニアリング担当バイスプレジデントである Shamasis Bhattacharya 氏は、増加するクラウド コストを削減する方法を模索し、スポット インスタンスがそのために不可欠な要素であると考えました。しかし、500 万人の API 開発者をサポートするプラットフォームとして、Postman は AWS 環境の信頼性を維持する必要がありました。「AWS 環境は弊社製品の中心となる部分を管理しており、ミスやダウンタイムが発生することは許容できませんでした。」 (Shamasis Bhattacharya 氏)。「スポット インスタンスで提供されるコストの削減ではダウンタイムの制限に関するサービス レベル アグリーメントが提供されないため、Postman のチームが利用するにはリスクが高すぎました。」
AWS スポット フリートを含む多くの代替案を調査した後、Postman のチームは、パフォーマンス問題に悩まされることなく代替案を活用できる方法を見つけるのに苦労していました。「EC2 スポットでそのまま実行しようとした場合、スポット フリートを活用するのは簡単ではありません。」 (Shamasis Bhattacharya 氏)。
Elastic Beanstalk は Postman のインフラストラクチャーの要でした。Postman を始めたとき、最も重要なことは製品のアップデートをできるだけ早く顧客にリリースすることでした。Beanstalk は ZIP ファイルを準備するだけでアップデートをデプロイできることから、Postman はインフラストラクチャーの大部分を Beanstalk に依存してきました。つまり、すべてのスポット インスタンス ソリューションを Elastic Beanstalk と統合する必要がありました。
Postman は Spotinst を Beanstalk 環境にシームレスに統合
Spotinst の Elastic Beanstalk 統合を発見した後、Shamasis Bhattacharya 氏のチームは、ためらうことなく統合を試してみることにしました。「すべての組織には独自のデプロイメント ワークフローがあります。新しいものを導入するときは、チェックリストに追加してプロセスを変更する必要があります。エンジニアが別の製品を使用することについて心配する事態は避けたいと思っていました。」
幸いなことに、Spotinst はシンプルで、プロセスを変更する必要はありませんでした。「Spotinst は、我々のワークフローと協調し、バックグラウンドで機能しました。Spotinst は、既存の Beanstalk に影響を与えることなく、Beanstalk からすべての構成をコピーして、マシンを統合しました。」あっという間に、Postman のチームは、アーキテクチャーの変更やワークフローの調整を行うことなく、Beanstalk のワークロードの大部分をスポット インスタンスで実行するようになりました。
労力をかけることなく Postman をスポット インスタンスで実行
Postman のチームが Spotinst を大いに気に入ったのは、Spotinst を管理する必要がないことです。「Spotinst は何事もなく動作し、サポートが必要なときはカスタマー サクセス チームが迅速に問題を解決してくれます。」 (Shamasis Bhattacharya 氏)。
記事参照
The Spot.io Blog
2018 年 3 月 25 日
「Postman runs Elastic Beanstalk on Spot Instances to save 75%」