Endpoints est un système de gestion d'API distribué. Il fournit une console, l'hébergement, la journalisation, la surveillance et d'autres fonctionnalités destinées aux API pour vous aider à créer, partager, maintenir et sécuriser les API. Vous trouverez sur cette page la présentation de Cloud Endpoints pour OpenAPI . Pour en savoir plus sur les autres types de frameworks d'API compatibles avec Endpoints, consultez toute la documentation sur Endpoints.
Cloud Endpoints est disponible pour une utilisation avec Extensible Service Proxy (ESP) ou Extensible Service Proxy V2 (ESPv2). Chaque proxy fournit une assistance aux plates-formes décrites ci-dessous :
- Environnement flexible App Engine (ESP uniquement)
- Google Kubernetes Engine (ESP ou ESPv2)
- Compute Engine (ESP ou ESPv2)
- Kubernetes (ESP ou ESPv2)
- Environnement standard App Engine (ESPv2 uniquement)
- Fonctions Cloud Run (ESPv2 uniquement)
- Cloud Run (ESPv2 uniquement)
- Knative serving (ESPv2 uniquement)
Endpoints avec ESP
Endpoints utilise le proxy Extensible Service Proxy (ESP) distribué pour fournir une latence faible et des performances de diffusion élevées, même pour les API les plus exigeantes. ESP est un proxy de service basé sur NGINX. Vous pouvez donc être sûr qu'il s'adapte en fonction des besoins afin de traiter les requêtes adressées simultanément à votre API. ESP s'exécute dans son propre conteneur Docker pour une meilleure isolation et une meilleure évolutivité. Il est distribué dans Container Registry. Vous pouvez l'utiliser avec les éléments suivants :
Endpoints avec ESPv2
ESPv2 est un proxy évolutif hautes performances basé sur Envoy qui s'exécute devant un backend d'API OpenAPI ou gRPC. ESPv2 est compatible avec la version 2 de la spécification OpenAPI et les spécifications gRPC. Vous pouvez l'utiliser avec les éléments suivants :
- Environnement standard App Engine
- Compute Engine
- Google Kubernetes Engine
- Kubernetes
- Cloud Run
- Knative serving
- Fonctions Cloud Run
Fonctionnalités de gestion des API Endpoints
Quelle que soit votre utilisation d'Endpoints avec ESP ou ESPv2, celui-ci offre un certain nombre de fonctionnalités importantes de gestion des API pour vous permettre de développer, de surveiller et de contrôler l'accès à vos API.
Journaux et métriques
Cloud Endpoints utilise l'infrastructure de service pour gérer les API et générer des rapports de journaux et de métriques. La plupart des API Google Cloud utilisent cette infrastructure. Vous pouvez gérer et surveiller vos API sur la page Services Endpoints de la console Google Cloud.
Hébergement d'API
Cloud Endpoints est optimisé pour l'environnement de conteneurs Docker. Vous pouvez héberger votre API dans n'importe quel emplacement compatible avec Docker, à condition que cet emplacement dispose d'un accès Internet à Google Cloud.
Développer une API REST avec Endpoints pour OpenAPI
Endpoints est indépendant du langage. Vous construisez votre API dans n'importe quel langage et avec n'importe quel framework REST compatible avec une description d'API utilisant un fichier de configuration OpenAPI.
Pour utiliser Endpoints pour OpenAPI, vous devez réaliser les actions suivantes :
Configurer Endpoints : décrivez la surface de l'API et configurez les fonctionnalités d'Endpoints (telles que les clés API ou les règles d'authentification) dans un fichier de configuration OpenAPI.
Déployer la configuration Endpoints: une fois votre API définie dans un fichier de configuration OpenAPI, utilisez Google Cloud CLI pour la déployer dans Service Management, que Endpoints utilise pour gérer votre API. Endpoints sait à présent tout de votre API et sur la manière de la sécuriser.
Déployer le backend de l'API : déployez le proxy ESP ou ESPv2 et le backend de votre API sur un backend Google Cloud compatible, comme Compute Engine. Le proxy ESP se coordonne avec les services backend d'Endpoints pour sécuriser et surveiller votre API au moment de l'exécution.
Contrôler l'accès à l'API
Cloud Endpoints vous permet de configurer l'API de sorte qu'une clé API soit requise pour tout appel et validée par le service. Vous pouvez également utiliser la console Google Cloud pour partager votre API avec d'autres développeurs afin qu'ils puissent l'activer et générer des clés API pour l'appeler.
Authentifier les utilisateurs de l'API
Un utilisateur est à l'origine de la plupart des appels d'API. Alors que les clés API indiquent l'application qui appelle l'API, le processus d'authentification identifie l'utilisateur qui se sert de cette application.
Notez que votre serveur d'API doit encore décider de ce que l'utilisateur authentifié peut faire avec votre API. Pour plus d'informations, consultez le guide d'authentification Google Cloud.
Étape suivante
Familiarisez-vous avec les procédures de déploiement et l'utilisation des fonctionnalités de Cloud Endpoints en suivant le guide de démarrage rapide pour Cloud Endpoints. Celui-ci utilise des scripts pour déployer un exemple d'API sur un backend flexible de Google App Engine.
Découvrez comment utiliser Cloud Endpoints en parcourant l'un des tutoriels proposés.