Spécifier des remplacements de configuration
Le programme d'installation d'Apigee hybrid utilise les valeurs par défaut pour de nombreux paramètres. Toutefois, certains paramètres n'ont pas de valeurs par défaut. Vous devez fournir des valeurs pour ces paramètres, comme expliqué ci-dessous.
- Assurez-vous d'être dans le répertoire
hybrid-base-directory/hybrid-files/overrides/
.cd hybrid-base-directory/hybrid-files/overrides
- Créez un fichier nommé
overrides.yaml
dans votre éditeur de texte préféré. Exemple :vi overrides.yaml
Le fichier
overrides.yaml
fournit la configuration pour votre installation Apigee hybrid unique. Le fichier de remplacement utilisé à cette étape fournit une configuration de base pour une installation d'exécution Apigee hybrid peu encombrante, adaptée pour une première installation. - Dans
overrides.yaml
, ajoutez les valeurs de propriété requises, indiquées ci-dessous. Vous trouverez ci-dessous une description détaillée de chaque propriété :Syntaxe
Assurez-vous que le fichier
overrides.yaml
possède la structure et la syntaxe suivantes. Les valeurs de red, bold italics sont des valeurs de propriété que vous devez fournir. Elles sont décrites dans le tableau ci-dessous.Il existe des différences entre les différentes plates-formes pour la région du projet Google Cloud et la région du cluster Kubernetes. Choisissez la plate-forme sur laquelle vous installez Apigee hybrid.
gcp: region: analytics-region projectID: gcp-project-id k8sCluster: name: cluster-name region: cluster-location # Must be the closest Google Cloud region to your cluster. org: org-name instanceID: "unique-instance-identifier" cassandra: hostNetwork: false # Set to false for single region installations and multi-region installations # with connectivity between pods in different clusters, for example GKE installations. # Set to true for multi-region installations with no communication between # pods in different clusters, for example GKE On-prem, GKE on AWS, Anthos on bare metal, # AKS, EKS, and OpenShift installations. # See Multi-region deployment: Prerequisites virtualhosts: - name: environment-group-name sslCertPath: ./certs/cert-name.pem sslKeyPath: ./certs/key-name.key envs: - name: environment-name serviceAccountPaths: synchronizer: ./service-accounts/synchronizer-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-synchronizer.json udca: ./service-accounts/udca-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-udca.json runtime: ./service-accounts/runtime-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-runtime.json mart: serviceAccountPath: ./service-accounts/mart-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-mart.json connectAgent: serviceAccountPath: ./service-accounts/mart-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-mart.json # Use the same service account for mart and connectAgent metrics: serviceAccountPath: ./service-accounts/metrics-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-metrics.json udca: serviceAccountPath: ./service-accounts/udca-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-udca.json watcher: serviceAccountPath: ./service-accounts/watcher-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-watcher.json logger: enabled: false # Set to false to disable logger for GKE installations. # Set to true for all platforms other than GKE. # See apigee-logger in Service accounts and roles used by hybrid components. serviceAccountPath: ./service-accounts/logger-service-account-name.json # for non-production environments, gcp-project-id-apigee-non-prod.json # for production environments, gcp-project-id-apigee-logger.json
Exemple
L'exemple suivant montre un fichier de remplacement terminé avec des exemples de valeurs de propriété ajoutées :
gcp: region: us-central1 projectID: hybrid-example k8sCluster: name: apigee-hybrid region: us-central1 org: hybrid-example instanceID: "my_hybrid_example" cassandra: hostNetwork: false virtualhosts: - name: example-env-group sslCertPath: ./certs/keystore.pem sslKeyPath: ./certs/keystore.key envs: - name: test serviceAccountPaths: synchronizer: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, hybrid-project-apigee-synchronizer.json udca: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, hybrid-project-apigee-udca.json runtime: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, hybrid-project-apigee-runtime.json mart: serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, hybrid-project-apigee-mart.json connectAgent: serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, example-hybrid-apigee-mart.json metrics: serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, hybrid-project-apigee-metrics.json udca: serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, hybrid-project-apigee-udca.json watcher: serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, hybrid-project-apigee-watcher.json logger: enabled: false # Set to "false" for GKE. Set to "true" for all other kubernetes platforms. serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json # for production environments, logger-service-account-name.json
- Lorsque vous avez terminé, enregistrez le fichier.
Le tableau suivant décrit chacune des valeurs de propriété que vous devez fournir dans le fichier de remplacement. Pour en savoir plus, consultez la documentation de référence sur les propriétés de configuration.
Variable | Description |
---|---|
analytics-region | Dans GKE, vous devez définir cette valeur sur la même région que celle où le cluster est exécuté. Sur toutes les autres plates-formes, sélectionnez la région d'analyse la plus proche de votre cluster compatible avec Analytics (consultez le tableau de la Partie 1, Étape 4 : Créer une organisation).
Il s'agit de la valeur que vous avez précédemment attribuée à la variable d'environnement |
gcp-project-id | Identifie le projet Google Cloud dans lequel apigee-logger et apigee-metrics envoient leurs données. Il s'agit de la valeur attribuée à la variable d'environnement PROJECT_ID . |
cluster-name | Le nom de votre cluster Kubernetes. Il s'agit de la valeur attribuée à la variable d'environnement CLUSTER_NAME . |
cluster-location | La région dans laquelle le cluster est exécuté. Il s'agit de la région dans laquelle vous avez créé le cluster à l'étape 1 : Créer un cluster.
Il s'agit de la valeur que vous avez précédemment attribuée à la variable d'environnement |
org-name | ID de votre organisation Apigee hybrid. Il s'agit de la valeur attribuée à la variable d'environnement ORG_NAME . |
unique-instance-identifier | Une chaîne unique pour identifier cette instance. Vous pouvez utiliser n'importe quelle combinaison de lettres et de chiffres (jusqu'à 63 caractères). Vous pouvez créer plusieurs organisations dans le même cluster, maisinstanceId doit être identique pour toutes les organisations dans le même cluster Kubernetes.
|
environment-group-name | Nom du groupe d'environnements auquel vos environnements sont attribués. Il s'agit du groupe que vous avez créé lors de la configuration du projet et de l'organisation - Étape 5 : Créer un groupe d'environnements.
Il s'agit de la valeur attribuée à la variable d'environnement ENV_GROUP .
|
cert-name key-name |
Saisissez le nom de la clé TLS autosignée et des fichiers de certificat que vous avez générés précédemment à l'Étape 6 : Créer des certificats TLS.
Ces fichiers doivent se trouver dans le répertoire base_directory/hybrid-files/certs . Exemple :
sslCertPath: ./certs/keystore.pem sslKeyPath: ./certs/keystore.key |
environment-name | Utilisez le même nom que celui que vous avez utilisé lors de la création d'un environnement dans l'interface utilisateur, comme expliqué à l'étape 5 "Créer un groupe d'environnements" de la configuration du projet et de l'organisation. |
synchronizer-service-account-name | Pour les environnements hors production, le nom du compte de service unique, non-prod par défaut. Pour les environnements de production, le nom du fichier de clé de compte de service apigee-synchronizer que vous avez généré à l'aide de l'outil create-service-account à l'Étape 6 : Créer des comptes de service et des identifiants de la configuration de l'environnement d'exécution hybride. Vous pouvez consulter la liste des fichiers de compte de service dans votre répertoire service-accounts/ . Exemple :
ls ../service-accounts/ |
udca-service-account-name | Pour les environnements hors production, le nom du compte de service unique, non-prod par défaut. Pour les environnements de production, le nom du fichier de clé de compte de service apigee-udca que vous avez généré avec l'outil create-service-account . |
runtime-service-account-name | Pour les environnements hors production, le nom du compte de service unique, non-prod par défaut. Pour les environnements de production, le nom du fichier de clé de compte de service apigee-runtime que vous avez généré avec l'outil create-service-account . |
mart-service-account-name | Pour les environnements hors production, le nom du compte de service unique, non-prod par défaut. Pour les environnements de production, le nom du fichier de clé de compte de service apigee-mart que vous avez généré avec l'outil create-service-account .
|
metrics-service-account-name | Pour les environnements hors production, le nom du compte de service unique, non-prod par défaut. Pour les environnements de production, le nom du fichier de clé de compte de service apigee-metrics que vous avez généré avec l'outil create-service-account . |
udca-service-account-name | Pour les environnements hors production, le nom du compte de service unique, non-prod par défaut. Pour les environnements de production, le nom du fichier de clé de compte de service apigee-udca que vous avez généré avec l'outil create-service-account . |
watcher-service-account-name | Pour les environnements hors production, le nom du compte de service unique, non-prod par défaut. Pour les environnements de production, le nom du fichier de clé de compte de service apigee-watcher que vous avez généré avec l'outil create-service-account . |
logger-service-account-name | Pour les environnements hors production, le nom du compte de service unique, non-prod par défaut. Pour les environnements de production, le nom du fichier de clé de compte de service apigee-logger que vous avez généré avec l'outil create-service-account . |
Résumé
Le fichier de configuration indique à Kubernetes comment déployer les composants hybrides sur un cluster. Vous allez ensuite activer l'accès du synchronisateur pour que les plans d'exécution et de gestion Apigee puissent communiquer.
1 2 3 4 5 6 7 (SUIVANT) Étape 8: Activer l'accès au synchronisateur 9