Remarques concernant l'installation

Edge pour Private Cloud version 4.16.05

Une installation Edge typique 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 le 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 en mode permissif. Pour plus d'informations, reportez-vous à la section Installer l'utilitaire de configuration d'Edge apigee-setup.
  • Sélectionnez votre configuration Edge dans la liste des topologies recommandées. Par exemple, vous pouvez installer Edge sur un seul nœud pour les tests ou sur 13 nœuds pour la production. Pour en savoir plus, consultez la section 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.05.sh dans /tmp/bootstrap_4.16.05.sh.
    • Installez l'utilitaire et les dépendances Edge apigee-service.
    • Installez l'utilitaire et les dépendances Edge apigee-setup.

      Reportez-vous à la section Installer l'utilitaire de configuration d'Edge apigee-setup pour en savoir plus.
  • 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 la section Installer des composants Edge sur un nœud sur un nœud.
  • Sur le nœud du serveur de gestion, utilisez l'utilitaire "apigee-setup" pour installer 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 exécuter à nouveau le programme d'installation. Le programme d'installation est conçu pour être exécuté de manière répétée lorsqu'il détecte une défaillance, ou si vous souhaitez modifier ou mettre à jour un composant après l'installation.

Configurer la réplication en attente maître 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 devez les configurer pour utiliser la réplication en attente maître de sorte que, en cas de défaillance du nœud maître, le nœud de secours puisse continuer à transmettre le trafic du serveur. Pour en savoir plus, consultez la section Configurer la réplication maître en veille 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 complet sudo. Pour un accès sudo complet, cela signifie que l'utilisateur dispose d'un accès sudo pour effectuer les mêmes opérations qu'avec root.

Tout utilisateur qui souhaite exécuter les commandes ou les scripts suivants doit être root ou disposer d'un accès sudo complet:

  • apigee-service :
    • Commandes apigee-service: install, désinstalle, update.
    • Commandes apigee-all: install, désinstalle, update.
  • 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 racine ou sudo complet si cela n’est pas nécessaire.)
  • update.sh pour mettre à jour les composants Edge

En outre, le programme d'installation Edge crée un nouvel utilisateur sur votre système, nommé "apigee". De nombreuses commandes Edge invoquent sudo pour s'exécuter en tant qu'utilisateur "apigee".

Tout utilisateur qui souhaite exécuter toutes les commandes autres que celles indiquées ci-dessus doit être un utilisateur disposant d'un accès sudo complet à l'utilisateur "apigee". Ces commandes incluent:

  • Les commandes utilitaires apigee-service, y compris :
    • Commandes apigee-service telles que start, stop, restart, configure.
    • Commandes 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

installUser est le nom d'utilisateur de la personne travaillant 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.

Lors de la création d'un fichier de configuration, vous pouvez remplacer son propriétaire par "apigee:apigee" pour vous assurer qu'il est accessible aux commandes Edge:

  1. Créez le fichier dans un éditeur comme n'importe quel utilisateur.
  2. Convertissez le propriétaire du fichier en "apigee:apigee" ou, si vous avez changé l'utilisateur exécutant le service Edge au lieu de l'utilisateur "apigee", envoyez le fichier à l'utilisateur qui exécute le service Edge.

Installation silencieuse des composants Edge

Vous devez transmettre à l'utilitaire apigee-setup un fichier de configuration contenant les informations sur l'installation Edge. La seule condition requise pour les installations silencieuses est que le fichier de configuration soit accessible ou lisible par l'utilisateur "apigee". Par exemple, placez le fichier dans le répertoire /tmp sur le nœud et remplacez-le par "apigee:apigee".

Toutes les informations du fichier de configuration sont requises, à 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 la section Installer des composants Edge sur un nœud.

Installation Internet ou non Internet

Pour installer Edge sur un nœud, celui-ci doit pouvoir accéder au dépôt Apigee:

  • Nœuds avec une connexion Internet externe

    Les nœuds avec 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 mise en miroir 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.

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. La plupart de ces dépendances sont définies par des composants tiers qui ne dépendent pas d'Apigee et peuvent être modifiées à tout moment. Par conséquent, la documentation ne répertorie 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 configurez généralement un dépôt interne contenant toutes les dépendances nécessaires. Le seul moyen de vous assurer 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 aboutisse.

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 est effectué à l'aide du protocole HTTP ou du protocole HTTPS chiffré.

