Aller au contenu principal

Migration depuis Google Apigee

Ce guide couvre la migration depuis Google Apigee (X ou hybrid) vers STOA Platform, avec un focus sur la souveraineté des données européenne et la flexibilité multi-cloud.

Ce que Vous Avez

Stack Apigee typique :

┌─────────────────────────────────────────────────────────────────┐
│ ÉTAT ACTUEL │
│ │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ Apigee (X ou Hybrid) │ │
│ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │
│ │ │ API │ │ Policies │ │ Analytics│ │ │
│ │ │ Proxies │ │ & Flows │ │ │ │ │
│ │ └──────────┘ └──────────┘ └──────────┘ │ │
│ └──────────────────────────────────────────────────────┘ │
│ │ │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ Apigee Management Plane │ │
│ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │
│ │ │ Developer│ │ API │ │ Monetize │ │ │
│ │ │ Portal │ │ Products │ │ │ │ │
│ │ └──────────┘ └──────────┘ └──────────┘ │ │
│ └──────────────────────────────────────────────────────┘ │
│ │
│ Motivations courantes de migration : │
│ • Souveraineté des données européenne (RGPD, DORA, NIS2) │
│ • Stratégie multi-cloud (éviter la dépendance mono-cloud) │
│ • Contrôle auto-hébergé de l'infrastructure gateway │
│ • Support MCP AI-native pour les workflows d'agents │
└─────────────────────────────────────────────────────────────────┘

Ce que STOA Apporte

┌─────────────────────────────────────────────────────────────────┐
│ AVEC STOA │
│ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ STOA Control Plane (auto-hébergé) │ │
│ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │
│ │ │ Portal │ │ Console │ │ Grafana │ │ │
│ │ │ Catalog │ │ Admin │ │ Metrics │ │ │
│ │ └──────────┘ └──────────┘ └──────────┘ │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │ │
│ orchestre │
│ │ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ STOA Gateway (Rust, hébergé EU) │ │
│ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │
│ │ │ MCP │ │ REST │ │ mTLS │ │ │
│ │ │ Protocol │ │ Proxy │ │ + OIDC │ │ │
│ │ └──────────┘ └──────────┘ └──────────┘ │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │
│ Avantages : │
│ • Contrôle total sur l'infrastructure et la résidence des données │
│ • Support MCP natif pour les agents IA │
│ • Open-source (Apache 2.0) — pas de vendor lock-in │
│ • Déploiement Kubernetes-native │
└─────────────────────────────────────────────────────────────────┘

Correspondance de Configuration

Les concepts Apigee correspondent à STOA comme suit :

Concept ApigeeÉquivalent STOANotes
API ProxyDéfinition API + RoutesBasé sur OpenAPI
Target EndpointURL BackendConfiguration upstream
ProxyEndpointRoute APICorrespondance chemin + méthode
API ProductGroupe APIRegroupement pour l'abonnement
Developer AppAbonnement ConsommateurGestion des accès
EnvironmentTenant / NamespaceIsolation au niveau K8s
OrganizationInstance PlateformeScope multi-tenant
Key Value MapConfigMap / VaultConfig spécifique à l'environnement
Custom ReportTableau de Bord GrafanaAlimenté par Prometheus

Traduction des Politiques

Politique ApigeeÉquivalent STOA
VerifyAPIKeyValidation de clé API (Keycloak)
OAuthV2OIDC/OAuth 2.0 (Keycloak)
SpikeArrestLimitation de débit (par consommateur)
QuotaGestion des quotas (par abonnement)
AssignMessageTransformation des réponses
RaiseFaultPolitique d'erreur
XMLToJSON / JSONToXMLTransformation du type de média
ServiceCalloutChaîne de proxy upstream
JavaScriptPolitique personnalisée (Lua ou WASM prévu)
StatisticsCollectorMétriques Prometheus (natif)
MessageLoggingOpenSearch / logs structurés

Chemin de Migration

Phase 1 : Inventaire et Export des APIs (1-2 semaines)

