3.8. Configuration du registre pour Red Hat OpenShift Data Foundation
Pour configurer le registre d'images interne sur bare metal et vSphere afin d'utiliser le stockage Red Hat OpenShift Data Foundation, vous devez installer OpenShift Data Foundation et ensuite configurer le registre d'images à l'aide de Ceph ou Noobaa.
3.8.1. Configurer l'opérateur de registre d'images pour utiliser le stockage Ceph RGW avec Red Hat OpenShift Data Foundation Copier lienLien copié sur presse-papiers!
Red Hat OpenShift Data Foundation intègre plusieurs types de stockage que vous pouvez utiliser avec le registre d'images interne :
- Ceph, un système de fichiers partagé et distribué et un système de stockage d'objets sur site
- NooBaa, une passerelle d'objets multicloud
Ce document décrit la procédure à suivre pour configurer le registre d'images afin d'utiliser le stockage Ceph RGW.
Conditions préalables
-
Vous avez accès au cluster en tant qu'utilisateur ayant le rôle
cluster-admin
. - Vous avez accès à la console web de OpenShift Container Platform.
-
Vous avez installé le CLI
oc
. - Vous avez installé l'opérateur OpenShift Data Foundation pour fournir le stockage d'objets et le stockage d'objets Ceph RGW.
Procédure
Créez la demande de seau d'objets à l'aide de la classe de stockage
ocs-storagecluster-ceph-rgw
. Par exemple :Copy to Clipboard Copied! Toggle word wrap Toggle overflow Obtenez le nom du seau en entrant la commande suivante :
bucket_name=$(oc get obc -n openshift-storage rgwtest -o jsonpath='{.spec.bucketName}')
$ bucket_name=$(oc get obc -n openshift-storage rgwtest -o jsonpath='{.spec.bucketName}')
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Obtenez les informations d'identification AWS en entrant les commandes suivantes :
AWS_ACCESS_KEY_ID=$(oc get secret -n openshift-storage rgwtest -o yaml | grep -w "AWS_ACCESS_KEY_ID:" | head -n1 | awk '{print $2}' | base64 --decode)
$ AWS_ACCESS_KEY_ID=$(oc get secret -n openshift-storage rgwtest -o yaml | grep -w "AWS_ACCESS_KEY_ID:" | head -n1 | awk '{print $2}' | base64 --decode)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow AWS_SECRET_ACCESS_KEY=$(oc get secret -n openshift-storage rgwtest -o yaml | grep -w "AWS_SECRET_ACCESS_KEY:" | head -n1 | awk '{print $2}' | base64 --decode)
$ AWS_SECRET_ACCESS_KEY=$(oc get secret -n openshift-storage rgwtest -o yaml | grep -w "AWS_SECRET_ACCESS_KEY:" | head -n1 | awk '{print $2}' | base64 --decode)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créez le secret
image-registry-private-configuration-user
avec les informations d'identification AWS pour le nouveau seau sousopenshift-image-registry project
en entrant la commande suivante :oc create secret generic image-registry-private-configuration-user --from-literal=REGISTRY_STORAGE_S3_ACCESSKEY=${AWS_ACCESS_KEY_ID} --from-literal=REGISTRY_STORAGE_S3_SECRETKEY=${AWS_SECRET_ACCESS_KEY} --namespace openshift-image-registry
$ oc create secret generic image-registry-private-configuration-user --from-literal=REGISTRY_STORAGE_S3_ACCESSKEY=${AWS_ACCESS_KEY_ID} --from-literal=REGISTRY_STORAGE_S3_SECRETKEY=${AWS_SECRET_ACCESS_KEY} --namespace openshift-image-registry
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créez une route de cryptage pour Ceph RGW en entrant la commande suivante :
oc create route reencrypt <route_name> --service=rook-ceph-rgw-ocs-storagecluster-cephobjectstore --port=https -n openshift-storage
$ oc create route reencrypt <route_name> --service=rook-ceph-rgw-ocs-storagecluster-cephobjectstore --port=https -n openshift-storage
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Obtenez l'hôte de la route en entrant la commande suivante :
route_host=$(oc get route <route_name> -n openshift-storage -o=jsonpath='{.spec.host}')
route_host=$(oc get route <route_name> -n openshift-storage -o=jsonpath='{.spec.host}')
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Créez une carte de configuration qui utilise un certificat d'entrée en entrant les commandes suivantes :
oc extract secret/router-certs-default -n openshift-ingress --confirm
$ oc extract secret/router-certs-default -n openshift-ingress --confirm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create configmap image-registry-s3-bundle --from-file=ca-bundle.crt=./tls.crt -n openshift-config
$ oc create configmap image-registry-s3-bundle --from-file=ca-bundle.crt=./tls.crt -n openshift-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Configurez le registre d'images pour utiliser le stockage d'objets Ceph RGW en entrant la commande suivante :
oc patch config.image/cluster -p '{"spec":{"managementState":"Managed","replicas":2,"storage":{"managementState":"Unmanaged","s3":{"bucket":'\"${bucket_name}\"',"region":"us-east-1","regionEndpoint":'\"https://${route_host}\"',"virtualHostedStyle":false,"encrypt":false,"trustedCA":{"name":"image-registry-s3-bundle"}}}}}' --type=merge
$ oc patch config.image/cluster -p '{"spec":{"managementState":"Managed","replicas":2,"storage":{"managementState":"Unmanaged","s3":{"bucket":'\"${bucket_name}\"',"region":"us-east-1","regionEndpoint":'\"https://${route_host}\"',"virtualHostedStyle":false,"encrypt":false,"trustedCA":{"name":"image-registry-s3-bundle"}}}}}' --type=merge
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.8.2. Configurer l'opérateur de registre d'images pour utiliser le stockage Noobaa avec Red Hat OpenShift Data Foundation Copier lienLien copié sur presse-papiers!
Red Hat OpenShift Data Foundation intègre plusieurs types de stockage que vous pouvez utiliser avec le registre d'images interne :
- Ceph, un système de fichiers partagé et distribué et un système de stockage d'objets sur site
- NooBaa, une passerelle d'objets multicloud
Ce document décrit la procédure à suivre pour configurer le registre d'images afin d'utiliser le stockage Noobaa.
Conditions préalables
-
Vous avez accès au cluster en tant qu'utilisateur ayant le rôle
cluster-admin
. - Vous avez accès à la console web de OpenShift Container Platform.
-
Vous avez installé le CLI
oc
. - Vous avez installé l'opérateur OpenShift Data Foundation pour fournir le stockage d'objets et le stockage d'objets Noobaa.
Procédure
Créez la demande de seau d'objets à l'aide de la classe de stockage
openshift-storage.noobaa.io
. Par exemple :Copy to Clipboard Copied! Toggle word wrap Toggle overflow Obtenez le nom du seau en entrant la commande suivante :
bucket_name=$(oc get obc -n openshift-storage noobaatest -o jsonpath='{.spec.bucketName}')
$ bucket_name=$(oc get obc -n openshift-storage noobaatest -o jsonpath='{.spec.bucketName}')
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Obtenez les informations d'identification AWS en entrant les commandes suivantes :
AWS_ACCESS_KEY_ID=$(oc get secret -n openshift-storage noobaatest -o yaml | grep -w "AWS_ACCESS_KEY_ID:" | head -n1 | awk '{print $2}' | base64 --decode)
$ AWS_ACCESS_KEY_ID=$(oc get secret -n openshift-storage noobaatest -o yaml | grep -w "AWS_ACCESS_KEY_ID:" | head -n1 | awk '{print $2}' | base64 --decode)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow AWS_SECRET_ACCESS_KEY=$(oc get secret -n openshift-storage noobaatest -o yaml | grep -w "AWS_SECRET_ACCESS_KEY:" | head -n1 | awk '{print $2}' | base64 --decode)
$ AWS_SECRET_ACCESS_KEY=$(oc get secret -n openshift-storage noobaatest -o yaml | grep -w "AWS_SECRET_ACCESS_KEY:" | head -n1 | awk '{print $2}' | base64 --decode)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créez le secret
image-registry-private-configuration-user
avec les informations d'identification AWS pour le nouveau seau sousopenshift-image-registry project
en entrant la commande suivante :oc create secret generic image-registry-private-configuration-user --from-literal=REGISTRY_STORAGE_S3_ACCESSKEY=${AWS_ACCESS_KEY_ID} --from-literal=REGISTRY_STORAGE_S3_SECRETKEY=${AWS_SECRET_ACCESS_KEY} --namespace openshift-image-registry
$ oc create secret generic image-registry-private-configuration-user --from-literal=REGISTRY_STORAGE_S3_ACCESSKEY=${AWS_ACCESS_KEY_ID} --from-literal=REGISTRY_STORAGE_S3_SECRETKEY=${AWS_SECRET_ACCESS_KEY} --namespace openshift-image-registry
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Obtenez l'hôte de la route en entrant la commande suivante :
route_host=$(oc get route s3 -n openshift-storage -o=jsonpath='{.spec.host}')
$ route_host=$(oc get route s3 -n openshift-storage -o=jsonpath='{.spec.host}')
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créez une carte de configuration qui utilise un certificat d'entrée en entrant les commandes suivantes :
oc extract secret/router-certs-default -n openshift-ingress --confirm
$ oc extract secret/router-certs-default -n openshift-ingress --confirm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create configmap image-registry-s3-bundle --from-file=ca-bundle.crt=./tls.crt -n openshift-config
$ oc create configmap image-registry-s3-bundle --from-file=ca-bundle.crt=./tls.crt -n openshift-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Configurez le registre d'images pour utiliser le stockage d'objets Nooba en entrant la commande suivante :
oc patch config.image/cluster -p '{"spec":{"managementState":"Managed","replicas":2,"storage":{"managementState":"Unmanaged","s3":{"bucket":'\"${bucket_name}\"',"region":"us-east-1","regionEndpoint":'\"https://${route_host}\"',"virtualHostedStyle":false,"encrypt":false,"trustedCA":{"name":"image-registry-s3-bundle"}}}}}' --type=merge
$ oc patch config.image/cluster -p '{"spec":{"managementState":"Managed","replicas":2,"storage":{"managementState":"Unmanaged","s3":{"bucket":'\"${bucket_name}\"',"region":"us-east-1","regionEndpoint":'\"https://${route_host}\"',"virtualHostedStyle":false,"encrypt":false,"trustedCA":{"name":"image-registry-s3-bundle"}}}}}' --type=merge
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.8.3. Configurer l'opérateur de registre d'images pour utiliser le stockage CephFS avec Red Hat OpenShift Data Foundation Copier lienLien copié sur presse-papiers!
Red Hat OpenShift Data Foundation intègre plusieurs types de stockage que vous pouvez utiliser avec le registre d'images interne :
- Ceph, un système de fichiers partagé et distribué et un système de stockage d'objets sur site
- NooBaa, une passerelle d'objets multicloud
Ce document décrit la procédure à suivre pour configurer le registre d'images afin d'utiliser le stockage CephFS.
CephFS utilise le stockage par revendication de volume persistant (PVC). Il n'est pas recommandé d'utiliser les PVC pour le stockage des registres d'images s'il existe d'autres options, telles que Ceph RGW ou Noobaa.
Conditions préalables
-
Vous avez accès au cluster en tant qu'utilisateur ayant le rôle
cluster-admin
. - Vous avez accès à la console web de OpenShift Container Platform.
-
Vous avez installé le CLI
oc
. - Vous avez installé OpenShift Data Foundation Operator pour fournir le stockage d'objets et le stockage de fichiers CephFS.
Procédure
Créez un PVC pour utiliser la classe de stockage
cephfs
. Par exemple :Copy to Clipboard Copied! Toggle word wrap Toggle overflow Configurez le registre d'images pour utiliser le système de stockage de fichiers CephFS en entrant la commande suivante :
oc patch config.image/cluster -p '{"spec":{"managementState":"Managed","replicas":2,"storage":{"managementState":"Unmanaged","pvc":{"claim":"registry-storage-pvc"}}}}' --type=merge
$ oc patch config.image/cluster -p '{"spec":{"managementState":"Managed","replicas":2,"storage":{"managementState":"Unmanaged","pvc":{"claim":"registry-storage-pvc"}}}}' --type=merge
Copy to Clipboard Copied! Toggle word wrap Toggle overflow