Installation du portail de services pour les développeurs

Edge for Private Cloud v4.18.01

Avant d'installer l'application, vérifiez les points suivants :

  • Vous installez Postgres avant d'installer le portail. Vous pouvez installer Postgres lors de l'installation d'Edge ou installer Postgres de manière autonome pour l'utiliser avec le portail.
    • Si vous installez Postgres de manière autonome, il peut se trouver sur le même nœud que le portail.
    • Si vous vous connectez à Postgres installé dans le cadre d'Edge et que Postgres est configuré en mode maître/veille, spécifiez l'adresse IP du serveur Postgres maître.
  • Vous effectuez l'installation sur la version 64 bits d'une version compatible de Red Hat Enterprise Linux, CentOS ou Oracle. Consultez la liste des versions compatibles sur la page Logiciels et versions compatibles.
  • Yum est installé.

Le programme d'installation n'inclut que les modules Drupal requis par le portail Apigee Developer Services (ou simplement le portail). Pour en savoir plus sur l'installation d'autres modules fournis, consultez Étendre Drupal 7.

Présentation de l'installation

Après avoir installé l'utilitaire apigee-setup d'Edge sur un nœud, utilisez cet utilitaire pour installer le portail sur le nœud. L'utilitaire apigee-setup se présente sous la forme suivante :

sudo /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile

Transmettez à l'utilitaire apigee-setup un fichier de configuration contenant les informations sur l'installation. S'il manque des informations requises dans le fichier de configuration, l'utilitaire apigee-setup vous invite à les saisir sur la ligne de commande.

La seule exigence est que le fichier de configuration doit être accessible ou lisible par l'utilisateur "apigee".

Par exemple, utilisez la commande suivante pour installer le portail :

sudo /opt/apigee/apigee-setup/bin/setup.sh -p dp -f myConfig

Pour en savoir plus, consultez Installer l'utilitaire apigee-setup d'Edge.

Abandon de la propriété SMTPSSL

Dans les versions précédentes, vous utilisiez la propriété SMTPSSL pour définir le protocole utilisé par le serveur SMTP connecté au portail. Cette propriété est maintenant obsolète.

Vous utilisez désormais la propriété SMTP_PROTOCOL au lieu de la propriété SMTPSSL pour définir le protocole utilisé par le serveur SMTP connecté au portail. Les valeurs valides sont "standard", "ssl" ou "tls".

Créer un fichier de configuration

Vous trouverez ci-dessous un exemple de fichier de configuration silencieuse pour une installation de portail. Modifiez ce fichier si nécessaire pour votre configuration. Utilisez l'option -f de setup.sh pour inclure ce fichier.

IP1=IPorDNSnameOfNode

# Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost.
HOSTIP=$(hostname -i)

# Specify the name of the portal database in Postgres.
PG_NAME=devportal 

# Specify the Postgres admin credentials.
# The portal connects to Postgres by using the 'apigee' user.
# If you changed the Postgres password from the default of 'postgres'
# then set PG_PWD accordingly.
# If connecting to a Postgres node installed with Edge,
# contact the Edge sys admin to get these credentials.
PG_USER=apigee
PG_PWD=postgres

# The IP address of the Postgres server.
# If it is installed on the same node as the portal, specify that IP.
# If connecting to a remote Postgres server,specify its IP address.
PG_HOST=$IP1

# The Postgres user credentials used by the portal 
# to access the Postgres database, 
# This account is created if it does not already exist. 
DRUPAL_PG_USER=drupaladmin 
DRUPAL_PG_PASS=portalSecret 

# Specify 'postgres' as the database. 
DEFAULT_DB=postgres 

# Specify the Drupal admin account details. 
# DO NOT set DEVPORTAL_ADMIN_USERNAME=admin. 
# The installer creates this user on the portal. 
DEVPORTAL_ADMIN_FIRSTNAME=firstName 
DEVPORTAL_ADMIN_LASTNAME=lastName 
DEVPORTAL_ADMIN_USERNAME=userName 
DEVPORTAL_ADMIN_PWD=pWord 
DEVPORTAL_ADMIN_EMAIL=foo@bar.com 