Dans le cadre du processus d'intégration Edge, vous devez créer une organisation, un environnement et un hôte virtuel. Edge fournit la commande setup-org afin de faciliter ce processus pour les nouveaux utilisateurs.

Lorsque vous créez l'hôte virtuel, vous devez spécifier les informations suivantes:

  • Le nom de l'hôte virtuel que vous utilisez pour le référencer dans vos proxys d'API.
  • Port sur le routeur de l'hôte virtuel. En règle générale, ces ports commencent à 9 001 et sont incrémentés d'une unité pour chaque nouvel hôte virtuel.
  • L'alias d'hôte de l'hôte virtuel. Il s'agit généralement du 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 afin de déterminer le proxy d'API qui gère la requête. Lorsque vous effectuez une requête via un hôte virtuel, vous pouvez soit spécifier un nom de domaine correspondant à l'alias d'hôte d'un hôte virtuel, soit spécifier l'adresse IP du routeur et l'en-tête Host (Hôte) contenant l'alias d'hôte.

Par exemple, si vous avez créé un hôte virtuel avec un alias d'hôte de myapis.apigee.net sur le port 9001, une requête cURL adressée à une API via cet hôte virtuel peut utiliser l'une des formes suivantes:

  • 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 n'avez pas d'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 vous transmettez l'alias d'hôte dans l'en-tête d'hôte.

    Remarque: La commande curl, la plupart des navigateurs et de nombreux autres utilitaires ajoutent automatiquement l'en-tête Host avec le domaine dans le cadre de la requête. Vous pouvez donc utiliser une commande curl sous la forme suivante:


    curl http://<routerIP>:9001/{proxy-base-path}/{resource-path}

Options disponibles lorsque vous ne disposez pas d'entrée DNS pour l'hôte virtuel

En l'absence d'entrée DNS, une option consiste à 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, exécutez une commande curl sous la forme suivante:

curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} 

Cette option est à privilégier car elle fonctionne bien avec l'interface utilisateur Edge.

Si vous disposez de plusieurs routeurs, ajoutez un alias d'hôte pour chacun d'eux, 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, puis transmettre l'en-tête Host à chaque requête:

curl -v http://<routerIP>:9001/{proxy-base-path}/{resource-path}  -H 'host: temp.hostalias.com'

Ou, ajoutez 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 effectuer 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 utilisez une combinaison de fichiers .properties et d'utilitaires Edge. Par exemple, pour configurer TLS/SSL dans 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 que vous redémarriez le 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 plus d'informations sur la configuration de Edge, consultez la section Comment configurer Edge.

Assurez-vous qu'Edge Router peut accéder à /etc/rc.d/init.d/functions

Le routeur périphérique d'un portail BaaS utilise le routeur Nginx et nécessite un accès en lecture à /etc/rc.d/init.d/functions.

Si votre processus de sécurité nécessite que vous définissiez 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 permettre l'accès en lecture à /etc/rc.d/init.d/functions.

Appeler des commandes sur des composants Edge

Edge installe les 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 les 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é par:

  • 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. Exemple : edge-mint-management-server.
  • baas : composant d'API BaaS. 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:

  • démarrer, arrêter, redémarrer
  • état, version
  • sauvegarder, restaurer
  • installer, désinstaller

Accéder aux fichiers journaux

Le fichier journal de apigee-setup et le script setup.sh est écrit dans /tmp/setup-root.log.

Les fichiers journaux de chaque composant se trouvent 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.

  • Nettoyez tous les caches Yum:
    sudo yum clean all
  • Pour mettre à jour un composant Edge:
    sudo yum update componentName
    Par exemple:
    sudo yum update apigee-setup
    sudo yum update bord-management-server

Structure de systèmes de fichiers

Edge installe tous les fichiers dans le répertoire /opt/apigee.

Dans ce guide et dans le guide d'utilisation Edge, le répertoire d'installation racine est noté comme suit:

<inst_root>/apigee

L'installation utilise la structure de système de fichiers suivante pour déployer Apigee Edge pour le cloud privé.

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

Interface utilisateur périphérique

<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