Edge pour Private Cloud v. 4.17.09
Pour configurer Edge après l'installation, vous devez utiliser une combinaison de fichiers .properties et d'utilitaires Edge. Par exemple, pour configurer TLS/SSL sur l'interface utilisateur Edge, vous devez modifier les fichiers .properties pour définir les propriétés nécessaires. Les modifications apportées aux fichiers .properties nécessitent le redémarrage du composant Edge concerné.
Apigee fait référence à la technique de modification des fichiers .properties en tant que code avec configuration. En gros, le code avec configuration est un outil de recherche de clé/valeur basé sur les paramètres des fichiers .properties. Dans le code avec configuration, les clés sont appelées jetons. Par conséquent, pour configurer Edge, vous devez définir des jetons dans les fichiers .properties.
Le code avec configuration permet aux composants Edge de définir des valeurs par défaut fournies avec le produit, à l'équipe d'installation de remplacer ces paramètres en fonction de la topologie d'installation, puis aux clients de remplacer les propriétés de leur choix.
Si vous considérez cela comme une hiérarchie, les paramètres sont organisés comme suit, les paramètres du client ayant la priorité la plus élevée pour remplacer les paramètres de l'équipe d'installation ou d'Apigee :
- Client
- Installateur
- Apigee
Utiliser des fichiers .properties
En tant que client, vous ne pouvez modifier que les fichiers .properties du répertoire /opt/apigee/customer/application. Chaque composant possède son propre fichier .properties dans ce répertoire. Par exemple, router.properties et management-server.properties.
Par exemple, pour créer un fichier .properties :
- Créez le fichier dans un éditeur en tant qu'utilisateur.
- Modifiez le propriétaire du fichier en apigee:apigee ou, si vous avez modifié l'utilisateur exécutant le service Edge à partir de l'utilisateur apigee, modifiez le propriétaire du fichier en l'utilisateur qui exécute le service Edge.
Pour définir une propriété pour un composant, modifiez le fichier .properties correspondant afin de définir un jeton, puis redémarrez le composant :
> /opt/apigee/apigee-service/bin/apigee-service component restart
Par exemple, après avoir modifié router.properties, redémarrez le routeur :
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart
Lorsque vous mettez à niveau Edge, les fichiers .properties du répertoire /opt/apigee/customer/application sont lus. Cela signifie que la mise à niveau conservera toutes les propriétés que vous avez définies sur le composant.
Emplacement des fichiers .properties
Il existe trois répertoires de premier niveau pour les fichiers .properties des composants Edge : propriétaire de l'installation et clients. Les emplacements par défaut sont indiqués dans le tableau suivant :
Avertissement : Les clients Edge ne peuvent modifier que les fichiers .properties sous /opt/apigee/customer. Bien que vous puissiez afficher les fichiers sous les répertoires de composants et d'installation, ne modifiez aucun fichier.
|
Propriétaire |
Répertoire racine des jetons par défaut |
|---|---|
|
Composant |
/opt/apigee/<prefix>-<component>/conf où /<prefix>-<component> identifie le composant, tel que edge-router ou apigee-cassandra. |
|
Installation |
/opt/apigee/token |
|
Client |
/opt/apigee/customer |
Déterminer la valeur actuelle d'un jeton
Avant de définir un jeton dans le fichier .properties du composant, vous pouvez d'abord déterminer sa valeur actuelle à l'aide de la commande suivante :
> /opt/apigee/apigee-service/bin/apigee-service comp configure -search token
où comp est le nom du composant et token est le jeton à inspecter.
Cette commande recherche dans la hiérarchie des fichiers .properties pour déterminer la valeur actuelle du jeton.
Par exemple, pour vérifier la valeur actuelle du jeton conf_http_HTTPRequest.line.limit pour le routeur :
> /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
Le résultat doit s'afficher au format suivant :
Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties
Définir des jetons dans des fichiers .properties
Pour remplacer la valeur d'un jeton :
- Modifiez le fichier .properties du composant pour définir la valeur du jeton. Si le fichier n'existe pas, créez-le.
- Redémarrez le composant.
- Vérifiez la valeur du jeton.
Par exemple, pour définir la limite de ligne de requête pour le routeur Edge :
- Modifiez le fichier /opt/apigee/customer/application/router.properties pour définir le jeton conf_http_HTTPRequest.line.limit :
conf_http_HTTPRequest.line.limit=8k - Redémarrez le routeur Edge :
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart - Vérifiez la valeur du jeton :
> /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
Définir un jeton qui accepte plusieurs valeurs
Certains jetons acceptent une liste de valeurs séparées par une virgule. Par exemple, le jeton conf_security_rbac.restricted.resources accepte une liste d'URI restreints de sorte que seul l'administrateur système puisse les appeler. Pour afficher la valeur de conf_security_rbac.restricted.resources :
> cd /opt/apigee/edge-management-server > grep -ri "conf_security_rbac.restricted.resources" *
Le résultat contient les éléments suivants :
token/default.properties:conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status
Pour définir un jeton qui accepte une liste de valeurs, ajoutez les nouvelles valeurs à la valeur actuelle du jeton dans le fichier .properties. Par conséquent, pour ajouter l'URI /myuri/* à conf_security_rbac.restricted.resources, modifiez le fichier /opt/apigee/customer/application/management-server.properties comme indiqué ci-dessous :
conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*
Localiser un jeton
Dans la plupart des cas, les jetons que vous devez définir sont identifiés dans ce guide. Toutefois, si vous devez déterminer le jeton utilisé pour remplacer une propriété, effectuez un grep dans le dossier source du composant.
Par exemple, si vous savez que dans une version précédente d'Edge, vous avez défini la propriété session.maxAge et que vous souhaitez connaître la valeur du jeton utilisée pour la définir, exécutez la commande grep pour la propriété dans le répertoire /opt/apigee/edge-ui/source :
> grep -ri "session.maxAge" /opt/apigee/edge-ui/source
Vous devriez obtenir un résultat semblable à celui-ci :
/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}La chaîne entre les balises {T}{/T} est le jeton que vous avez défini dans le fichier .properties.
Définir un jeton actuellement mis en commentaire
Certains jetons sont commentés dans les fichiers de configuration Edge. Si vous essayez de définir un jeton mis en commentaire, le paramètre est ignoré.
Pour définir un jeton mis en commentaire, vous utilisez une syntaxe spéciale, sous la forme suivante :
conf/file.extension+propertyName=propertyValue
Par exemple, vous souhaitez définir la propriété nommée HTTPClient.proxy.host sur le processeur de messages. Vous devez ensuite exécuter grep sur la propriété pour déterminer son jeton :
> cd /opt/apigee/edge-message-processor > grep -ri "HTTPClient.proxy.host" *
La commande grep renvoie les résultats sous la forme incluant la valeur du jeton. Notez que le nom de la propriété est mis en commentaire, comme l'indique le préfixe # sur le nom de la propriété :
source/conf/http.properties:#HTTPClient.proxy.host={T}conf_http_HTTPClient.proxy.host{/T}
token/default.properties:conf_http_HTTPClient.proxy.host=
conf/http.properties:#HTTPClient.proxy.host=Pour définir la propriété, modifiez /opt/apigee/customer/application/message-processor.properties pour définir la propriété comme suit :
conf/http.properties+HTTPClient.proxy.host=myhost.name.com
Notez que le nom de la propriété est précédé de conf/http.properties+, de l'emplacement et du nom du fichier de configuration contenant la propriété, suivis de "+".
Après avoir redémarré le processeur de messages, examinez le fichier /opt/apigee/edge-message-processor/conf/http.properties :
> cat /opt/apigee/edge-message-processor/conf/http.properties
À la fin du fichier, vous verrez la propriété définie, sous la forme suivante :
conf/http.properties:HTTPClient.proxy.host=myhost.name.com