Despliegue Oracle Blockchain Platform Enterprise Edition en minikube

minikube se puede utilizar con fines de prueba y desarrollo interno. No se recomienda para entornos de producción.

Requisitos:
  • CPU: 8 o más
  • Memoria: 16GB
  • Espacio libre en disco: 50 GB o más
  • Un usuario no root con privilegios de superusuario
  • Asegúrese de que el nodo de minikube tenga acceso a Internet, que es necesario para la instalación de códigos de cadena en las instancias de Oracle Blockchain Platform.
  • minikube v1.33.1 o posterior

Instalar minikube

En esta sección, se proporciona un ejemplo de cómo instalar la versión probada del minikube. Para obtener más información, consulte Herramientas de instalación 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

Completar la instalación de Istio

Oracle Blockchain Platform Enterprise Edition soporta la versión 1.20.2 y posteriores. Debe haber completado los pasos de Install Istio antes de completar lo siguiente.


# 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)

Instalación de Oracle Blockchain Platform Enterprise Edition

Para descargar e instalar Oracle Blockchain Platform Enterprise Edition en su instancia de minikube:

  1. En la página Oracle Blockchain Platform Enterprise Edition, haga clic en Descargar y siga los pasos para descargar el paquete Oracle Blockchain Platform Enterprise Edition. Descomprima el paquete y, a continuación, extraiga el paquete del archivo de almacenamiento descargado.
    tar -xzf <distribution-package-file>
    # example tar -xzf obpee_package_24.1.3-20240723083137.tgz
  2. Actualice runme-input.yaml con los valores necesarios. Este es un ejemplo de runme-input.yaml que se puede utilizar como referencia:
    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
    donde:
    • imageRegistryConfiguration.registry: servidor de registro de contenedor que se va a utilizar. Ejemplo: iad.ocir.io
    • imageRegistryConfiguration.imageTagPrefix: ruta de repositorio de base de contenedor con el registro, donde las imágenes se transferirán (se extraerán) a (desde). Ejemplo: iad.ocir.io/obpee/bcs
    • imageRegistryConfiguration.username: nombre de usuario de conexión de registro de contenedor
    • imageReleaseVersion - Versión de la versión Oracle Blockchain Platform Enterprise Edition
    • controlPlaneStorage.storageClassName: clase de almacenamiento de Kubernetes que se utilizará para PVC (PersistentVolumeClaim). Si está vacío, se utiliza el valor por defecto storageClass
    • controlPlaneStorage.size: tamaño de PVC para servicios de Blockchain Platform Manager (plano de control)
    • parentDomainName: nombre de dominio que se utilizará para los servicios de Blockchain Platform Manager. Ejemplo: example.com
    • imagePullTimeout: timeout de espera de extracción de imágenes en segundos durante la instalación de Oracle Blockchain Platform Enterprise Edition. El valor por defecto es 1800 segundos.
  3. Asegúrese de que se está ejecutando minikube.
  4. Abra una nueva ventana de terminal y vaya al directorio del paquete de distribución. Ejecute runme_minikube.sh y siga los pasos que se le soliciten en la salida del script:
    ./runme_minikube.sh [--publish-image]

    Note:

    El comando --publish-image opcional carga los contenedores en un registro de imágenes de contenedor, como Oracle Cloud Infrastructure Registry.
    • Introduzca la contraseña del administrador de LDAP por defecto (la contraseña no se mostrará): se utiliza para definir la contraseña del usuario administrador para el servidor de autenticación LDAP incorporado.
    • Introduzca la contraseña de usuario administrador del plano de control por defecto (la contraseña no se mostrará): se utiliza para definir la contraseña del usuario administrador de Blockchain Platform Manager.
    • Si no se ha proporcionado StorageClass en runme-input.yaml, el sistema comprobará si la clase de almacenamiento por defecto está definida y le preguntará si desea utilizarla.
    • Confirme el puerto https del servicio de gateway de entrada de Istio: el valor por defecto es 443 para el tipo de servicio LoadBalancer.
    • Introduzca la contraseña del registro <registry name>: se utiliza para conectarse al registro de imágenes de contenedor (como se especifica en runme-input.yaml) para descargar imágenes.
  5. Ejecute el siguiente comando en una ventana de terminal diferente:
    export KUBECONFIG=/<path_to>/.kube/minikube
  6. Asegúrese de que el túnel de minikube está activo para acceder a Blockchain Platform Manager y a las instancias:
    minikube tunnel --bind-address 0.0.0.0
  7. El script debe seguir instalando los siguientes servicios en el espacio de nombres obp-cp:
    • control-plane
    • openldap
    • obp-auth-server
    • obp-operator
    • hlf-operator
  8. El script mostrará la URL de Blockchain Platform Manager, desde la que se puede acceder a la interfaz de usuario del plano de control.

Acceso a Blockchain Platform Manager

Después de la instalación, configure la resolución de nombre de host para los nombres de host de Blockchain Platform Manager generados.
  1. Ejecute este comando para obtener la lista de nombres de host configurados:
    kubectl get virtualservice -n obp-cp -o json | jq -r .items[].spec.hosts[0]
  2. Utilice la dirección IPv4 del host de minikube como la dirección IP de asignación para los nombres de host generados.
  3. Asegúrese de que el túnel de minikube esté activo para acceder a las instancias de Blockchain Platform Manager y Oracle Blockchain Platform.