Mettre à niveau le portail des services pour les développeurs

Portail des services pour les développeurs version 4.17.09

Cette procédure explique comment mettre à niveau une installation sur site Apigee Developer Channel Services existante.

Déterminer la procédure de mise à jour appropriée

La procédure à suivre pour mettre à jour le portail dépend de votre installation actuelle:

Déterminer votre type d'installation actuel

Si vous n'êtes pas sûr de votre type d'installation actuel, utilisez la commande suivante pour le déterminer:

  • ls /opt

    Si vous utilisez Nginx/Postgres, les répertoires suivants s'affichent : /opt/apigee et /opt/nginx.

    Si vous utilisez Apache/MySQL ou Apache/MariaDB, ces répertoires ne doivent pas être présents.

  • /opt/apigee/apigee-service/bin/apigee-all status

    Si vous utilisez Nginx/Postgres, le résultat suivant s'affiche:

    + apigee-service
      apigee-drupal-devportal status
      OK: apigee-drupal-devportal is up and running
      + apigee-service apigee-lb status
      apigee-service: apigee-lb: OK
      + apigee-service apigee-postgresql status
      apigee-service: apigee-postgresql: OK
  • apachectl -S

    Si vous utilisez Apache/MySQL ou Apache/MariaDB, cette commande doit renvoyer le répertoire racine Web du portail, au format suivant:

    *:80
      192.168.56.102
      (/etc/httpd/conf/vhosts/devportal.conf:1)

Répertoire d'installation par défaut

La mise à niveau suppose que le portail des développeurs a été installé à l'adresse suivante:

  • 4.17.05 et versions ultérieures: /opt/apigee/apigee-drupal/wwwroot
  • Avant la version 4.17.05: /opt/apigee/apigee-drupal (Nginx) ou /var/www/html (Apache)

Si vous n'avez pas installé le portail dans le répertoire par défaut, modifiez les chemins d'accès dans la procédure ci-dessous pour utiliser votre répertoire d'installation.

Versions de mise à niveau compatibles

Cette procédure de mise à niveau est compatible avec les versions suivantes du portail:

  • OPDK-17-01.x
  • OPDK-17-05.x

Pour déterminer la version de votre portail, ouvrez l'URL suivante dans un navigateur:

http://your_portal.com/buildInfo

Avant la mise à jour

Pour les installations existantes, si vous avez modifié du code dans le noyau Drupal ou dans des modules non personnalisés, vos modifications seront écrasées. Cela inclut, entre autres, toutes les modifications que vous avez apportées à .htaccess. Vous devez supposer que tout élément en dehors du répertoire /sites appartient à Drupal. robots.txt est une exception à cette règle. Si ce fichier existe dans la racine du site Web, il sera conservé.

Avant de procéder à l'installation, créez une sauvegarde de l'intégralité de votre répertoire racine Web Drupal. Après avoir suivi la procédure d'installation décrite ci-dessous, vous pouvez restaurer vos personnalisations à partir de la sauvegarde.

Mettre à niveau un portail à l'aide de RPM

