Ingress-Konfiguration planen

Sie können mehrere Apps in Ihrem Red Hat® OpenShift® on IBM Cloud®-Cluster zugänglich machen, indem Sie Ingress-Ressourcen erstellen, die vom Ingress-Controller verwaltet werden.

Informationen dazu, wie Sie Apps in „ Satellite “ bereitstellen können, finden Sie unter „ Apps in „ Satellite “-Clustern bereitstellen “.

Netzbetrieb für einzelne oder mehrere Projekte planen

Für jedes Projekt, das Apps enthält, die Sie veröffentlichen möchten, ist eine Ingress-Ressource erforderlich.

Alle Apps befinden sich in einem Projekt

Wenn sich alle Apps in Ihrem Cluster im selben Projekt befinden, erstellen Sie eine Ingress-Ressource, um die Routing-Regeln für die Apps festzulegen, die Sie verfügbar machen möchten.

Wenn beispielsweise app1 und app2 von Services in einem Entwicklungsprojekt zugänglich gemacht werden, können Sie eine Ingress-Ressource in dem Projekt erstellen. Die Ressource gibt domain.net als Host an und registriert die Pfade, an denen die einzelnen Apps empfangsbereit sind, mit domain.net.

Eine Ressource ist pro Projekt
Ressource ist pro Projekt

Wenn Sie für die Apps in einem einzelnen Projekt unterschiedliche Domänen verwenden möchten, ist zu beachten, dass pro Domäne eine Ressource erstellt werden kann.

Apps befinden sich in mehreren Projekten

Wenn sich die Apps in Ihrem Cluster in verschiedenen Projekten befinden, erstellen Sie für jedes Projekt eine eigene Ingress-Ressource, um die Routing-Regeln für die Apps festzulegen.

Sie können entweder dieselbe Domäne in mehreren Ressourcen definieren oder eine Platzhalterdomäne verwenden, um unterschiedliche Unterdomänen innerhalb der Ingress-Ressource für jedes Projekt anzugeben.

Wenn eine Platzhalterdomäne registriert wird, können mehrere Unterdomänen in denselben Host aufgelöst werden. Das von IBM bereitgestellte Platzhalterzeichen für die Ingress-Unterdomäne *.<cluster_name>-<globally_unique_account_HASH>-0000.<region>.containers.appdomain.cloudwird standardmäßig für Ihren Cluster registriert.

Das von IBM bereitgestellte TLS-Zertifikat ist ein Platzhalterzertifikat und kann für die Platzhalterunterdomäne verwendet werden. Wenn Sie eine angepasste Platzhalterdomäne verwenden möchten, müssen Sie diese als eine Platzhalterdomäne, wie *.custom_domain.net, registrieren. Zur Verwendung von TLS müssen Sie ein Platzhalterzertifikat abrufen.

Betrachten Sie zum Beispiel das folgende Szenario, in dem Sie möglicherweise eine Platzhalterunterdomäne verwenden möchten:

  • Sie verfügen über zwei Versionen derselben App (app1 und app3) zu Testzwecken.
  • Sie stellen die Apps in zwei unterschiedlichen Projekten im selben Cluster bereit: app1 im Entwicklungsprojekt und app3 im Staging-Projekt.

Um unterschiedliche Unterdomänen zum Verwalten des Datenverkehrs an diese Apps verwenden zu können, erstellen Sie die folgenden Services und Ressourcen:

  • Einen Kubernetes Service im Entwicklungsprojekt zum Bereitstellen von app1.
  • Eine Ingress-Ressource im Entwicklungsprojekt, die den Host als dev.domain.net angibt.
  • Einen Kubernetes Service im Staging-Projekt zum Bereitstellen von app3.
  • Eine Ingress-Ressource im Staging-Projekt, die den Host als stage.domain.net angibt.

Verwenden Sie innerhalb eines Projekts Subdomänen in einer oder mehreren
in einer oder mehreren Ressourcen innerhalb eines

Jetzt werden beide URLs in dieselbe Domäne aufgelöst. Da die Ressource im Staging-Projekt jedoch bei der Unterdomäne stage registriert ist, leitet der Ingress-Controller Anforderungen von der URL stage.domain.net/app3 ordnungsgemäß nur an app3 weiter.

Multiple domains within a project

In einem einzelnen Projekt können Sie über eine Domäne auf alle Apps in dem Projekt zugreifen. Wenn Sie für Apps in einem Projekt unterschiedliche Domains verwenden möchten, nutzen Sie eine Wildcard-Domain. Wenn eine Platzhalterdomäne registriert wird, werden mehrere Unterdomänen in denselben Host aufgelöst. Sie können dann eine Ressource verwenden, um mehrere Unterdomänenhosts in dieser Ressource anzugeben. Alternativ können Sie in dem Projekt mehrere Ingress-Ressourcen erstellen und in jeder Ingress-Ressource eine andere Unterdomäne angeben.

Eine Ressource ist pro Projekt
Ressource ist pro Projekt

Der Platzhalter für die von IBM bereitgestellte Ingress-Unterdomäne *.<cluster_name>-<globally_unique_account_HASH>-0000.<region>.containers.appdomain.cloud wird standardmäßig für Ihren Cluster registriert. Das von IBM bereitgestellte TLS-Zertifikat ist ein Platzhalterzertifikat und kann für die Platzhalterunterdomäne verwendet werden. Wenn Sie eine angepasste Platzhalterdomäne verwenden möchten, müssen Sie diese als eine Platzhalterdomäne, wie *.custom_domain.net, registrieren. Zur Verwendung von TLS müssen Sie ein Platzhalterzertifikat abrufen.