Amazon MSK Connect ist ein Merkmal von Amazon Managed Streaming für Apache Kafka (Amazon MSK), das eine vollständig verwaltete Apache Kafka Connect-Umgebung auf AWS bietet. Mit MSK Connect können Sie vollständig verwaltete Konnektoren bereitstellen, die für Kafka Connect entwickelt wurden und Daten in beliebte Datenspeicher wie Amazon S3 und Amazon OpenSearch Service verschieben oder Daten daraus abrufen. Mit der Einführung des Private DNS-Unterstützung in MSK ConnectKonnektoren sind in der Lage, private Kundendomänennamen aufzulösen, indem sie ihre DNS-Server verwenden, die im DHCP-Optionssatz der Kunden-VPC konfiguriert sind. Dieser Beitrag zeigt eine Lösung zum Auflösen privater DNS-Hostnamen, die in einer Kunden-VPC für MSK Connect definiert sind.
Es kann aus mehreren Gründen sinnvoll sein, die Unterstützung privater DNS-Hostnamen für MSK Connect zu nutzen. Vor der in MSK Connect enthaltenen privaten DNS-Auflösungsfunktion wurde der Dienst-VPC-DNS-Resolver für die DNS-Auflösung verwendet. MSK Connect hat nicht die privaten DNS-Server verwendet, die in den DHCP-Optionssätzen der Kunden-VPC für die DNS-Auflösung definiert sind. Die Connectors konnten in der Connector-Konfiguration oder im Plugin nur auf Hostnamen verweisen, die öffentlich auflösbar sind, und konnten keine privaten Hostnamen auflösen, die in einer privaten gehosteten Zone definiert waren oder DNS-Server in einem anderen Kundennetzwerk verwenden.
Viele Kunden stellen sicher, dass ihre internen DNS-Anwendungen nicht öffentlich auflösbar sind. Beispielsweise verfügen Sie möglicherweise über eine MySQL- oder PostgreSQL-Datenbank und möchten möglicherweise nicht, dass der DNS-Name Ihrer Datenbank öffentlich auflösbar oder zugänglich ist. Relationaler Amazon-Datenbankdienst (Amazon RDS) oder Amazonas-Aurora Server haben DNS-Namen, die öffentlich auflösbar, aber nicht zugänglich sind. Sie können über mehrere interne Anwendungen wie Datenbanken, Data Warehouses oder andere Systeme verfügen, in denen DNS-Namen nicht öffentlich auflösbar sind.
Mit der kürzlich erfolgten Einführung der privaten DNS-Unterstützung von MSK Connect können Sie Connectors so konfigurieren, dass sie auf öffentliche oder private Domänennamen verweisen. Connectors verwenden die im DHCP-Optionssatz Ihrer VPC konfigurierten DNS-Server, um Domänennamen aufzulösen. Sie können MSK Connect jetzt verwenden, um eine private Verbindung mit Datenbanken, Data Warehouses und anderen Ressourcen in Ihrer VPC herzustellen, um Ihren Sicherheitsanforderungen gerecht zu werden.
Wenn Sie über eine MySQL- oder PostgreSQL-Datenbank mit privatem DNS verfügen, können Sie diese auf einem benutzerdefinierten DNS-Server konfigurieren und den VPC-spezifischen DHCP-Optionssatz so konfigurieren, dass die DNS-Auflösung mithilfe des benutzerdefinierten DNS-Servers erfolgt, der lokal in der VPC ist, anstatt den Dienst-DNS zu verwenden Auflösung.
Lösungsüberblick
Ein Kunde kann verschiedene Architekturoptionen für die Einrichtung seines MSK Connect nutzen. Beispielsweise können sich Amazon MSK und MSK Connect in derselben VPC oder demselben Quellsystem in VPC1 befinden und Amazon MSK und MSK Connect in VPC2 oder Quellsystem, Amazon MSK und MSK Connect befinden sich alle in unterschiedlichen VPCs.
Das folgende Setup verwendet zwei verschiedene VPCs, wobei die MySQL-VPC die MySQL-Datenbank hostet und die MSK-VPC Amazon MSK, MSK Connect, den DNS-Server und verschiedene andere Komponenten hostet. Sie können diese Architektur mithilfe geeigneter Tools erweitern, um andere Bereitstellungstopologien zu unterstützen AWS Identity and Access Management and (IAM)-Berechtigungen und Konnektivitätsoptionen.
Dieser Beitrag enthält Schritt-für-Schritt-Anleitungen zum Einrichten von MSK Connect, bei dem Daten von einer MySQL-Quelldatenbank mit privatem DNS-Hostnamen in der MySQL-VPC empfangen und Daten mithilfe von MSK Connect in einer anderen VPC an Amazon MSK gesendet werden. Das folgende Diagramm veranschaulicht die High-Level-Architektur.
Die Einrichtungsanweisungen umfassen die folgenden wichtigen Schritte:
- Richten Sie die VPCs, Subnetze und andere Kerninfrastrukturkomponenten ein.
- Installieren und konfigurieren Sie den DNS-Server.
- Laden Sie die Daten in die MySQL-Datenbank hoch.
- Stellen Sie Amazon MSK und MSK Connect bereit und nutzen Sie die CDC-Datensätze (Change Data Capture).
Voraussetzungen:
Um dem Tutorial in diesem Beitrag folgen zu können, benötigen Sie Folgendes:
Erstellen Sie die erforderliche Infrastruktur mit AWS CloudFormation
Bevor wir MSK Connect konfigurieren, müssen wir die VPCs, Subnetze und andere Kerninfrastrukturkomponenten einrichten. Führen Sie die folgenden Schritte aus, um Ressourcen in Ihrem AWS-Konto einzurichten:
- Auswählen
Stack starten um den Stack in einer Region zu starten, die Amazon MSK und MSK Connect unterstützt.
- Geben Sie den privaten Schlüssel an, den Sie zum Herstellen einer Verbindung mit den EC2-Instanzen verwenden.
- Aktualisieren Sie den SSH-Standort mit Ihrer lokalen IP-Adresse und behalten Sie die anderen Werte als Standard bei.
- Auswählen Weiter.
- Überprüfen Sie die Details auf der letzten Seite und wählen Sie Ich erkenne an, dass AWS CloudFormation möglicherweise IAM-Ressourcen erstellt.
- Auswählen Stapel erstellen und warten Sie, bis die erforderlichen Ressourcen erstellt wurden.
Die CloudFormation-Vorlage erstellt die folgenden Schlüsselressourcen in Ihrem Konto:
- VPCs:
- MSK VPC
- MySQL VPC
- Subnetze in der MSK VPC:
- Drei private Subnetze für Amazon MSK
- Privates Subnetz für DNS-Server
- Privates Subnetz für MSKClient
- Öffentliches Subnetz für Bastion Host
- Subnetze in der MySQL VPC:
- Privates Subnetz für die MySQL-Datenbank
- Öffentliches Subnetz für Bastion Host
- Internet-Gateway, das an die MySQL-VPC und die MSK-VPC angeschlossen ist
- NAT-Gateways, die an das öffentliche MySQL-Subnetz und das öffentliche MSK-Subnetz angeschlossen sind
- Routentabellen zur Unterstützung des Datenverkehrsflusses zwischen verschiedenen Subnetzen in einer VPC und über VPCs hinweg
- Peering-Verbindung zwischen der MySQL VPC und der MSK VPC
- MySQL-Datenbank und -Konfigurationen
- DNS-Server
- MSK-Client mit entsprechenden Bibliotheken
Bitte beachten Sie, wenn Sie VPC-Peering verwenden oder AWS Transit-Gateway Konfigurieren Sie Ihren Connector mit MSK Connect nicht für die Erreichung der Peering-VPC-Ressourcen mit IPs in den CIDR-Bereichen. Weitere Informationen finden Sie unter Anschließen über Steckverbinder.
Konfigurieren Sie den DNS-Server
Führen Sie die folgenden Schritte aus, um den DNS-Server zu konfigurieren:
- Stellen Sie eine Verbindung zum DNS-Server her. Auf dem DNS-Server unter sind drei Konfigurationsdateien verfügbar
/home/ec2-user
Ordner:named.conf
mysql.internal.zone
kafka.us-east-1.amazonaws.com.zone
- Führen Sie die folgenden Befehle aus, um Ihren DNS-Server zu installieren und zu konfigurieren:
- Aktualisierung
/etc/named.conf
.
Aktualisieren Sie für das Attribut „Allow-Transfer“ die interne IP-Adresse des DNS-Servers auf „Allow-Transfer“.
{ localhost; <DNS Server internal IP address>; };.
Die IP-Adresse des DNS-Servers finden Sie in der CloudFormation-Vorlage Ausgänge Tab.
Note dass der MSK-Cluster zu diesem Zeitpunkt noch nicht eingerichtet ist. Wir müssen die DNS-Namen des Kafka-Brokers und ihre jeweiligen internen IP-Adressen im aktualisieren /var/named/kafka.region.amazonaws.com
Konfigurationsdatei nach dem Einrichten des MSK-Clusters später in diesem Beitrag. Anweisungen finden Sie hier.
Beachten Sie außerdem, dass diese Einstellungen den DNS-Server für diesen Beitrag konfigurieren. In Ihrer eigenen Umgebung können Sie den DNS-Server entsprechend Ihren Anforderungen konfigurieren.
- Starten Sie den DNS-Dienst neu:
Sie sollten die folgende Meldung sehen:
Laden Sie die Daten in die MySQL-Datenbank hoch
Normalerweise können wir eine verwenden Amazon RDS für MySQL Datenbank, aber für diesen Beitrag verwenden wir benutzerdefinierte MySQL-Datenbankserver. Das Amazon RDS DNS ist öffentlich zugänglich und wird von MSK Connect unterstützt, konnte jedoch in der Vergangenheit keine Datenbanken oder Anwendungen mit privatem DNS unterstützen. Mit dem Neuesten private DNS-Hostnamen Mit dem Funktionsstart kann es auch das private DNS von Anwendungen unterstützen, daher verwenden wir eine MySQL-Datenbank auf der EC2-Instanz.
Diese Installation enthält Informationen zum Einrichten der MySQL-Datenbank auf einer EC2-Instanz mit einem Knoten. Dies sollte nicht für Ihr Produktions-Setup verwendet werden. Sie sollten die entsprechenden Anleitungen zum Einrichten und Konfigurieren von MySQL in Ihrem Konto befolgen.
Die MySQL-Datenbank ist bereits mithilfe der CloudFormation-Vorlage eingerichtet und kann jetzt verwendet werden. Um die Daten hochzuladen, führen Sie die folgenden Schritte aus:
- SSH zur MySQL EC2-Instanz. Anweisungen finden Sie unter Stellen Sie eine Verbindung zu Ihrer Linux-Instanz her. Die Datendatei
salesdb.sql
ist bereits heruntergeladen und unter verfügbar/home/ec2-user
Verzeichnis. - Melden Sie sich mit dem Benutzernamen master bei mysqldb an.
- Um auf das Passwort zuzugreifen, navigieren Sie zu AWS-Systemmanager und Parameterspeicher Tab. Wählen /Database/Credentials/master und klicken Sie auf Details und kopieren Sie den Wert für den Schlüssel.
- Melden Sie sich mit dem folgenden Befehl bei MySQL an:
- Führen Sie die folgenden Befehle aus, um die zu erstellen
salesdb
Datenbank und laden Sie die Daten in die Tabelle:
Dadurch werden die Datensätze in verschiedene Tabellen eingefügt salesdb
Datenbank.
- Führen Sie show tables aus, um die folgenden Tabellen im anzuzeigen
salesdb
:
Erstellen Sie einen DHCP-Optionssatz
Mit DHCP-Optionssätzen können Sie die folgenden Aspekte des Routings in Ihrem virtuellen Netzwerk steuern:
- Sie können die DNS-Server, Domänennamen oder NTP-Server (Network Time Protocol) steuern, die von den Geräten in Ihrer VPC verwendet werden.
- Sie können die DNS-Auflösung in Ihrer VPC vollständig deaktivieren.
Um privates DNS zu unterstützen, können Sie ein verwenden Amazon Route 53 private Zone oder Ihr eigener benutzerdefinierter DNS-Server. Wenn Sie eine private Route 53-Zone verwenden, erfolgt die Einrichtung automatisch und es müssen keine Änderungen an den für die MSK VPC festgelegten Standard-DHCP-Optionen vorgenommen werden. Führen Sie für einen benutzerdefinierten DNS-Server die folgenden Schritte aus, um eine benutzerdefinierte DHCP-Konfiguration mit einzurichten Amazon Virtual Private Cloud (Amazon VPC) und hängen Sie es an die MSK VPC an.
In Ihrer VPC, die mit dem von Amazon bereitgestellten DNS-Server verbunden ist, ist eine Standard-DHCP-Option festgelegt. Zu diesem Zeitpunkt werden die Anfragen zur Auflösung an den von Amazon bereitgestellten DNS-Server weitergeleitet. Wir erstellen jedoch einen neuen DHCP-Optionssatz, da wir einen benutzerdefinierten DNS-Server verwenden.
- Wählen Sie in der Amazon VPC-Konsole aus DHCP-Option eingestellt im Navigationsbereich.
- Auswählen
DHCP-Optionssatz erstellen.
- Aussichten für Name des DHCP-Optionssatzes, eingeben
MSKConnect_Private_DHCP_OptionSet
. - Aussichten für Domain Name, eingeben
mysql.internal
. - Aussichten für Domain Name ServerGeben Sie die IP-Adresse des DNS-Servers ein.
- Auswählen DHCP-Optionssatz erstellen.
- Navigieren Sie zu der MSK VPC und auf der Aktionen Menü, wählen Sie Bearbeiten Sie die VPC-Einstellungen.
- Wählen Sie den neu erstellten DHCP-Optionssatz aus und speichern Sie ihn.
Der folgende Screenshot zeigt die Beispielkonfigurationen. - Navigieren Sie auf der Amazon EC2-Konsole zu
privateDNS_bastion_host
. - Auswählen Instanzzustand und Instanz neu starten.
- Warten Sie ein paar Minuten und führen Sie dann den Vorgang aus
nslookup
vom Bastionsheer; Es sollte in der Lage sein, das Problem mithilfe Ihres lokalen DNS-Servers anstelle von Route 53 aufzulösen:
Jetzt ist unser Basis-Infrastruktur-Setup bereit für die nächste Stufe. Im Rahmen unserer Basisinfrastruktur haben wir folgende Schlüsselkomponenten erfolgreich aufgebaut:
- MSK- und MySQL-VPCs
- Subnetze
- EC2-Instanzen
- VPC-Peering
- Routentabellen
- NAT-Gateways und Internet-Gateways
- DNS-Server und Konfiguration
- Geeignete Sicherheitsgruppen und NACLs
- MySQL-Datenbank mit den erforderlichen Daten
Zu diesem Zeitpunkt kann der MySQL-DB-DNS-Name mithilfe eines benutzerdefinierten DNS-Servers anstelle von Route 53 aufgelöst werden.
Richten Sie den MSK-Cluster und MSK Connect ein
Der nächste Schritt besteht darin, den MSK-Cluster und MSK Connect bereitzustellen, das Datensätze von abruft salesdb
und senden Sie es an eine Amazon Simple Storage-Service (Amazon S3) Eimer. In diesem Abschnitt bieten wir eine exemplarische Vorgehensweise für die Replikation der MySQL-Datenbank (salesdb
) an Amazon MSK mit Debezium, ein Open-Source-Connector. Der Connector überwacht alle Änderungen an der Datenbank und erfasst alle Änderungen an den Tabellen.
Mit MSK Connect können Sie vollständig verwaltete Apache Kafka Connect-Workloads auf AWS ausführen. MSK Connect stellt die erforderlichen Ressourcen bereit und richtet den Cluster ein. Es überwacht kontinuierlich den Zustand und den Lieferstatus von Konnektoren, patcht und verwaltet die zugrunde liegende Hardware und skaliert Konnektoren automatisch, um sie an Änderungen im Durchsatz anzupassen. Dadurch können Sie Ihre Ressourcen auf die Entwicklung von Anwendungen statt auf die Verwaltung der Infrastruktur konzentrieren.
MSK Connect nutzt den benutzerdefinierten DNS-Server in der VPC und ist nicht von Route 53 abhängig.
Erstellen Sie eine MSK-Clusterkonfiguration
Führen Sie die folgenden Schritte aus, um einen MSK-Cluster zu erstellen:
- Wählen Sie auf der Amazon MSK-Konsole Cluster-Konfigurationen für MSK-Cluster im Navigationsbereich.
- Auswählen Konfiguration erstellen.
- Benennen Sie die Konfiguration
mskc-tutorial-cluster-configuration
. - Der Konfigurationseigenschaften, alles entfernen und die Zeile hinzufügen
auto.create.topics.enable=true
. - Auswählen Erstellen.
Erstellen Sie einen MSK-Cluster und hängen Sie die Konfiguration an
Im nächsten Schritt fügen wir diese Konfiguration einem Cluster hinzu. Führen Sie die folgenden Schritte aus:
- Wählen Sie auf der Amazon MSK-Konsole Cluster für MSK-Cluster im Navigationsbereich.
- Auswählen Erstellen Sie Cluster und Benutzerdefinierte erstellen.
- Geben Sie als Clusternamen ein
mkc-tutorial-cluster
. - Der Allgemeine Clustereigenschaften, wählen Vorausgesetzt für den Clustertyp und verwenden Sie die Apache Kafka-Standardversion 2.8.1.
- Verwenden Sie alle Standardoptionen für Brokers und Lagerung .
- Der Konfigurationen, wählen Benutzerdefinierte Konfiguration.
- Auswählen
mskc-tutorial-cluster-configuration
mit der entsprechenden Revision und wählen Sie Weiter. - Der Networking, wählen Sie die MSK VPC aus.
- Wählen Sie die Verfügbarkeitszonen abhängig von Ihrer Region aus, z
us-east1a
,us-east1b
undus-east1c
, und die jeweiligen privaten SubnetzeMSK-Private-1
,MSK-Private-2
undMSK-Private-3
wenn du im . bistus-east-1
Region. Der öffentliche Zugang zu diesen Brokern sollte deaktiviert sein. - Kopieren Sie die Sicherheitsgruppen-ID von Ausgewählte Sicherheitsgruppen.
- Auswählen
Weiter.
- Der Zugangskontrollmethoden, wählen Rollenbasierte IAM-Authentifizierung.
- Im Verschlüsselung Abschnitt, unter Zwischen Kunden und Maklern, TLS-Verschlüsselung wird standardmäßig ausgewählt.
- Aussichten für EnkrYPT-Daten im RuhezustandWählen Verwenden Sie den von AWS verwalteten Schlüssel.
- Verwenden Sie die Standardoptionen für Netzwerk Performance und wählen Sie Grundüberwachung.
- Auswählen An Amazon CloudWatch Logs liefern.
- Der Log-Gruppe, wählen Besuchen Sie die Amazon CloudWatch Logs-Konsole.
- Auswählen Erstellen Sie eine Protokollgruppe.
- Geben Sie einen Protokollgruppennamen ein und wählen Sie Erstellen.
- Gehe zurück zum Überwachung und Tags Seite und darunter Protokollgruppen, wählen Wählen Sie eine Protokollgruppe
- Auswählen Weiter.
- Überprüfen Sie die Konfigurationen und wählen Sie aus Cluster erstellen. Sie werden zur Detailseite des Clusters weitergeleitet.
- Der Angewandte SicherheitsgruppenNotieren Sie sich die Sicherheitsgruppen-ID, die Sie in einem späteren Schritt verwenden möchten.
Die Clustererstellung kann normalerweise 25–30 Minuten dauern. Sein Status ändert sich in „Aktiv“, wenn es erfolgreich erstellt wurde.
Aktualisieren Sie die Zonendatei /var/named/kafka.region.amazonaws.com
Bevor Sie den MSK-Connector erstellen, aktualisieren Sie die DNS-Serverkonfigurationen mit den MSK-Clusterdetails.
- Um die Liste des Bootstrap-Server-DNS und der entsprechenden IP-Adressen zu erhalten, navigieren Sie zum Cluster und wählen Sie Kundeninformationen anzeigen.
- Kopieren Sie die Bootstrap-Serverinformationen mit dem IAM-Authentifizierungstyp.
- Sie können die IP-Adressen des Brokers anhand von identifizieren
nslookup
von Ihrem lokalen Computer und stellt Ihnen die lokale IP-Adresse des Brokers zur Verfügung. Derzeit verweist Ihre VPC auf den neuesten DHCP-Optionssatz und Ihr DNS-Server ist nicht in der Lage, diese DNS-Namen von Ihrer VPC aufzulösen.
Jetzt können Sie sich beim DNS-Server anmelden und die Einträge für verschiedene Broker und entsprechende IP-Adressen im aktualisieren /var/named/kafka.region.amazonaws.com
Datei.
- Laden Sie die
msk-access.pem
Datei aufBastionHostInstance
von Ihrem lokalen Rechner: - Melden Sie sich beim DNS-Server an und öffnen Sie den
/var/named/kafka.region.amazonaws.com
Datei und aktualisieren Sie die folgenden Zeilen mit den korrekten MSK-Broker-DNS-Namen und den entsprechenden IP-Adressen:
Beachten Sie, dass Sie den Broker-DNS wie bereits erwähnt bereitstellen müssen. Entfernen .kafka.<region id>.amazonaws.com
vom DNS-Namen des Brokers.
- Starten Sie den DNS-Dienst neu:
Sie sollten die folgende Meldung sehen:
Ihr benutzerdefinierter DNS-Server ist jetzt betriebsbereit und Sie sollten in der Lage sein, mithilfe des internen DNS-Servers mithilfe von Broker-DNS-Namen aufzulösen.
Aktualisieren Sie die Sicherheitsgruppe für die Konnektivität zwischen der MySQL-Datenbank und MSK Connect
Es ist wichtig, dass die entsprechende Konnektivität zwischen MSK Connect und der MySQL-Datenbank vorhanden ist. Führen Sie die folgenden Schritte aus:
- Navigieren Sie in der Amazon MSK-Konsole zum MSK-Cluster und darunter Netzwerkeinstellungen, kopieren Sie die Sicherheitsgruppe.
- Wählen Sie auf der Amazon EC2-Konsole Sicherheitsgruppen im Navigationsbereich.
- Bearbeiten Sie die Sicherheitsgruppe
MySQL_SG
und wählen Sie Regel hinzufügen. - Fügen Sie eine Regel mit MySQL/Aurora als Typ und der MSK-Sicherheitsgruppe als eingehende Ressource für ihre Quelle hinzu.
- Auswählen Regeln speichern.
Erstellen Sie den MSK-Connector
Führen Sie die folgenden Schritte aus, um Ihren MSK-Connector zu erstellen:
- Wählen Sie auf der Amazon MSK-Konsole Anschluss für MSK Connect im Navigationsbereich.
- Auswählen Konnektor erstellen.
- Auswählen Benutzerdefiniertes Plugin erstellen.
- Laden Sie das MySQL-Connector-Plugin für die neueste stabile Version von herunter Debezium Website oder Download Debezium.zip.
- Laden Sie die ZIP-Datei des MySQL-Connectors in den S3-Bucket hoch.
- Kopieren Sie die URL für die Datei, z
s3://<bucket name>/Debezium.zip
. - Gehe zurück zum Wählen Sie ein benutzerdefiniertes Plugin Seite und geben Sie den S3-Dateipfad für ein S3-URI.
- Aussichten für Benutzerdefinierter Plugin-Name, eingeben
mysql-plugin
. - Auswählen Weiter.
- Aussichten für Name und Vorname, eingeben
mysql-connector
. - Aussichten für BeschreibungGeben Sie eine Beschreibung des Connectors ein.
- Aussichten für Clustertyp, wählen MSK-Cluster.
- Wählen Sie den vorhandenen Cluster aus der Liste aus (für diesen Beitrag
mkc-tutorial-cluster
). - Geben Sie den Authentifizierungstyp an als IAM.
- Verwenden Sie die folgenden Werte für Steckerkonfiguration:
- Aktualisieren Sie die folgende Connector-Konfiguration:
- Aussichten für Kapazitätstyp, wählen Vorausgesetzt.
- Aussichten für MCU-Anzahl pro Arbeiter, 1 eingeben.
- Aussichten für Anzahl der Arbeiter, 1 eingeben.
- Auswählen Verwenden Sie die MSK-Standardkonfiguration.
- Im Zugriffsberechtigungen Abschnitt, auf der Wählen Sie eine Servicerolle Menü, wählen Sie
MSK-Connect-PrivateDNS-MySQLConnector*
, Dann wählen Weiter. - Im Sicherheit Behalten Sie in diesem Abschnitt die Standardeinstellungen bei.
- Im Logs Abschnitt auswählen An Amazon CloudWatch-Protokolle liefern.
- Auswählen Besuchen Sie die Amazon CloudWatch Logs-Konsole.
- Der Logs Wählen Sie im Navigationsbereich Log-Gruppe.
- Auswählen
Erstellen Sie eine Protokollgruppe.
- Geben Sie den Namen der Protokollgruppe, die Aufbewahrungseinstellungen und die Tags ein und wählen Sie dann aus Erstellen.
- Kehren Sie zur Connector-Erstellungsseite zurück und wählen Sie Durchsuchen Sie die Protokollgruppe.
- Wähle die
AmazonMSKConnect
Protokollgruppe und wählen Sie dann Weiter. - Überprüfen Sie die Konfigurationen und wählen Sie aus Konnektor erstellen.
Warten Sie, bis der Connector-Erstellungsprozess abgeschlossen ist (ca. 10–15 Minuten).
Der MSK Connect-Connector ist jetzt betriebsbereit. Sie können sich mit Ihrer Benutzer-ID bei der MySQL-Datenbank anmelden und einige Datensatzänderungen am Kundentabellendatensatz vornehmen. MSK Connect kann CDC-Datensätze empfangen und Aktualisierungen der Datenbank werden im MSK verfügbar sein Thema.
Nachrichten aus dem MSK-Thema konsumieren
Um Nachrichten aus dem MSK-Thema zu konsumieren, führen Sie den Kafka-Consumer auf dem aus MSK_Client
EC2-Instanz in der MSK VPC verfügbar.
- SSH zum
MSK_Client
EC2-Instanz. DerMSK_Client
Die Instanz verfügt über die erforderlichen Kafka-Client-Bibliotheken, die Amazon MSK IAM-JAR-Datei,client.properties
Datei und ein daran angehängtes Instanzprofil zusammen mit der entsprechenden IAM-Rolle mithilfe der CloudFormation-Vorlage. - Fügen Sie
MSKClientSG
Sicherheitsgruppe als Quelle für die MSK-Sicherheitsgruppe mit den folgenden Eigenschaften:- Aussichten für Typ, wählen Der gesamte Verkehr.
- Aussichten für Quelle, wählen Benutzerdefinierte und MSK-Sicherheitsgruppe.
Jetzt sind Sie bereit, Daten zu nutzen.
- Um die Themen aufzulisten, führen Sie den folgenden Befehl aus:
- Um Daten aus dem zu verbrauchen
salesdb-server.salesdb.CUSTOMER
Um das Thema aufzurufen, verwenden Sie den folgenden Befehl:
Führen Sie den Kafka-Consumer auf Ihrem EC2-Computer aus und Sie können Meldungen wie die folgenden protokollieren:
Beim Testen der Anwendung wurden Datensätze mit den CUST_ID 1998, 1999 und 2000 aktualisiert und diese Datensätze sind in den Protokollen verfügbar.
Aufräumen
Es empfiehlt sich immer, alle im Rahmen dieses Beitrags erstellten Ressourcen zu bereinigen, um zusätzliche Kosten zu vermeiden. Um Ihre Ressourcen zu bereinigen, löschen Sie den MSK-Cluster, die MSK Connect-Verbindung, die EC2-Instanzen, den DNS-Server, den Bastion-Host, den S3-Bucket, die VPC, die Subnetze und die CloudWatch-Protokolle.
Bereinigen Sie außerdem alle anderen AWS-Ressourcen, die Sie mit AWS CloudFormation erstellt haben. Sie können diese Ressourcen auf der AWS CloudFormation-Konsole löschen, indem Sie den Stack löschen.
Zusammenfassung
In diesem Beitrag haben wir den Prozess der Einrichtung von MSK Connect mithilfe eines privaten DNS besprochen. Mit dieser Funktion können Sie Connectors so konfigurieren, dass sie auf öffentliche oder private Domänennamen verweisen.
Wir können die anfänglichen Lade- und CDC-Datensätze von einer MySQL-Datenbank empfangen, die in einer separaten VPC gehostet wird und deren DNS von außen nicht zugänglich oder auflösbar ist. MSK Connect konnte eine Verbindung zur MySQL-Datenbank herstellen und die Datensätze mithilfe der privaten DNS-Funktion von MSK Connect nutzen. Der benutzerdefinierte DHCP-Optionssatz wurde an die VPC angehängt, wodurch sichergestellt wurde, dass die DNS-Auflösung über den lokalen DNS-Server statt über Route 53 durchgeführt wurde.
Mit der privaten DNS-Unterstützungsfunktion von MSK Connect können Sie Ihre Datenbanken, Data Warehouses und Systeme wie Secret Manager, die mit Ihrer eigenen VPC arbeiten, für das Internet unzugänglich machen und so diese Einschränkung überwinden und die Sicherheitslage Ihres Unternehmens einhalten.
Weitere Informationen und erste Schritte finden Sie unter privates DNS für MSK Connect.
Über den Autor
Amar ist Senior Solutions Architect bei Amazon AWS in Großbritannien. Er arbeitet für Energie-, Versorgungs-, Fertigungs- und Automobilkunden an strategischen Implementierungen und ist auf den Einsatz von AWS Streaming und fortschrittlichen Datenanalyselösungen spezialisiert, um optimale Geschäftsergebnisse zu erzielen.
- SEO-gestützte Content- und PR-Distribution. Holen Sie sich noch heute Verstärkung.
- PlatoData.Network Vertikale generative KI. Motiviere dich selbst. Hier zugreifen.
- PlatoAiStream. Web3-Intelligenz. Wissen verstärkt. Hier zugreifen.
- PlatoESG. Kohlenstoff, CleanTech, Energie, Umwelt, Solar, Abfallwirtschaft. Hier zugreifen.
- PlatoHealth. Informationen zu Biotechnologie und klinischen Studien. Hier zugreifen.
- Quelle: https://aws.amazon.com/blogs/big-data/resolve-private-dns-hostnames-for-amazon-msk-connect/
- :hast
- :Ist
- :nicht
- :Wo
- $UP
- 1
- 14
- 160
- 1998
- 1999
- 2000
- 53
- 7
- 73
- 8
- 9
- a
- Fähig
- Über Uns
- Zugang
- zugänglich
- Konto
- anerkennen
- über
- aktiv
- hinzufügen
- Zusätzliche
- Adresse
- Adressen
- advanced
- Nach der
- Alle
- erlaubt
- entlang
- bereits
- immer
- Amazon
- Amazon EC2
- Amazon RDS
- Amazon Web Services
- an
- Analytik
- und
- Ein anderer
- jedem
- Apache
- Apache Kafka
- Anwendung
- Anwendungen
- angemessen
- Architektur
- SIND
- AS
- Aspekte
- At
- anhängen
- Auth
- Authentifizierung
- Auto
- Im Prinzip so, wie Sie es von Google Maps kennen.
- Automobilindustrie
- Verfügbarkeit
- verfügbar
- vermeiden
- AWS
- AWS CloudFormation
- Base
- BE
- weil
- Bevor
- zwischen
- binden
- Bootstrap
- Makler
- Broker
- Building
- erbaut
- Geschäft
- aber
- by
- CAN
- capability
- Erfassung
- CDC
- Übernehmen
- Änderungen
- Auswählen
- klicken Sie auf
- Auftraggeber
- Kunden
- Cluster
- COM
- abschließen
- uneingeschränkt
- entsprechen
- Komponenten
- Konfiguration
- konfiguriert
- Vernetz Dich
- Verbindung
- Konnektivität
- Konsul (Console)
- verbrauchen
- Verbraucher
- ständig
- Smartgeräte App
- Kernbereich
- Unternehmen
- und beseitigen Muskelschwäche
- Kosten
- Paar
- erstellen
- erstellt
- schafft
- Schaffung
- Zur Zeit
- Original
- Kunde
- Kunden
- technische Daten
- Datenanalyse
- Data Warehouse
- Datenbase
- Datenbanken
- Standard
- definiert
- Lieferanten
- zeigt
- abhängig
- Abhängig
- einsetzen
- Einsatz
- Beschreibung
- Details
- Geräte
- anders
- diskutiert
- dns
- do
- Domain
- DOMAIN NAMEN
- Nicht
- herunterladen
- Antrieb
- Früher
- entweder
- gewährleisten
- gesichert
- Enter
- Arbeitsumfeld
- Äther (ETH)
- alles
- Beispiel
- vorhandenen
- erweitern
- äußerlich
- Merkmal
- wenige
- Reichen Sie das
- Mappen
- Finale
- Finden Sie
- Fluss
- Setzen Sie mit Achtsamkeit
- folgen
- Folgende
- Aussichten für
- für
- voll
- Tor
- bekommen
- ABSICHT
- Go
- gut
- Gruppe an
- Gruppen
- die Vermittlung von Kompetenzen,
- Hardware
- Haben
- he
- Gesundheit
- hier
- High-Level
- Geschichte
- Gastgeber
- gehostet
- Gastgeber
- aber
- HTML
- http
- HTTPS
- IAM
- ID
- identifizieren
- Identitätsschutz
- if
- zeigt
- Realisierungen
- wichtig
- in
- unzugänglich
- das
- inklusive
- Information
- Infrastruktur
- Anfangs-
- installieren
- Installation
- Instanz
- Instanzen
- beantragen müssen
- Anleitung
- intern
- Internet
- in
- Einleitung
- IP
- IP Address
- IP-Adressen
- IT
- SEINE
- jpg
- kafka
- Behalten
- Wesentliche
- später
- neueste
- starten
- LERNEN
- Bibliotheken
- Gefällt mir
- Einschränkung
- Line
- Linien
- linux
- Liste
- Belastung
- aus einer regionalen
- Standorte
- Log
- Maschine
- um
- verwaltet
- Manager
- Manager
- Managed
- flächendeckende Gesundheitsprogramme
- Herstellung
- Master
- Spiel
- Kann..
- erwähnt
- MENÜ
- Nachricht
- Nachrichten
- Methoden
- könnte
- Minuten
- Überwachen
- Monitore
- mehr
- schlauer bewegen
- mehrere
- MySQL
- Name
- Namens
- Namen
- Navigieren
- Menü
- Need
- Bedürfnisse
- Netzwerk
- Neu
- neu
- weiter
- nicht
- beachten
- jetzt an
- of
- WOW!
- Angebote
- on
- einzige
- XNUMXh geöffnet
- Open-Source-
- optimal
- Option
- Optionen
- or
- Andere
- UNSERE
- Ergebnisse
- übrig
- Überwinden
- besitzen
- Seite
- Brot
- Parameter
- Teil
- Passwort
- passt
- Patches
- Weg
- für
- durchgeführt
- Berechtigungen
- Ort
- Plato
- Datenintelligenz von Plato
- PlatoData
- Plugin
- Punkte
- Beliebt
- Post
- Postgresql
- Werkzeuge
- Praxis
- privat
- Private Key
- Prozessdefinierung
- Hersteller
- Produkt
- Produktion
- Profil
- immobilien
- Protokoll
- die
- vorausgesetzt
- bietet
- Öffentlichkeit
- öffentlich
- lieber
- Erreichen
- bereit
- Gründe
- erhalten
- kürzlich
- Rekord
- Aufzeichnungen
- siehe
- Referenz
- Region
- Release
- entfernen
- Zugriffe
- falls angefordert
- Auflösung
- Lösung
- Ressourcen
- Downloads
- diejenigen
- Folge
- Beibehaltung
- Rollen
- Straße
- Routing
- Regel
- Führen Sie
- Laufen
- gleich
- Speichern
- Waage
- Die Geheime
- Abschnitt
- Abschnitte
- Sicherheitdienst
- sehen
- Segment
- ausgewählt
- senden
- Senior
- getrennte
- Server
- Server
- Lösungen
- kompensieren
- Sets
- Einstellung
- Einstellungen
- Setup
- sollte
- erklären
- Konzerte
- ähnlich
- Einfacher
- am Standort
- So
- Lösung
- Lösungen
- Quelle
- spezialisieren
- SQL
- stabil
- Stapel
- Stufe
- begonnen
- Bundesstaat
- Status
- Schritt
- Shritte
- Immer noch
- Lagerung
- speichern
- Läden
- Strategisch
- Streaming
- Subnetz
- Subnetze
- Erfolgreich
- so
- Lieferant
- Support
- Unterstützt
- System
- Systeme und Techniken
- Tabelle
- Nehmen
- und Aufgaben
- Vorlage
- Testen
- als
- zur Verbesserung der Gesundheitsgerechtigkeit
- Das
- Die Quelle
- Großbritannien
- ihr
- dann
- Dort.
- Diese
- vom Nutzer definierten
- fehlen uns die Worte.
- nach drei
- Durchsatz
- Zeit
- zu
- Thema
- Themen
- der Verkehr
- Transit
- Lernprogramm
- XNUMX
- tippe
- typisch
- Uk
- für
- zugrunde liegen,
- Aktualisierung
- aktualisiert
- Updates
- auf
- URL
- -
- benutzt
- Mitglied
- verwendet
- Verwendung von
- Dienstprogramme
- Wert
- Werte
- verschiedene
- Version
- Assistent
- warten
- Walkthrough
- wollen
- wurde
- we
- Netz
- Web-Services
- GUT
- waren
- wann
- welche
- werden wir
- mit
- Arbeiten
- Werk
- YAML
- U
- Ihr
- Zephyrnet
- PLZ
- Zonen