Lernprogramm: Migrieren eines WebLogic Server-Clusters zu Azure mit Azure-App lizenzierungsgateway als Lastenausgleichsmodul

Dieses Tutorial führt Sie durch den Prozess der Bereitstellung von WebLogic Server (WLS) mit Azure Application Gateway. Es behandelt die spezifischen Schritte zum Erstellen einer Key Vault-Instanz, zum Speichern eines TLS-/SSL-Zertifikats in der Key Vault-Instanz und zum Verwenden dieses Zertifikats für die TLS-/SSL-Terminierung. Diese einzelnen Elemente sind zwar jeweils gut dokumentiert, aber in diesem Tutorial wird gezeigt, wie alle diese Elemente zusammen eine einfache, aber leistungsfähige Lastenausgleichslösung für WLS in Azure bilden.

Diagram showing the relationship between WLS, App Gateway, and Key Vault.

Der Lastenausgleich ist ein wesentlicher Bestandteil der Migration Ihres Oracle WebLogic Server-Clusters zu Azure. Die einfachste Lösung besteht darin, die integrierte Unterstützung für Azure Application Gateway zu verwenden. App Gateway ist als Teil der WebLogic-Clusterunterstützung in Azure enthalten. Eine Übersicht über die Unterstützung von WebLogic-Clustern in Azure finden Sie unter Was ist Oracle WebLogic Server in Azure?.

In diesem Tutorial lernen Sie Folgendes:

  • Auswählen, wie das TLS-/SSL-Zertifikat für App Gateway bereitgestellt wird
  • Bereitstellen von WebLogic Server mit Azure Application Gateway in Azure
  • Überprüfen der erfolgreichen Bereitstellung von WLS und App Gateway

Voraussetzungen

  • OpenSSL auf einem Computer, auf dem eine UNIX-ähnliche Befehlszeilenumgebung ausgeführt wird.

    Zwar gibt es möglicherweise andere Tools für die Zertifikatverwaltung, in diesem Tutorial wird aber OpenSSL verwendet. OpenSSL gehört zu vielen GNU/Linux-Distributionen, so z. B. Ubuntu.

  • Ein aktives Azure-Abonnement.

  • Die Fähigkeit, eine der in Oracle WebLogic Server: Azure-Anwendungen aufgeführten WLS-Azure-Anwendungen bereitzustellen.

Migrationskontext

Hier werden einige Punkte erläutert, die im Zusammenhang mit der Migration von lokalen WLS-Installationen und Azure Application Gateway zu beachten sind. Die Schritte in diesem Tutorial sind die einfachste Möglichkeit, einen Lastenausgleich vor Ihrem WebLogic Server-Cluster in Azure einzurichten, allerdings gibt es noch zahlreiche weitere Möglichkeiten. Diese Liste enthält weitere Aspekte, die zu berücksichtigen sind.

Bereitstellen von WebLogic Server mit Application Gateway in Azure

In diesem Abschnitt erfahren Sie, wie Sie einen WLS-Cluster mit automatisch erstellter Azure Application Gateway-Instanz als Lastenausgleich für die Clusterknoten bereitstellen. Application Gateway verwendet das bereitgestellte TLS-/SSL-Zertifikat für die TLS-/SSL-Terminierung. Ausführlichere Informationen zur TLS-/SSL-Terminierung mit Application Gateway finden Sie in der Übersicht über TLS-Beendigung und End-to-End-TLS mit Application Gateway.

Führen Sie die folgenden Schritte aus, um den WLS-Cluster und eine Application Gateway-Instanz zu erstellen:

Stellen Sie zunächst einen WebLogic Server-Cluster (konfiguriert oder dynamisch) bereit, wie in der Oracle-Dokumentation beschrieben. Kehren Sie jedoch zu dieser Seite zurück, wenn Sie Azure Application Gateway erreichen, wie hier zu sehen:

Azure portal screenshot showing the Azure Application Gateway.

Auswählen, wie das TLS-/SSL-Zertifikat für App Gateway bereitgestellt wird

Sie haben mehrere Möglichkeiten, das TLS-/SSL-Zertifikat für Application Gateway bereitzustellen, müssen sich aber für eine der Möglichkeiten entscheiden. In diesem Abschnitt werden die einzelnen Optionen erläutert, damit Sie die für Ihre Bereitstellung am besten geeignete Option auswählen können.

