Conditions requises

Cette rubrique contient les préalables matériels et logiciels à l'installation d'Oracle Blockchain Platform Enterprise Edition.

Plateformes Kubernetes

Les plates-formes suivantes sont prises en charge :
  • Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE) v1.29.1 ou plus récente
  • Red Hat OpenShift Local - Intégré OpenShift version 4.15.3 ou versions ultérieures compatibles, Code Ready Container version 2.34.1 ou versions ultérieures compatibles
  • Red Hat OpenShift sur Microsoft Azure v4.17.27 ou versions ultérieures compatibles
  • Red Hat OpenShift sur site cluster v4.17 ou versions ultérieures compatibles
  • minikube v1.33.1 ou version ultérieure - environnement d'essai uniquement, pas pour la production

Vous devez avoir un nom de domaine valide qui peut être résolu par un serveur DNS. Pour les environnements de test ou hors production uniquement, vous pouvez configurer la résolution de nom local en ajoutant des entrées dans le fichier /etc/hosts. Les noms d'hôte et adresses IP spécifiques à utiliser dans le fichier /etc/hosts sont générés après le déploiement. Pour plus d'informations, voir la section Accéder à Blockchain Platform Manager de la rubrique d'installation pour votre version de Kubernetes.

Autres logiciels préalables

De plus, vous aurez besoin des outils suivants pour vous aider à gérer votre plate-forme Kubernetes et à installer votre conteneur Oracle Blockchain Platform :
  • kubectl version 1.29.3 ou ultérieure - Outil de ligne de commande de Kubernetes
  • Helm version 3.12.3 ou ultérieure - un gestionnaire d'ensembles Kubernetes
  • Outils pour gérer vos conteneurs et pods - choisissez l'un des éléments suivants :
    • Podman version 4.9.4-rhel ou ultérieure
    • Docker version 24.0.6 ou ultérieure
  • yq version 4.42.1 - un processeur YAML en ligne de commande
  • jq v1.7.1 ou version ultérieure - Processeur JSON de ligne de commande
  • Istio - outil de gestion de la sécurité et du trafic pour les déploiements
    • v1.20.2 ou version ultérieure pour OKE ou minikube exécutant le correctif Oracle Blockchain Platform Enterprise Edition 4 ou version antérieure
    • v1.22.1 ou version ultérieure pour OKE ou minikube exécutant le correctif Oracle Blockchain Platform Enterprise Edition 5 ou version ultérieure
    • v1.22.1 pour Red Hat OpenShift Local
    • v1.26.0 pour Red Hat OpenShift sur Microsoft Azure
    • v1.26.0 pour Red Hat OpenShift Sur place
  • istioctl - l'outil de ligne de commande pour Istio

Navigateurs Web

Tous les outils d'administration inclus dans Oracle Blockchain Platform sont accessibles à l'aide des navigateurs suivants :
  • Mozilla Firefox
  • Microsoft Edge
  • Google Chrome
  • Apple Safari

Installer le logiciel préalable

Cette section fournit un exemple de procédure pas à pas pour installer les versions testées des préalables. Reportez-vous à la documentation de chaque produit pour plus d'informations et pour toute modification requise des instructions d'installation.

Installer kubectl

La version de kubectl doit toujours être à l'intérieur d'une différence de version mineure de votre grappe. Par exemple, si la version de votre grappe Kubernetes est v1.29.1, vous pouvez utiliser kubectl v1.29.3. Pour plus d'informations, voir Outils d'installation de Kubernetes.

# Download:
    curl -LO https://dl.k8s.io/release/v1.29.3/bin/linux/amd64/kubectl
 
# Setup:
    # Make binary file executable:
    chmod +x ./kubectl
    # Move the downloaded binary to /usr/local/bin or /usr/bin and make "root" as the owner of this binary
    sudo mv ./kubectl /usr/bin/kubectl
    sudo chown root: /usr/bin/kubectl
 
# Verify:
    $ kubectl version --client --output=yaml
    clientVersion:
        buildDate: "2024-03-15T00:08:19Z"
        compiler: gc
        gitCommit: 6813625b7cd706db5bc7388921be03071e1a492d
        gitTreeState: clean
        gitVersion: v1.29.3
        goVersion: go1.21.8
        major: "1"
        minor: "29"
        platform: linux/amd64
    kustomizeVersion: v5.0.4-0.20230601165947-6ce0bf390ce3

