Holen Sie sich die IP und den Hostnamen aller Hosts auf Zabbix

Holen Sie sich die IP und den Hostnamen aller Hosts auf Zabbix

zabbix

Zabbix ([`zæbiks]) ist eine Open-Source-Lösung auf Unternehmensebene, die verteilte System- und Netzwerküberwachungsfunktionen auf Basis einer Web-Schnittstelle bereitstellt.

Zabbix kann verschiedene Netzwerkparameter überwachen, um den sicheren Betrieb des Serversystems zu gewährleisten, und bietet einen flexiblen Benachrichtigungsmechanismus, mit dem Systemadministratoren verschiedene bestehende Probleme schnell lokalisieren/lösen können.

Zabbix besteht aus zwei Teilen, dem Zabbix-Server und der optionalen Komponente Zabbix-Agent.

Der Zabbix-Server kann über SNMP, Zabbix-Agent, Ping, Portüberwachung und andere Methoden eine Remote-Server-/Netzwerkstatusüberwachung, Datenerfassung und andere Funktionen bereitstellen. Er kann auf Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X und anderen Plattformen ausgeführt werden.

Der folgende Code zeigt Ihnen, wie Sie die IP- und Hostnamen aller Hosts auf Zabbix abrufen. Der Code lautet wie folgt:

#Kodierung:utf-8
#Holen Sie sich die IP und den Hostnamen aller Hosts bei Zabbix-Importanforderungen
JSON importieren
CSV importieren
Importzeit
def get_token():
  Daten = {
    "jsonrpc": "2.0",
    "Methode": "Benutzer.Login",
    "Parameter": {
      "Benutzer": Benutzername,
      "Passwort": Passwort
    },
    "Ich würde": 0
  }
  r = Anfragen.get(zaurl, Header=Header, Daten=json.dumps(Daten))
  auth = json.loads(r.text)
  return auth["Ergebnis"]
auf def getHosts(Token):
  Daten = {
    "jsonrpc": "2.0",
    "Methode": "host.get",
    "Parameter": {
      "Ausgabe": [
        "Host-ID",
        "Gastgeber"
      ],
      "Schnittstellen auswählen": [
        "Schnittstellen-ID",
        "IP"
      ]
    },
    "Ich würde": 2,
    "auth": Token,
  }
  Anfrage = Anfragen.Post(zaurl, Header=Header, Daten=json.dumps(Daten))
  dict = json.loads(Anfrage.Inhalt)
# drucken (dict['Ergebnis'])
  return dict['Ergebnis']
wenn __name__ == "__main__":
  zaurl="http://xx.xx.xx.xx/zabbix/api_jsonrpc.php"
  Header = {"Inhaltstyp": "application/json"}
  Benutzername = "xx"
  Passwort = "xx"
  token = token_abrufen()
  Hostliste = getHosts(Token)
  Datendatei = "zabbix.txt"
  fdata = öffnen(Datendatei,'w')
  für i in der Hostliste:
    Host-ID = i['Host-ID']
    Hostip = i['Host']
    fdata.write(Host-IP + ' ' + Host-ID + '\n')
  fdata.schließen()

Zusammenfassen

Oben ist der vom Herausgeber eingeführte Beispielcode zum Abrufen der IP und des Hostnamens aller Hosts auf Zabbix. Ich hoffe, er ist für alle hilfreich. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!
Wenn Sie diesen Artikel hilfreich finden, können Sie ihn gerne abdrucken und dabei bitte die Quelle angeben. Vielen Dank!

Das könnte Sie auch interessieren:
  • Zabbix überwacht Linux-Hosts basierend auf SNMP
  • Detaillierte Schritte zum Hinzufügen von Hosts, die Sie in Zabbix überwachen müssen
  • Detaillierte Erklärung zur Ausführung von Skripten oder Anweisungen durch Zabbix auf Remote-Hosts
  • Python erhält den Host über die Zabbix-API
  • Detaillierte Erklärung zum Aufrufen der Zabbix-API zum Abrufen des Hosts
  • So richten Sie Zabbix zur Überwachung von Linux-Hosts ein
  • Grafische Schritte zur Zabbix-Überwachung des VMware Exsi-Hosts

<<:  Detaillierte Erklärung der wechselseitigen Verwendung von Ref in React

>>:  So aktivieren Sie die Protokollfunktion für langsame Abfragen in MySQL

Artikel empfehlen

Implementierung der Formularübermittlung in HTML

Formularübermittlungscode 1. Quellcode-Analyse &l...

Lösung für das Problem mit verstümmeltem MySQL-Code unter Linux

Das Projekt interagiert mit dem Server, greift üb...

Anbieterpräfix: Warum brauchen wir ein Browser-Engine-Präfix?

Was ist das Lieferantenpräfix? Anbieterpräfix – B...

Ein kurzer Vortrag über Rx-responsive Programmierung

Inhaltsverzeichnis 1. Beobachtbar 2. Funktionen h...

JavaScript zum Erzielen eines einfachen Lupeneffekts

In einem großen Kästchen befindet sich ein Bild. ...

Detaillierte Erklärung der Tastaturereignisse von Vue

Inhaltsverzeichnis Allgemeine Schlüsselaliase Sch...

Eine ausführliche Einführung in React-Referenzen

1. Was ist Refs wird in Computern als Resilient F...

Bringen Sie Ihnen bei, wie Sie die rekursive Methode von MySQL8 verwenden

Ich habe zuvor einen Artikel über rekursive Abfra...

CSS-Code zur Unterscheidung von IE8/IE9/IE10/IE11 Chrome Firefox

Das Debuggen der Website-Kompatibilität ist wirkl...

JavaScript zum Erzielen eines elastischen Navigationseffekts

In diesem Artikel wird der spezifische Code für J...

Anwendungsbeispiele für die try_files-Direktive von Nginx

Die Konfigurationssyntax von Nginx ist flexibel u...