Option 1: Hochladen eines TLS-/SSL-Zertifikats

Diese Option eignet sich für Produktionsworkloads, bei denen App Gateway mit dem öffentlichen Internet verbunden ist, oder für Intranetworkloads, die TLS/SSL erfordern. Bei Verwendung dieser Option wird automatisch eine Azure Key Vault-Instanz bereitgestellt, die das von App Gateway verwendete TLS-/SSL-Zertifikat enthält.

Gehen Sie wie folgt vor, um ein vorhandenes, signiertes TLS-/SSL-Zertifikat hochzuladen:

  1. Führen Sie die Schritte Ihres Zertifikatausstellers zum Erstellen eines kennwortgeschützten TLS-/SSL-Zertifikats aus, und geben Sie den DNS-Namen für das Zertifikat an. Die Entscheidung zwischen einem Platzhalterzertifikat und einem Einzelnamenzertifikat wird in diesem Dokument nicht erläutert. Beide Optionen können verwendet werden.
  2. Exportieren Sie das Zertifikat Ihres Ausstellers unter Verwendung des PFX-Dateiformats, und laden Sie es auf Ihren lokalen Computer herunter. Sollte Ihr Aussteller das Exportieren als PFX-Datei nicht unterstützt, stehen verschiedene Tools zur Verfügung, mit denen sich diverse Zertifikatformate in das PFX-Format konvertieren lassen.
  3. Wählen Sie den Abschnitt Azure Application Gateway aus.
  4. Wählen Sie neben Connect to Azure Application Gateway (Mit Azure Application Gateway verbinden) die Option Ja aus.
  5. Wählen Sie Upload an SSL certificate (SSL-Zertifikat hochladen) aus.
  6. Wählen Sie für das Feld SSL-Zertifikat das Dateibrowsersymbol aus. Navigieren Sie zum heruntergeladenen Zertifikat im PFX-Format, und wählen Sie Öffnen aus.
  7. Geben Sie in den Feldern Kennwort und Kennwort bestätigen das Kennwort für das Zertifikat ein.
  8. Wählen Sie aus, ob direkter öffentlicher Datenverkehr für die Knoten der verwalteten Server verweigert werden soll. Wenn Sie Ja auswählen, kann auf die verwalteten Server nur über App Gateway zugegriffen werden.

Auswählen der DNS-Konfiguration

TLS-/SSL-Zertifikate werden beim Ausstellen durch den Zertifikataussteller einem DNS-Domänennamen zugeordnet. Führen Sie die Schritte in diesem Abschnitt aus, um die Bereitstellung mit dem DNS-Namen für das Zertifikat zu konfigurieren. Sie können eine bereits erstellte DNS-Zone verwenden oder eine Zone durch die Bereitstellung erstellen lassen. Wählen Sie den Abschnitt DNS-Konfiguration aus, um den Vorgang fortzusetzen.

Verwenden einer bereits vorhandenen Azure DNS-Zone

Führen Sie die folgenden Schritte aus, um eine bereits vorhandene Azure DNS-Zone mit App Gateway zu verwenden:

  1. Wählen Sie neben Configure Custom DNS Alias (Benutzerdefinierten DNS-Alias konfigurieren) die Option Ja aus.
  2. Wählen Sie neben Use an existing Azure DNS Zone (Vorhandene Azure DNS-Zone verwenden) die Option Ja aus.
  3. Geben Sie neben DNS Zone Name (Name der DNS-Zone) den Namen der Azure DNS-Zone ein.
  4. Geben Sie die Ressourcengruppe ein, die die Azure DNS-Zone aus dem vorherigen Schritt enthält.

Ermöglichen der Erstellung einer neuen Azure DNS-Zone durch die Bereitstellung

Führen Sie die folgenden Schritte aus, um eine Azure DNS-Zone für die Verwendung mit App Gateway zu erstellen:

  1. Wählen Sie neben Configure Custom DNS Alias (Benutzerdefinierten DNS-Alias konfigurieren) die Option Ja aus.
  2. Wählen Sie neben Use an existing Azure DNS Zone (Vorhandene Azure DNS-Zone verwenden) die Option Nein aus.
  3. Geben Sie neben DNS Zone Name (Name der DNS-Zone) den Namen der Azure DNS-Zone ein. Daraufhin wird in der Ressourcengruppe, in der sich auch WLS befindet, eine neue DNS-Zone erstellt.

