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