Portal aktualisieren

Edge for Private Cloud Version 4.19.01

In diesem Verfahren wird beschrieben, wie Sie für eine vorhandene lokale Installation von Apigee Developer Services-Portal (oder einfach das Portal) ein Upgrade durchführen.

Richtiges Update-Verfahren bestimmen

Das Verfahren, mit dem Sie das Portal aktualisieren, hängt von Ihrer aktuellen Installation ab:

Aktuellen Installationstyp ermitteln

Wenn Sie Ihren aktuellen Installationstyp nicht kennen, können Sie ihn mit dem folgenden Befehl ermitteln:

  • ls /opt

    Wenn Sie Nginx/Postgres verwenden, sehen Sie die folgenden Verzeichnisse: /opt/apigee und /opt/nginx.

    Wenn Sie Apache/MySQL oder Apache/MariaDB verwenden, sollten diese Verzeichnisse nicht vorhanden sein.

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

    Wenn Sie Nginx/Postgres verwenden, sehen Sie die folgende Ausgabe:

    + 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

    Wenn Sie Apache/MySQL oder Apache/MariaDB verwenden, sollte dieser Befehl das Webstammverzeichnis des Portals in folgendem Format zurückgeben:

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

Standardinstallationsverzeichnis

Beim Upgradeprozess wird davon ausgegangen, dass das Portal installiert wurde unter:

  • 4.17.05 und höher: /opt/apigee/apigee-drupal/wwwroot
  • Vor 4.17.05: /opt/apigee/apigee-drupal (Nginx) oder /var/www/html (Apache)

Wenn Sie das Portal nicht im Standardverzeichnis installiert haben, ändern Sie die Pfade so, dass Ihr Installationsverzeichnis verwendet wird.

Unterstützte Upgradeversionen

Dieses Upgradeverfahren wird für die folgenden Versionen des Portals unterstützt:

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

Um Ihre Portalversion zu ermitteln, öffnen Sie die folgende URL in einem Browser:

http://yourportal.com/buildInfo

Vor der Aktualisierung

Wenn Sie bei vorhandenen Installationen Code im Drupal-Kern oder in einem nicht benutzerdefinierten Modul geändert haben, werden Ihre Änderungen überschrieben. Dazu gehören unter anderem alle Änderungen, die Sie an .htaccess vorgenommen haben. Sie sollten davon ausgehen, dass alle Inhalte außerhalb des Verzeichnisses /sites zu Drupal gehören. Eine Ausnahme von dieser Regel ist robots.txt. Wenn diese Datei im Webstamm vorhanden ist, wird sie für Sie beibehalten.

Erstelle eine Sicherung deines gesamten Drupal-Webstammverzeichnisses, bevor du mit der Installation fortfährst. Nachdem Sie die unten beschriebenen Installationsschritte ausgeführt haben, können Sie Ihre Anpassungen aus der Sicherung wiederherstellen.

Portal mit RPMs upgraden