Geben Sie abschließend die Namen für die untergeordneten DNS-Zonen an. Durch die Bereitstellung werden zwei untergeordnete DNS-Zonen für die Verwendung mit WLS erstellt: eine für die Verwaltungskonsole und eine für App Gateway. Wenn der Name Ihrer DNS-Zone also beispielsweise „contoso.net“ lautet, können Sie admin und app als Werte eingeben. Die Verwaltungskonsole wäre dann unter „admin.contoso.net“ verfügbar und die App Gateway-Instanz unter „app.contoso.net“. Vergessen Sie nicht, die DNS-Delegierung wie unter Delegieren von DNS-Zonen mit Azure DNS beschrieben einzurichten.

Azure portal screenshot showing fields for child DNS zones.

Die anderen Optionen zum Bereitstellen eines TLS-/SSL-Zertifikats für App Gateway werden in den folgenden Abschnitten ausführlich beschrieben. Wenn Sie mit der gewählten Option zufrieden sind, können Sie mit dem Abschnitt Fortsetzen der Bereitstellung fortfahren.

Option 2: Angeben einer Azure Key Vault-Instanz

Diese Option eignet sich für Produktionsworkloads oder produktionsfremde Workloads (abhängig vom bereitgestellten TLS-/SSL-Zertifikat). Wenn durch die Bereitstellung keine Azure Key Vault-Instanz erstellt werden soll, können Sie eine bereits vorhandene Instanz angeben oder selbst eine erstellen. Bei dieser Option müssen das Zertifikat und das zugehörige Kennwort in Azure Key Vault gespeichert werden, bevor Sie den Vorgang fortsetzen. Falls Sie über eine bereits vorhandene Key Vault-Instanz verfügen, die Sie verwenden möchten, fahren Sie mit dem Abschnitt Erstellen eines TLS-/SSL-Zertifikats fort. Fahren Sie andernfalls mit dem nächsten Abschnitt fort.

Erstellen einer Azure Key Vault-Instanz

Dieser Abschnitt zeigt, wie eine Azure Key Vault-Instanz mithilfe des Azure-Portals erstellt wird.

  1. Wählen Sie im Menü des Azure-Portals oder auf der Startseite die Option Ressource erstellen aus.
  2. Geben Sie in das Suchfeld Key Vault ein.
  3. Wählen Sie in der Liste „Ergebnisse“ die Option Key Vault aus.
  4. Wählen Sie im Abschnitt „Key Vault“ die Option Erstellen aus.
  5. Geben Sie im Abschnitt "Key Vault erstellen" die folgenden Informationen an:
    • Abonnement: Wählen Sie ein Abonnement aus.
    • Wählen Sie unter Ressourcengruppe die Option Neu erstellen aus, und geben Sie einen Ressourcengruppennamen ein. Notieren Sie sich den Schlüsseltresornamen. Sie benötigen es später, wenn Sie WLS bereitstellen.
    • Schlüsseltresorname: Ein eindeutiger Name ist erforderlich. Notieren Sie sich den Schlüsseltresornamen. Sie benötigen es später, wenn Sie WLS bereitstellen.

    Hinweis

    Sie können den gleichen Namen für die Ressourcengruppe und den Schlüsseltresor verwenden.

    • Wählen Sie im Pulldownmenü Speicherort einen Speicherort aus.
    • Behalten Sie bei den anderen Optionen die Standardeinstellungen bei.
  6. Wählen Sie "Weiter" aus : Zugriffsrichtlinie.
  7. Wählen Sie unter Zugriff ermöglichen auf die Option Azure Resource Manager für Vorlagenbereitstellung aus.
  8. Klicken Sie auf Überprüfen + erstellen.
  9. Klicken Sie auf Erstellen.

Die Erstellung des Schlüsseltresors ist recht einfach und wird in der Regel in weniger als zwei Minuten abgeschlossen. Wenn die Bereitstellung abgeschlossen ist, wählen Sie Zu Ressource wechseln, und fahren Sie mit dem nächsten Abschnitt fort.

Erstellen eines TLS-/SSL-Zertifikats

