Azure API Center の主要な概念について説明します。これにより、検出、再利用、ガバナンスのために一元化された場所で API を追跡できます。
データ モデル
Azure API Center 構成の主なエンティティには、API とそのバージョン、定義、デプロイが含まれます。 各 API の実行可能なランタイム環境と説明メタデータによって、構成が補完されます。
次の図は、主なエンティティと、それらが相互にどのように関連しているかを示しています。
API
Azure API Center の最上位の論理エンティティである API は、追跡する実際の API を表します。API Center には、REST、GraphQL、gRPC、SOAP、WebSocket、Webhook など、あらゆる種類の API を含めることができます。
インベントリ内の API は、任意の API 管理ソリューションで管理できます。 たとえば、Azure API Management、Apigee API Management、Kong Konnect、MuleSoft API Management、または別のプラットフォームを使用します。 Azure API Center に表示された API を管理対象外にすることもできます。
API プログラム マネージャーまたは IT 管理者は、Azure API Center で API インベントリを作成および管理できます。 Azure API Center には、API 開発者が開発環境 (Visual Studio Code や CI/CD パイプラインなど) から直接 API 定義を登録するための機能も含まれています。
API バージョン
API のバージョン管理は、API に対する変更を管理し、クライアントを中断することなく変更を確実に行う方法です。 API は、ライフサイクル ステージ間で複数のバージョンを持つ場合があり、それぞれが特定の API の変更に合わせて調整されます。 一部のバージョンでは、大きな変更や破壊的変更が発生する場合もあれば、軽微な改善が加えられるものもあります。 API バージョンは、設計からプレビュー、運用、非推奨まで、任意のライフサイクル ステージで使用できます。
API の定義
REST API の OpenAPI 定義など、API バージョンごとに少なくとも 1 つの定義が必要です。 Azure API Center では、テキスト (YAML、JSON、Markdown など) として書式設定された任意の API 定義ファイルを使用できます。 特に OpenAPI、gRPC、GraphQL、AsyncAPI、WSDL、WADL の定義などをアップロードできます。
API ガバナンスを支援するために、Azure API Center には、API 定義を分析して品質と組織の標準への準拠を分析するリンティング機能が用意されています。
環境
環境は、Azure API Management サービスや Apigee API Management サービスなど、API ランタイムがデプロイ可能な場所を表します。 Kubernetes クラスター、Web アプリ、Azure Functions アプリなどのコンピューティング サービスにデプロイすることもできます。 各環境は、開発、テスト、ステージング、運用などのライフサイクル ステージに合わせて調整されます。 環境には、開発者ポータルまたは管理インターフェイスに関する情報も含まれる場合があります。
Note
Azure API Center を使用して、Azure インフラストラクチャでホストされているかどうかに関係なく、API ランタイム環境を追跡します。 これらの環境は、Azure Deployment Environments と同じではありません。
展開
デプロイとは、ユーザーが API にアクセスできる場所 (アドレス) を指します。 API には、異なるステージング環境やリージョンなど、複数のデプロイを含めることができます。 たとえば、API は 1 つのデプロイを内部ステージング環境に配置し、もう 1 つは運用環境に配置することができます。 各デプロイには、特定の API 定義が関連付けられています。
Metadata
Azure API Center で、メタデータ値を設定して、API、デプロイ、およびその他のエンティティを整理します。 メタデータは、ガバナンス標準の検索とフィルター処理と適用に役立ちます。 API センターには、 API type や lifecycle stageなど、いくつかの一般的な組み込みメタデータ プロパティが用意されています。 API Center の所有者は、メタデータ スキーマでカスタム メタデータを定義して、API、デプロイ、環境を整理することで、組み込みメタデータを拡張できます。 たとえば、 API approver メタデータ プロパティを作成して、使用する API を承認する担当者を特定します。
Azure API Center では、型 array、ブール値、数値、オブジェクト、事前定義済みの選択肢、文字列のカスタム メタデータがサポートされています。
Azure API Center のメタデータ スキーマは、JSON および YAML スキーマ仕様と互換性があり、開発者ツールと自動化されたパイプラインでのスキーマ検証を可能にします。