Cet article explique comment configurer et gérer les composants du plan d'exécution Apigee hybrid. Pour obtenir la liste des composants du plan d'exécution que vous pouvez configurer, consultez la section Présentation de la configuration du service d'exécution.
À propos du fichier de remplacement
La première fois que vous installez l'environnement d'exécution hybride dans un cluster, vous devez créer un fichier de remplacement de configuration. Ce fichier vous permet de remplacer les valeurs de configuration par défaut si nécessaire, de configurer des environnements, de référencer des certificats TLS et des clés de comptes de service, d'attribuer des pools de nœuds Kubernetes à des composants hybrides spécifiques, etc.
Les étapes d'installation du système hybride décrivent le processus de création d'un fichier de remplacement et le processus d'application de votre configuration à un cluster. Si vous souhaitez modifier la configuration ultérieurement, modifiez le fichier de remplacement que vous avez créé, puis appliquez-le à nouveau.
Modifier une configuration
Pour modifier la configuration d'un composant du plan d'exécution hybride, modifiez votre fichier de remplacement et appliquez les modifications avec apigeectl
.
Par exemple, pour modifier le nombre d'instances dupliquées sur le processeur de messages, procédez comme suit :
- Ouvrez votre fichier OVERRIDES
.yaml
. Veillez à utiliser le même fichier de remplacement que celui utilisé pour installer l'environnement d'exécution hybride dans le cluster. - Recherchez l'élément
runtime
dans le fichier. Exemple :... runtime: nodeSelector: key: cloud.google.com/gke-nodepool value: apigee-runtime replicaCountMin: 1 replicaCountMax: 2 ...
-
Modifiez les propriétés du nombre d'instances répliquées, selon vos besoins. Exemple :
... runtime: nodeSelector: key: cloud.google.com/gke-nodepool value: apigee-runtime replicaCountMin: 2 replicaCountMax: 4 ...
- Utilisez
apigeectl
pour appliquer la modification au cluster :apigeectl apply -f ./OVERRIDES.yaml --org --env ENV_NAME
Quelles propriétés de configuration pouvez-vous modifier ?
Vous trouverez la liste complète des propriétés configurables dans la documentation de référence sur les propriétés de configuration. La référence ne répertorie que les propriétés que vous pouvez modifier. Si vous essayez de modifier une propriété qui ne figure pas dans la référence, la modification est ignorée.
Comment utiliser la référence de configuration ?
La documentation de référence sur la propriété de configuration utilise la notation par points pour décrire les éléments de configuration. Le premier élément est le nom de l'élément de niveau supérieur suivi des propriétés et des propriétés enfants. Exemple :
authz.image.pullPolicy
Dans le fichier de remplacement, les propriétés sont au format YAML approprié. Dans l'exemple ci-dessus, l'élément authz
de niveau supérieur est mis en retrait à gauche et les propriétés des sous-éléments sont mis en retrait juste en-dessous. Le code YAML requiert également le signe "deux-points" à la fin de chaque élément et sous-élément.
Par exemple, pour définir la propriété authz.image.pullPolicy
sur Always
, recherchez ce stanza YAML dans le fichier de remplacement et définissez-le comme suit :
authz: image: pullPolicy: Always
Autre exemple, la propriété cassandra.auth.admin.password
(telle qu'elle est répertoriée dans la référence de la propriété Configuration) est utilisée pour définir le mot de passe administrateur Cassandra. Pour le modifier, localisez le code YAML suivant dans le fichier de remplacement et définissez-le comme suit :
cassandra: auth: admin: password: abc123
N'oubliez pas que la référence sur les propriétés de configuration décrit toutes les propriétés que vous pouvez définir dans des composants de plan d'exécution hybride. Suivez le modèle expliqué ci-dessus pour modifier ces éléments dans votre fichier de remplacement avant d'appliquer les modifications à votre cluster.
Utiliser un exemple prédéfini de fichier de remplacement
Lorsque vous installez pour la première fois l'environnement d'exécution hybride, Apigee vous recommande d'utiliser l'un des exemples de fichiers de remplacement préconfigurés. Ces exemples fournissent un ensemble complet de propriétés de configuration pour des scénarios d'installation spécifiques, tels que la configuration d'une installation de production ou de test. Il vous suffit de fournir les valeurs appropriées pour les propriétés et d'appliquer le fichier de remplacement à votre cluster. Pour en savoir plus, consultez la section Étape 6 : Configurer le cluster.
À propos de la configuration par défaut
Apigee conserve la configuration de ses composants par défaut dans le fichier HYBRID_ROOT_DIR/config/values.yaml
. Vos fichiers de remplacement suivent la même structure YAML que values.yaml
.
Un fichier de remplacement n'inclut généralement qu'un sous-ensemble des propriétés de configuration trouvées dans values.yaml
. N'oubliez pas que toutes les propriétés ne sont pas modifiables. Lorsque vous appliquez une configuration à un cluster, vos remplacements sont fusionnés avec les valeurs par défaut pour créer la configuration complète du cluster Kubernetes. Consultez également la section Tester la configuration fusionnée.
Le code suivant montre la configuration par défaut du composant mart
, figurant dans values.yaml
. Notez que certaines valeurs ont des valeurs par défaut, tandis que d'autres, telles que sslCertPath
et sslKeyPath
, n'en ont pas. Vous devez fournir ces valeurs manquantes dans votre fichier de remplacement, comme expliqué dans la procédure d'installation.
Si vous souhaitez modifier l'une des valeurs par défaut, assurez-vous qu'elles sont modifiables en consultant la documentation de référence sur les propriétés de configuration.
... mart: replicaCountMin: 2 replicaCountMax: 4 targetCPUUtilizationPercentage: 75 terminationGracePeriodSeconds: 30 sslCertPath: sslKeyPath: hostAlias: nodeSelector: key: value: revision: blue image: url: "gcr.io/apigee-release/hybrid/apigee-mart-server" tag: "1.3.6" pullPolicy: IfNotPresent resources: requests: cpu: 500m memory: 512Mi initCheckCF: resources: requests: cpu: 10m livenessProbe: timeoutSeconds: 1 failureThreshold: 12 periodSeconds: 5 initialDelaySeconds: 15 readinessProbe: timeoutSeconds: 1 successThreshold: 1 failureThreshold: 2 periodSeconds: 5 initialDelaySeconds: 15 metricsURL: "/v1/server/metrics" cwcAppend: | ...
Si vous souhaitez modifier les valeurs par défaut d'un composant et que le composant ne se trouve pas déjà dans votre fichier de remplacement, vous pouvez copier son code YAML depuis values.yaml
dans votre fichier de remplacement et le modifier à partir de ce dernier.
Exemples de fichiers de remplacement
Apigee fournit un ensemble d'exemples de fichiers de remplacement pour vous aider à configurer votre déploiement hybride. Il est recommandé de copier et de modifier le fichier de remplacement qui correspond le mieux à vos exigences d'installation.
Les exemples suivants sont inclus dans le répertoire HYBRID_ROOT_DIR/examples
:
Exemples de fichiers de remplacement | Description |
---|---|
overrides-small.yaml |
Cet exemple est idéal pour débuter et progresser rapidement. Il utilise l'empreinte minimale recommandée pour démarrer les composants d'exécution hybride. Cet exemple de configuration repose autant que possible sur les paramètres et les valeurs par défaut. Toutes les instances répliquées minimales sont définies sur 1 . |
overrides-medium.yaml |
Cet exemple constitue un bon point de départ pour les environnements de test et de contrôle qualité. Des composants individuels se sont vus attribuer un niveau supérieur de ressources pour traiter le trafic supplémentaire. Cassandra utilise des disques SSD pour améliorer les performances. Dans cet environnement, il est recommandé aux utilisateurs d'installer des composants avec état et sans état sur des nœuds distincts. Consultez la section Configurer des nœuds dédiés. |
overrides-large.yaml |
Cet exemple constitue un bon point de départ pour les environnements hautes performances tels que la préproduction et la production. L'exemple comprend des propriétés permettant de définir des clés de chiffrement, des mots de passe, etc. Les composants individuels disposent d'au moins deux instances répliquées. |
Annotations personnalisées
Les annotations sont des mappages clé-valeur permettant d'associer des métadonnées à des pods Kubernetes Apigee Hybrid. Vous pouvez créer des annotations personnalisées pour les propriétés suivantes, répertoriées dans la documentation de référence sur les propriétés de configuration :
Pour ajouter une annotation personnalisée, ajoutez un stanza au fichier OVERRIDES.yaml
pour le composant correspondant.
L'exemple suivant montre comment une annotation peut être spécifiée dans les pods runtime
:
runtime: annotations: businessunit: "bu1"
Tester la configuration fusionnée
Vous pouvez utiliser l'option --dry-run
avec apigeectl
pour tester le fichier de configuration fusionnée sans l'appliquer réellement à votre cluster. Cette option est utile pour déboguer un problème d'installation, car elle indique exactement ce qui sera appliqué au cluster.
Il est également recommandé de tester la configuration et de la stocker dans le système de gestion de code source pour que vous ayez une référence des ressources installées et configurées dans le cluster.
Dans Apigee hybrid, la syntaxe de l'option --dry-run
dépend de la version de kubectl
que vous exécutez. Vérifiez la version de kubectl
à l'aide de la commande suivante :
kubectl version
kubectl version 1.17 ou antérieure :
APIGEECTL_HOME/apigeectl init -f overrides/OVERRIDES.yaml --dry-run=true
kubectl version 1.18 et ultérieure :
APIGEECTL_HOME/apigeectl init -f overrides/OVERRIDES.yaml --dry-run=client
Pour en savoir plus, consultez la page apigeectl
.
Créer plusieurs fichiers de remplacement selon vos besoins
Vous pouvez créer autant de fichiers de remplacement que vous le souhaitez, chacun d'entre eux répondant à une exigence spécifique. Par exemple, vous pouvez disposer d'un fichier de remplacement qui ajuste votre cluster pour la production, et un autre pour la création d'un cluster de test. Vous pouvez ensuite conserver ces fichiers dans votre système de gestion de code source.
apigeectl apply -f ./test_env_override.yaml
Pour en savoir plus, consultez la page apigeectl
.
Supprimer des composants spécifiques hybrides du plan d'exécution
Pour supprimer les composants spécifiques hybrides du plan d'exécution de votre cluster, utilisez la commande apigeectl delete
. Ces composants incluent synchronizer
, mart
, runtime
, cassandra
et udca
. Veillez à spécifier le même fichier de remplacement que celui utilisé pour installer les composants d'exécution :
Exemple :
apigeectl delete -f ./OVERRIDES.yaml
Vous pouvez utiliser la commande apigeectl apply
pour recréer un ou plusieurs composants spécifiques :
apigeectl apply --org --env ENV_NAME -f ./OVERRIDES.yaml
Pour en savoir plus, consultez la page apigeectl
.
Supprimer un composant spécifique
Si vous souhaitez supprimer uniquement un composant spécifique, utilisez l'option -c
avec apigeectl delete
. Veillez à spécifier le même fichier de remplacement que celui utilisé pour installer les composants d'exécution.
Par exemple, pour supprimer le composant synchronizer
, utilisez la commande suivante :
apigeectl delete --org --env ENV_NAME -f ./OVERRIDES.yaml
Vous pouvez ensuite utiliser la commande apigeectl apply
pour recréer le composant :
apigeectl apply --org --env ENV_NAME -f ./OVERRIDES.yaml
Pour en savoir plus, consultez la page apigeectl
.
Supprimer tous les composants
Pour supprimer tous vos composants de cluster hybrides, y compris ceux créés par la commande apigeectl init
, exécutez la commande apigeectl delete
avec l'option --all
. Veillez à spécifier le même fichier de remplacement que celui utilisé pour installer les composants d'exécution :
Exemple :
apigeectl delete -f ./OVERRIDES.yaml --all
Pour en savoir plus, consultez la page apigeectl
.