Bereitstellung der Oracle Blockchain Platform Enterprise Edition auf Azure Red Hat OpenShift

Sie können Oracle Blockchain Platform Enterprise Edition auf Azure Red Hat OpenShift installieren. OpenShift ist die Kubernetes-Plattform von Red Hat für Unternehmen, die Standard-Kubernetes mit einer Suite von Tools zum Erstellen, Bereitstellen und Verwalten von containerisierten Anwendungen in großem Maßstab erweitert. Azure Red Hat OpenShift ist ein vollständig verwalteter OpenShift-Service auf Microsoft Azure.

Die Anweisungen in diesem Thema sind eine Richtlinie, die vorschlägt, wie Sie Oracle Blockchain Platform Enterprise Edition auf Azure Red Hat OpenShift bereitstellen können. Bevor Sie dies tatsächlich versuchen, insbesondere für Produktionsumgebungen, sollten Sie sich mit der Azure Red Hat OpenShift-Dokumentation vertraut machen, die alle Informationen in diesem Thema ersetzt.

Red Hat OpenShift-Cluster auf Microsoft Azure erstellen

Empfohlene Mindestspezifikationen für Ihr Azure Red Hat OpenShift-Cluster.

Erstellen Sie ein Azure Red Hat OpenShift-Cluster mit der Azure-Dokumentation als Anleitung: Erstellen Sie ein Azure Red Hat OpenShift-Cluster

Sie müssen Folgendes erstellen:
  • Control-Plane-VMs: drei Standard_D8s_v3
  • Worker-Knoten-VMs: vier Standard_D4s_v3
  • Generieren Sie ein Red Hat Pull Secret.

Oracle Blockchain Platform Enterprise Edition installieren

