Edge for Private Cloud v. 4.16.09
Une installation Edge type se compose de composants Edge répartis sur plusieurs nœuds. Après avoir installé Edge sur un nœud, vous installez et configurez un ou plusieurs composants Edge sur ce nœud.
Procédure d'installation
L'installation d'Edge sur un nœud est un processus en plusieurs étapes :
- Désactivez SELinux sur le nœud ou définissez-le sur le mode permissif. Pour en savoir plus, consultez Installer l'utilitaire apigee-setup d'Edge.
- Sélectionnez votre configuration Edge dans la liste des topologies recommandées. Par exemple, vous pouvez installer Edge sur un seul nœud à des fins de test ou sur 13 nœuds pour la production. Pour en savoir plus, consultez Topologies d'installation.
- Sur chaque nœud de la topologie sélectionnée, installez l'utilitaire Edge apigee-setup :
- Téléchargez le fichier Edge bootstrap_4.16.09.sh dans /tmp/bootstrap_4.16.09.sh.
- Installez l'utilitaire apigee-service d'Edge et ses dépendances.
- Installez l'utilitaire apigee-setup d'Edge et ses dépendances.
Pour en savoir plus, consultez Installer l'utilitaire apigee-setup d'Edge.
- Utilisez l'utilitaire apigee-setup pour installer un ou plusieurs composants Edge sur chaque nœud en fonction de la topologie sélectionnée.
Consultez Installer des composants Edge sur un nœud. - Sur le nœud du serveur de gestion, utilisez l'utilitaire apigee-setup pour installer apigee-provision, les utilitaires que vous utilisez pour créer et gérer des organisations Edge.
Pour en savoir plus, consultez Intégrer une organisation.
Gérer un échec d'installation
En cas d'échec lors de l'installation d'un composant Edge, vous pouvez essayer de corriger le problème, puis d'exécuter à nouveau le programme d'installation. Le programme d'installation est conçu pour être exécuté à plusieurs reprises s'il détecte une défaillance, ou si vous souhaitez modifier ou mettre à jour un composant après l'installation.
Configurer la réplication maître-secours Postgres
Par défaut, Edge installe tous les nœuds Postgres en mode maître. Toutefois, dans les systèmes de production comportant plusieurs nœuds Postgres, vous les configurez pour qu'ils utilisent la réplication maître-secours afin que, si le nœud maître échoue, le nœud de secours puisse continuer à diffuser le trafic. Pour en savoir plus, consultez Configurer la réplication maître-serveur de secours pour Postgres.
Qui peut effectuer l'installation
Les fichiers de distribution Apigee Edge sont installés sous la forme d'un ensemble de RPM et de dépendances. Pour installer, désinstaller et mettre à jour Edge, les commandes Edge doivent être exécutées par l'utilisateur racine ou par un utilisateur disposant d'un accès sudo complet. Pour un accès sudo complet, cela signifie que l'utilisateur dispose d'un accès sudo pour effectuer les mêmes opérations que l'utilisateur racine.
Tout utilisateur souhaitant exécuter les commandes ou scripts suivants doit être un utilisateur racine ou un utilisateur disposant d'un accès sudo complet :
-
Utilitaire apigee-service :
- Commandes apigee-service : install, uninstall, update.
- Commandes apigee-all : install, uninstall, update.
- Script setup.sh pour installer les composants Edge (sauf si vous avez déjà utilisé "apigee-service install" pour installer les RPM requis). Ensuite, un accès root ou sudo complet si nécessaire.)
- Script update.sh pour mettre à jour les composants Edge
De plus, le programme d'installation d'Edge crée un nouvel utilisateur sur votre système, nommé "apigee". De nombreuses commandes Edge appellent sudo pour s'exécuter en tant qu'utilisateur "apigee".
Tout utilisateur souhaitant exécuter toutes les commandes autres que celles présentées ci-dessus doit être un utilisateur disposant d'un accès sudo complet à l'utilisateur "apigee". Ces commandes incluent :
-
Commandes de l'utilitaire apigee-service, y compris :
- Commandes apigee-service telles que start, stop, restart, configure.
- apigee-all, telles que start, stop, restart, configure.
Pour configurer un utilisateur afin qu'il dispose d'un accès sudo complet à l'utilisateur "apigee", modifiez le fichier sudoers pour ajouter :
installUser ALL=(apigee) NOPASSWD: ALL
où installUser est le nom d'utilisateur de la personne qui travaille avec Edge.
Tous les fichiers ou ressources utilisés par les commandes Edge doivent être accessibles à l'utilisateur "apigee". Cela inclut le fichier de licence Edge et tous les fichiers de configuration.
Lorsque vous créez un fichier de configuration, vous pouvez remplacer son propriétaire par "apigee:apigee" pour vous assurer qu'il est accessible aux commandes Edge :
- 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.
Emplacement des fichiers de configuration de l'installation
Vous devez transmettre à l'utilitaire apigee-setup un fichier de configuration contenant les informations sur l'installation d'Edge. La seule exigence pour les installations silencieuses est que le fichier de configuration doit être accessible ou lisible par l'utilisateur "apigee". Par exemple, placez le fichier dans le répertoire /usr/local/var ou /usr/local/share sur le nœud et définissez son propriétaire sur "apigee:apigee".
Toutes les informations du fichier de configuration sont obligatoires, à l'exception du mot de passe de l'administrateur système Edge. Si vous omettez le mot de passe, l'utilitaire apigee-setup vous invite à le saisir sur la ligne de commande.
Pour en savoir plus, consultez Installer des composants Edge sur un nœud.
Installation avec ou sans Internet
Pour installer Edge sur un nœud, celui-ci doit pouvoir accéder au dépôt Apigee :
- Nœuds disposant d'une connexion Internet externe
Les nœuds disposant d'une connexion Internet externe accèdent au dépôt Apigee pour installer les RPM et les dépendances Edge. - Nœuds sans connexion Internet externe
Les nœuds sans connexion Internet externe peuvent accéder à une version dupliquée du dépôt Apigee que vous avez configuré en interne. Ce dépôt contient tous les RPM Edge, mais vous devez vous assurer que toutes les autres dépendances sont disponibles à partir des dépôts du réseau interne.
Remarque : Apigee n'héberge pas toutes les dépendances tierces dans ses dépôts publics. Vous devez télécharger et installer ces dépendances à partir de dépôts accessibles au public.
Résoudre les dépendances d'installation RPM
Les fichiers de distribution Apigee Edge sont installés sous la forme d'un ensemble de fichiers RPM, chacun pouvant avoir sa propre chaîne de dépendances d'installation. Bon nombre de ces dépendances sont définies par des composants tiers qui échappent au contrôle d'Apigee et peuvent changer à tout moment. Par conséquent, la documentation ne liste pas le numéro de version explicite de chaque dépendance.
Si vous effectuez une installation sur une machine disposant d'un accès à Internet, le nœud peut télécharger les RPM et les dépendances nécessaires. Toutefois, si vous effectuez l'installation à partir d'un nœud sans accès à Internet, vous devez généralement configurer un dépôt interne contenant toutes les dépendances nécessaires. La seule façon de garantir que toutes les dépendances sont incluses dans votre dépôt local consiste à tenter une installation, à identifier les dépendances manquantes et à les copier dans le dépôt local jusqu'à ce que l'installation réussisse.
Configurer un hôte virtuel
Un hôte virtuel sur Edge définit les domaines et les ports du routeur Edge sur lesquels un proxy d'API est exposé et, par extension, l'URL que les applications utilisent pour accéder à un proxy d'API. Un hôte virtuel définit également si l'accès au proxy d'API s'effectue via le protocole HTTP ou via le protocole HTTPS chiffré.
Dans le cadre du processus d'intégration d'Edge, vous devez créer une organisation, un environnement et un hôte virtuel. Edge fournit la commande setup-org pour faciliter ce processus pour les nouveaux utilisateurs.
Lorsque vous créez l'hôte virtuel, vous devez spécifier les informations suivantes :
- Nom de l'hôte virtuel que vous utilisez pour le référencer dans vos proxys d'API.
- Port sur le routeur pour l'hôte virtuel. En règle générale, ces ports commencent à 9001 et sont incrémentés de un pour chaque nouvel hôte virtuel.
- Alias d'hôte de l'hôte virtuel. Généralement, le nom DNS de l'hôte virtuel.
Le routeur Edge compare l'en-tête Host de la requête entrante à la liste des alias d'hôte disponibles pour déterminer le proxy d'API qui gère la requête. Lorsque vous effectuez une requête via un hôte virtuel, spécifiez un nom de domaine correspondant à l'alias d'hôte d'un hôte virtuel, ou spécifiez l'adresse IP du routeur et l'en-tête Host contenant l'alias d'hôte.
Par exemple, si vous avez créé un hôte virtuel avec un alias d'hôte myapis.apigee.net sur le port 9001, une requête cURL adressée à une API via cet hôte virtuel peut utiliser l'un des formats suivants :
- Si vous disposez d'une entrée DNS pour myapis.apigee.net :
curl http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path} - Si vous ne disposez pas d'une entrée DNS pour myapis.apigee.net :
curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} -H 'Host: myapis.apigee.net'
Dans ce formulaire, vous spécifiez l'adresse IP du routeur et transmettez l'alias d'hôte dans l'en-tête Host.
Remarque : La commande curl, la plupart des navigateurs et de nombreux autres utilitaires ajoutent automatiquement l'en-tête Host avec le domaine dans la requête. Vous pouvez donc utiliser une commande curl au format suivant :
curl http://<routerIP>:9001/{proxy-base-path}/{resource-path}
Options lorsque vous ne disposez pas d'une entrée DNS pour l'hôte virtuel
Si vous ne disposez pas d'une entrée DNS, vous pouvez définir l'alias d'hôte sur l'adresse IP du routeur et le port de l'hôte virtuel, sous la forme <routerIP>:port. Exemple :
192.168.1.31:9001
Ensuite, vous exécutez une commande curl au format suivant :
curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} Cette option est préférable, car elle fonctionne bien avec l'interface utilisateur Edge.
Si vous disposez de plusieurs routeurs, ajoutez un alias d'hôte pour chaque routeur, en spécifiant l'adresse IP de chaque routeur et le port de l'hôte virtuel.
Vous pouvez également définir l'alias d'hôte sur une valeur, telle que temp.hostalias.com. Vous devez ensuite transmettre l'en-tête Host à chaque requête :
curl -v http://<routerIP>:9001/{proxy-base-path}/{resource-path} -H 'host: temp.hostalias.com'Vous pouvez également ajouter l'alias d'hôte à votre fichier /etc/hosts. Par exemple, ajoutez cette ligne à /etc/hosts :
192.168.1.31 temp.hostalias.com
Vous pouvez ensuite envoyer une requête comme si vous aviez une entrée DNS :
curl -v http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path}Configurer les composants Edge après l'installation
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é.
Les fichiers .properties se trouvent dans le 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.
Pour définir une propriété pour un composant, modifiez le fichier .properties correspondant, puis redémarrez le composant :
> /opt/apigee/apigee-service/bin/apigee-service component restart
Exemple :
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart
Lorsque vous mettez à jour Edge, les fichiers .properties du répertoire /opt/apigee/customer/application sont lus. Cela signifie que la mise à jour conserve toutes les propriétés que vous avez définies sur le composant.
Pour en savoir plus sur la configuration d'Edge, consultez Configurer Edge.
S'assurer que le routeur Edge peut accéder à /etc/rc.d/init.d/functions
Le routeur Edge et le portail BaaS utilisent tous deux le routeur Nginx et nécessitent un accès en lecture à /etc/rc.d/init.d/functions.
Si votre processus de sécurité vous oblige à définir des autorisations sur /etc/rc.d/init.d/functions, ne les définissez pas sur 700, sinon le routeur ne démarrera pas. Les autorisations peuvent être définies sur 744 pour autoriser l'accès en lecture à /etc/rc.d/init.d/functions.
Appeler des commandes sur des composants Edge
Edge installe des utilitaires de gestion sous /opt/apigee/apigee-service/bin que vous pouvez utiliser pour gérer une installation Edge. Par exemple, vous pouvez utiliser l'utilitaire apigee-all pour démarrer, arrêter, redémarrer ou déterminer l'état de tous les composants Edge sur le nœud :
/opt/apigee/apigee-service/bin/apigee-all stop|start|restart|status|version
Utilisez l'utilitaire apigee-service pour contrôler et configurer des composants individuels. L'utilitaire apigee-service se présente sous la forme suivante :
/opt/apigee/apigee-service/bin/apigee-service component action
Par exemple, pour redémarrer le routeur Edge :
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
Vous pouvez déterminer la liste des composants installés sur le nœud en examinant le répertoire /opt/apigee. Ce répertoire contient un sous-répertoire pour chaque composant Edge installé sur le nœud. Chaque sous-répertoire est précédé du préfixe suivant :
- apigee : composant tiers utilisé par Edge. Par exemple, apigee-cassandra.
- edge : composant Edge d'Apigee. Par exemple, edge-management-server.
- edge-mint : composant de monétisation. Par exemple, edge-mint-management-server.
- baas : composant API BaaS. Par exemple, baas-usergrid.
La liste complète des actions d'un composant dépend du composant lui-même, mais tous les composants sont compatibles avec les actions suivantes :
- start, stop, restart
- status, version
- sauvegarde, restauration
- install, uninstall
Accéder aux fichiers journaux
Le fichier journal pour apigee-setup et le script setup.sh sont écrits dans /tmp/setup-root.log.
Les fichiers journaux de chaque composant sont contenus dans le répertoire /opt/apigee/var/log. Chaque composant possède son propre sous-répertoire. Par exemple, les journaux du serveur de gestion se trouvent dans le répertoire :
/opt/apigee/var/log/edge-management-server
Commandes Yum courantes
Les outils d'installation Edge pour Linux s'appuient sur Yum pour installer et mettre à jour les composants. Vous devrez peut-être utiliser plusieurs commandes Yum pour gérer une installation sur un nœud.
- Videz tous les caches Yum :
sudo yum clean all - Pour mettre à jour un composant Edge :
sudo yum update componentName
Exemple :
sudo yum update apigee-setup
sudo yum update edge-management-server
Structure de système de fichiers
Edge installe tous les fichiers dans le répertoire /opt/apigee.
Dans ce guide et dans le guide des opérations Edge, le répertoire d'installation racine est indiqué comme suit :
<inst_root>/apigee
L'installation utilise la structure de système de fichiers suivante pour déployer Apigee Edge pour Private Cloud.
Fichiers journaux
|
Composants |
Emplacement |
|---|---|
|
Serveur de gestion |
<inst_root>/apigee/var/log/edge-management-server |
|
Routeur |
<inst_root>/apigee/var/log/edge-router |
|
Processeur de messages |
<inst_root>/apigee/var/log/edge-message-processor |
|
Serveur Apigee Qpid |
<inst_root>/apigee/var/log/edge-qpid-server |
|
Serveur Apigee Postgres |
<inst_root>/apigee/var/log/edge-postgres-server |
|
UI Edge |
<inst_root>/apigee/var/log/edge-ui |
|
ZooKeeper |
<inst_root>/apigee/var/log/apigee-zookeeper |
|
OpenLDAP |
<inst_root>/apigee/var/log/apigee-openldap |
|
Cassandra |
<inst_root>/apigee/var/log/apigee-cassandra |
|
Qpidd |
<inst_root>/apigee/var/log/apigee-qpidd |
|
Base de données PostgreSQL |
<inst_root>/apigee/var/log/apigee-postgresql |
Données
|
Composants |
Emplacement |
|---|---|
|
Serveur de gestion |
<data_root>/apigee/data/edge-management-server |
|
Routeur |
<data_root>/apigee/data/edge-router |
|
Processeur de messages |
<data_root>/apigee/data/edge-message-processor |
|
Agent Apigee Qpid |
<data_root>/apigee/data/edge-qpid-server |
|
Agent Apigee Postgres |
<data_root>/apigee/data/edge-postgres-server |
|
ZooKeeper |
<data_root>/apigee/data/apigee-zookeeper |
|
OpenLDAP |
<data_root>/apigee/data/apigee-openldap |
|
Cassandra |
<data_root>/apigee/data/apigee-cassandra/data |
|
Qpidd |
<data_root>/apigee/data/apigee-qpid/data |
|
Base de données PostgreSQL |
<data_root>/apigee/data/apigee-postgres/pgdata |