Prérequis
Cette rubrique décrit les prérequis matériels et logiciels pour l'installation d'Oracle Blockchain Platform Enterprise Edition.
Plateformes Kubernetes
- Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE) v1.29.1 ou version ultérieure
- minikube version 1.33.1 ou ultérieure - environnement de test uniquement, pas pour la production
Vous devez disposer d'un nom de domaine pouvant être résolu par un serveur DNS.
Autres logiciels prérequis
- 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 de packages Kubernetes
- Outils pour gérer vos conteneurs et pods - choisissez l'une des options suivantes :
- Podman version 4.9.4-rhel ou ultérieure
- Docker version 24.0.6 ou ultérieure
- yq version 4.42.1 - un processeur de ligne de commande YAML
- jq v1.7.1 ou version ultérieure - processeur JSON de ligne de commande
- Istio version 1.20.2 ou ultérieure et istioctl - outil de gestion de la sécurité et du trafic pour les déploiements, et son outil de ligne de commande
Navigateurs Web
- Mozilla Firefox
- Microsoft Edge
- Google Chrome
- Safari d'Apple
Installation du logiciel prérequis
Cette section fournit un exemple de procédure pas à pas pour installer les versions testées des prérequis. Reportez-vous à la documentation de chaque produit pour obtenir des informations supplémentaires et toute modification requise des instructions d'installation.
Installation de kubectl
La version de kubectl doit toujours être comprise dans une différence de version mineure de votre cluster. Par exemple, si la version de cluster d'Oracle Kubernetes Engine est v1.29.1, vous pouvez utiliser kubectl v1.29.3. Pour plus d'informations, reportez-vous à 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 version 3.12.3. Pour plus d'informations, reportez-vous à 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"}
Installation de Podman
Oracle Blockchain Platform Enterprise Edition a été testé avec Podman v4.9.4-rhel. Pour plus d'informations, reportez-vous à la section Podman Installation Instructions.
# 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 la version 4.42.1 de yq. Pour plus d'informations, reportez-vous à 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 plus d'informations, reportez-vous à Téléchargement de jq.
# Install:
sudo dnf install jq
# Verify:
jq --version
jq-1.7.1
Installation de kubectl
La version de kubectl doit toujours être comprise dans une différence de version mineure de votre cluster. Par exemple, si la version de cluster d'Oracle Kubernetes Engine est v1.29.1, vous pouvez utiliser kubectl v1.29.3. Pour plus d'informations, reportez-vous à 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 version 3.12.3. Pour plus d'informations, reportez-vous à 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"}
Installation de Podman
Oracle Blockchain Platform Enterprise Edition a été testé avec Podman v4.9.4-rhel. Pour plus d'informations, reportez-vous à la section Podman Installation Instructions.
# 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 la version 4.44.1 de yq. Pour plus d'informations, reportez-vous à 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 plus d'informations, reportez-vous à Téléchargement de jq.
# Install:
brew install jq
# Verify:
jq --version
jq-1.7.1
Installer Istio
Istio étend Kubernetes pour assurer la gestion du trafic et la sécurité des déploiements complexes. Oracle Blockchain Platform Enterprise Edition utilise Istio comme service de passerelle entrante pour accepter le trafic entrant dans divers services.
Nous vous recommandons d'installer Istio et istioctl (utilitaire de ligne de commande de configuration Istio). Les versions 1.20.2 et ultérieures d'Istio sont prises en charge.
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
Remarques :
L'installation Istio sera terminée une fois le cluster Kubernetes créé. Il a une dépendance sur le fichier.kube/config
.
Le service ingressgateway
d'Istio peut être configuré dans Kubernetes pour être exécuté avec les types de service LoadBalancer
ou NodePort
. Pour plus d'informations, reportez-vous à la documentation Istio : Passerelles entrantes Istio
- équilibreur de charge
-
Si votre cluster Kubernetes prend en charge un équilibreur de charge externe, il est recommandé de configurer le service de passerelle entrante Istio en tant qu'équilibreur de charge à l'aide du script
runme
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 éventuellement être personnalisée lors de l'installation d'Oracle Blockchain Platform Enterprise Edition à l'aide du scriptrunme
. - Port du noeud
-
Dans les cas où le type de service d'équilibreur de charge ne peut pas être utilisé, le service de passerelle entrante 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 le cluster Kubernetes. La valeur denodePort
pour le port HTTPS peut éventuellement être personnalisée (en fonction de la plagenodePort
autorisée) lors de l'installation d'Oracle Blockchain Platform Enterprise Edition à l'aide du scriptrunme
. Par défaut, la plagenodePort
autorisée dans le cluster Kubernetes est comprise entre 30000 et 32767.Remarques :
Ne mettez pas à jour la valeur de httpsport
ounodePort
après l'installation d'Oracle Blockchain Platform Enterprise Edition, car cela affectera sa fonction.
Résolution du nom d'hôte pour les services Oracle Blockchain Platform Enterprise Edition
istio-ingressgateway
, ces noms d'hôte doivent être résolus en une adresse IPv4 de la manière suivante :
- Si la valeur est
LoadBalancer
, elle est résolue en adresse IP externe générée pour le serviceistio-ingressgateway
. - Si la valeur est
NodePort
, elles sont résolues en adresses IP des noeuds de processus actif.