Configuration du registre d'images interne pour les clusters Satellite
Satellite
Par défaut, le registre interne ne s'exécute pas dans votre cluster Satellite car aucun stockage de secours n'est configuré pour le registre interne. Suivez le tutoriel suivant pour configurer le registre d'images interne dans votre cluster Satellite avec IBM Cloud Object Storage comme stockage de secours.
Ce tutoriel traite de la configuration du registre d'images à l'aide de IBM Cloud Object Storage. Toutefois, vous pouvez également utiliser du stockage non persistant sur le noeud worker. Pour plus d'informations, voir Stockage d'images dans le répertoire vide du noeud worker.
Créez une instance IBM Cloud Object Storage qui répond aux exigences
- Dans la console IBM Cloud, accédez au menu Ressources et répertoriez vos instances de stockage.
- Identifiez vos instances Object Storage et recherchez la colonne Emplacement. Si une instance a été créée dans IBM Cloud, son emplacement est répertorié en tant que Global.
- Si vous ne disposez pas d'une instance Global qui répond aux exigences, suivez les étapes pour en créer une.
- Dans IBM Cloud Object Storage, cliquez sur Créer une instance.
- Sous Choisir une infrastructure, sélectionnez l'option IBM Cloud.
- Sélectionnez un plan de tarification et un nom de service.
- Choisissez le groupe de ressources dans lequel vos composants Satellite sont stockés.
- Cliquez sur Créer. Notez que la mise à disposition de votre instance peut prendre plusieurs minutes.
Créez un compartiment à utiliser pour votre registre d'images
Créez un compartiment à utiliser lorsque vous configurez votre registre d'images. Votre compartiment doit être configuré avec une résilience régionale. Pour plus d'informations sur la création d'un compartiment, voir Configuration de IBM Cloud Object Storage.
- Cliquez sur votre instance d' Object Storage.
- Cliquez sur Créer un compartiment.
- Sélectionnez l'option permettant de personnaliser votre compartiment.
- Sous Résilience, sélectionnez Régionale.
- Dans le menu déroulant Emplacement, choisissez la région la plus proche de celle à partir de laquelle votre emplacement est géré. Par exemple, si votre emplacement est géré depuis
wdc(Washington, DC), choisissez la régionus-east. Pour vérifier l'emplacement à partir duquel un emplacement Satellite est géré, exécutezibmcloud sat location lsdans l'interface de ligne de commande. - Sous Classe de stockage, sélectionnez Standard.
- Configurez les catégories restantes en fonction de vos préférences.
- Cliquez sur Créer un compartiment.
- Créez des données d'identification de service qui permettent à votre cluster de communiquer avec votre instance Object Storage.
- Dans le panneau de navigation, cliquez sur Données d'identification du service, puis sur Nouvelles données d'identification.
- Entrez un nom pour les nouvelles données d'identification.
- Dans le menu déroulant, sélectionnez le rôle Auteur.
- Cliquez sur Options avancées, puis sélectionnez l'option Inclure les données d'identification HMAC.
- Cliquez sur Ajouter.
- Dans le tableau Données d'identification pour le service, développez vos nouvelles données d'identification. Notez le
access_key_idet lesecret_access_key_id. Ne partagez ces données d'identification avec personne. Exemple de données d'identification à sauvegarder."cos_hmac_keys": { "access_key_id": "1111111a1111111a11aa1a111111111a11aa1a111a11a1a1", "secret_access_key": "222222b222222b22bb2b22222222b22bb2b222b22b2b2" }
Créez un secret qui contient vos données d'identification de service COS
Dans l'interface de ligne de commande, créez un secret avec les données d'identification de service que vous avez créées et enregistrées.
- Connectez-vous à votre compte. Le cas échéant, ciblez le groupe de ressources approprié. Définissez le contexte de votre cluster.
- Créez le secret.
oc create secret generic image-registry-private-configuration-user --from-literal=REGISTRY_STORAGE_S3_ACCESSKEY=<access_key_id> --from-literal=REGISTRY_STORAGE_S3_SECRETKEY=<secret_access_key> --namespace openshift-image-registry
Mise à jour des CRD de l'opérateur de registre Red Hat OpenShift
- Modifiez l'état de gestion de l'opérateur Red Hat OpenShift Register.
oc patch configs.imageregistry.operator.openshift.io cluster --type merge --patch '{"spec":{"managementState":"Managed"}}' - Editez les attributs de stockage de configuration pour stocker des images dans votre compartiment Object Storage.
- Recherchez et sauvegardez le noeud final de lien régional de votre emplacement Satellite. Dans la sortie, le noeud final est répertorié sous la colonne Adresse.
Exemple de sortieibmcloud sat endpoint ls --location <location_name> | grep satellite-cosRegionalID Name Destination Type Address cavvku1p1h1gcfgk1kn1_uwokw satellite-cosRegional-cavvku1p1h1gcfgk1kn1 cloud TLS i11aa11a1a1a11a11-1a11a1aaa1a1a1a1a-c000.us-east.satellite.appdomian.cloud:11111 - Ouvrez l'éditeur de fichier dans l'interface de ligne de commande.
oc edit configs.imageregistry.operator.openshift.io/cluster - Recherchez la section suivante à éditer.
storage: emptyDir: {} managementState: Managed storageManaged: true - Remplacez
emptyDir: {}par les informations de votre compartiment et les noeuds finaux d'emplacement.Exemple de section après l'ajout des informations de compartiment et d'emplacement.s3: bucket: <bucket_name> region: <bucket_region> regionEndpoint: <location_link_endpoint> virtualHostedStyle: falsestorage: managementState: Managed s3: bucket: my_bucket region: us-east regionEndpoint: https://i11aa11a1a1a11a11-1a11a1aaa1a1a1a1a-c000.us-east.satellite.appdomian.cloud:11111 virtualHostedStyle: false storageManaged: true - Sauvegardez et appliquez les modifications.
- Recherchez et sauvegardez le noeud final de lien régional de votre emplacement Satellite. Dans la sortie, le noeud final est répertorié sous la colonne Adresse.
Vérifiez vos modifications
Vérifiez que le registre d'images a été configuré en recherchant un pod commençant par image-registry- dans l'espace de nom openshift-image-registry.
-
Exécutez la commande suivante.
oc get pod -n openshift-image-registry -
Examinez la sortie et confirmez que le pod de registre est
Running.Exemple de sortie
NAME READY STATUS RESTARTS AGE image-registry-63p54b8add-vkjju 1/1 Running 0 16m