# Edge connection details. 
# If omitted, you can set them in the portal UI. 
# Specify the Edge organization associated with the portal. 
EDGE_ORG=edgeOrgName 

# Specify the URL of the Edge management API. 
# For a Cloud based installation of Edge, the URL is: 
# https://api.enterprise.apigee.com/v1 
# For a Private Cloud installation, it is in the form: 
# http://<ms_ip_or_DNS>:8080/v1 or 
# https://<ms_ip_or_DNS>:TLSport/v1 
MGMT_URL=https://api.enterprise.apigee.com/v1 

# The org admin credentials for the Edge organization in the form
# of Edge emailAddress:pword. 
# The portal uses this information to connect to Edge. 
DEVADMIN_USER=orgAdmin@myCorp.com 
DEVADMIN_PWD=pWord 

# The PHP port. 
# If omitted, it defaults to 8888. 
PHP_FPM_PORT=8888 

# Optionally configure the SMTP server used by the portal. 
# If you do, the properties SMTPHOST and SMTPPORT are required. 
# The others are optional with a default value as notated below. 
# SMTP hostname. For example, for the Gmail server, use smtp.gmail.com. 
SMTPHOST=smtp.gmail.com 

# Set the SMTP protocol as "standard", "ssl", or "tls",
# where "standard" corresponds to HTTP.
# Note that in previous releases, this setting was controlled by the 
# SMTPSSL property. That property has been deprecated. 
SMTP_PROTOCOL="standard" 

# SMTP port (usually 25). 
# The value can be different based on the selected encryption protocol. 
# For example, for Gmail, the port is 465 when using SSL and 587 for TLS. 
SMTPPORT=25 

# Username used for SMTP authentication, defaults is blank. 
SMTPUSER=your@email.com 

# Password used for SMTP authentication, default is blank. 
SMTPPASSWORD=yourEmailPassword

1. Tester votre connexion à Apigee Edge

Testez votre connexion au serveur de gestion Edge en exécutant la commande cURL suivante à partir d'une invite de commande sur le serveur du portail :

curl -u {EMAIL}:{PASSWORD} http://<ms_ip_or_DNS>:8080/v1/organizations/{ORGNAME}

ou :

curl -u {EMAIL}:{PASSWORD} https://<ms_ip_or_DNS>:TLSPort/v1/organizations/{ORGNAME}

Où EMAIL et PASSWORD sont l'adresse e-mail et le mot de passe de l'administrateur pour ORGNAME.

Veillez à spécifier le nom d'hôte et le numéro de port spécifiques à votre installation d'Edge. Le port 8080 est le port par défaut utilisé par Edge. Si vous vous connectez à une organisation dans le cloud, l'URL de la requête est : https://api.enterprise.apigee.com/v1/organizations/ORGNAME.

Si l'opération réussit, cette commande renvoie une réponse semblable à la suivante :

{
  "createdAt" : 1348689232699,
  "createdBy" : "USERNAME",
  "displayName" : "cg",
  "environments" : [ "test", "prod" ],
  "lastModifiedAt" : 1348689232699,
  "lastModifiedBy" : "foo@bar.com",
  "name" : "cg",
  "properties" : {
    "property" : [ ]
  },
  "type" : "trial"
}

2. Supprimer les versions de PHP antérieures à la version 7.0

Le script d'installation vérifie la présence de versions de PHP antérieures à la version 7.0 sur le système avant de lancer l'installation. Si des versions de PHP antérieures à la version 7.0 existent, le message d'avertissement suivant s'affiche :

The following packages present on your system conflict with software we are
about to install. You will need to manually remove each one, then re-run this install script.

php
php-cli
php-common
php-gd
php-mbstring
php-mysql
php-pdo
php-pear
php-pecl-apc
php-process
php-xml

