Het ingebouwde containerregister configureren voor Azure Red Hat OpenShift 4

Azure Red Hat OpenShift biedt een geïntegreerd containerinstallatiekopieregister waarmee de mogelijkheid wordt toegevoegd om automatisch nieuwe opslagplaatsen voor installatiekopieën op aanvraag in te richten. Dit biedt gebruikers een ingebouwde locatie voor hun toepassings builds om de resulterende installatiekopieën te pushen.

In dit artikel configureert u het ingebouwde containerinstallatiekopieregister voor een Azure Red Hat OpenShift (ARO) 4-cluster. U leert het volgende:

  • Een identiteit machtigen voor toegang tot het register
  • Toegang tot het ingebouwde containerinstallatiekopieregister vanuit het cluster
  • Toegang tot het ingebouwde containerinstallatiekopieregister van buiten het cluster

Voordat u begint

In dit artikel wordt ervan uitgegaan dat u een bestaand ARO-cluster hebt (zie Een Azure Red Hat OpenShift 4-cluster maken). Als u Microsoft Entra-integratie wilt configureren, moet u ervoor zorgen dat u het cluster maakt met het --pull-secret argument voor az aro create.

Notitie

Het configureren van Microsoft Entra-verificatie voor uw cluster is de eenvoudigste manier om te communiceren met het interne register van buiten het cluster.

Zodra u uw cluster hebt, maakt u verbinding met het cluster door te verifiëren als de kubeadmin gebruiker.

Verificatie voor het register configureren

Voor elke identiteit (een clustergebruiker, Microsoft Entra-gebruiker of ServiceAccount) voor toegang tot het interne register, moet deze machtigingen krijgen binnen het cluster:

Voer kubeadminals volgt de volgende opdrachten uit:

# 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>

Notitie

Voor clustergebruikers en Microsoft Entra-gebruikers is dit dezelfde naam die u gebruikt om u te verifiëren bij het cluster. Voor OpenShift ServiceAccounts moet u de naam opmaken als system:serviceaccount:<project>:<name>

Toegang tot het register

Nu u verificatie voor het register hebt geconfigureerd, kunt u ermee werken:

Vanuit het cluster

Als u toegang wilt krijgen tot het register vanuit het cluster (u voert bijvoorbeeld een CI/CD-platform uit als pods die installatiekopieën naar het register pushen/ophalen), hebt u via de ClusterIP-service toegang tot het register via de Volledig gekwalificeerde domeinnaamimage-registry.openshift-image-registry.svc.cluster.local:5000, die toegankelijk is voor alle Pods binnen het cluster.

Van buiten het cluster

Als voor uw werkstromen u toegang nodig hebt tot het interne register van buiten het cluster (u wilt bijvoorbeeld installatiekopieën pushen/ophalen vanaf de laptop van een ontwikkelaar, extern CI/CD-platform en/of een ander ARO-cluster), moet u een paar extra stappen uitvoeren:

Voer kubeadminals volgt de volgende opdrachten uit om het ingebouwde register buiten het cluster beschikbaar te maken via een route:

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

Vervolgens kunt u de extern routeerbare volledig gekwalificeerde domeinnaam van het register vinden:

Als kubeadmin, voer het volgende uit:

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

Volgende stappen

Nu u het ingebouwde containerinstallatiekopieregister hebt ingesteld, kunt u aan de slag gaan door een toepassing te implementeren op OpenShift. Voor Java-toepassingen bekijkt u Een Java-toepassing implementeren met Open Liberty/WebSphere Liberty op een Azure Red Hat OpenShift 4-cluster.