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

Detaillierte Erläuterung der Datentypprobleme bei der JS-Array-Indexerkennung

Als ich ein WeChat-Applet-Projekt schrieb, gab es...

JS Canvas-Oberfläche und Animationseffekte

Inhaltsverzeichnis Überblick Canvas API: Grafiken...

Beispielcode zur Implementierung transparenter Verlaufseffekte mit CSS

Die Titelbilder in den Spalten von Zhihu Discover...

Eine kurze Diskussion zum Problem des Docker-Run-Containers im erstellten Status

Bei einem aktuellen Problem gibt es folgendes Phä...

MySQL Flush-List und Flushing-Mechanismus für Dirty Pages

1. Überprüfung Der Pufferpool wird nach dem Start...

HTML+CSS zum Erstellen eines geschichteten Pyramidenbeispiels

Dieser Artikel stellt hauptsächlich das Beispiel ...

MySQL-Abfrageanweisung nach Zeit gruppiert

MySQL-Abfrage nach Jahr, Monat, Woche, Tagesgrupp...

Detaillierte Erklärung der KeepAlive-Verwendung in der Vue-Frontend-Entwicklung

Inhaltsverzeichnis Vorwort Keep-Avlive-Hook-Funkt...

Beispiele für die Verwendung der oder-Anweisung in MySQL

1. Die Verwendung der oder Syntax in MySQL und di...

MySQL REVOKE zum Löschen von Benutzerberechtigungen

In MySQL können Sie mit der REVOKE-Anweisung best...