Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Konfigurieren Sie benutzerdefinierte Domainnamen für Ihren Amazon MSK-Cluster
Sie können Ihren MSK Provisioned Cluster so konfigurieren, dass anstelle der standardmäßig AWS generierten Brokeradressen benutzerdefinierte Domainnamen angekündigt werden. Benutzerdefinierte Domainnamen werden einmal in Ihrer Amazon MSK-Konfiguration definiert und automatisch auf jeden Broker im Cluster angewendet, einschließlich neuer Broker, die während der Skalierung hinzugefügt werden. Dies funktioniert sowohl ZooKeeper im Modus als auch im KraFT-Metadatenverwaltungsmodus.
Themen
So funktionieren benutzerdefinierte Domainnamen
Wenn Sie die custom.advertised.listeners Eigenschaft zu Ihrer Amazon MSK-Konfiguration hinzufügen, geht Amazon MSK wie folgt vor:
-
Validiert die Konfiguration (Name, Format und Eindeutigkeit des Listeners).
-
Löst die
{broker_id}Vorlage für jeden Broker auf. -
Wendet die Konfiguration durch einen fortlaufenden Neustart an, einen Broker nach dem anderen.
Die Eigenschaft hat das folgende Format.
custom.advertised.listeners=LISTENER_NAME://hostname-pattern:port+{broker_id}
Zum Beispiel auf einem IAM-Cluster mit drei Brokern:
custom.advertised.listeners=CLIENT_IAM://b-{broker_id}.example.com:9000+{broker_id}
Dies führt zu den folgenden Adressen:
-
Makler 1:
b-1.example.com:9001 -
Makler 2:
b-2.example.com:9002 -
Makler 3:
b-3.example.com:9003
Die {broker_id} Vorlagenvariable ist erforderlich und muss im Port erscheinen, damit jeder Broker eine eindeutige Adresse verwendet. Der + Operator fügt die Broker-ID zum Basisport hinzu (9000 + 1 = 9001, 9000 + 2 = 9002, 9000 + 10 = 9010).
Wenn Ihr Cluster über mehrere clientseitige Listener verfügt, können Sie jedem eine andere Domain zuweisen, indem Sie sie durch Kommas trennen.
custom.advertised.listeners=CLIENT_IAM://b-{broker_id}.iam.example.com:9000+{broker_id},CLIENT_SASL_SCRAM://b-{broker_id}.scram.example.com:19000+{broker_id}
Jeder Listener ist einer benutzerdefinierten Domain zugeordnet. Sie können demselben Listener nicht mehrere Domains zuweisen. Zuhörer können sich jedoch denselben Domainnamen teilen, solange jeder zu einer eindeutigen host:port Kombination pro Broker führt. Zum Beispiel können zwei Listener gemeinsam genutzt werden b-{broker_id}.example.com und unterscheiden sich nur durch den Port.
custom.advertised.listeners=CLIENT_IAM://b-{broker_id}.example.com:9000+{broker_id},CLIENT_SASL_SCRAM://b-{broker_id}.example.com:19000+{broker_id}
Dieses Verhalten ist sowohl im Kraft-Metadatenverwaltungsmodus als ZooKeeper auch im Kraft-Metadatenverwaltungsmodus identisch.
Überprüfen Sie das Netzwerk, bevor Sie die Konfiguration anwenden
Wenn Sie sich bewerbencustom.advertised.listeners, ersetzt Ihr benutzerdefinierter Domänenname die Standardadressen für den überschriebenen Listener. Daher muss Ihre Netzwerkschicht eingerichtet und verifiziert sein, bevor Sie die Konfiguration anwenden. Wenn die Netzwerk- und Vertrauensebene nicht vorhanden, auflösbar, erreichbar und vom Client aus nicht vertrauenswürdig ist, kann der Client keine erneute Verbindung herstellen. Dies gilt auch dann, wenn der Client kurz zuvor verbunden war. Wenn Clients die benutzerdefinierte Domäne nicht auflösen können, verlieren sie die Konnektivität.
Voraussetzungen
Bevor Sie benutzerdefinierte Domänennamen in Ihrem Cluster konfigurieren, stellen Sie sicher, dass Folgendes zutrifft:
-
Ihr Cluster ist ein von MSK bereitgestellter Cluster (Standard- oder Express-Broker) im
ACTIVEBundesstaat. -
Jeder Listener entspricht einem Authentifizierungstyp in Ihrem Cluster. Sie können benutzerdefinierte angekündigte Endpunkte nur für Client-Listener einrichten:
CLIENT,,,,CLIENT_SECURECLIENT_SECURE_PUBLICCLIENT_SASL_SCRAM,CLIENT_SASL_SCRAM_PUBLICund.CLIENT_IAMCLIENT_IAM_PUBLICInterne Listener (REPLICATIONundCONTROLLER) werden nicht unterstützt und bei der Validierung abgelehnt. Der Listener, den Sie angeben, muss auch an Ihren Cluster gebunden (aktiv) sein. Wenn Ihr Cluster beispielsweise nur die IAM-Authentifizierung verwendet,CLIENT_SECUREwird die Angabe abgelehnt, und in der Fehlermeldung werden die gültigen Client-Listener für Ihren Cluster aufgeführt. -
Ihre Netzwerkschicht ist vorhanden und wurde verifiziert, bevor Sie die Konfiguration anwenden. Nachdem Sie sie angewendet haben, erhalten alle Clients, die Metadaten aktualisieren, die benutzerdefinierte Domänenadresse. Wenn Clients die benutzerdefinierte Domäne nicht auflösen können, verlieren sie die Konnektivität. Stellen Sie sicher, dass Ihre Netzwerkschicht eingerichtet und von allen Clients aus erreichbar ist, bevor Sie die Konfiguration anwenden. Eine vollständige, schematische Anleitung zur Einrichtung von Network Load Balancer, Route 53 und AWS Certificate Manager finden Sie unter Konfigurieren eines benutzerdefinierten Domainnamens für Ihren Amazon MSK-Cluster
im Big Data-Blog. AWS
Migrieren Sie vom Kraft-Modus ZooKeeper
Wenn Sie derzeit kafka-configs.sh den advertised.listeners dynamischen ZooKeeper In-Modus verwenden, müssen Sie ihn custom.advertised.listeners in Ihrer Amazon MSK-Konfiguration einrichten, bevor Sie Ihre Migration vom Kraft-Modus in ZooKeeper den Kraft-Modus starten. Das direkte Upgrade überprüft, ob vorhandene dynamische Listener-Overrides, für die Werbung angekündigt wurde, vorhanden sind. Wenn es welche erkennt, wird das Upgrade nicht fortgesetzt, und Sie erhalten eine Fehlermeldung, in der Sie aufgefordert werden, sie zuerst zu entfernen. Gehen Sie wie folgt vor, um ein reibungsloses Erlebnis zu gewährleisten:
-
Fügen
custom.advertised.listenersSie Ihrer Amazon MSK-Konfiguration dasselbe Domain-Muster hinzu, das Sie heute verwenden. Die Schritte finden Sie in Richten Sie einen benutzerdefinierten Domainnamen von Ende zu Ende ein. -
Entfernen Sie die dynamische Überschreibung, indem Sie sie
kafka-configs.sh --alter --delete-config advertised.listenersauf jedem Broker ausführen. Dadurch werden nur die angekündigten Listener-Override entfernt und andere dynamische Konfigurationen werden nicht beeinträchtigt. -
Initiieren Sie die Migration.
Weitere Informationen zur Migration eines Clusters in den KraFT-Modus finden Sie unterMigrieren ZooKeeper Sie vom Kraft-Modus.