Supprimez les packages PHP à l'aide de la commande suivante :

yum remove package-name

3. Installer Postgres

Le portail nécessite l'installation de Postgres avant de pouvoir installer le portail. Vous pouvez installer Postgres lors de l'installation d'Edge ou installer Postgres de manière autonome pour l'utiliser avec le portail.

  • Si vous vous connectez à Postgres installé dans le cadre d'Edge et que Postgres est configuré en mode maître/veille, spécifiez l'adresse IP du serveur Postgres maître.
  • Si vous installez Postgres de manière autonome, il peut se trouver sur le même nœud que le portail.

Pour en savoir plus sur l'installation de Postgres dans le cadre de l'installation d'Edge, consultez Installer des composants Edge sur un nœud.

Pour installer Postgres de manière autonome :

  1. Installez l'utilitaire Edge apigee-setup sur le nœud à l'aide de la procédure Internet ou non Internet. Pour en savoir plus, consultez Installer l'utilitaire apigee-setup d'Edge.
  2. Créez un fichier de configuration pour Postgres, comme indiqué ci-dessous :
    # Must resolve to IP address or DNS
        name of host - not to 127.0.0.1 or localhost.
        HOSTIP=$(hostname -i)
    
        # The pod and region of Postgres. Use the default values shown below.
        MP_POD=gateway
        REGION=dc-1
    
        # Set the Postgres password. The default value is 'postgres'.
        PG_PWD=postgres
  3. Dans l'invite de commande, exécutez le script de configuration pour installer Postgres :
    /opt/apigee/apigee-setup/bin/setup.sh -p pdb -f configFile

    L'option -p pdb spécifie l'installation de PostgreSQL. Le fichier de configuration doit être accessible ou lisible par l'utilisateur "apigee".

4. Installer le portail

