Despliegue Oracle Blockchain Platform Enterprise Edition en Azure Red Hat OpenShift

Puede instalar Oracle Blockchain Platform Enterprise Edition en Azure Red Hat OpenShift. OpenShift es la plataforma empresarial de Kubernetes de Red Hat que mejora el servicio estándar de Kubernetes con un conjunto de herramientas para crear, desplegar y gestionar aplicaciones en contenedores a escala. Azure Red Hat OpenShift es un servicio OpenShift totalmente gestionado en Microsoft Azure.

Las instrucciones de este tema son una directriz que sugiere cómo desplegar Oracle Blockchain Platform Enterprise Edition en Azure Red Hat OpenShift. Antes de intentar esto, especialmente para entornos de producción, debe familiarizarse con la documentación de Azure Red Hat OpenShift que sustituye cualquier información de este tema.

Creación de un cluster de Red Hat OpenShift en Microsoft Azure

Especificaciones mínimas recomendadas para el cluster de Azure Red Hat OpenShift.

Crear un cluster de Azure Red Hat OpenShift mediante la documentación de Azure como guía: Crear un cluster de Azure Red Hat OpenShift

Tendrá que crear lo siguiente:
  • Máquinas virtuales de plano de control: tres Standard_D8s_v3
  • VM de nodo de trabajador: cuatro Standard_D4s_v3
  • Genere un secreto de extracción de Red Hat.

Instalar Oracle Blockchain Platform Enterprise Edition

Las imágenes necesarias para la implementación de Oracle Blockchain Platform se almacenan en un repositorio de Docker antes de ser transferidas a las máquinas virtuales de Microsoft Azure. Recomendamos instalar desde una máquina virtual de Cloud Linux lo más cerca posible geográficamente de la región donde se instalará el software. El almacenamiento local para las imágenes de Docker debe ser de aproximadamente 100 GB.

  1. Abra la consola de cluster OpenShift.
  2. Seleccione kube:admin y Copy login command. Se le pedirá su ID de usuario y contraseña.
    Haga clic en Token de visualización. Copie el comando Log in with this token y péguelo en la interfaz de línea de comandos OpenShift.
    $ oc login --token=<token> --server=<openshift_cluster_url>
  3. Asegúrese de que está conectado a OpenShift.
    oc get nodes
    Este comando debe devolver la lista de nodos maestros y de trabajador y su estado.
  4. Defina el perfil de istio. Debe haber completado los pasos de Install Istio antes de ejecutar los siguientes comandos.
    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. Descargue Oracle Blockchain Platform: Oracle Blockchain Platform.
  6. Extraiga el paquete zip y busque el script runme para OpenShift.
  7. Actualice el archivo runme-input.yaml con los valores necesarios. El siguiente archivo runme-input.yaml de ejemplo se puede utilizar como referencia:
    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
    En el ejemplo anterior, las variables se definen como se muestra en la siguiente lista:
    • imageRegistryConfiguration.registry: servidor de registro de contenedor que se va a utilizar.
    • imageRegistryConfiguration.imageTagPrefix: ruta de repositorio base de contenedor con el registro, donde se transferirán y extraerán las imágenes. Ejemplo: registryname.azurecr.io/obpee/bcs
    • imageRegistryConfiguration.username: nombre de usuario de conexión al registro de contenedor. Para Azure, es el token de registro de contenedor.
    • imageReleaseVersion - Versión de Oracle Blockchain Platform Enterprise Edition
    • controlPlaneStorage.storageClassName: clase de almacenamiento de Kubernetes que se utilizará para la PVC (PersistentVolumeClaim). Si está vacío, se utiliza el valor por defecto storageClass
    • controlPlaneStorage.size: tamaño de PVC para los 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 recuperación de imagen en segundos durante la instalación de Oracle Blockchain Platform Enterprise Edition. El valor por defecto es 1800 segundos.
  8. Abra runme_openshift.sh en un editor y comente las dos líneas siguientes:
    • openshift_status_check
    • check_software_exists "crc"
  9. Ejecute runme_openshift.sh y complete los pasos que se le indican:
    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
    Los campos que encontrará:
    • Introduzca la contraseña de administrador OpenLDAP: Blockchain Platform Manager la utilizará y los usuarios se crearán en este servidor OpenLDAP.
    • Introduzca la contraseña de administrador del plano de control: esta contraseña será para el usuario administrador de Oracle Blockchain Platform y se utilizará por primera vez para conectarse a la consola de Blockhain Platform Manager.
    • Introduzca la contraseña de conexión del registro para el usuario especificado en run-input.yaml: se utiliza para conectarse al repositorio de contenedores.
    • La secuencia de comandos instala los siguientes servicios en el espacio de nombres obp-cp:
      • control-plane
      • openldap
      • obp-auth-server
      • obp-operator
      • hlf-operator
  10. Obtenga la dirección IP externa del servicio de gateway de entrada de Istio:
    kubectl get svc/istio-ingressgateway -n istio-system
  11. Agregue la siguiente línea según sea necesario a uno de estos archivos en el host que se utiliza para conectarse a la consola de Blockchain Platform Manager:
    • Linux o macOS: /etc/hosts
    • Windows: C:\Windows\system32\drivers\etc\hosts
    <public_svc_ip> controlplane.<parentDomainName> openldap.<parentDomainName> auth.<parentDomainName>
    donde <public_svc_ip> es la dirección IP pública externa del paso anterior.

Requisitos posteriores

Ya puede conectarse a Oracle Blockchain Platform por primera vez y aprovisionar una instancia.