Het ingebouwde containerregister configureren voor Azure Red Hat OpenShift 4

Azure Red Hat OpenShift biedt een geïntegreerd containerinstallatiekopieënregister, zodat u automatisch nieuwe opslagplaatsen voor installatiekopieën op aanvraag kunt inrichten. Door deze registry te gebruiken, krijgt u een ingebouwde locatie waarnaar uw app-builds de resulterende images kunnen pushen.

In dit artikel configureert u het ingebouwde containerinstallatiekopieregister voor een Azure Red Hat OpenShift 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 cluster hebt (zie Een Azure Red Hat OpenShift 4-cluster maken). Als u Microsoft Entra-integratie wilt configureren, moet u het cluster maken met het --pull-secret argument voor az aro create.

Tip

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

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

Verificatie voor het register configureren

Voor toegang tot het interne register moet u machtigingen binnen het cluster verlenen aan elke identiteit, zoals een clustergebruiker, een Microsoft Entra gebruiker of een Azure Red Hat OpenShift-serviceaccount.

Als kubeadmin voert u de volgende commando's 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>

Opmerking

Voor clustergebruikers en Microsoft Entra gebruikers is deze naam dezelfde naam die u gebruikt voor verificatie in het cluster. Voor Azure Red Hat OpenShift serviceaccounts moet u de naam opmaken als system:serviceaccount:<project>:<name>.

Toegang tot het register

Nadat u verificatie voor het register hebt geconfigureerd, kunt u ermee werken. In de volgende secties vindt u meer informatie.

Vanuit het cluster

Stel dat u een CI/CD-platform als pods draait die images van en naar de registry pushen en ophalen. Als u toegang wilt krijgen tot het register vanuit het cluster, hebt u toegang tot het register via de IP-service van het cluster op de volledig gekwalificeerde domeinnaam image-registry.openshift-image-registry.svc.cluster.local:5000. Alle pods in het cluster hebben toegang tot dit register.

Van buiten het cluster

Stel dat u images wilt pushen en pullen vanaf de laptop van een ontwikkelaar, een extern CI/CD-platform of een ander cluster. Als uw werkstromen vereisen dat u toegang krijgt tot het interne register van buiten het cluster, moet u nog een paar stappen uitvoeren.

Als kubeadmin voert u de volgende opdrachten uit om het ingebouwde register via een route buiten het cluster bloot te stellen:

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:

Voer als kubeadmin uit:

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