In diesem Abschnitt wird gezeigt, wie Sie ein selbstsigniertes TLS/SSL-Zertifikat in einem Format erstellen, das für die Verwendung durch Das Anwendungsgateway geeignet ist, das mit WebLogic Server in Azure bereitgestellt wird. Das Zertifikat muss über ein Kennwort verfügen, das nicht leer ist. Wenn Sie bereits über ein gültiges TLS-/SSL-Zertifikat mit nicht leerem Kennwort im PFX-Format verfügen, können Sie diesen Abschnitt überspringen und mit dem nächsten Abschnitt fortfahren. Falls Ihr vorhandenes gültiges TLS-/SSL-Zertifikat mit nicht leerem Kennwort nicht im PFX-Format vorliegt, konvertieren Sie es zuerst in eine PFX-Datei, bevor Sie mit dem nächsten Abschnitt fortfahren. Andernfalls öffnen Sie eine Befehlsshell, und geben Sie die folgenden Befehle ein.

Hinweis

In diesem Abschnitt wird gezeigt, wie Sie das Zertifikat mit Base64 codieren, bevor Sie es als Geheimnis in Key Vault speichern. Dies ist für die zugrunde liegende Azure-Bereitstellung erforderlich, mit der die WebLogic Server- und Application Gateway-Instanz erstellt werden.

Führen Sie die folgenden Schritte aus, um das Zertifikat zu erstellen und mit Base64 zu codieren:

  1. Erstellen Sie einen RSA PRIVATE KEY.

    openssl genrsa 2048 > private.pem
    
  2. Erstellen Sie einen entsprechenden öffentlichen Schlüssel.

    openssl req -x509 -new -key private.pem -out public.pem
    

    Sie müssen mehrere Fragen beantworten, wenn Sie vom OpenSSL-Tool dazu aufgefordert werden. Diese Werte werden in das Zertifikat aufgenommen. In diesem Tutorial wird ein selbstsigniertes Zertifikat verwendet, daher sind die Werte nicht relevant. Die folgenden Literalwerte sind in Ordnung.

    1. Geben Sie einen Code mit zwei Buchstaben als Ländernamen ein.
    2. Geben Sie „WA“ als Name des Bundeslands bzw. des Kantons ein.
    3. Geben Sie „Contoso“ als Organisationsnamen ein. Geben Sie „Abrechnung“ als Name der Organisationseinheit ein.
    4. Geben Sie „Contoso“ als allgemeinen Namen ein.
    5. Geben Sie billing@contoso.com als E-Mail-Adresse ein.
  3. Exportieren Sie das Zertifikat als PFX-Datei.

    openssl pkcs12 -export -in public.pem -inkey private.pem -out mycert.pfx
    

    Geben Sie das Kennwort zweimal ein. Notieren Sie sich das Kennwort. Sie benötigen es später, wenn Sie WLS bereitstellen.

  4. Codieren Sie die Datei mycert.pfx mit Base64.

    base64 mycert.pfx > mycert.txt
    

Nachdem Sie nun über eine Key Vault-Instanz sowie über ein gültiges TLS-/SSL-Zertifikat mit einem nicht leeren Kennwort verfügen, können Sie das Zertifikat in Key Vault speichern.

Speichern des TLS-/SSL-Zertifikats in Key Vault

In diesem Abschnitt wird gezeigt, wie Sie das Zertifikat und sein Kennwort in der Key Vault-Instanz speichern, die Sie in den vorherigen Abschnitten erstellt haben.

Führen Sie die folgenden Schritte aus, um das Zertifikat zu speichern:

  1. Platzieren Sie den Cursor im Azure-Portal oben auf der Seite in der Suchleiste, und geben Sie den Namen der Key Vault-Instanz ein, die Sie zuvor in diesem Tutorial erstellt haben.
  2. Ihre Key Vault-Instanz sollte unter der Überschrift Ressourcen angezeigt werden. Wählen Sie ihn aus.
  3. Wählen Sie im Abschnitt Einstellungen die Option Geheimnis aus.
  4. Wählen Sie die Option Generieren/Importieren aus.
  5. Lassen Sie unter Uploadoptionen den Standardwert stehen.
  6. Geben Sie unter Name entweder myCertSecretData oder einen beliebigen Namen ein.
  7. Geben Sie unter Wert den Inhalt der Datei mycert.txt ein. Die Länge des Werts und das Vorhandensein von Zeilenumbrüche stellen kein Problem für das Textfeld dar.
  8. Behalten Sie für die restlichen Werte die Standardwerte bei, und wählen Sie Erstellen aus.