So aktualisieren Sie den Portal-RPM auf einem Knoten:

  1. Wechseln Sie standardmäßig zum Drupal-Verzeichnis /opt/apigee/apigee-drupal:
    cd /opt/apigee/apigee-drupal
  2. Sichern Sie Ihre Drupal-Datenbankinstanz. Mit dem Befehl pg_dump wird eine Kopie der Datenbank erstellt:
    pg_dump --dbname=devportal --host=host_IP_address --username=drupaladmin
      --password --format=c > /tmp/portal.dmp

    Wobei:

    • devportal ist der Datenbankname, wie im Attribut PG_NAME in der Konfigurationsdatei der Portalinstallation angegeben.
    • host_IP_address ist die IP-Adresse des Portalknotens.
    • drupaladmin ist der Postgres-Nutzername, der vom Portal für den Zugriff auf die Datenbank verwendet wird, wie im Attribut DRUPAL_PG_USER in der Konfigurationsdatei für die Portalinstallation angegeben.

    Sie werden aufgefordert, das Passwort des Postgres-Nutzers einzugeben, wie es in der Konfigurationsdatei der Portalinstallation im Attribut DRUPAL_PG_PASS definiert ist.

    Wenn Sie später Daten aus der Sicherung wiederherstellen möchten, verwenden Sie den folgenden Befehl:

    pg_restore --clean --dbname=devportal --host=localhost  --username=apigee < /tmp/portal.dmp
  3. Erstellen Sie eine Sicherung Ihres gesamten Drupal-Webstammverzeichnisses. Der Standardspeicherort ist /opt/apigee/apigee-drupal. Möglicherweise hast du ihn aber geändert.

    Wenn Sie sich nicht sicher sind, wo dieses Verzeichnis gespeichert ist, verwenden Sie den Befehl drush status oder den Eintrag Konfiguration > Medien > Datei im Drupal-Menü, um den Speicherort des öffentlichen Dateisystems und des privaten Dateisystems (für den nächsten Schritt) zu ermitteln.

  4. Erstelle eine Sicherung der Dateien in /opt/apigee/data/apigee-drupal-devportal/private.
  5. Legen Sie für Drupal den Wartungsmodus fest:
    1. Wählen Sie im Drupal-Menü Konfiguration aus.
    2. Wählen Sie auf der Seite Konfiguration unter Entwicklung die Option Wartungsmodus aus.
    3. Klicken Sie auf das Kästchen Versetzen Sie die Website in den Wartungsmodus.
    4. Geben Sie eine Nachricht ein, die Nutzer während der Wartung sehen.
    5. Wählen Sie Konfiguration speichern aus.
  6. Deaktivieren Sie SELinux wie unter Das Edge-Dienstprogramm für die Apigee-Einrichtung installieren beschrieben.
  7. Wechseln Sie zum Verzeichnis /opt:
    cd /opt
  8. Upgrade auf einem Server mit Internetverbindung:
    1. Laden Sie die Datei bootstrap_4.19.01.sh von Edge 4.19.01 in /tmp/bootstrap_4.19.01.sh herunter:
      curl https://software.apigee.com/bootstrap_4.19.01.sh -o /tmp/bootstrap_4.19.01.sh
    2. Installieren Sie das apigee-service-Dienstprogramm von Edge 4.19.01 und die Abhängigkeiten:
      sudo bash /tmp/bootstrap_4.19.01.sh apigeeuser=uName apigeepassword=pWord

      Dabei sind uName und pWord der Nutzername und das Passwort, die Sie von Apigee erhalten haben. Wenn Sie pWord weglassen, werden Sie aufgefordert, ihn einzugeben.

      Das Installationsprogramm prüft standardmäßig, ob Java 1.8 installiert ist. Mit der Option „C“ können Sie fortfahren, ohne Java zu installieren.

  9. Für ein Upgrade auf einem Server ohne Internetverbindung:
    1. Erstellen Sie ein lokales 4.19.01-Repository, wie unter Lokales Apigee-Repository erstellen beschrieben.
    2. So installieren Sie den Apigee-Dienst aus einer TAR-Datei:
      1. Verwenden Sie auf dem Knoten mit dem lokalen Repository den folgenden Befehl, um das lokale Repository in eine einzelne TAR-Datei mit dem Namen /opt/apigee/data/apigee-mirror/apigee-4.19.01.tar.gz zu verpacken:
        /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
      2. Kopieren Sie die TAR-Datei auf den Knoten, in dem Sie Edge aktualisieren möchten. Kopieren Sie ihn beispielsweise in das Verzeichnis /tmp auf dem neuen Knoten.
      3. Entpacken Sie die Datei auf dem neuen Knoten in das /tmp-Verzeichnis:
        tar -xzf apigee-4.19.01.tar.gz

        Mit diesem Befehl wird in dem Verzeichnis, das die TAR-Datei enthält, ein neues Verzeichnis namens repos erstellt. Beispiel: /tmp/repos.

      4. Installieren Sie das Edge-Dienstprogramm apigee-service und Abhängigkeiten von /tmp/repos:
        sudo bash /tmp/repos/bootstrap_4.19.01.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

        Beachten Sie, dass Sie den Pfad zum Repository-Verzeichnis in diesen Befehl aufnehmen.

    3. So installieren Sie den Apigee-Dienst mit dem Nginx-Webserver:
      1. Konfigurieren Sie den Nginx-Webserver wie unter „Vom Repository mithilfe des Nginx-Webservers installieren“ unter Das Edge-Dienstprogramm Apigee-Setup installieren beschrieben.
      2. Laden Sie auf dem Remote-Knoten die Edge-bootstrap_4.19.01.sh-Datei in /tmp/bootstrap_4.19.01.sh herunter:
        /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.19.01.sh
          -o /tmp/bootstrap_4.19.01.sh

        Dabei sind uName und pWord der Nutzername und das Passwort, die Sie oben für das Repository festgelegt haben, und remoteRepo die IP-Adresse oder der DNS-Name des Repository-Knotens.

      3. Installieren Sie auf dem Remote-Knoten das Edge-Dienstprogramm apigee-service und die Abhängigkeiten:
        sudo bash /tmp/bootstrap_4.19.01.sh apigeerepohost=remoteRepo:3939
          apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://

        Dabei sind uName und pWord der Nutzername und das Passwort für das Repository.

  10. Verwenden Sie apigee-service, um das Dienstprogramm apigee-setup zu aktualisieren:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
  11. Führen Sie das Dienstprogramm zur Aktualisierung auf Ihrem Postgres-Knoten aus:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile

    Dabei ist configFile die Konfigurationsdatei, mit der Sie die Postgres-Datenbank installiert haben. Die einzige Anforderung an die Konfigurationsdatei besteht darin, dass die Konfigurationsdatei für den „apigee“-Benutzer zugänglich oder lesbar sein muss.

  12. Führen Sie das Dienstprogramm zur Aktualisierung auf Ihrem Knoten aus, um das Portal zu aktualisieren:
    /opt/apigee/apigee-setup/bin/update.sh -c dp -f configFile

    Dabei ist configFile die Konfigurationsdatei, mit der Sie das Portal installiert haben. Die einzige Anforderung an die Konfigurationsdatei besteht darin, dass die Konfigurationsdatei für den „apigee“-Benutzer zugänglich oder lesbar sein muss.

  13. Führen Sie das Drupal-Skript update.php aus. Öffnen Sie dazu die folgende URL in einem Browserfenster:
    http://portal_IP_DNS:8079/update.php
  14. Deaktivieren Sie den Wartungsmodus:
    1. Wählen Sie im Drupal-Menü Konfiguration aus.
    2. Wählen Sie auf der Seite Konfiguration unter Entwicklung die Option Wartungsmodus aus.
    3. Entfernen Sie das Häkchen neben Website in Wartungsmodus versetzen.
    4. Wählen Sie Konfiguration speichern aus.

