Déployez Oracle Blockchain Platform Enterprise Edition sur Azure Red Hat OpenShift

Vous pouvez installer Oracle Blockchain Platform Enterprise Edition sur Azure Red Hat OpenShift. OpenShift est la plate-forme Kubernetes d'entreprise de Red Hat qui améliore Kubernetes standard avec une suite d'outils pour créer, déployer et gérer des applications en conteneur à grande échelle. Azure Red Hat OpenShift est un service OpenShift entièrement géré sur Microsoft Azure.

Les instructions de cette rubrique sont des instructions suggérant comment déployer Oracle Blockchain Platform Enterprise Edition sur Azure Red Hat OpenShift. Avant d'essayer réellement cela, en particulier pour les environnements de production, vous devez vous familiariser avec la documentation Azure Red Hat OpenShift qui remplace toutes les informations de cette rubrique.

Création d'un cluster Red Hat OpenShift sur Microsoft Azure

Spécifications minimales recommandées pour votre cluster Red Hat OpenShift Azure.

Créez un cluster Azure Red Hat OpenShift en utilisant la documentation Azure comme guide : Créer un cluster Azure Red Hat OpenShift

Vous devrez créer les éléments suivants :
  • Machines virtuelles de plan de contrôle : trois Standard_D8s_v3
  • Machines virtuelles de noeud de processus actif : quatre Standard_D4s_v3
  • Générer une clé secrète d'extraction Red Hat.

Installation d'Oracle Blockchain Platform Enterprise Edition

Les images requises pour le déploiement d'Oracle Blockchain Platform sont stockées dans un référentiel Docker avant d'être transmises aux machines virtuelles Microsoft Azure. Nous vous recommandons d'installer à partir d'une machine virtuelle Cloud Linux la plus proche possible géographiquement de la région dans laquelle votre logiciel sera installé. Le stockage local des images Docker doit être d'environ 100 Go.

  1. Ouvrez la console de cluster OpenShift.
  2. Sélectionnez kube:admin, puis Copy login command. Vous serez invité à saisir votre ID utilisateur et votre mot de passe.
    Cliquez sur Afficher le jeton. Copiez la commande Connectez-vous avec ce jeton et collez-la dans l'interface de ligne de commande OpenShift.
    $ oc login --token=<token> --server=<openshift_cluster_url>
  3. Vérifiez que vous êtes connecté à OpenShift.
    oc get nodes
    Cette commande doit renvoyer la liste des noeuds maître et de processus actif et leur statut.
  4. Définissez le profil istio. Vous devez avoir terminé les étapes de l'installation d'Istio avant d'exécuter les commandes suivantes.
    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. Téléchargez Oracle Blockchain Platform : Oracle Blockchain Platform.
  6. Extrayez le package ZIP et recherchez le script runme pour OpenShift.
  7. Mettez à jour le fichier runme-input.yaml avec les valeurs requises. L'exemple de fichier runme-input.yaml suivant peut être utilisé comme référence :
    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
    Dans l'exemple précédent, les variables sont définies comme indiqué dans la liste suivante :
    • imageRegistryConfiguration.registry : serveur de registre de conteneur à utiliser.
    • imageRegistryConfiguration.imageTagPrefix : chemin du référentiel de base de conteneur avec le registre, à partir duquel les images seront propagées et extraites. Exemple : registryname.azurecr.io/obpee/bcs
    • imageRegistryConfiguration.username : nom utilisateur de connexion au registre de conteneur. Pour Azure, il s'agit du jeton de registre de conteneur.
    • imageReleaseVersion - Version d'Oracle Blockchain Platform Enterprise Edition
    • controlPlaneStorage.storageClassName : classe de stockage Kubernetes à utiliser pour la demande de volume persistant (PersistentVolumeClaim). Si vide, storageClass par défaut est utilisé
    • controlPlaneStorage.size : taille de PVC pour les services Blockchain Platform Manager (plan de contrôle)
    • parentDomainName : nom de domaine à utiliser pour les services Blockchain Platform Manager. Exemple : example.com
    • imagePullTimeout : délai d'attente d'extraction d'image en secondes lors de l'installation d'Oracle Blockchain Platform Enterprise Edition. La valeur par défaut est 1800 seconde.
  8. Ouvrez runme_openshift.sh dans un éditeur et mettez en commentaire les deux lignes suivantes :
    • openshift_status_check
    • check_software_exists "crc"
  9. Exécutez runme_openshift.sh et suivez les étapes indiquées ci-après :
    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
    Les invites que vous rencontrerez :
    • Entrez le mot de passe d'administrateur OpenLDAP. Il sera utilisé par Blockchain Platform Manager et les utilisateurs seront créés sur ce serveur OpenLDAP.
    • Entrez le mot de passe de l'administrateur de plan de contrôle. Ce mot de passe sera destiné à l'administrateur Oracle Blockchain Platform et sera utilisé pour la première connexion à la console Blockhain Platform Manager.
    • Entrez le mot de passe de connexion au registre pour l'utilisateur indiqué dans run-input.yaml : utilisé pour la connexion au référentiel de conteneurs.
    • Le script installe les services suivants sous l'espace de noms obp-cp :
      • control-plane
      • openldap
      • obp-auth-server
      • obp-operator
      • hlf-operator
  10. Obtenez l'adresse IP externe du service de passerelle entrante Istio :
    kubectl get svc/istio-ingressgateway -n istio-system
  11. Ajoutez la ligne suivante à l'un des fichiers suivants sur l'hôte utilisé pour la connexion à la console Blockchain Platform Manager :
    • Linux ou macOS : /etc/hosts
    • Windows : C:\Windows\system32\drivers\etc\hosts
    <public_svc_ip> controlplane.<parentDomainName> openldap.<parentDomainName> auth.<parentDomainName>
    <public_svc_ip> est l'adresse IP externe publique de l'étape précédente.

Postrequis

Vous êtes maintenant prêt à vous connecter à Oracle Blockchain Platform pour la première fois et à provisionner une instance.