Objectif : Cataloguer tous les proxies Apigee et exporter les configurations.

  1. Exporter les Proxies API

    # Lister tous les proxies dans une organisation
    curl -H "Authorization: Bearer $TOKEN" \
    "https://apigee.googleapis.com/v1/organizations/$ORG/apis" \
    | jq '.proxies[].name'

    # Exporter chaque bundle de proxy
    for proxy in $(curl -s -H "Authorization: Bearer $TOKEN" \
    "https://apigee.googleapis.com/v1/organizations/$ORG/apis" \
    | jq -r '.proxies[].name'); do
    curl -H "Authorization: Bearer $TOKEN" \
    "https://apigee.googleapis.com/v1/organizations/$ORG/apis/$proxy/revisions/latest?format=bundle" \
    -o "${proxy}.zip"
    done
  2. Exporter les Produits API et Applications

    # Produits
    curl -H "Authorization: Bearer $TOKEN" \
    "https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts" \
    -o apigee-products.json

    # Applications développeur
    curl -H "Authorization: Bearer $TOKEN" \
    "https://apigee.googleapis.com/v1/organizations/$ORG/apps" \
    -o apigee-apps.json
  3. Importer dans STOA

    stoa api import --file proxies/ --format apigee

Phase 2 : Fédération des Identités (1 semaine)

Objectif : Fédérer les identités des développeurs Apigee vers Keycloak.

# keycloak-apigee-federation.yaml
kind: IdentityProviderConfig
metadata:
name: apigee-developer-federation
spec:
provider: oidc
config:
# Si vous utilisez Google Identity
issuerUri: https://accounts.google.com
clientId: stoa-federation
scopes: openid,email,profile

# Import en masse des développeurs Apigee
developerImport:
source: apigee-developers.json
mapping:
email: email
firstName: firstName
lastName: lastName

Phase 3 : Exécution en Parallèle (2-3 semaines)

Objectif : Faire tourner STOA aux côtés d'Apigee avec une migration progressive du trafic.

Pour les déploiements Apigee hybrid, les deux peuvent coexister dans le même cluster Kubernetes :

  1. Mode shadow — STOA reçoit le trafic mis en miroir (lecture seule)
  2. Canary — 5% du trafic via STOA
  3. Progressif — Augmenter à 25%, 50%, 75%, 100%
  4. Bascule — Trafic production complet

Phase 4 : Décommission (1 semaine)

  1. Confirmer 100% du trafic via STOA pendant 48h+
  2. Supprimer les déploiements de proxies Apigee
  3. Archiver la configuration Apigee dans Git (pour référence)
  4. Mettre à jour le DNS si applicable

Pourquoi Migrer depuis Apigee ?

Souveraineté des Données

STOA se déploie entièrement dans votre infrastructure — les clusters Kubernetes hébergés en EU garantissent un contrôle total de la résidence des données. Aucun trafic API ni métadonnée ne quitte la juridiction choisie.

Flexibilité Multi-Cloud

STOA fonctionne sur n'importe quelle distribution Kubernetes (EKS, GKE, AKS, K3s, bare metal). Évitez la dépendance à la stack de gestion API d'un seul fournisseur cloud.

Gateway AI-Native

STOA fournit un support MCP (Model Context Protocol) natif, permettant aux agents IA de découvrir et d'appeler vos APIs automatiquement — une capacité non disponible dans les plateformes de gestion API traditionnelles.

Open Source

Licencié Apache 2.0. Accès complet au code source, pas de frais de licence, pas de tarification à l'appel. Fork, personnalisation ou auto-hébergement libres.


Complexité de Migration

Complexité estimée : Moyenne Délai estimé : 4-6 semaines (selon le nombre d'APIs et de politiques personnalisées)

Facteurs de Complexité

FacteurFaibleMoyenÉlevé
Nombre de proxies< 2020-100> 100
Politiques JavaScript personnaliséesAucune1-5> 5
Shared flowsAucun1-3> 3
MonetizationNon utiliséActif
Apigee HybridNon utiliséActif (plus facile)

Procédure de Rollback

À n'importe quelle phase, revenez au routage Apigee :

# Revenir à la répartition du trafic
kubectl annotate ingress api-canary \
nginx.ingress.kubernetes.io/canary-weight="0" --overwrite

# Ou remettre le DNS sur les endpoints Apigee
# (gardez les proxies Apigee déployés jusqu'à validation complète)

Critères de Succès

MétriqueCible
Import des APIs100% enregistrées dans STOA
Fédération des identitésSSO fonctionnel pour tous les développeurs
ObservabilitéTableaux de bord Grafana affichant des données équivalentes
Migration du trafic100% via STOA
LatenceDans les 5ms de la baseline Apigee

Prochaines Étapes


Les comparaisons de fonctionnalités sont basées sur la documentation publique disponible en 2026-02. Les capacités des produits évoluent fréquemment. Nous encourageons les lecteurs à vérifier les fonctionnalités actuelles directement auprès de chaque éditeur. Toutes les marques appartiennent à leurs propriétaires respectifs. Voir marques.


Besoin d'aide pour la migration ? Contactez-nous pour des services professionnels.