Beachten Sie, dass das Stammverzeichnis nach der Aktualisierung wie folgt lautet:

/opt/apigee/apigee-drupal/wwwroot

Die Umstellung ist jetzt abgeschlossen. Wenn das Apigee-Aktualisierungsdienstprogramm ein Downgrade Ihrer Drupal-Version durchgeführt hat, müssen Sie das Drupal-Upgrade-Dienstprogramm möglicherweise noch einmal ausführen. Weitere Informationen finden Sie unter Drupal-Upgrade noch einmal ausführen.

Drupal-Upgrade noch einmal ausführen

Wenn das Ausführen des Apigee-Aktualisierungsdienstprogramms zum Aktualisieren von Edge für Private Cloud tatsächlich zu einem Downgrade Ihrer Drupal-Version führt, installieren Sie das Drupal-Upgrade erneut. Das kann der Fall sein, wenn Sie zwischen den Aktualisierungen der Private Cloud nur Drupal aktualisiert haben.

Beispiel:

  1. Sie haben Version 4.18.05 von Edge for Private Cloud ausgeführt, die Drupal 7.59 enthielt.
  2. Du hast Drupal aufgrund eines erforderlichen Sicherheitsupdates auf 7.64 aktualisiert.
  3. Sie führen jetzt ein Upgrade der Private Cloud auf 4.19.01 durch, die Drupal 7.61 enthält.

Wie dieser Fall zeigt, verweist die vom Apigee-Aktualisierungsdienstprogramm verwendete Drupal-Version möglicherweise nicht auf das neueste Drupal-Upgrade. Daher musst du dein Drupal-Upgrade jetzt noch einmal ausführen, um deine Drupal-Installation auf die aktuellere Version zurückzusetzen.