Führen Sie die folgenden Schritte aus, um das Kennwort für das Zertifikat zu speichern:

  1. Sie werden zur Geheimnis zurückgeleitet. Wählen Sie die Option Generieren/Importieren aus.
  2. Lassen Sie unter Uploadoptionen den Standardwert stehen.
  3. Geben Sie unter Name entweder myCertSecretPassword oder einen beliebigen Namen ein.
  4. Geben Sie unter Wert das Kennwort für das Zertifikat ein.
  5. Behalten Sie für die restlichen Werte die Standardwerte bei, und wählen Sie Erstellen aus.
  6. Sie werden zur Geheimnis zurückgeleitet.

Angeben der Key Vault-Instanz

Nachdem Sie nun über eine Key Vault-Instanz verfügen und ein signiertes TLS-/SSL-Zertifikat sowie das zugehörige Kennwort als Geheimnisse gespeichert haben, können Sie zum Abschnitt Azure Application Gateway zurückkehren, um die Key Vault-Instanz für die Bereitstellung anzugeben.

Azure portal screenshot showing Azure Key Vault fields.

  1. Geben Sie als Ressourcengruppennamen im aktuellen Abonnement, das die Key Vault-Instanz enthält, den Namen der Ressourcengruppe ein, die die Key Vault-Instanz enthält, die Sie zuvor erstellt haben.
  2. Geben Sie als Namen der Azure Key Vault-Instanz, die Geheimnisse für das Zertifikat zur SSL-Terminierung enthält, den Namen der Key Vault-Instanz ein.
  3. Geben Sie als Namen des Geheimnisses in der angegebenen Key Vault-Instanz, dessen Wert den SSL-Zertifikatsdaten entspricht, entweder myCertSecretData oder den Namen ein, den Sie zuvor eingegeben haben.
  4. Geben Sie als Namen des Geheimnisses in der angegebenen Key Vault-Instanz, dessen Wert dem Kennwort für das SSL-Zertifikat entspricht, entweder myCertSecretData oder den Namen ein, den Sie zuvor eingegeben haben.
  5. Klicken Sie auf Überprüfen + erstellen.
  6. Klicken Sie auf Erstellen. Dies führt zu einer Überprüfung, dass das Zertifikat von der Key Vault-Instanz abgerufen werden kann, und dass sein Kennwort mit dem Wert übereinstimmt, den Sie als Kennwort in der Key Vault-Instanz gespeichert haben. Wenn dieser Überprüfungsschritt fehlschlägt, überprüfen Sie die Eigenschaften der Key Vault-Instanz, und stellen Sie sicher, dass das Zertifikat und das Kennwort richtig eingegeben wurden.
  7. Wenn Überprüfung erfolgreich angezeigt wird, wählen Sie Erstellen aus.

Dadurch wird der Vorgang zum Erstellen des WLS-Clusters und dessen Application Gateway-Instanz am Front-End gestartet, was etwa 15 Minuten dauert. Wählen Sie nach Abschluss der Bereitstellung die Option Zu Ressourcengruppe wechseln. Wählen Sie in der Liste der Ressourcen in der Ressourcengruppe die Option myAppGateway aus.

Im nächsten Abschnitt wird die letzte Option zum Bereitstellen eines TLS-/SSL-Zertifikats für App Gateway erläutert. Wenn Sie mit der gewählten Option zufrieden sind, können Sie mit dem Abschnitt Fortsetzen der Bereitstellung fortfahren.

Option 3: Generieren eines selbstsignierten Zertifikats

Diese Option ist nur für Test- und Entwicklungsbereitstellungen geeignet. Bei dieser Option werden automatisch sowohl eine Azure Key Vault-Instanz als auch ein selbstsigniertes Zertifikat erstellt, und das Zertifikat wird für App Gateway bereitgestellt.

