Partager via


Configurer le registre de conteneurs intégré pour Azure Red Hat OpenShift 4

Azure Red Hat OpenShift fournit un registre d’images conteneur intégré appelé qui ajoute la possibilité de provisionner automatiquement de nouveaux référentiels d’images à la demande. Ce registre fournit aux utilisateurs un emplacement intégré pour leurs builds d’applications afin d’envoyer (push) les images résultantes.

Dans cet article, vous allez configurer le registre d’images conteneur intégré pour un cluster Azure Red Hat OpenShift 4. Vous allez apprendre à :

  • Autoriser une identité à accéder au registre
  • Accéder au registre d’images conteneur intégré à partir du cluster
  • Accéder au registre d’images conteneur intégré à partir d’un autre emplacement que le cluster

Avant de commencer

Cet article suppose que vous disposez d’un cluster existant (consultez Créer un cluster Azure Red Hat OpenShift 4). Si vous souhaitez configurer l’intégration de Microsoft Entra, veillez à créer le cluster avec l’argument --pull-secret sur az aro create.

Remarque

La configuration de l’authentification Microsoft Entra pour votre cluster est le moyen le plus simple d’interagir avec le registre interne depuis l’extérieur du cluster.

Une fois que vous avez votre cluster, connectez-vous au cluster en vous authentifiant en tant qu’utilisateur kubeadmin.

Configurer l’authentification au registre

Pour toute identité (utilisateur ou utilisatrice de cluster, utilisateur ou utilisatrice Microsoft Entra ou ServiceAccount) pour accéder au registre interne, elle doit disposer d’autorisations à l’intérieur du cluster :

En tant que kubeadmin, exécutez les commandes suivantes :

# Note: replace "<user>" with the identity you need to access the registry
oc policy add-role-to-user -n openshift-image-registry registry-viewer <user>
oc policy add-role-to-user -n openshift-image-registry registry-editor <user>

Remarque

Pour les utilisateurs du cluster et les utilisateurs Microsoft Entra, il s’agit du même nom que celui que vous utilisez pour vous authentifier dans le cluster. Pour OpenShift ServiceAccounts, mettez le nom en forme comme suit : system:serviceaccount:<project>:<name>

Accéder au registre

Maintenant que vous avez configuré l’authentification pour le registre, vous pouvez interagir avec celui-ci :

À partir du cluster

Si vous avez besoin d’accéder au Registre à partir du cluster (par exemple, vous exécutez une plateforme CI/CD en tant que pods qui envoie(s) des images push/pull au registre), vous pouvez accéder au registre via son service ClusterIP au nom image-registry.openshift-image-registry.svc.cluster.local:5000de domaine complet, qui est accessible à tous les pods du cluster.

À partir d’un autre emplacement que le cluster

Si vos flux de travail nécessitent que vous accédiez au registre interne à partir de l’extérieur du cluster (par exemple, vous souhaitez envoyer/extraire des images à partir de l’ordinateur portable d’un développeur, d’une plateforme CI/CD externe et/ou d’un autre cluster), vous devez effectuer quelques étapes supplémentaires :

En tant que kubeadmin, exécutez les commandes suivantes pour exposer le registre intégré en dehors du cluster via un Itinéraire :

oc patch config.imageregistry.operator.openshift.io/cluster --patch='{"spec":{"defaultRoute":true}}' --type=merge
oc patch config.imageregistry.operator.openshift.io/cluster --patch='[{"op": "add", "path": "/spec/disableRedirect", "value": true}]' --type=json

Vous pouvez ensuite trouver le nom de domaine complet routable en externe du Registre :

En tant que kubeadmin, exécutez :

oc get route -n openshift-image-registry default-route --template='{{ .spec.host }}'

Étapes suivantes

Maintenant que vous avez configuré le registre d’images conteneurs intégré, vous pouvez commencer en déployant une application sur OpenShift. Pour les applications Java, consultez Déployer une application Java avec Open Liberty/WebSphere Liberty sur un cluster Azure Red Hat OpenShift 4.