Verwendung der Konsul -DNS -Schnittstelle

Verwendung der Konsul -DNS -Schnittstelle
Die DNS-Schnittstelle von Consul hilft Ihnen, eine Service-Erkennung ohne persönliche Integration in die Konsul zu erhalten. Der Standardport zum Anhören eines DNS -Servers im Konsulagenten ist Port 8600. Im Allgemeinen stellen wir eine HTTP -API -Anfrage zur Namensuche durch, aber hier können wir den DNS -Server direkt wie Service verwenden.US-Ost .Es ist wichtig, einige Details wie Client_addr, Ports zu konfigurieren.DNS, Recorsors, Domain und, DNS_Config.

Voraussetzung

  1. Eine virtuelle Serverinstanz
  2. Konsul auf dem Server installiert
  3. Ein Root -Benutzer

System aktualisieren

Wir empfehlen Ihnen, alle verfügbaren Pakete und Repositorys zu aktualisieren, bevor Sie einen neuen Betrieb ausführen. Führen Sie den folgenden Befehl aus und er erledigt den Job für Sie. Unter Linux

APT-Get-Update
Auf Rhel/Centos yum -y -Update

Knotensuche

Sie können alle DNS -Datensätze wie Hostadressen, E -Mail -Austausch und Namenserver in der Befehlszeile abfragen, indem Sie das Dig -Tool verwenden. Sie können die Adresse eines jeden Knotens abrufen, indem Sie eine einfache Abfrage erstellen. .Knoten[.Rechenzentrum]. Angenommen, es gibt einen Knoten mit dem Namen Prome im Datacenter DC1, dann können Sie diesen Knoten mit dem folgenden Befehl suchen.

Prom.Knoten.DC1.Konsul

Wenn der Knoten im selben Rechenzentrum wie Konsulagenten ausgeführt wird, müssen Sie das DataCenter nicht angeben. Sie können diesen Knoten mit dem folgenden Befehl suchen.

Prom.Knoten.Konsul

Service -Lookups

Service -Lookup ist eine Abfrage, um Informationen über den Dienstanbieter zu erhalten. Das Format der Standard -Service -Suche lautet wie folgt: [Tag Tag.].Service[.Rechenzentrum]. Tag ist im obigen Befehl vollständig optional. Nehmen wir an, Sie möchten nach einem Dienst namens Prome im lokalen Rechenzentrum suchen, dann müssen Sie auch nicht das Rechenzentrum angeben.

Prom.Service.Konsul

Sie können das Tag auch verwenden, um die Ergebnisse einer Abfrage zu filtern. Angenommen, Sie möchten die Mariadb -Primär in einem bestimmten Datencenter finden und dann den folgenden Befehl verwenden.

primär.Mariadb.Service.DC5.Konsul

Verwendung von Konsul -DNS

In diesem Handbuch werden verschiedene Möglichkeiten zur Verwendung der Konsul -DNS -Schnittstelle angezeigt. Es gibt hauptsächlich 3 Möglichkeiten, Konsul -DNS zu verwenden: 1. Beschäftigen Sie eine benutzerdefinierte DNS -Resolver -Bibliothek 2. Ernennen Sie Consul als DNS -Server für eine Instanz 3. Weiterleiten Abfragen für Consul TLD von einem DNS -Server

Verwenden Sie eine benutzerdefinierte DNS -Resolver -Bibliothek

Eine Möglichkeit zur Verwendung von Konsul -DNS. Wenden Sie benutzerdefinierte Logik in Ihrem Code an. Andernfalls sind Sie auf die IP -Adresse des Dienstes beschränkt. Andernfalls müssen Sie den Dienst auf einem bestimmten Port ausführen, wenn Sie eine DNS -Schnittstelle verwenden, und Ihr Client sollte auch diesen Port wissen, um darauf zugreifen zu können.

Ernennen Sie Konsul als DNS -Server für eine Instanz

Sie können den Konsul -DNS -Server für einen Knoten verwenden, indem Sie den Host so konfigurieren, dass DNS -Abfragen direkt an den DNS -Server des lokalen Konsulagenten geliefert werden. Dazu müssen Sie sowohl das System als auch die Konsulagentenkonfiguration ändern.

Zunächst müssen Sie die Systemkonfiguration ändern. Sie müssen den Resolv ändern.Conf -Datei auf dem System mit einem beliebigen Texteditor. Hier verwenden wir den Nano -Texteditor.

Nano Resolv.Conf

Die Datei sollte so aussehen:

Suche deine Domain.com
Namenserver 127.0.0.1

Bitte vergessen Sie nicht, Ihre Domain zu ersetzen.com mit Ihrer tatsächlichen Domain.

Als nächstes sollte Ihre Konsulagentenkonfiguration wie folgt aussehen:


"DataCenter": "DC1",
"Data_dir": "/var/conul",
"Recorsors": ["8.8.8.8 "],
"Häfen" :
"DNS": 53
,
"retry_join": ["35.75.10.85 "," 35.75.10.111 "," 35.75.10.123 "]

Der Konsulagenten kann weiterhin in der Lage sein, Aufzeichnungen für Datensätze außerhalb der Konsul -TLD zu bewältigen.

Weiterleiten Abfragen für Consul TLD von einem DNS -Server

Sie können Konsul -DNS verwenden, um alle Abfragen an den Konsulagenten vom vorhandenen DNS -Server weiterzuleiten. Wir empfehlen Ihnen, verschiedene Bind -Server zu verwenden und Konsulagenten lokal auf allen Bind -Servern auszuführen. Damit eine Abfrage von einem Bind -Server akzeptiert wird, wird sie automatisch an seinen Konsul -DNS -Server versendet.

Abschluss

In dieser Anleitung haben Sie die Verwendung der Konsul -DNS -Schnittstelle in Ihrem Konsulcluster gelernt. Sie haben auch mit der Art von Abfragen wie dem Node -Lookup und Service -Suchanlage gelernt.