Gehen Sie wie folgt vor, um die Bereitstellung dazu zu veranlassen, die folgenden Aktionen auszuführen:

  1. Wählen Sie im Abschnitt Azure Application Gateway die Option Generate a self-signed certificate (Selbstsigniertes Zertifikat generieren) aus.
  2. Wählen Sie eine benutzerseitig zugewiesene verwaltete Identität aus. Dies ist erforderlich, um der Bereitstellung die Erstellung der Azure Key Vault-Instanz und des Zertifikats zu ermöglichen.
  3. Falls Sie noch nicht über eine benutzerseitig zugewiesene verwaltete Identität verfügen, wählen Sie Hinzufügen aus, um den Erstellungsprozess zu starten.
  4. Die Schritte zum Erstellen einer benutzerseitig zugewiesenen verwalteten Identität finden Sie unter Erstellen, Auflisten, Löschen oder Zuweisen einer Rolle zu einer benutzerseitig zugewiesenen verwalteten Identität über das Azure-Portal im Abschnitt Erstellen einer benutzerseitig zugewiesenen verwalteten Identität. Vergewissern Sie sich nach dem Auswählen der benutzerseitig zugewiesenen verwalteten Identität, dass das Kontrollkästchen neben der benutzerseitig zugewiesenen verwalteten Identität aktiviert ist.

Azure portal screenshot showing fields for generating a self-signed certificate.

Fortsetzen der Bereitstellung

Nun können Sie mit den anderen Aspekten der WLS-Bereitstellung fortfahren, wie in der Oracle-Dokumentation beschrieben.

Überprüfen der erfolgreichen Bereitstellung von WLS und App Gateway

In diesem Abschnitt wird ein Verfahren zum schnellen Überprüfen der erfolgreichen Bereitstellung des WLS-Clusters und der Application Gateway-Instanz erläutert.

Wenn Sie am Ende des vorherigen Abschnitts Zu Ressourcengruppe wechseln und dann myAppGateway ausgewählt haben, wird die Übersichtsseite für die Application Gateway-Instanz angezeigt. Andernfalls finden Sie diese Seite, indem Sie im Azure-Portal oben im Suchfeld myAppGateway eingeben und dann das richtige Ergebnis auswählen. Achten Sie darauf, das Gateway in der Ressourcengruppe auszuwählen, das Sie für den WLS-Cluster erstellt haben. Führen Sie anschließend die folgenden Schritte aus.

  1. Scrollen Sie im linken Bereich der Übersichtsseite für myAppGateway nach unten zum Abschnitt Überwachung, und wählen Sie Back-End-Integrität aus.
  2. Nachdem die Meldung Laden nicht mehr angezeigt wird, sollte in der Mitte des Bildschirms eine Tabelle mit den Knoten des Clusters angezeigt werden, die als Knoten im Back-End-Pool konfiguriert sind.
  3. Vergewissern Sie sich, dass für jeden Knoten der Status Fehlerfrei angezeigt wird.

Bereinigen von Ressourcen

Wenn Sie den WLS-Cluster nicht weiter verwenden möchten, löschen Sie die Key Vault-Instanz und den WLS-Cluster mit den folgenden Schritten:

  1. Rufen Sie die Übersichtsseite für myAppGateway auf, wie im vorherigen Abschnitt gezeigt.
  2. Wählen Sie oben auf der Seite unter dem Text Ressourcengruppe die Ressourcengruppe aus.
  3. Wählen Sie die Option Ressourcengruppe löschen.
  4. Der Eingabefokus wird auf das Feld mit der Bezeichnung RESSOURCENGRUPPENNAMEN EINGEBEN festgelegt. Geben Sie den Namen der Ressourcengruppe wie angefordert ein.
  5. Dadurch wird die Schaltfläche Löschen aktiviert. Wählen Sie die Schaltfläche Löschen aus. Dieser Vorgang nimmt einige Zeit in Anspruch, aber Sie können mit dem nächsten Schritt fortfahren, während der Löschvorgang ausgeführt wird.
  6. Suchen Sie die Key Vault-Instanz, indem Sie den ersten Schritt des Abschnitts Speichern des TLS-/SSL-Zertifikats in Key Vault ausführen.
  7. Klicken Sie auf Löschen.
  8. Wählen Sie im angezeigten Bereich Löschen aus.

Nächste Schritte

Informieren Sie sich weiter über die Optionen zum Ausführen von WLS in Azure.