知っておくべき違いは?
徹底比較:AWS、Azure、GoogleのクラウドAPI管理ツール
大手クラウドプロバイダーのAPI管理ツールは、一部の機能が共通している。だが、各社のツールには、開発者が知っておくべき重要な違い、特に、マルチクラウドモデルにおける重要な違いがある。
クラウドAPI管理サービスは、開発者がAPIの保護、バージョン管理、モニタリング、使用状況の分析などを簡単に行えるようにする。パブリッククラウドの「Amazon Web Services(AWS)」「Microsoft Azure」「Google Cloud Platform(GCP)」は、それぞれのバックエンドサービスと緊密に統合されたAPI管理エンジンを提供している。
こうした各クラウドAPI管理サービス(「Amazon API Gateway」「Azure API Management」「Google Cloud Endpoints」)の最大の強みは、それぞれのプロバイダーのツールおよびサービスのエコシステムをネイティブにサポートすることだ。だが、これらのサービスは、開発者がクラウドAPI管理サービスに求めるモニタリング、認証、テストなどの機能に関しては異なっている。また、マルチクラウドアーキテクチャのアプリケーションを構築する開発者は、最終的にサービスを選ぶに当たっては、異なるクラウドプラットフォームにまたがって動作することを確認しなければならない。
本稿では、これら大手パブリッククラウドプロバイダーが提供するAPI管理サービスの主要機能の概要を紹介する。
一般的な長所と短所
AWS
Amazon API Gatewayをユニークなものにしている機能の1つは、一連の「AWS Lambda」関数を動的に呼び出すフロントエンドの役割を果たせることだ。これにより、開発者は必要に応じて関数を起動でき、アプリケーションを不要なときも継続して実行する必要がない。その半面、このモデルをプライベートクラウドで使用する開発者は、プライベート接続をセットアップするために、API関連のより多くの作業を行う必要がある。
Azure
Azure API Managementは、強固な信頼性とガバナンス機能を備えている。Microsoftが2013年に買収したApiphanyのAPI管理技術を拡張したものであるため、外部のサービスもサポートする。またAzureは、クラウドAPI管理サービスのサービスレベル契約を提供する唯一のパブリッククラウドでもある。
開発者は、Azure API Managementに代わる手軽な選択肢である「Azure Functionsプロキシ」の利用も検討すべきだろう。開発者はこのプロキシを使って、API機能を複数のサーバレス関数に分割できる。
GCP
Google Cloud Endpointsは、Google Cloudのエコシステムに対応したアプリケーションコーディングをサポートする。Googleは、このサービスで複雑なガバナンスシナリオをサポートしたり、「Google Cloud Functions」を動的に呼び出したりするための取り組みも進めている。
クラウド開発者は、ハイブリッドクラウドやマルチクラウドシナリオでのAPI管理のために、Googleの「Apigee APIプラットフォーム」の利用を考えてもよいかもしれない。このサービスは、Googleが2016年のApigeeの買収で獲得した技術に基づいている。
管理
こうした各クラウドAPI管理サービスでは、開発者は、APIについてポリシーを設定するのに役立つさまざまな管理ツールを利用できる。
AWSは、Amazon API Gatewayのサービスの管理に対応した幅広いツールを提供している。その中には、スケーラビリティを管理できる「AWS Elastic Beanstalk」や、コードを管理できる「AWS CodeDeploy」「AWS CodeCommit」「AWS CodePipeline」などが含まれる。Azureは、APIテストなどのタスクを完了できる開発者ポータルを提供しているが、AWS開発者は、GitHubで提供されるレファレンス実装を使用する必要がある。
Azure API Managementは、管理インタフェースとしてAzureポータルを使用しており、上で述べたように、APIテストや開発者のオンボーディング(新入社員が業務を円滑に行えるようにするための一連の支援プロセス)を容易にするAzure開発者ポータルも用意されている。開発者はXMLやC#でAPI管理ポリシーを作成でき、アクセス制御リストや開発者サブスクリプションをセットアップすることもできる。
Googleは、開発者が「OpenAPI」仕様を使って管理作業をカスタマイズできるようにしている。また開発者ポータルで、API管理ツールなどさまざまなツールを提供している。
テスト
開発者や品質保証チームは、新しいアプリケーションを本番環境に移行する前に、API機能をテストしなければならない。APIシミュレーション(「モック」とも呼ばれる)により、開発者はAPI機能をデプロイ前にテストできる。
Amazon API Gatewayは、バックエンドの完成前に開発者がAPI応答を生成できるモック統合をサポートする。Microsoft Azureは、モック応答を返すようAPIにポリシーを動的に設定するテストツールを提供している。
Googleは、Google Cloud Endpointsの動作をテストできるビルトインモック機能を提供していない。だが、開発者は「Google Cloud Emulators」を使って、モックと同等の機能をセットアップし、Dockerコンテナでデプロイできる。
Google Cloud Emulatorsは、イベントストリームを取り込む「Google Cloud Pub/Sub」、データソースとなる「Google Cloud Datastore」「Google Cloud Bigtable」との通信をエミュレートするコンポーネントを含んでいる。このエミュレートは、GCPのコマンドラインツール「gcloud」のエミュレータコマンド(β版)で実行される。
認証とアクセス制御
認証機能は、認可されたユーザーとアプリケーションだけがクラウドAPIおよびデータにアクセスすることを保証する。
AWSでは、開発者は標準の「AWSロール」や、「Amazon Cognito」「AWS Identify and Access Management(IAM)」などさまざまなツールを、Lambda関数で作成したカスタムOAuthトークンとともに使って、APIアクセスを構成できる。
Azureは、「Active Directory」を使ってアクセス制御を管理する。Active Directoryは、OAuth、JSON Webトークン、IPフィルタリングによって、開発者に加えてアプリケーションサービスの呼び出しを認証できる。
Googleでは、JSON WebトークンとGoogle APIキーがGoogle Cloud Endpointsのアクセスを管理する。いずれもOAuthと「Firebase」による認証管理インフラと統合できる。
モニタリング
モニタリングは、クラウドAPI管理サービスの重要なコンポーネントとなっている。開発者はAPIのパフォーマンス、機能、可用性を追跡する必要があるからだ。
AWSのメインのアプリケーションモニタリングツールは、「Amazon CloudWatch」だ。CloudWatchは、リソースとパフォーマンスの全体的なビューを提供し、指標とログに基づいて最適化の提案を行う。4xxエラー(クライアント側エラー)や5xxエラー(サーバ側エラー)など、さまざまな指標を収集する。また、「AWS CloudTrail」は、リソース、API呼び出し、ユーザーアクセスの監査とログ記録を行う。
Microsoftが提供する「Azure Monitor」は、API呼び出しの回数、帯域幅、応答時間を追跡し、「Azure Event Hub」を介して、APIの動作の管理が行われるようにする。AWSと同様に、このツールは指標やログ情報(「Failed Gateway Requests(失敗したゲートウェイ要求)」など)も提供する。
一方、Google開発者は、「Google Cloud Platformコンソール」を使ってAPIをモニタリングし、「Google Stackdriver Trace」「Google Stackdriver Logging」でパフォーマンスを詳しく分析できる。
マルチクラウドでのAPI管理
マルチクラウドアーキテクチャのアプリケーションを手掛ける開発者は、他にも幾つかのことを念頭に置かなければならない。
例えば、アプリケーションが主にAWSでホストされているが、1つのGoogleサービスにアクセスする場合、Amazon API Gatewayを使うのが理にかなっている。だが、もっと複雑なマルチクラウドシナリオでは、開発者は、複数のクラウドにまたがって動作するサードパーティーのクラウドAPI管理エンジンの恩恵を受けるだろう。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社うるる] 「入札市場」攻略ガイド:効率的に落札するためのポイントを徹底解説 -
製品資料
[株式会社うるる] 入札情報に特化した「販路拡大」「効率化」のためのサポートツールとは? -
市場調査・トレンド
[株式会社うるる] 公共入札に成功する企業と失敗する企業の「5つの違い」 -
製品資料
[日本ビジネスシステムズ株式会社] 専門家が教える、Microsoft 365の「テナント統合/分離」を成功に導く秘訣 -
製品資料
[rakumo株式会社] Microsoft 365での情報埋没を防ぐ、社内ナレッジを資産化する情報ポータル活用
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
半数がブルーカラー転向を視野に? ベテランエンジニアを追い込む“54歳の壁”
-
2
「IT運用・情報システム業務」に関するアンケート
-
3
「Windows」の不要なファイルを安全に消して容量を空ける方法
-
4
PHP脆弱性「PHP2Shell」で2260万件に影響 情シスの緊急チェックリスト
-
5
「Microsoft 365」が乗っ取られる MFAを破る“本物の画面”の恐怖
-
6
なぜ「Gemini 4 Argon」は出遅れたのか? Googleが狙う“逆転のシナリオ”
-
7
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
8
生成AIが普及しても「技術書」を手放せないエンジニアの本音
-
9
OpenAIやAnthropicでさえ制御不能 2026年夏「3大サイバー攻撃」の衝撃
-
10
「アップグレードできないJava」をどう守る IBMとRed HatがAIで400件超修正
ホワイトペーパーランキング PR
-
1
AI駆動攻撃にどう対抗する? 超速の攻撃からエンドポイントを保護する方法
-
2
最速72分でデータが流出? 最新の脅威トレンドや侵入手法から分かった防衛策
-
3
2026年のサイバーセキュリティには何が必要か? 最新データに学ぶ傾向と対策
-
4
経験豊富な即戦力人材に直接アプローチできる、「攻めの採用」への転換術
-
5
「IT史に名を残すシステム障害」8選
-
6
SASE選定は「見極め力」で大きな差――本当に必要な製品を選ぶための6つの視点
-
7
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
8
Microsoft 365のメールセキュリティ、3つの“死角”と追加で検討すべき対策とは
-
9
AI駆動開発のスピードと安全性を両立 「品質・セキュリティ管理」の実践ガイド
-
10
「標的型攻撃メール」事例・サンプル集
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー