マスタリングAPIアーキテクチャ ―モノリシックからマイクロサービスへとアーキテクチャを進化させるための実践的手法
by James Gough, Daniel Bryant, Matthew Auburn, 石川 朝久
9章
クラウド環境への移行
前章では、APIとそれを支えるサービスを進化させる際に利用できるアーキテクチャのアプローチについて説明しました。システム進化において考慮すべき重要なトピックは、基盤となるインフラストラクチャ、プラットフォーム、およびハードウェアです。これは独自のリズムで変化し、進化します。ハードウェアが故障する、企業や技術が合併や買収される、組織全体のITポリシーがインフラストラクチャのアップグレードを指示するなどが、その理由として挙げられます。一方で、APIがインフラストラクチャの変更を促進する側面もあります。特にクラウドなど、モダンインフラストラクチャへの移行が該当します。ここでは、システムとAPIインフラストラクチャを進化させる方法と管理方法について学びます。
この章は、前章で紹介したアーキテクチャ基盤をもとに、クラウド環境に移行する際にAPIインフラストラクチャ(APIゲートウェイ、サービスメッシュ、開発者ポータルなど)をどのように活用できるかを解説します。アプリケーションの「リフトアンドシフト」「再プラットフォーム」「リファクタリング/再設計」の違いを学び、状況に応じて最も適切な手法を知るスキルを身につけます。関連するケーススタディでは、既存のAPIゲートウェイとAttendeeサービスをクラウドに移行する方法を紹介します。APIゲートウェイの利用によって、提供されるサービスとAPIに対してロケーションの透明性を提供できます。これによりサービスをクラウドにデプロイし、通信を既存のサービスから新しいサービスに徐々にシフトさせる際に、利用者に対する影響を限定的(またはゼロ)にすることが可能です。また、サービスメッシュのマルチロケーション/クラスタ機能を利用した、サービスをクラウドに移行するための新しい移行オプションも検討していきます。 ...