Pour installer le portail :

  1. Installez l'utilitaire Edge apigee-setup sur le nœud à l'aide de la procédure Internet ou non Internet. Pour en savoir plus, consultez la section Installer l'utilitaire apigee-setup d'Edge.
  2. Assurez-vous d'avoir installé Postgres, soit de manière autonome, soit dans le cadre de l'installation d'Edge.
  3. À l'invite de commande, exécutez le script de configuration :
    /opt/apigee/apigee-setup/bin/setup.sh -p dp -f configFile

    L'option -p dp spécifie l'installation du portail.

    Le fichier de configuration doit être accessible ou lisible par l'utilisateur "apigee".

  4. Accédez à la page d'accueil du portail à l'adresse http://localhost:8079 ou au nom DNS de votre portail.
  5. Connectez-vous au portail à l'aide des identifiants d'administrateur que vous avez définis dans le fichier de configuration pour vous assurer que le portail fonctionne correctement.
  6. Sélectionnez Reports > Status Report (Rapports > Rapport d'état) dans le menu Drupal pour vous assurer que vous pouvez voir l'état actuel du portail.

5. Assurez-vous que le module Update manager est activé.

Pour recevoir des notifications de mises à jour Drupal, assurez-vous que le module Drupal Update Manager est activé. Dans le menu Drupal, sélectionnez Modules, puis faites défiler la page jusqu'au module Update manager (Gestionnaire de mises à jour). Si ce n'est pas le cas, activez-la.

Une fois cette option activée, vous pouvez afficher les mises à jour disponibles en sélectionnant l'élément de menu Rapports > Mises à jour disponibles. Vous pouvez également utiliser la commande Drush suivante :

drush pm-info update

Vous devez exécuter cette commande à partir du répertoire racine du site. Par défaut, le portail des développeurs est installé sur /opt/apigee/apigee-drupal/wwwroot. Par conséquent, vous devez d'abord accéder au répertoire /opt/apigee/apigee-drupal/wwwroot avant d'exécuter la commande. Si vous n'avez pas installé le portail dans le répertoire par défaut, accédez à votre répertoire d'installation.

Utilisez l'option de menu Reports > Available Updates > Settings (Rapports > Mises à jour disponibles > Paramètres) pour configurer le module afin qu'il vous envoie un e-mail lorsque des mises à jour sont disponibles et pour définir la fréquence de vérification des mises à jour.

6. Configurer le moteur de recherche Apache Solr (facultatif)

Par défaut, les modules Drupal qui se connectent au moteur de recherche Apache Solr sont désactivés lorsque vous installez le portail. La plupart des portails utilisent le moteur de recherche Drupal interne et ne nécessitent donc pas les modules Drupal Solr.

Si vous décidez d'utiliser Solr comme moteur de recherche, vous devez installer Solr localement sur votre serveur, puis activer et configurer les modules Drupal Solr sur le portail.

Pour activer les modules Drupal Solr, procédez comme suit :

  1. Connectez-vous à votre portail en tant qu'utilisateur disposant de droits d'administrateur ou de création de contenu.
  2. Sélectionnez Modules dans le menu Drupal.
  3. Activez les modules Apache Solr Framework et Apache Solr Search.
  4. Enregistrez les modifications.
  5. Configurez Solr comme décrit sur la page https://drupal.org/node/1999280.

7. Installer SmartDocs (facultatif)

SmartDocs vous permet de documenter vos API sur le portail des services pour les développeurs de manière à rendre la documentation de l'API entièrement interactive. Toutefois, pour utiliser SmartDocs avec le portail, vous devez d'abord installer SmartDocs sur Edge.

  • Si vous connectez le portail à une installation Edge Cloud, SmartDocs est déjà installé et aucune configuration supplémentaire n'est nécessaire.
  • Si vous connectez le portail à une installation Edge for Private Cloud, vous devez vous assurer que SmartDocs est installé sur Edge. Pour en savoir plus sur l'installation d'Edge et de SmartDocs, consultez Installer SmartDocs.

Vous devez également activer SmartDocs sur le portail. Pour en savoir plus sur SmartDocs, consultez Utiliser SmartDocs pour documenter des API.

8. Configurer le module JQuery Update pour les installations hors Internet (facultatif)

Si vous installez et utilisez le module JQuery Update dans une installation sans connexion Internet, vous devez configurer le module pour qu'il utilise la version locale de JQuery. Si vous configurez le module pour qu'il utilise un CDN pour une installation hors Internet, il tentera d'accéder au CDN et entraînera des retards de chargement de page. Pour en savoir plus sur le module JQuery Update, consultez https://www.drupal.org/project/jquery_update.

Pour configurer le module JQuery Update afin qu'il utilise la version locale de JQuery :

  1. Connectez-vous à votre portail en tant qu'utilisateur disposant de droits d'administrateur ou de création de contenu.
  2. Dans le menu Drupal, sélectionnez Configuration > Development > JQuery Update (Configuration > Développement > Mise à jour JQuery).
  3. Cliquez sur Performances dans le menu de navigation de gauche.
  4. Dans le menu déroulant "JQuery and JQuery UI CDN", sélectionnez None (Aucun).
  5. Cliquez sur Enregistrer la configuration.

9. Et maintenant ?

Après avoir installé le portail des services pour les développeurs, vous devez le configurer et le personnaliser en fonction de vos besoins spécifiques. La documentation sur le site Web d'Apigee contient toutes les informations sur la configuration, l'application de styles et la gestion d'un portail. Accédez à la documentation sur http://apigee.com/docs/developer-services/content/what-developer-portal.

Le tableau suivant répertorie certaines des tâches les plus courantes que vous effectuez après l'installation, et inclut des liens vers la documentation Apigee où vous trouverez plus d'informations :

Tâche Description

Personnaliser le thème

Le thème définit l'apparence du portail, y compris les couleurs, le style et d'autres aspects visuels.

Personnaliser l'apparence

La page d'accueil comprend le menu principal, le message de bienvenue, l'en-tête, le pied de page et le titre.

Ajouter et gérer des comptes utilisateur

Le processus d'enregistrement contrôle la manière dont les nouveaux développeurs enregistrent un compte sur le portail. Par exemple, les nouveaux développeurs ont-ils un accès immédiat au portail ou doivent-ils être validés par un administrateur ? Ce processus contrôle également la manière dont un administrateur du portail est averti lorsqu'un compte est créé.

Configurer la messagerie

Le portail envoie des e-mails en réponse à certains événements. Par exemple, lorsqu'un nouveau développeur s'inscrit sur le portail et lorsqu'un développeur perd son mot de passe.

Ajouter et gérer des comptes utilisateur

Ajoutez une page de conditions d'utilisation que les développeurs doivent accepter avant d'être autorisés à accéder au portail.

Ajouter et gérer des comptes utilisateur

Le portail met en œuvre un modèle d'autorisation basé sur les rôles. Avant d'autoriser les développeurs à s'enregistrer, définissez les autorisations et les rôles utilisés par le portail.

Ajouter des articles de blog et des posts de forum

Le portail intègre la prise en charge des blogs et des forums de discussion. Définissez les autorisations requises pour afficher, ajouter, modifier et supprimer des posts de blog et de forum.

Assurez-vous d'effectuer des sauvegardes de la base de données

Assurez-vous de sauvegarder la base de données Drupal. Notez que chaque installation étant différente, il vous appartient de déterminer la meilleure façon de sauvegarder la base de données.

Remarque : Le module Backup and Migrate n'est pas compatible avec les bases de données Postgres.

Consultez également Effectuer une sauvegarde.

Configurer un nom d'hôte

Si vous ne configurez pas de nom d'hôte sur votre serveur DNS, vous pouvez toujours accéder au site via l'adresse IP du serveur. Si vous souhaitez utiliser un nom d'hôte, vous pouvez configurer le DNS pour le serveur, ce qui devrait fonctionner correctement sans autre configuration sur une configuration de base.

Si vous avez configuré un équilibreur de charge ou si vous obtenez des URL incorrectes sur votre site pour une autre raison, vous pouvez définir $base_url pour Drupal en procédant comme suit :

  1. Créez le répertoire /opt/apigee/data/apigee-drupal-devportal/sites/default/includes s'il n'existe pas.
  2. Créez un fichier nommé settings.php dans ce répertoire.
  3. Ajoutez ce qui suit au fichier settings.php.
    /**
    * Base URL (optional).
    *
    * If Drupal is generating incorrect URLs on your site, which could
    * be in HTML headers (links to CSS and JS files) or visible links
    * on pages (such as in menus), uncomment the Base URL statement
    * below (remove the leading hash sign) and fill in the absolute URL
    * to your Drupal installation.
    *
    * You might also want to force users to use a given domain.
    * See the .htaccess file for more information.
    *
    * Examples:
    *   $base_url = 'http://www.example.com';
    *   $base_url = 'http://www.example.com:8888';
    *   $base_url = 'http://www.example.com/drupal';
    *   $base_url = 'https://www.example.com:8888/drupal';
    *
    * It is not allowed to have a trailing slash; Drupal will add it
    * for you.
    */
    # $base_url = 'http://www.example.com/';  // NO trailing slash!
    $base_url = ‘http://www.example.com’;
  4. Remplacez la dernière ligne $base_url par le nom d'hôte de votre site.
  5. Enregistrez le fichier.

Notez que vous pouvez placer n'importe quel autre paramètre de /opt/apigee/data/apigee-drupal-devportal/ sites/default/default.settings.php dans ce fichier.

Pour en savoir plus sur la propriété $base_url, consultez les ressources suivantes :

Développement personnalisé Vous pouvez également étendre les fonctionnalités de votre portail avec du code personnalisé en dehors de votre thème. Pour ce faire, créez votre propre module Drupal comme décrit dans les rubriques de développement de modules de Drupal, puis placez le module dans le répertoire /sites/all/modules.