マイクロサービスを一元管理! API活用の可能性を広げる「Kong Gateway」の仕組み
【16-A-2】Kong APIで変わる!アプリのライフサイクル管理
APIファーストでマイクロサービスシステムを構築すると、かつてのモノリシックなコードファースト時代の不便さから解放される部分がある。その一方で、細かなサービスが多数絡み合うので関係性を追うのに苦労する、アクセス制御が複雑化するなどの課題も出てくる。この解消に向けて、Kong株式会社のWenhan Shi氏がアプリケーションのライフサイクル管理について解説する。
API管理を楽にしてくれる「Kong Gateway」の仕組み
APIファーストのAPIマネジメントプラットフォームについて解説するのはKong株式会社 Wenhan Shi氏。かつては大規模なソフトウェア開発に従事しており、転職後は数種のOSS関連に携わり、今ではKong株式会社でソリューションエンジニアとしてAPIゲートウェイの紹介などをしている。
APIファーストの話に移る前に、コードファーストの時代を振り返ってみよう。Shi氏もLinuxカーネルの開発経験があり、チームをまたいでソースコードをかき集め、コンパイルに3~4時間かかっていたそうだ。
マイクロサービス化が進み、APIファーストな設計となれば、細かなサービスごとに開発や管理を行い、APIで連携するような形になる。
とはいえ、APIファーストになると別の課題が出てくる。例えばシンプルなECサイトでもショッピングと会計するだけで大量のマイクロサービスが登場する。問題が起きればどこからデバッグすればいいか探すのに苦労したり、APIごとに細かくアクセス制御したいとか、効率的にログを記録するにはどうするかなどの問題が出てきて、一元管理できる基盤がほしくなってくる。
こうしたAPIファーストの課題解決に役立つのがKongのAPIゲートウェイとなる「Kong Gateway」だ。もともとAPIゲートウェイとは外部にAPI公開するためのものだが、近年ではモノリシックなアプリケーションを複数のマイクロサービスに分解した環境で、APIを内部で統一的に管理するところで役立てられている(下図の中央)。Shi氏は「APIをAPIゲートウェイに登録して一元的に公開するとか、ロギングや認証認可などの共通業務をすべてゲートウェイレイヤに集約することで自社アプリケーション開発に集中できます」と話す。
サービスメッシュも含めたデザインパターンだと上図の右になる。APIゲートウェイは内外の通信を管理するので南北のつながりとなり、サービスメッシュは内部の通信を管理するので東西のつながりとなる。これらを合わせて東西南北でマイクロサービスを接続するようになる。
Kong Gatewayでは複数のアプリケーション、複数のサービスを一括管理できるのがメリットだ。
例えば大きなモノリシックなシステムがあったとする。1つの巨大なロジックからポリシー(認証認可、ロギング、流量制限など)だけを抽出して、APIゲートウェイレイヤに乗せることができる。あるいはAPIをAPIゲートウェイに登録するだけでルーティングやロードバランスのポリシーをAPIゲートウェイレイヤに集約できて、そのための開発をしなくてすむのもメリットとなる。Shi氏は「Kong Gatewayはマイクロサービスだけではなく、サーバーレスの関数やサードパーティーのAPIなど一括して1画面で管理できます」と説明する。
この記事は参考になりましたか?
- Developers Summit 2024 セッションレポート連載記事一覧
- この記事の著者
-
加山 恵美(カヤマ エミ)
フリーランスライター。茨城大学理学部卒。金融機関のシステム子会社でシステムエンジニアを経験した後にIT系のライターとして独立。エンジニア視点で記事を提供していきたい。EnterpriseZine/DB Onlineの取材・記事や、EnterpriseZine/Security Onlineキュレーターも担当しています。Webサイト:http://emiekayama.net
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
丸毛 透(マルモ トオル)
インタビュー(人物)、ポートレート、商品撮影、料理写真をWeb雑誌中心に活動。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営する開発者のための情報メディアです。日々の開発に取り組むエンジニアやテクノロジーを学びたい方に向けて、プログラミングやAI活用、開発ツール、エンジニアの学びとキャリアに関する記事をお届けしています。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
提供:Kong株式会社
【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社
この記事は参考になりましたか?
この記事をシェア
