Déployer Oracle Blockchain Platform Enterprise Edition sur minikube

Vous pouvez utiliser minikube à des fins de test et de développement interne. N'utilisez pas minikube pour les environnements de production.

Conditions requises :
  • UC : 8 ou plus
  • Mémoire : 16 Go
  • Espace disque disponible : 50 Go ou plus
  • Utilisateur non racine doté des privilèges de superutilisateur
  • S'assurer que le nœud minikube a accès à Internet, ce qui est requis pour installer des codes de chaîne sur vos instances Oracle Blockchain Platform.
  • minikube v1.33.1 ou version ultérieure

Installer minikube

Cette section fournit un exemple de présentation de l'installation de la version testée du minikube. Pour des informations supplémentaires, voir Outils d'installation de Kubernetes.

#Download the latest minikube binary
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64

#Install
sudo install minikube-linux-amd64 /usr/local/bin/minikube

#Verify Installation
minikube version

#Start Minikube
minikube start

#Verify Minikube Installation
minikube status
#Install Homebrew (if not already installed)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

#Install minikube using Homebrew
brew install minikube

#Start minikube
minikube start

#Verify minikube Installation
minikube status

Terminer l'installation Istio

Oracle Blockchain Platform Enterprise Edition prend en charge les versions 1.20.2 et ultérieures. Vous devez effectuer les étapes sous Installer Istio avant d'exécuter les commandes suivantes.


# Install
    istioctl install --set profile=default --set values.pilot.env.ENABLE_TLS_ON_SIDECAR_INGRESS=true --set components.cni.enabled=true --set values.cni.repair.deletePods="true"
    ## Enter "y" when prompted for "Proceed? (y/N)"
 
# Verify:
    $ istioctl version
    client version: 1.22.1
    control plane version: 1.22.1
    data plane version: 1.22.1 (1 proxies)

Installer Oracle Blockchain Platform Enterprise Edition

Téléchargez et installez Oracle Blockchain Platform Enterprise Edition sur votre instance minikube :

  1. Dans la page Oracle Blockchain Platform Enterprise Edition, cliquez sur Télécharger et suivez les étapes pour télécharger l'ensemble Oracle Blockchain Platform Enterprise Edition. Extrayez l'ensemble à partir du fichier .zip, puis extrayez l'ensemble à partir du fichier d'archives téléchargé.
    tar -xzf <distribution-package-file>
    # example tar -xzf obpee_package_24.1.3-20240723083137.tgz
  2. 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>
      imageTagPrefix: <container-image-repository-prefix>
      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: 4Gi
      
    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. Exemple : iad.ocir.io
    • imageRegistryConfiguration.imageTagPrefix : Chemin du référentiel de base de conteneur avec le registre, où les images seront poussées et extraites. Exemple : iad.ocir.io/obpee/bcs
    • imageRegistryConfiguration.username : Nom d'utilisateur de connexion au registre de conteneurs
    • imageReleaseVersion : Version d'Oracle Blockchain Platform Enterprise Edition
    • controlPlaneStorage.storageClassName : Classe de stockage Kubernetes à utiliser pour la revendication de volume persistant (PersistentVolumeClaim). Si vide, la valeur par défaut storageClass est utilisée
    • controlPlaneStorage.size : Taille de revendication de volume persistant pour les services de gestionnaire de plate-forme de chaîne de blocs (plan de contrôle)
    • parentDomainName : Nom de domaine à utiliser pour les services Blockchain Platform Manager. Exemple : example.com
    • imagePullTimeout : Temporisation d'attente d'extraction d'image en quelques secondes lors de l'installation d'Oracle Blockchain Platform Enterprise Edition. La valeur par défaut est 1800 secondes.
  3. Assurez-vous que minikube est en cours d'exécution.
  4. Ouvrez une nouvelle fenêtre de terminal et accédez au répertoire du package de distribution. Exécutez le script runme_minikube.sh et suivez les étapes indiquées par la sortie du script :
    ./runme_minikube.sh [--publish-images]

    Note :

    La commande facultative --publish-images charge les conteneurs dans un registre d'images de conteneur tel qu'Oracle Cloud Infrastructure Registry.
    • Entrez le mot de passe par défaut de l'administrateur LDAP (le mot de passe ne sera pas affiché) : définit le mot de passe de l'administrateur pour le serveur d'authentification LDAP intégré.
    • Entrez le mot de passe par défaut de l'administrateur du plan de contrôle (le mot de passe ne sera pas affiché) : définit le mot de passe de l'administrateur de Blockchain Platform Manager.
    • Si StorageClass n'a pas été fourni dans le fichier runme-input.yaml, le système vérifie si la classe de stockage par défaut est définie et vous demande si vous voulez l'utiliser.
    • Confirmez le port https du service de passerelle entrante Istio : la valeur par défaut est 443 pour le type de service LoadBalancer.
    • Entrez le mot de passe du registre <registry name> : Ce mot de passe est utilisé pour se connecter à votre registre d'images de conteneur (tel que spécifié dans le fichier runme-input.yaml) afin de télécharger des images.
  5. Dans une autre fenêtre de terminal, exécutez la commande suivante :
    export KUBECONFIG=/<path_to>/.kube/minikube
  6. Assurez-vous que le tunnel minikube est actif pour accéder à Blockchain Platform Manager et aux instances :
    minikube tunnel --bind-address 0.0.0.0
  7. Le script installe les services suivants sous l'espace de noms obp-cp :
    • control-plane
    • openldap
    • obp-auth-server
    • obp-operator
    • hlf-operator
  8. Le script affiche l'URL du gestionnaire Blockchain Platform, que vous pouvez utiliser pour accéder à l'interface utilisateur du plan de contrôle.

Accéder au gestionnaire de plate-forme de chaîne de blocs

Après l'installation, configurez la résolution du nom d'hôte pour les noms d'hôte Blockchain Platform Manager générés.
  1. Exécutez la commande suivante pour obtenir la liste des noms d'hôte configurés :
    kubectl get virtualservice -n obp-cp -o json | jq -r '.items[].spec.hosts[0]'
  2. Utilisez l'adresse IPv4 de l'hôte minikube comme adresse IP de mappage pour les noms d'hôte générés.
  3. Assurez-vous que le tunnel minikube est actif pour accéder aux instances Blockchain Platform Manager et Oracle Blockchain Platform.