Depuis sa version 1.8, Apigee hybrid utilise la passerelle d'entrée Apigee pour fournir une passerelle d'entrée à votre environnement hybride.
Configurer la passerelle d'entrée Apigee
Vous pouvez configurer vos passerelles d'entrée dans votre fichier overrides.yaml
. Exemple :
Syntaxe
ingressGateways: - name: INGRESS_NAME replicaCountMin: REPLICAS_MIN replicaCountMax: REPLICAS_MAX resources: requests: cpu: CPU_COUNT_REQ memory: MEMORY_REQ limits: cpu: CPU_COUNT_LIMIT memory: MEMORY_LIMIT svcAnnotations: # optional. See Known issue 243599452. SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE svcLoadBalancerIP: SVC_LOAD_BALANCER_IP # optional
Exemple
ingressGateways: - name: prod1 replicaCountMin: 2 replicaCountMax: 100 resources: requests: cpu: 1 memory: 1Gi limits: cpu: 2 memory: 2Gi svcAnnotations: # optional. See Known issue 243599452. networking.gke.io/load-balancer-type: "Internal" svcLoadBalancerIP: 198.252.0.123
- INGRESS_NAME : nom du déploiement de la passerelle d'entrée. Il peut s'agir de n'importe quel nom qui répond aux exigences suivantes :
- Ne pas comporter plus de 17 caractères ;
- ne contenir que des caractères alphanumériques en minuscules et des caractères '-' ou '.' ;
- commencer par un caractère alphanumérique ;
- se terminer par un caractère alphanumérique.
Consultez la section
ingressGateways[].name
dans la documentation de référence sur les propriétés de configuration. - REPLICAS_MIN et REPLICAS_MAX : nombre minimal et nombre maximal d'instances répliquées pour la passerelle d'entrée Apigee dans votre installation. Consultez les sections
ingressGateways[].replicaCountMin
etingressGateways[].replicaCountMax
dans la documentation de référence sur les propriétés de configuration. - CPU_COUNT_REQ et MEMORY_REQ : demande de ressources processeur et mémoire pour chaque instance répliquée de la passerelle d'entrée Apigee de votre installation.
Consultez les sections
ingressGateways[].resources.requests.cpu
etingressGateways[].resources.requests.memory
dans la documentation de référence sur les propriétés de configuration. - CPU_COUNT_LIMIT et MEMORY_LIMIT : limites maximales de ressources processeur et mémoire pour chaque instance répliquée de la passerelle d'entrée Apigee de votre installation.
Consultez les sections
ingressGateways[].resources.limits.cpu
etingressGateways[].resources.limits.memory
dans la documentation de référence sur les propriétés de configuration. - SVC_ANNOTATIONS_KEY SVC_ANNOTATIONS_VALUE (facultatif) :
.
Il s'agit d'une paire clé-valeur qui fournit des annotations pour votre service d'entrée par défaut. Les annotations sont utilisées par votre plate-forme cloud pour vous aider à configurer votre installation hybride, par exemple pour définir le type d'équilibreur de charge sur interne ou externe. Exemple :
ingressGateways: svcAnnotations: networking.gke.io/load-balancer-type: "Internal"
Les annotations varient selon les plates-formes. Reportez-vous à la documentation de votre plate-forme pour connaître les annotations requises et celles suggérées.
Consultez la sectioningressGateways[].svcAnnotations
dans la documentation de référence sur les propriétés de configuration. - SVC_LOAD_BALANCER_IP (facultatif) : sur les plates-formes compatibles avec la spécification de l'adresse IP de l'équilibreur de charge, celui-ci est défini avec cette adresse IP. Sur les plates-formes qui ne vous permettent pas de spécifier l'adresse IP de l'équilibreur de charge, cette propriété est ignorée.
Consultez la section
ingressGateways[].svcLoadBalancerIP
dans la documentation de référence sur les propriétés de configuration.
Appliquer la configuration de la passerelle d'entrée Apigee
Appliquez les modifications au champ d'application de l'organisation à l'aide de la commande apigeectl
.
$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml --org
Tâches de gestion
Voici des tâches de gestion courantes pour la passerelle d'entrée Apigee :
Arrêter de fournir la configuration à ASM
Après être passé à la version 1.8 d'Apigee hybrid et avoir migré le trafic vers la passerelle d'entrée Apigee, vous pouvez arrêter de fournir la configuration de routage à Anthos Service Mesh.
-
Mettez à jour le contrôleur Apigee pour arrêter de mettre à jour les objets CR d'Anthos Service Mesh sur le serveur d'API. Dans le fichier de remplacement, définissez les éléments suivants :
ao: args: disableIstioConfigInAPIServer: true
- Vérifiez l'état du déploiement à l'aide de la commande suivante, car la commande précédente a redémarré le contrôleur :
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
-
Mettez à jour les hôtes virtuels (
virtualhosts
). Chaque hôte virtuel doit inclure le libellé de sélecteurapp
avec la valeurapp: apigee-ingressgateway
. Avec cette modification, la passerelle Anthos Service Mesh ne pourra pas lire la configuration de routage d'Apigee.Ajoutez ou remplacez la propriété
selector
dans chaque hôte virtuel, comme suit :virtualhosts: - name: ENV_GROUP selector: app: apigee-ingressgateway # required ...
Appliquez les modifications de configuration :
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --settings virtualhosts
Pour en savoir plus, consultez la section
virtualhosts.selector
dans la documentation de référence sur les propriétés de configuration.
Appliquez les modifications de configuration :
$APIGEECTL_HOME/apigeectl init -f OVERRIDES_FILE
Pour en savoir plus, consultez la section ao
dans la documentation de référence sur les propriétés de configuration.
Faire évoluer la passerelle d'entrée Apigee :
Mettez à jour les propriétés suivantes dans votre fichier de remplacement.
ingressGateways[].replicaCountMax
ingressGateways[].replicaCountMin
Pour en savoir plus, consultez la section ingressGateways
dans la documentation de référence sur les propriétés de configuration.
Appliquez les modifications à l'aide de la commande apigeectl apply --org
.
Mettre à jour l'allocation des ressources
Mettez à jour les propriétés suivantes dans votre fichier de remplacement.
ingressGateways[].resources.limits.cpu
ingressGateways[].resources.limits.memory
ingressGateways[].resources.requests.cpu
ingressGateways[].resources.requests.memory
Pour en savoir plus, consultez la section ingressGateways
dans la documentation de référence sur les propriétés de configuration.
Appliquez les modifications à l'aide de la commande apigeectl apply --org
.
Mettre à jour le service de passerelle d'entrée Apigee
Mettez à jour les propriétés suivantes dans votre fichier de remplacement.
ingressGateways[].svcAnnotations
ingressGateways[].svcLoadBalancerIP
Pour en savoir plus, consultez la section ingressGateways
dans la documentation de référence sur les propriétés de configuration.
Appliquez les modifications à l'aide de la commande apigeectl apply --org
.
Désactivez l'équilibreur de charge pour le service de passerelle d'entrée Apigee par défaut :
Si vous créez un service Kubernetes personnalisé pour votre déploiement de passerelle d'entrée, vous pouvez désactiver la création d'un équilibreur de charge sur le service Kubernetes par défaut. Mettez à jour la propriété ingressGateways[].svcType
vers ClusterIP
dans votre fichier de remplacement. Exemple :
ingressGateways: - name: my-ingress-gateway replicaCountMin: 2 replicaCountMax: 10 svcType: ClusterIP
Appliquez les modifications à l'aide de la commande apigeectl apply --org
.
Configurer TLS et mTLS
Consultez la section Configurer TLS et mTLS sur la passerelle d'entrée.
Activer des clients sans SNI
Consultez la section Activer les clients non SNI et HTTP.
Installer des passerelles d'entrée Apigee supplémentaires
Vous pouvez ajouter plusieurs passerelles d'entrée dans le fichier overrides.yaml
. La propriété de configuration ingressGateways
est un tableau. Pour en savoir plus, consultez la section ingressGateways.
Exemple :
ingressGateways: - name: fruit replicaCountMin: 2 replicaCountMax: 10 - name: meat replicaCountMin: 2 replicaCountMax: 10
Appliquez les modifications à l'aide de la commande apigeectl apply --org
.
Cibler une entrée Apigee sur un hôte virtuel
Vous pouvez cibler une passerelle d'entrée Apigee étiquetée sur un hôte virtuel spécifique dans votre fichier de remplacement.
Cette configuration spécifie la passerelle d'entrée où Apigee va appliquer la configuration de l'hôte virtuel. Dans l'exemple suivant, l'hôte virtuel spam-vh
est configuré pour utiliser la passerelle d'entrée nommée meat
, tandis que les deux autres hôtes virtuels utilisent la passerelle d'entrée fruit
. Les passerelles d'entrée doivent être correctement étiquetées, comme expliqué sur la page Installer des passerelles Anthos Service Mesh supplémentaires.
virtualhosts: - name: spam-vh sslCertPath: cert-spam.crt sslKeyPath: cert-spam.key selector: app: apigee-ingressgateway ingress_name: meat - name: banana-vh sslCertPath: cert-banana.crt sslKeyPath: cert-banana.key selector: app: apigee-ingressgateway ingress_name: fruit - name: plum-vh sslCertPath: cert-plum.crt sslKeyPath: cert-plum.key selector: app: apigee-ingressgateway ingress_name: fruit
Questions fréquentes
- Comment se comporte cette passerelle lorsque mon installation Anthos Service Mesh/Istio existante se trouve dans un autre espace de noms ?
- Tant qu'Apigee est installé dans un espace de noms dédié, la passerelle d'entrée Apigee peut être exécutée conjointement à une installation Anthos Service Mesh/Istio existante dans le cluster. Comme la passerelle d'entrée Apigee ne stocke aucune configuration sur le serveur d'API, il n'y aura aucun conflit.
- Qui est responsable de la mise à niveau des composants de la passerelle d'entrée Apigee ?
- La mise à niveau des composants de la passerelle d'entrée Apigee est assurée par Apigee et se déroule pendant les mises à niveau effectuées régulièrement sur l'installation hybride, ainsi que lors de l'application des correctifs.
- Comment exposer le port 80 dans la passerelle d'entrée Apigee ?
- Le port 80 n'est pas pris en charge par la passerelle d'entrée Apigee. Si vous effectuez une migration depuis Anthos Service Mesh vers la passerelle d'entrée Apigee et que vous avez suivi les instructions du post destiné à la communauté pour activer le port 80, cela ne fonctionnera pas avec la passerelle d'entrée Apigee.