Installer Helm

Oracle Blockchain Platform Enterprise Edition a été testé avec Helm v3.12.3. Pour des informations supplémentaires, voir Installation de Helm.

#Download install script:
    curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
 
# Provide execute permission and execute:
    chmod +x get_helm.sh
    ./get_helm.sh
 
# Verify:"
    $ helm version
    version.BuildInfo{Version:"v3.12.3", GitCommit:"3a31588ad33fe3b89af5a2a54ee1d25bfe6eaa5e", GitTreeState:"clean", GoVersion:"go1.20.7"}

Installer Podman

Oracle Blockchain Platform Enterprise Edition a été testé avec Podman v4.9.4-rhel. Pour plus d'informations, voir Instructions d'installation de podman.

# Update the package list:
    sudo yum update
 
# Install podman:
    sudo yum install podman -y
 
# create docker alias to run podman commands
    sudo yum install -y podman-docker
 
#Verify:
    $ podman --version
        podman version 4.9.4-rhel
    $ docker --version
        podman version 4.9.4-rhel

Installer yq

Oracle Blockchain Platform Enterprise Edition a été testé avec yq v4.42.1. Pour des informations supplémentaires, voir yq README.

# Download:
    wget https://github.com/mikefarah/yq/releases/download/v4.42.1/yq_linux_amd64.tar.gz -O - | tar xz
 
# Setup:
    sudo mv yq_linux_amd64 /usr/bin/yq
    sudo chmod +x /usr/bin/yq
 
# Verify:
yq --version

Installer jq

Oracle Blockchain Platform Enterprise Edition a été testé avec jq v1.7.1. Pour des informations supplémentaires, voir Télécharger jq.

# Install:
    sudo dnf install jq

# Verify:
   jq --version
   jq-1.7.1

Installer kubectl

La version de kubectl doit toujours être à l'intérieur d'une différence de version mineure de votre grappe. Par exemple, si la version de votre grappe du moteur Oracle Kubernetes est v1.29.1, vous pouvez utiliser kubectl v1.29.3. Pour plus d'informations, voir Outils d'installation de Kubernetes.

curl -LO https://dl.k8s.io/release/v1.29.3/bin/darwin/amd64/kubectl

# Setup:
    # Make binary file executable:
    chmod +x ./kubectl
    # Move the downloaded binary to /usr/local/bin and make "root" as the owner of this binary
    sudo mv ./kubectl /usr/local/bin/kubectl
    sudo chown root: /usr/local/bin/kubectl
 
# Verify:
    $ kubectl version --client --output=yaml

    clientVersion:
        buildDate: "2024-03-15T00:08:19Z"
        compiler: gc
        gitCommit: 6813625b7cd706db5bc7388921be03071e1a492d
        gitTreeState: clean
        gitVersion: v1.29.3
        goVersion: go1.21.8
        major: "1"
        minor: "29"
        platform: darwin/amd64
    kustomizeVersion: v5.0.4-0.20230601165947-6ce0bf390ce3

Installer Helm

Oracle Blockchain Platform Enterprise Edition a été testé avec Helm v3.12.3. Pour des informations supplémentaires, voir Installation de Helm.

#Download install script:
    curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
 
# Provide execute permission and execute:
    chmod +x get_helm.sh
    ./get_helm.sh
 
# Verify:"
    $ helm version
    version.BuildInfo{Version:"v3.12.3", GitCommit:"3a31588ad33fe3b89af5a2a54ee1d25bfe6eaa5e", GitTreeState:"clean", GoVersion:"go1.20.7"}

Installer Podman

Oracle Blockchain Platform Enterprise Edition a été testé avec Podman v4.9.4-rhel. Pour plus d'informations, voir Instructions d'installation de podman.

# Install:
     brew install podman

# After installing, you need to create and start your first Podman machine:

     podman machine init
     podman machine start

# Verify:
     podman info
     host: arch: amd64 buildahVersion: 1.36.0 cgroupControllers: - cpu - io - memory - pids cgroupManager: systemd

# Make docker commands available via podman by creating a symlink:
     sudo ln -s /usr/local/bin/podman /usr/local/bin/docker 

Installer yq

Oracle Blockchain Platform Enterprise Edition a été testé avec yq v4.44.1. Pour des informations supplémentaires, voir yq README.

