Arbeiten mit Outbound-Konnektivität in Code Engine
Die Funktion IBM Cloud® Code Engine für ausgehende Verbindungen unterstützt die Definition erreichbarer Endpunkte für Ihre Code Engine Projekte.
- Verwenden Sie für ausgehende Verbindungen zulässige Ziel-IP-Adressbereiche in CIDR-Notation.
- Verbinden Sie Ihr Code Engine Projekt mit IBM Cloud VPC Private Path Services über die Code Engine Konsole oder CLI.
Sie können ausgehende Verbindungen über die Konsole oder die CLI erstellen.
Erlaubte Ziel-IP-Adressbereiche für ausgehende Verbindungen
Die zulässigen Ziel-IP-Adressbereiche stellen sicher, dass der ausgehende Datenverkehr auf Adressen beschränkt wird, die Sie als sicher definieren. So verhindern Sie unerwünschte Zugriffe auf das Internet und verbessern die Einhaltung von Vorschriften und die Sicherheit.
CIDR-Bereichsspezifikationen wirken sich nicht auf die projektinterne Kommunikation, private Pfadverbindungen oder private Dienstverbindungen aus, die immer zulässige Ziele sind. Folglich verhindert die Beschränkung des ausgehenden Datenverkehrs auf der Grundlage von CIDR-Bereichen nicht, dass Anwendungen innerhalb Ihres Code Engine Projekts miteinander oder mit einem angeschlossenen privaten Pfaddienst oder mit einem privaten Endpunkt einer IBM Cloud Service API kommunizieren.
Ihr Anwendungsfall kann die Spezifikationen für die ausgehende Verbindung bestimmen. Typische Anwendungsfälle sind die folgenden:
- Keine Regeln angeben (d.h. keine erlaubten IP-Adressen), wenn Code Engine Anwendungen innerhalb eines Projekts keine externen Endpunkte erreichen sollen.
- Angabe eines einzigen zulässigen Ziel-IP-Adressbereichs (
0.0.0.0/0), um alle möglichen Endpunkte zuzulassen. Standardmäßig ist eine Regel mit dem Namen allow-all mit einem IP-Bereich von 0.0.0.0/0 eingestellt. - Festlegen einer Regel mit einem zulässigen Ziel-IP-Adressbereich, der es ermöglicht, dass die Arbeitslast innerhalb Ihres Code Engine Projekts nur den angegebenen Bereich von Endpunkten erreicht (z. B. Ihr lokales Rechenzentrum).
Private Trassen-Verbindungen
Private Path ermöglicht Verbindungen zwischen einem IBM Cloud Service wie Code Engine und Ihrer VPC, ohne die Sicherheit zu beeinträchtigen oder Ihre VPC zu gefährden. Siehe Aktivieren eines IBM Cloud-Dienstes zur Verbindung mit der VPC eines Anbieters.
Dieses Diagramm veranschaulicht, wie ein Private Path-Dienst mit Verbindungen zum VPE-Gateway einer Code Engine-Anwendung und Ihrer VPC eingerichtet wird. Zunächst stellt die Anwendung Code Engine eine Verbindung mit dem VPE-Gateway innerhalb
der VPC von Code Engine her. Dann verbindet sich das VPE-Gateway mit dem Private Path NLB in der VPC des Anbieters. Der Private Path NLB wiederum verbindet sich mit der Anwendung des Anbieters. Die Anwendung des Anbieters antwortet dann auf
die Anfrage. Diese Aktivität des Dienstes "Private Trasse" ist vollständig auf eine einzige Region (z. B. us-south) in einem privaten Netz IBM Cloud beschränkt.
Das nachstehende Diagramm zeigt weitere Beispiele dafür, wie Private Path helfen kann, Ihr Projekt mit Code Engine zu verbinden:
- ein VSI in einer VPC,
- einen OpenShift-Cluster, der in einer VPC gehostet wird,
- lokale Umgebungen oder jedes andere externe Netzwerk (siehe auch: Verbindung von Cloud-Diensten mit lokalen Umgebungen mit Private Path )
Private Service-Verbindungen
Die Verbindung zu privaten Endpunkten einer Reihe von gemeinsamen IBM Cloud Plattformdiensten wird als Teil der zulässigen ausgehenden Ziele aller Code Engine Projekte aktiviert. Die Palette der aktivierten Plattformdienste variiert je nach Region, wie in der folgenden Tabelle dargestellt.
| Plattformservice | Privater Endpunkt in Regionen verfügbar |
|---|---|
| Globale Suche (Endpunkt URL ) und globale Markierung (Endpunkt URL ) | au-syd, br-sao, ca-tor, eu-de, eu-es, eu-gb, in-che, jp-osa, jp-tok, us-east, us-south |
| Globaler Katalog ( Endpunkt- URL ) | au-syd, br-sao, eu-de, jp-osa, us-east, us-south |
Kundenbetreuung (Endpoint URL (https://private.accounts.cloud.ibm.com) ) |
eu-de, us-east, us-south |
| Nutzungsmessung ( Endpunkt- URL ) | eu-de, us-east, us-south |
| Unternehmensverwaltung ( Endpunkt- URL ) | eu-de, us-east, us-south |
| Ressourcen-Controller ( Endpunkt- URL ) | eu-de, us-east, us-south |
| Benutzerverwaltung ( Endpunkt- URL ) | eu-de, us-east, us-south |
Verwaltung zulässiger ausgehender Ziele über die Konsole
Hinzufügen eines zulässigen Ziel-IP-Adressbereichs für ausgehende Konnektivität
Sie können zulässige Ziel-IP-Adressbereiche erstellen, um einzuschränken, mit wem sich Ihr Workload über ein externes Netzwerk verbinden kann.
- Gehen Sie zur Seite „Konnektivität“:
- Wählen Sie Ihr Projekt auf der Seite Projekte in der Konsole Code Engine aus.
- Klicken Sie auf Projekteinstellungen > Konnektivität > Registerkarte CIDR-Bereiche, um eine Liste der vorhandenen zulässigen Ziel-IP-Adressbereiche anzuzeigen.
- Klicken Sie auf Hinzufügen, um einen zulässigen Ziel-IP-Adressbereich zu erstellen.
- Geben Sie einen Namen an.
- Geben Sie einen IP-Adressbereich in CIDR-Notation an.
- Bestätigen Sie Ihre Konfiguration.
Hinzufügen einer privaten Pfadverbindung für ausgehende Konnektivität
Sie können eine Private Path-Verbindung zwischen Ihrem Code Engine Projekt und Ihrer VPC herstellen.
- Gehen Sie zur Seite „Konnektivität“:
- Wählen Sie Ihr Projekt auf der Seite Projekte in der Konsole Code Engine aus.
- Klicken Sie auf Projekteinstellungen > Konnektivität > Registerkarte Privatpfadverbindungen, um eine Liste der bestehenden Privatpfadverbindungen anzuzeigen.
- Klicken Sie auf „Hinzufügen“, um eine private Pfadverbindung zu erstellen.
- Geben Sie einen Namen an.
- Sie geben die Instanz des Dienstes "Privater Pfad", mit der eine Verbindung hergestellt werden soll, über den Namen oder die CRN an.
- Wählen Sie nach Name die Dienstinstanz für den privaten Pfad aus der Dropdown-Liste aus.
- Mit CRN die Instanz des Dienstes Private Path CRN bereitstellen.
- Wählen Sie die Isolationsrichtlinie aus:
- Shared- Ermöglicht die Wiederverwendung der Private Path-Verbindung zwischen Code Engine-Projekten, die sich im gleichen IBM Cloud-Konto wie die Ziel-VPC befinden, oder Konten innerhalb der gleichen Enterprise Account Family.
- Dediziert- Schränkt die Nutzung dieser privaten Pfadverbindung auf genau ein Code Engine Projekt ein.
- Bestätigen Sie Ihre Konfiguration.
Sobald die Verbindung zu VPC hergestellt ist, erhält der Eigentümer des Dienstes "Privater Pfad" eine Verbindungsanfrage. Der Eigentümer kann diesen Anschlussantrag prüfen, genehmigen oder ablehnen. Verwenden Sie die Verbraucher
Code Engine account ID und VPE gateway creation timestamp, die in der Detailansicht der Privatpfadverbindung angezeigt werden, um den Verbindungsantrag innerhalb des Privatpfaddienstes zu identifizieren.
Aktualisierung eines zulässigen Ziel-IP-Adressbereichs für ausgehende Konnektivität
Sie können die zulässigen Ziel-IP-Adressbereiche ändern, um zu verhindern, dass Ihr Workload eine Verbindung zu unbeabsichtigten Endpunkten herstellt (z. B. eine Verbindung zum öffentlichen Internet).
- Gehen Sie zur Seite „Konnektivität“:
- Wählen Sie Ihr Projekt auf der Seite Projekte in der Konsole Code Engine aus.
- Klicken Sie auf Projekteinstellungen > Konnektivität > Registerkarte CIDR-Bereiche, um eine Liste der vorhandenen zulässigen Ziel-IP-Adressbereiche anzuzeigen.
- Klicken Sie auf die Zeile mit dem zulässigen Ziel-IP-Adressbereich, den Sie bearbeiten möchten.
- Geben Sie den aktualisierten IP-Adressbereich an und speichern Sie Ihre Änderungen.
Wenn Sie die Regeln für ausgehende Verbindungen aktualisieren, beachten Sie:
-
Erlaubte Ziel-IP-Adressbereiche widersprechen sich nicht; sie sind additiv. Wenn Sie mehrere Bereiche definieren, bilden die zulässigen Ziele eine Vereinigung aller angegebenen Bereiche, so dass die Reihenfolge des Hinzufügens von Bereichen keinen Einfluss auf die resultierenden zulässigen Ziele hat. Wenn Sie einen zweiten Bereich hinzufügen, der bereits durch einen bestehenden Bereich abgedeckt ist, lehnt das System die Erstellung ab, da sie redundant ist.
-
Durch die Angabe des IP-Adressbereichs
0.0.0.0/0werden alle bestehenden Regeln aufgehoben und eine vollständige Konnektivität ermöglicht. -
Nachdem Sie die Regeln für die ausgehende Konnektivität eingeschränkt haben, kann es einige Zeit dauern, bis Ihre Arbeitslast die Regeln aufnimmt. Wenn beispielsweise der in Ihrem Code verwendete HTTP-Client eine Verbindung herstellt, bevor Sie die Regel für die ausgehende Konnektivität aktualisieren, kann er eine Verbindung zu diesem Endpunkt öffnen. Um sicherzustellen, dass die Regeln für die ausgehende Konnektivität sofort angewendet werden, setzen Sie alle Verbindungen zurück. Sie können einen Reset durchführen, indem Sie Ihre Workloads neu verteilen oder solche Situationen in Ihrem Code behandeln.
-
Wenn Sie ausgehende Verbindungen von Ihrem Code Engine Projekt einschränken, können unbeabsichtigte Nebeneffekte auftreten, wie z. B. fehlgeschlagene Build-Läufe, weil keine externen Anfragen gestellt werden können.
Aktualisierung einer Privatwegverbindung für ausgehende Konnektivität
Sie können eine Private Path Verbindung zwischen Ihrem Code Engine Projekt und Ihrer VPC auf dedicated oder shared ändern.
- Eine Private Path-Verbindung kann
sharedsein und somit zwischen Code Engine-Projekten wiederverwendet werden, die sich im selben IBM Cloud-Konto wie die Ziel-VPC befinden, oder Konten innerhalb derselben Enterprise Account Family. - Um die Nutzung einer Private Path-Verbindung auf genau ein Code Engine Projekt zu beschränken, setzen Sie die Isolationsrichtlinie auf
dedicated. - Eine
dedicatedPrivate Path Verbindung kann jederzeit aufsharedgeändert werden. - Eine
sharedPrivate Path-Verbindung kann nur dann indedicatedgeändert werden, wenn sie nicht von mehr als einem Code Engine-Projekt verwendet wird.
So aktualisieren Sie die Isolationsrichtlinie einer Privatweg-Verbindung:
- Gehen Sie zur Seite „Konnektivität“:
- Wählen Sie Ihr Projekt auf der Seite Projekte in der Konsole Code Engine aus.
- Klicken Sie auf Projekteinstellungen > Konnektivität > Registerkarte Privatpfadverbindungen, um eine Liste der bestehenden Privatpfadverbindungen anzuzeigen.
- Gehen Sie zu der Zeile mit der privaten Pfadverbindung, die Sie aktualisieren möchten, klicken Sie auf das Symbol mit den drei Punkten für Zeilenaktionen und wählen Sie die Option Isolierungsrichtlinie ändern.
- Klicken Sie im Dialogfeld auf Ändern, um Ihre Änderungen zu bestätigen.
Löschen eines zulässigen ausgehenden Ziels für ausgehende Konnektivität
Sie können zuvor definierte erlaubte ausgehende Ziele löschen, wenn Sie diese nicht mehr für die ausgehende Konnektivität definieren möchten.
Durch das Löschen zulässiger Ziel-IP-Adressbereiche wird der ausgehende Datenverkehr für Code Engine Anwendungen, Funktionen und Aufträge innerhalb eines Projekts blockiert.
- Gehen Sie zur Seite „Konnektivität“:
- Wählen Sie Ihr Projekt auf der Seite Projekte in der Konsole Code Engine aus.
- Klicken Sie auf Projekteinstellungen > Konnektivität > Registerkarte CIDR-Bereiche, um eine Liste der vorhandenen zulässigen Ziel-IP-Adressbereiche anzuzeigen, oder auf die Registerkarte Private Pfadverbindungen, um eine Liste der vorhandenen privaten Pfadverbindungen anzuzeigen.
- Gehen Sie zu der Zeile mit dem erlaubten ausgehenden Ziel, das Sie entfernen möchten, klicken Sie auf das Symbol mit den drei Punkten für Zeilenaktionen und wählen Sie die Option Löschen.
- Bestätigen Sie die Löschung, wenn Sie dazu aufgefordert werden.
Verwaltung zulässiger ausgehender Ziele mit Hilfe der CLI
Um mit zulässigen ausgehenden Zielen über CLI-Befehle zu arbeiten, melden Sie sich bei Ihrem IBM Cloud Konto an und wählen Sie das Code Engine Konto und die Ressourcengruppe aus.
Hinzufügen eines zulässigen Ziel-IP-Adressbereichs für ausgehende Konnektivität
Für ausgehende CLI-Befehle der Konnektivität Code Engine können Sie folgende Werte angeben die Werte --name und --cidr angeben, um zulässige Ziel-IP-Adressbereiche zu konfigurieren. Befolgen Sie diese CIDR-Richtlinien:
- Verwenden Sie keinen IP-Bereich aus den reservierten IP-Bereichen.
- Verwenden Sie keine doppelten
--nameund--cidrWerte. - Verwenden Sie keinen nicht unterstützten CIDR-Namen.
- Verwenden Sie keinen nicht unterstützten IP-Adressbereich. Beachten Sie die CIDR-Notation.
Sie können zulässige Ziel-IP-Adressbereiche erstellen, um einzuschränken, mit wem sich Ihr Workload über ein externes Netzwerk verbinden kann.
-
Wählen Sie Ihr Code Engine Projekt. Zum Beispiel:
ibmcloud ce project select --name myproject -
Erstellen Sie einen zulässigen Ziel-IP-Adressbereich, indem Sie die Optionen
--nameund--cidrangeben. Geben Sie einen gültigen Namen und eine IP-Adresse an. Siehe die folgenden Beispiele:ibmcloud ce connectivity outbound create --name mycidr1 --cidr 192.68.5.0/24 ibmcloud ce connectivity outbound create --name mycidr2-allow-all --cidr 0.0.0.0/0 ibmcloud ce connectivity outbound create --name mycidr2-allow-all --cidr 0.0.0.0/0 --force
Hinzufügen einer privaten Pfadverbindung für ausgehende Konnektivität
Für die ausgehenden CLI-Befehle der Code Engine-Konnektivität können Sie folgende Werte angeben die Werte --name, --format, --pps-crn und optional --isolation-policy angeben, um eine Private
Path-Verbindung zwischen Ihrem Code Engine-Projekt und Ihrem VPC herzustellen.
-
Wählen Sie Ihr Code Engine Projekt. Zum Beispiel:
ibmcloud ce project select --name myproject -
Erstellen Sie eine private Pfadverbindung für ausgehende Konnektivität, indem Sie
--name,--formatund--pps-crnangeben. Geben Sie einen gültigen Namen, ein Format und eine CRN an. Geben Siesharedoderdedicatedan, wenn Sie--isolation-policyangeben. Siehe die folgenden Beispiele:ibmcloud ce connectivity outbound create --name my-pps-connection --format pps --pps-crn crn:v1:bluemix:public:is:eu-de:a/abcdefabcdefabcdefabcd1234567890::private-path-service-gateway:r010-2b2b2b2b-3c3c-4d4d-5e5e-6f6f6f6f6f6f ibmcloud ce connectivity outbound create --name my-pps-connection-2 --format pps --pps-crn crn:v1:bluemix:public:is:eu-de:a/abcdefabcdefabcdefabcd1234567890::private-path-service-gateway:r010-2b2b2b2b-3c3c-4d4d-5e5e-6f6f6f6f6f5e --isolation-policy dedicated
Sobald die Verbindung zu VPC hergestellt ist, erhält der Eigentümer des Dienstes "Privater Pfad" eine Verbindungsanfrage. Der Eigentümer kann diesen Anschlussantrag prüfen, genehmigen oder ablehnen. Verwenden Sie die Verbraucher
Code Engine account ID und VPE gateway creation timestamp, die in der Detailansicht der Privatpfadverbindung angezeigt werden, um den Verbindungsantrag innerhalb des Privatpfaddienstes zu identifizieren.
Vorhandene erlaubte Ziele für ausgehende Konnektivität anzeigen
Um ein bestimmtes zulässiges ausgehendes Ziel anzuzeigen, geben Sie den Namen an. Zum Beispiel:
ibmcloud ce connectivity outbound get --name my-allowed-destination
Um alle erlaubten ausgehenden Ziele anzuzeigen, führen Sie aus:
ibmcloud ce connectivity outbound list
Um ausgewählte Formate zulässiger ausgehender Ziele anzuzeigen, führen Sie z. B. aus:
ibmcloud ce connectivity outbound list --format cidr,pps
ibmcloud ce connectivity outbound list --format cidr
ibmcloud ce connectivity outbound list --format pps
Aktualisierung eines zulässigen Ziel-IP-Adressbereichs für ausgehende Konnektivität
Sie können die zulässigen Ziel-IP-Adressbereiche ändern, um zu verhindern, dass Ihr Workload eine Verbindung zu unerwünschten Endpunkten herstellt (z. B. eine Verbindung zum öffentlichen Internet).
Aktualisieren Sie einen zulässigen Ziel-IP-Adressbereich, indem Sie die Optionen --name und --cidr angeben. Geben Sie einen gültigen Namen und eine IP-Adresse an. Siehe die folgenden Beispiele:
ibmcloud ce connectivity outbound update --name mycidr1 --cidr 192.68.5.0/24
ibmcloud ce connectivity outbound update --name mycidr2-allow-all --cidr 0.0.0.0/0
Are you sure you want to update an allowed destination IP address range with '0.0.0.0/0'?, It will remove all other entries [y/N]>
ibmcloud ce connectivity outbound update --name mycidr2-allow-all --cidr 0.0.0.0/0 --force
Wenn Sie die Regeln für ausgehende Verbindungen aktualisieren, beachten Sie:
-
Erlaubte Ziel-IP-Adressbereiche widersprechen sich nicht; sie sind additiv. Wenn Sie mehrere Bereiche definieren, bilden die zulässigen Ziele eine Vereinigung aller angegebenen Bereiche, so dass die Reihenfolge des Hinzufügens von Bereichen keinen Einfluss auf die resultierenden zulässigen Ziele hat. Wenn Sie einen zweiten Bereich hinzufügen, der bereits durch einen bestehenden Bereich abgedeckt ist, lehnt das System die Erstellung ab, da sie redundant ist.
-
Durch die Angabe des IP-Adressbereichs
0.0.0.0/0werden alle bestehenden Regeln aufgehoben und eine vollständige Konnektivität ermöglicht. -
Selbst nachdem Sie die Regeln für ausgehende Verbindungen eingeschränkt haben, kann es einige Zeit dauern, bis Ihr Arbeitsaufkommen die Regeln aufnimmt. Wenn beispielsweise der in Ihrem Code verwendete HTTP-Client eine Verbindung herstellt, bevor Sie die Regel für die ausgehende Konnektivität aktualisieren, kann er eine Verbindung zu diesem Endpunkt öffnen. Um sicherzustellen, dass die Regeln für die ausgehende Konnektivität sofort angewendet werden, setzen Sie alle Verbindungen zurück. Sie können einen Reset durchführen, indem Sie Ihre Workloads neu verteilen oder solche Situationen in Ihrem Code behandeln.
-
Wenn Sie ausgehende Verbindungen von Ihrem Code Engine Projekt einschränken, können unbeabsichtigte Nebeneffekte auftreten, wie z. B. fehlgeschlagene Build-Läufe, weil keine externen Anfragen gestellt werden können.
Aktualisierung einer Privatwegverbindung für ausgehende Konnektivität
Sie können eine Private Path Verbindung zwischen Ihrem Code Engine Projekt und Ihrer VPC auf dedicated oder shared ändern.
- Eine Private Path-Verbindung kann
sharedsein und somit zwischen den Code Engine-Projekten wiederverwendet werden, die sich im selben IBM Cloud-Konto wie die Ziel-VPC befinden, oder Konten innerhalb derselben Enterprise Account Family. - Um die Verwendung einer privaten Pfadverbindung auf genau ein Code Engine Projekt zu beschränken, setzen Sie
--isolation-policyaufdedicated. - Eine
dedicatedPrivate Path Verbindung kann jederzeit aufsharedgeändert werden. - Eine
sharedPrivate Path-Verbindung kann nur dann indedicatedgeändert werden, wenn sie nicht von mehr als einem Code Engine-Projekt verwendet wird.
Um eine Verbindung über einen privaten Pfad zu aktualisieren, geben Sie die Optionen --name und --isolation-policy an. Siehe die folgenden Beispiele:
ibmcloud ce connectivity outbound update --name my-pps-connection --isolation-policy dedicated
ibmcloud ce connectivity outbound update --name my-pps-connection --isolation-policy shared
Löschen eines zulässigen ausgehenden Ziels für ausgehende Konnektivität
Sie können zuvor definierte erlaubte ausgehende Ziele löschen, wenn Sie diese nicht mehr für die ausgehende Konnektivität definieren möchten.
Durch das Löschen zulässiger Ziel-IP-Adressbereiche wird der ausgehende Datenverkehr für Code Engine Anwendungen, Funktionen und Aufträge innerhalb eines Projekts blockiert.
Um ein erlaubtes ausgehendes Ziel mit Bestätigung zu löschen, geben Sie den Namen an. Zum Beispiel:
ibmcloud ce connectivity outbound delete --name my-allowed-destination
Um ein erlaubtes ausgehendes Ziel zwangsweise (d.h. ohne Bestätigung) zu löschen, führen Sie aus:
ibmcloud ce connectivity outbound delete --name my-allowed-destination --force