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 :
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. Par 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
.
Mapper des hôtes virtuels aux déploiements d'une passerelle d'entrée Apigee
Vous pouvez utiliser des étiquettes de sélecteur pour mapper un hôte virtuel à un déploiement de passerelle d'entrée Apigee. Dans l'exemple suivant, l'hôte virtuel spam-vh
est configuré pour s'exécuter sur la passerelle d'entrée dotée de l'étiquette meat
et les deux autres hôtes virtuels s'exécutent sur 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
Ajouter des suites de chiffrement personnalisées aux déploiements d'une passerelle d'entrée Apigee
Vous pouvez ajouter des suites de chiffrement personnalisées au déploiement de votre passerelle d'entrée Apigee en utilisant la propriété virtualhosts.cipherSuites
dans votre fichier de remplacement.
Consultez la page virtualhosts.cipherSuites
pour connaître les suites de chiffrement par défaut activées dans Apigee hybrid.
Vous pouvez activer les anciennes versions de TLS avec la propriété virtualhosts.minTLSProtocolVersion
et ajouter des suites de chiffrement personnalisées au déploiement de votre passerelle d'entrée Apigee avec la propriété virtualhosts.cipherSuites
dans votre fichier de remplacement.
Par exemple, pour activer TLS v1.1 :
virtualhosts: - name: ENV_GROUP_NAME minTLSProtocolVersion: "1.1" cipherSuites: - "ECDHE-ECDSA-AES128-GCM-SHA256" - "ECDHE-RSA-AES128-GCM-SHA256" - "ECDHE-ECDSA-AES256-GCM-SHA384" - "ECDHE-RSA-AES256-GCM-SHA384" - "ECDHE-ECDSA-CHACHA20-POLY1305" - "ECDHE-RSA-CHACHA20-POLY1305" - "ECDHE-ECDSA-AES128-SHA" - "ECDHE-RSA-AES128-SHA" - "ECDHE-ECDSA-AES256-SHA" - "ECDHE-RSA-AES256-SHA" ...
Personnaliser les journaux d'accès à l'entrée
Vous pouvez personnaliser la destination et le format du journal d'accès à la passerelle d'entrée Apigee, à l'aide des propriétés de configuration istiod.accessLogFile
et istiod.accessLogFormat
. Dans l'exemple suivant, le résultat sera envoyé à /dev/stdout
, qui est la valeur par défaut pour istiod.accessLogFile
:
istiod: accessLogFormat: '{"request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%","status":"%RESPONSE_CODE%"}'
Vous pouvez désactiver la journalisation des accès à la passerelle d'entrée Apigee en attribuant à istiod.accessLogFile
une valeur vide. Exemple :
istiod: accessLogFile: ''
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.