NetWorker: Best Practices für das Troubleshooting von Namensauflösungen
Summary: Troubleshooting-Handbuch für Probleme im Zusammenhang mit Domain Name Space (DNS) in NetWorker.
Instructions
NetWorker ist auf Namensauflösung angewiesen. Wenn die Namensauflösung nicht korrekt und vollständig konsistent ist, können bei vielen NetWorker-Vorgängen Probleme auftreten. Da NetWorker potenziell sensible Daten managt, muss es die Identitäten der Hosts sicherstellen, mit denen es auf verschiedene Weise interagiert.
Zahlreiche Symptome in NetWorker können das Ergebnis von unzulänglicher Namensauflösung in NetWorker sein:
- Fehlermeldungen, die auf Probleme mit dem Namens-Forward- oder Reverse-Lookup hinweisen.
- Unfähigkeit, Clients während des Backups zu testen
- Clients können nicht manuell auf dem Server gespeichert oder wiederhergestellt werden.
- Probleme beim Klonen oder beim Zugriff auf Storage-Node-Geräte
- Probleme beim Browsing oder mit dem Mediendatenbankdatensatz.
- Der Server oder Storage Node reagiert beim Start oder während des regulären Betriebs nicht mehr.
- Falsch benannte oder verschachtelte Indexverzeichnisse
- Fehler bei falsch konfiguriertem Client
Workflow für Namensauflösung
Versuche, einen Hostnamen aufzulösen, der per Befehl oder interner Konfiguration verwendet wird, müssen in eine IP-Adresse aufgelöst werden, damit sie verwendet werden können. Die folgenden Ressourcen werden in der folgenden Reihenfolge geprüft, um festzustellen, ob die name:IP bereits zwischengespeichert wurde, und angehalten, wenn der Name übereinstimmt.
- NetWorker-Namenscache: Die meisten wichtigen NetWorker-Daemons; Konfigurierbare Lebensdauer in der NSRLA-Datenbank
- Lokaler Hostauflösungscache: Variiert je nach Betriebssystem und verschiebt die Last von Hosts oder DNS-Lookups
- Dateieinträge für lokale Hosts: Schnelle lokale Suche, aber manuell gepflegt; nützlich, um die DNS-Auflösung zu überschreiben
- DNS-Server-Lookups: Industrie bevorzugt aufgrund zentralisierter Verwaltung, aber langsamer
1. NetWorker-Caching:
NetWorker-Daemons verwalten interne Namenscaches. Clients speichern aufgelöste Namen in nsrexecd zwischen, während Core-Daemons wie nsrd und nsmmdbd ihre eigenen Caches behalten. Dies ist die erste überprüfte IP-Tabelle und die schnellste. Die interne Cachelebensdauer kann in der nsrla-Datenbank jedes NetWorker-Hosts mithilfe von nsradminaus:
Linux/UNIX
printf ". type: nsrla\nshow positive DNS cache TTL; negative DNS cache TTL\nprint\n" | nsradmin -p nsrexec -s remote_host
Windows
(echo . type: nsrla & echo show positive DNS cache TTL; negative DNS cache TTL & echo print) | nsradmin -p nsrexec -s remote_host
Sollte standardmäßig 30 Minuten (1800 Sekunden) zurückgeben:
positive DNS cache TTL: 1800; negative DNS cache TTL: 1800;
Dieser Wert steuert, wie lange es dauert, bis NetWorker den Prozesscache absichtlich zugunsten aktualisierter Informationen aus den nächsten Ebenen sequenziell löscht. Daher ist eine Erhöhung für Umgebungen geeignet, in denen die DNS-Suche langsam, die DNS-Adressierung jedoch relativ statisch ist. Umgekehrt können niedrigere Werte für Umgebungen mit sich häufig ändernden Adressen wünschenswert sein.
Wenn ein erforderlicher Name im internen Cache von NetWorker vorhanden ist, wird er verwendet und weitere Abfragen werden angehalten. Wenn zwischengespeicherte Name-zu-IP-Zuordnungen falsch zu sein scheinen, verwenden Sie zur Problembehandlung Befehle, um den aktuellen Cache zu protokollieren und dann Einträge zu löschen oder erneut aufzulösen:
-
dbgcommand -n nsrd PrintDnsCache=1(In daemon.raw)dbgcommand -n nsrd FlushDnsCache=1(Flush), oder,dbgcommand -n nsrd FlushDnsCache=9(Cache leeren und sofort erneut auflösen/neu aufbauen)
-n process name" oder "-p PID" verwendet werden. Um die Prozess-ID (PID) zu verwenden, müssen Sie zuerst andere Befehle ausführen, um die PID zu erhalten. Zum Beispiel:
-
- Linux/UNIX:
ps -ef | grep nsr - Windows:
tasklist | findstr nsr
- Linux/UNIX:
2. Resolver-Cache:
ipconfig /displaydns unter Windows), und alle bieten eine Möglichkeit, es zu löschen:
-
- Das Leeren des Auflösungscaches variiert je nach Betriebssystem/Verteilung – siehe Herstellerdokumentation.
- Windows:
ipconfig /flushdns
3. Hostdateien:
-
- UNIX/Linux: /etc/hosts
- Windows: %systemroot%\System32\drivers\etc\hosts
4. Forward-Auflösung:
ipconfig /all um sie anzuzeigen; Überprüfen Sie unter Linux/UNIX /etc/resolv.conf auf die DNS-Reihenfolge. nslookup ist das gebräuchlichste Tool zur Abfrage von DNS und existiert auf allen Plattformen, wird aber häufig missbraucht; So fragen Sie die Forward-Zone ab:
- Führen Sie
nslookupohne Argumente zum Aufrufen der interaktiven Eingabeaufforderung. - Geben Sie die Namen-Iteration für die Suche ein und drücken Sie die Eingabetaste, um den Forward-Datensatz vom DNS-Server abzurufen, mit dem Sie eine Verbindung herstellen.
- Geben Sie denselben Namen zweimal mehr ein, um festzustellen, ob der Namensdatensatz im Hintergrund zwischen verschiedenen Hosts ein Round-Robining durchführt oder dieselben Daten zurückgibt.
- Wiederholen Sie diesen Vorgang für jede Instanz eines beliebigen Namens, den der Host von anderen Hosts angerufen wird oder den er selbst für dieselbe IP-Adresse hält.
- Wiederholen Sie den gleichen Prozess für alle anderen DNS-Server, für die der Host konfiguriert ist, indem Sie „server next_dns_server“ eingeben.
5. Reverse-Auflösung:
nslookup IP_Address oder auch die Eingabe der IP-Adresse in nslookup fragt die Reverse-Lookup-Zone nicht ab:
-
Führen Sie
nslookupohne Argumente zum Aufrufen der interaktiven Eingabeaufforderung. - Set eingeben
q=ptr, um den Abfragetyp in die umgekehrte Zone zu ändern. - Geben Sie die IP-Adresse für die Reverse-Auflösung ein und drücken Sie die Eingabetaste.
- Stellen Sie sicher, dass der Name, der im Reverse-Datensatz zurückgegeben wird, mit dem Namen/der IP des Forward-Datensatzes übereinstimmt.
[root@linux_a~]# nslookup linux_a
Server: 1.2.3.4
Address: 1.2.3.4#53
Name: linux_a.domain.com
Address: 5.6.7.8
[root@linux_a~]# nslookup 5.6.7.8
Server: 1.2.3.4
Address: 1.2.3.4#53
Name: linux_a.domain.com
Address: 5.6.7.8
[root@linux_a~]# nslookup
> set q=ptr
> 5.6.7.8
Server: 1.2.3.4
Address: 1.2.3.4#53
Non-authoritative answer:
8.7.6.5.in-addr.arpa name = linux_a.domain.com.
nslookup Fragt die Reverse-Lookupzone nicht interaktiv nie ab.
HINWEIS: NetWorker verlässt sich bei der Autorisierung auf konsistentes Forward- und Reverse-DNS. Dieses Design verhindert IP-Spoofing und schützt Backupdaten vor unbefugtem Zugriff.
Testen der Namensauflösung
Alle NetWorker-Hosts müssen über eine konsistente Vorwärts- und Rückwärtsnamensauflösung für jeden Host verfügen, mit dem sie kommunizieren, basierend auf ihrer Datenzonenrolle. Für NetWorker-Administratoren ist es von entscheidender Bedeutung, sicherzustellen, dass alle Probleme mit der Hostauflösung sofort und vollständig behoben werden.
Wenn Sie Probleme mit der Namensauflösung beheben oder diese in Ihrer NetWorker Data-Zone ausschließen möchten, gehen Sie wie folgt vor:
1. Suchen Sie nach allen Hosts, die am fehlgeschlagenen Vorgang beteiligt sind, z. B. Server, Clients und möglicherweise Speicher-Nodes.
2. Bestimmen Sie für jeden die lokal konfigurierten IP-Adressen und alle erwarteten auflösbaren Namen für diese IP-Adressen.
3. Konfigurieren Sie alle Hosts so, dass sie die Hostdatei vor DNS für die Hostauflösung verwenden.
4. Konfigurieren Sie am Anfang der Hostdatei eines Hosts einen einzelnen Eintrag für jede IP, wobei jeder Name in derselben Zeile steht.
5. Kopieren Sie diese Zeilen wortgetreu vom ersten Host in die Hostdateien der anderen beteiligten Hosts.
6. Bearbeiten Sie die NetWorker-Clientobjekte so, dass Aliase korrekt den gewünschten IP-Adressen entsprechen.
7. Fahren Sie NetWorker auf allen beteiligten Hosts herunter.
8. Löschen Sie den Auflösungscache auf jedem Host mithilfe des entsprechenden Betriebssystemmechanismus.
9. Starten Sie NetWorker neu und wiederholen Sie den problematischen Vorgang.
Um zu beweisen, dass der Name von einem bestimmten Host aufgelöst wird, verwenden Sie diesen Test:
1. Stellen Sie vom ersten NetWorker-Host (z. B. dem Client) eine Verbindung zum zweiten (z. B. Server) her, indem Sie nsradmin -s remote_host -p nsrexec - Lassen Sie die Sitzung geöffnet.
2. Bestimmen Sie auf demselben Host den Prozess für nsradmin (z. B. Windows, tasklist | findstr nsradmin)
3. Führen Sie netstat aus, um den Socket anzuzeigen, der diesem Prozess zugeordnet ist (z. B. Windows, netstat -ao | findstr process_id)
4. Bestimmen Sie den Verbindungssockel von diesem Host (die linke IP:Port-Kopplung in der Ausgabe)
5. Auf dem Remotehost: Führen Sie Folgendes aus: netstat -a und findstr/grep für :calling_port_from_first_host.
6. Der Hostname vor dem Doppelpunkt gibt an, wie der zweite Host den ersten Host auflöst, wenn er die eingehende Verbindung akzeptiert.
7. Wiederholen Sie den Befehl mit dem Befehl -n switch zum Befehl netstat hinzugefügt, um die IP desselben Sockets zu überprüfen, um zu überprüfen, ob die IP/Route erwartet wird.
8. Kehren Sie denselben Test um, um sicherzustellen, dass der zweite Host den ersten Host innerhalb der erwarteten Parameter auflöst.
Informationen über NetWorker-Clientaliase
NetWorker verfügt außerdem über ein globales konfigurierbares Feld für alle Clientinstanzen mit dem Namen "Aliases", das alle Namen widerspiegeln sollte, die für diesen Client aufgelöst werden können. Auf diese Weise kann NetWorker mehrere aufgelöste Namen mit einer Clientinstanz verknüpfen. Beispielsweise kann client1.domain.prod je nach verwendeter IP auch als client1.domain.bkup oder client1 angezeigt werden.
Additional Information
NetWorker-Vorgänge wie savegroup verwenden mehrere TCP-Sockets: jeweils einen für Kontroll-, Daten- und Indexaktualisierungen. Wenn ein Socket einen inkonsistenten (aber gültigen) Namen verwendet, schlägt der Vorgang möglicherweise fehl.
- Round-Robining wird manchmal bewusst verwendet und konfiguriert, ist aber in der Regel unberechenbar und zu vermeiden.
netstat -azeigt offene/aktive TCP-Sockets an, die den vom Betriebssystem aufgelösten Namen des fremden Hosts preisgeben - dies kann verwendet werden, um Probleme zu identifizieren- Statisches Routing kann manchmal erforderlich sein, wenn der Netzwerkverkehr einen unerwarteten/unerwünschten Adapter verwendet, was später zu Problemen mit der Namensauflösung führen kann.
Siehe auch: NetWorker-Prozesse und -Ports