# Install:
    brew install yq

# Verify:
   yq--version
   yq (https://github.com/mikefarah/yq/) version v4.44.1

Installer jq

Oracle Blockchain Platform Enterprise Edition a été testé avec jq v1.7.1. Pour des informations supplémentaires, voir Télécharger jq.

# Install:
    brew install jq

# Verify:
   jq --version
   jq-1.7.1

Installer Istio

Istio étend Kubernetes pour assurer la gestion et la sécurité du trafic aux déploiements complexes. Oracle Blockchain Platform Enterprise Edition utilise Istio comme service de passerelle entrante pour accepter le trafic entrant vers divers services.

Nous vous recommandons d'installer Istio et istioctl (utilitaire de ligne de commande de configuration Istio).

Pour télécharger Istio :

# Download istioctl tool
   curl -L https://istio.io/downloadIstio | sh -

# (optional) You can move the downloaded "istio-1.22.1" directory     
   mv ./istio-1.22.1 $HOME/istioctl

# Add the istioctl client to your path     
export PATH=$HOME/istioctl/bin:$PATH

Nous vous recommandons d'installer Istio et istioctl (utilitaire de ligne de commande de configuration Istio).

Pour télécharger Istio :

# Download istioctl tool
   curl -L https://istio.io/downloadIstio | sh -

# (optional) You can move the downloaded "istio-1.22.1" directory     
   mv ./istio-1.22.1 $HOME/istioctl

# Add the istioctl client to your path     
export PATH=$HOME/istioctl/bin:$PATH

Note :

L'installation d'Istio sera terminée une fois votre grappe Kubernetes créée. A une dépendance sur le fichier .kube/config.

Le service ingressgateway d'Istio peut être configuré dans Kubernetes pour s'exécuter avec les types de service LoadBalancer ou NodePort. Pour plus de détails, voir la documentation sur Istio : Passerelles entrantes Istio

Équilibreur de charge

Si votre grappe Kubernetes prend en charge un équilibreur de charge externe, il est recommandé de configurer le service de passerelle de trafic entrant Istio en tant qu'équilibreur de charge à l'aide du script runme d'Oracle Blockchain Platform Enterprise Edition que vous utiliserez lors du déploiement. Oracle Blockchain Platform Enterprise Edition utilisera le port https (443) de la passerelle entrante Istio comme port public pour accepter le trafic entrant. Cette valeur de port peut être personnalisée facultativement lors de l'installation d'Oracle Blockchain Platform Enterprise Edition à l'aide du script runme.

Port du noeud

Dans les cas où le type de service de l'équilibreur de charge ne peut pas être utilisé, le service de passerelle de trafic entrant Istio peut être configuré avec le type de service de port de noeud. Oracle Blockchain Platform Enterprise Edition utilisera la valeur nodePort du port https dans la passerelle entrante Istio pour acheminer le trafic externe vers Oracle Blockchain Platform Enterprise Edition dans la grappe Kubernetes. La valeur de nodePort pour le port https peut être personnalisée facultativement (en fonction de l'intervalle nodePort autorisé) lors de l'installation d'Oracle Blockchain Platform Enterprise Edition à l'aide du script runme. Par défaut, l'intervalle nodePort autorisé dans la grappe Kubernetes est compris entre 30000 et 32767.

Note :

Ne mettez pas à jour la valeur de https port ou nodePort après l'installation d'Oracle Blockchain Platform Enterprise Edition, car cela affectera sa fonction.

Hostname Resolution pour les services Oracle Blockchain Platform Enterprise Edition

Les services Oracle Blockchain Platform Enterprise Edition utilisent des noms d'hôte générés de manière unique qui sont configurés dans les passerelles/services virtuels Istio. Pour communiquer avec les services Oracle Blockchain Platform Enterprise Edition dans la grappe Kubernetes, vous devez utiliser ces noms d'hôte uniques à partir de vos navigateurs ou applications. En fonction du type de service sélectionné pour istio-ingressgateway, ces noms d'hôte doivent être résolus en une adresse IPv4 de la manière suivante :
  • Si LoadBalancer, ils se résolvent à l'adresse IP externe générée pour le service istio-ingressgateway
  • Si NodePort, ils se résolvent en adresses IP des noeuds de travail.