Procédez comme suit pour mettre à jour le RPM du portail sur un nœud:

  1. Accédez au répertoire Drupal. Par exemple, /opt/apigee/apigee-drupal/wwwroot.

    cd /opt/apigee/apigee-drupal/wwwroot

    Pour connaître le répertoire par défaut de votre version de produit, consultez la section Répertoire d'installation par défaut.

  2. Sauvegardez votre instance de base de données Drupal. La commande pg_dump crée une copie de la base de données:
    pg_dump --dbname=devportal --host=192.168.56.101
      --username=drupaladmin --password --format=c > /tmp/portal.dmp

    où :

    • dbname spécifie le nom de la base de données tel que spécifié par la propriété PG_NAME dans le fichier de configuration d'installation du portail.
    • host spécifie l'adresse IP du nœud du portail.
    • username spécifie le nom d'utilisateur Postgres utilisé par le portail pour accéder à la base de données, comme indiqué par la propriété DRUPAL_PG_USER dans le fichier de configuration d'installation du portail.
    • Vous êtes invité à saisir le mot de passe utilisateur Postgres tel que défini par la propriété DRUPAL_PG_PASS dans le fichier de configuration d'installation du portail.

    Si vous devez restaurer à partir de la sauvegarde ultérieurement, utilisez la commande suivante:

    pg_restore --clean --dbname=devportal --host=localhost  --username=apigee < /tmp/portal.dmp
  3. Créez une sauvegarde de l'intégralité de votre répertoire racine Web Drupal. L'emplacement d'installation par défaut est /opt/apigee/apigee-drupal, mais vous l'avez peut-être modifié.
    Si vous n'êtes pas sûr de l'emplacement de ce répertoire, utilisez la commande drush status ou l'entrée Configuration > Media > File (Configuration > Media > Fichier) dans le menu Drupal pour déterminer l'emplacement du système de fichiers public et du système de fichiers privé (à l'étape suivante).
  4. Créez une sauvegarde des fichiers dans /opt/apigee/data/apigee-drupal-devportal/private.
  5. Définissez Drupal en mode maintenance :
    1. Sélectionnez Configuration dans le menu Drupal.
    2. Sur la page Configuration, sélectionnez Mode maintenance sous Développement.
    3. Cochez la case Mettre le site en mode maintenance.
    4. Saisissez un message que les utilisateurs verront pendant la maintenance.
    5. Sélectionnez Enregistrer la configuration.
  6. Désactivez SELinux comme décrit dans la section Installer l'utilitaire apigee-setup Edge.
  7. Accédez au répertoire /opt :
    cd /opt
  8. Pour effectuer une mise à niveau sur un serveur connecté à Internet:
    1. Téléchargez le fichier bootstrap_4.17.09.sh d'Edge 4.17.09 dans /tmp/bootstrap_4.17.09.sh :
      curl https://software.apigee.com/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh
    2. Installez l'utilitaire Edge 4.17.09 apigee-service et les dépendances :
      sudo bash /tmp/bootstrap_4.17.09.sh apigeeuser=uName
        apigeepassword=pWord

      uName:pWord correspond au nom d'utilisateur et au mot de passe que vous avez reçus d'Apigee. Si vous omettez pWord, vous serez invité à le saisir.

      Par défaut, le programme d'installation vérifie que Java 1.8 est installé. Vous pouvez utiliser l'option C pour continuer sans installer Java.

  9. Pour une mise à niveau sur un serveur sans connexion Internet:
    1. Créez un dépôt local 4.17.09 comme décrit dans la section "Créer un dépôt Apigee local" de la page Installer l'utilitaire apigee-setup Edge.
    2. Pour installer apigee-service à partir d'un fichier .tar :
      1. Sur le nœud avec le dépôt local, utilisez la commande suivante pour empaqueter le dépôt local dans un seul fichier .tar nommé /opt/apigee/data/apigee-mirror/apigee-4.17.09.tar.gz :
        /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
      2. Copiez le fichier .tar sur le nœud où vous souhaitez mettre à jour Edge. Par exemple, copiez-le dans le répertoire /tmp du nouveau nœud.
      3. Sur le nouveau nœud, décompressez le fichier dans le répertoire /tmp:
        tar -xzf apigee-4.17.09.tar.gz

        Cette commande crée un répertoire nommé "repos" dans le répertoire contenant le fichier .tar. Par exemple, /tmp/repos.

      4. Installez l'utilitaire apigee-service Edge et les dépendances à partir de /tmp/repos :
        sudo bash /tmp/repos/bootstrap_4.17.09.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

        Notez que vous incluez dans cette commande le chemin d'accès au répertoire "dépôts".

    3. Pour installer apigee-service à l'aide du serveur Web Nginx:
      1. Configurez le serveur Web Nginx comme décrit dans la section "Installer à partir du dépôt à l'aide du serveur Web Nginx" de la section Installer l'utilitaire Edge de configuration Apigee.
      2. Sur le nœud distant, téléchargez le fichier bootstrap_4.17.09.sh d'Edge dans /tmp/bootstrap_4.17.09.sh :
        /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.17.09.sh
          -o /tmp/bootstrap_4.17.09.sh

        uName:pWord correspond au nom d'utilisateur et au mot de passe que vous avez définis ci-dessus pour le dépôt, et remoteRepo à l'adresse IP ou au nom DNS du nœud du dépôt.

      3. Sur le nœud distant, installez l'utilitaire Edge apigee-service et les dépendances:code
        sudo bash /tmp/bootstrap_4.17.09.sh apigeerepohost=remoteRepo:3939
          apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://

        uName:pWord est le nom d'utilisateur et le mot de passe du dépôt.

  10. Utilisez apigee-service pour mettre à jour l'utilitaire apigee-setup :
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
  11. Exécutez l'utilitaire de mise à jour sur votre nœud pour mettre à jour la base de données PostgreSQL:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile

    configFile est le fichier de configuration que vous avez utilisé pour installer la base de données Postgres. La seule exigence concernant le fichier de configuration est qu'il doit être accessible ou lisible par l'utilisateur "apigee".

  12. Démarrez Postgres:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql start
  13. Exécutez l'utilitaire de mise à jour sur votre nœud pour mettre à jour le portail :
    /opt/apigee/apigee-setup/bin/update.sh -c dp -f configFile

    configFile est le fichier de configuration que vous avez utilisé pour installer le portail. La seule condition requise concernant le fichier de configuration est que celui-ci doit être accessible ou lisible par l'utilisateur "apigee".

  14. Exécutez le script update.php de Drupal en ouvrant l'URL suivante dans une fenêtre de navigateur :
    http://portalIP_DNS:8079/update.php
  15. Désactivez Drupal en mode maintenance :
    1. Sélectionnez Configuration dans le menu Drupal.
    2. Sur la page Configuration, sélectionnez Mode de maintenance sous Développement.
    3. Décochez la case Mettre le site en mode maintenance.
    4. Sélectionnez Enregistrer la configuration.

Notez que le répertoire racine après la mise à jour est le suivant:

/opt/apigee/apigee-drupal/wwwroot

La migration est maintenant terminée.