Die für das Oracle Blockchain Platform-Deployment erforderlichen Images werden in einem Docker-Repository gespeichert, bevor sie an die Microsoft Azure-VMs übertragen werden. Wir empfehlen die Installation von einer Cloud Linux-VM, die so geografisch wie möglich in der Region liegt, in der Ihre Software installiert wird. Der lokale Speicher für die Docker-Images sollte etwa 100 GB betragen.

  1. Öffnen Sie die Clusterkonsole OpenShift.
  2. Wählen Sie kube:admin und dann Copy login command aus. Sie werden zur Eingabe Ihrer Benutzer-ID und Ihres Kennworts aufgefordert.
    Klicken Sie auf Token anzeigen. Kopieren Sie den Befehl Log in with this token, und fügen Sie ihn in die Befehlszeilenschnittstelle OpenShift ein.
    $ oc login --token=<token> --server=<openshift_cluster_url>
  3. Stellen Sie sicher, dass Sie mit OpenShift verbunden sind.
    oc get nodes
    Dieser Befehl sollte die Liste der Master- und Worker-Knoten und deren Status zurückgeben.
  4. Stellen Sie das istio-Profil ein. Sie müssen die Schritte unter Istio installieren ausgeführt haben, bevor Sie die folgenden Befehle ausführen.
    istioctl install --set profile=openshift --set
    values.pilot.env.ENABLE_TLS_ON_SIDECAR_INGRESS=true --set components.cni.enabled=true --set
    values.cni.repair.deletePods="true"
  5. Laden Sie Oracle Blockchain Platform herunter: Oracle Blockchain Platform.
  6. Extrahieren Sie das ZIP-Package, und suchen Sie das Skript runme für OpenShift.
  7. Aktualisieren Sie die Datei runme-input.yaml mit den erforderlichen Werten. Die folgende Beispieldatei runme-input.yaml kann als Referenz verwendet werden:
    imageRegistryConfiguration:
      registry: <container_registry_name.azurecr.io>
      imageTagPrefix: <container-image-repository-prefix.azurecr.io/bcs-k8s-dev  >
      username: <container-registry-username>
     
    imageReleaseVersion: 24.1.3-20240723083137
     
    # storageClassName should be set to create a dynamic persistent volume. If empty, default storageClass is used.
     
    controlPlaneStorage:
      storageClassName: 
      # Example 500Mi, 5Gi
      size: 10Gi
      
    parentDomainName: example.com
    #imagePullTimeout: Use this field to customize the wait time (in seconds) for pulling the required container images from the repository. Default is 1800 seconds.
      imagePullTimeout: 1800
    Im vorherigen Beispiel werden die Variablen wie in der folgenden Liste dargestellt definiert:
    • imageRegistryConfiguration.registry: Zu verwendender Container-Registry-Server.
    • imageRegistryConfiguration.imageTagPrefix: Container-Basis-Repository-Pfad mit der Registry, in die Images übertragen und daraus abgerufen werden. Beispiel: registryname.azurecr.io/obpee/bcs
    • imageRegistryConfiguration.username: Benutzername der Container-Registry-Anmeldung. Bei Azure handelt es sich um das Container Registry-Token.
    • imageReleaseVersion - Oracle Blockchain Platform Enterprise Edition-Releaseversion
    • controlPlaneStorage.storageClassName: Kubernetes-Speicherklasse für PVC (PersistentVolumeClaim). Wenn leer, wird der Standardwert storageClass verwendet
    • controlPlaneStorage.size: PVC-Größe für Blockchain Platform Manager-(Control-Plane-)Services
    • parentDomainName: Domainname für Blockchain Platform Manager-Services. Beispiel: example.com
    • imagePullTimeout: Wartezeitüberschreitung beim Image-Pull in Sekunden während der Installation von Oracle Blockchain Platform Enterprise Edition. Der Standardwert ist "1800 Sekunden".
  8. Öffnen Sie runme_openshift.sh in einem Editor, und kommentieren Sie die folgenden beiden Zeilen aus:
    • openshift_status_check
    • check_software_exists "crc"
  9. Führen Sie runme_openshift.sh aus, und führen Sie die Schritte wie folgt aus:
    chmod +x runme_openshift.sh
    
    ./runme_openshift.sh --publish-images
    # The publish-images option uploads the containers to the container image registry specified in runme-input.yaml
    # Running the script without this option pulls images you've already pre-uploaded from the repository specified in runme-input.yaml
    Die Eingabeaufforderungen, auf die Sie stoßen werden:
    • Geben Sie das OpenLDAP-Admin-Kennwort ein. Dieses Kennwort wird von Blockchain Platform Manager verwendet, und Benutzer werden auf diesem OpenLDAP-Server erstellt.
    • Admin-Kennwort für Control-Plane eingeben - Dieses Kennwort gilt für den Oracle Blockchain Platform-Admin-Benutzer und wird für die erste Anmeldung bei der Blockhain Platform Manager-Konsole verwendet.
    • Geben Sie das Registrierungsanmeldekennwort für den in run-input.yaml angegebenen Benutzer ein. Dieses Kennwort wird für die Verbindung zum Container-Repository verwendet.
    • Das Skript installiert die folgenden Services unter dem Namespace obp-cp:
      • control-plane
      • openldap
      • obp-auth-server
      • obp-operator
      • hlf-operator
  10. Rufen Sie die externe IP-Adresse des Istio-Ingress-Gateway-Service ab:
    kubectl get svc/istio-ingressgateway -n istio-system
  11. Fügen Sie einer dieser Dateien auf dem Host, der für die Verbindung mit der Blockchain Platform Manager-Konsole verwendet wird, nach Bedarf die folgende Zeile hinzu:
    • Linux oder macOS: /etc/hosts
    • Fenster: C:\Windows\system32\drivers\etc\hosts
    <public_svc_ip> controlplane.<parentDomainName> openldap.<parentDomainName> auth.<parentDomainName>
    wobei <public_svc_ip> die öffentliche, externe IP-Adresse aus dem vorherigen Schritt ist.

Voraussetzungen

Jetzt können Sie sich zum ersten Mal bei Oracle Blockchain Platform anmelden und eine Instanz bereitstellen.