Sie können benutzerdefinierte Skripts in physischen Servern ausführen und benutzerdefinierte Daten erfassen, die dann als Metrik herangezogen werden können.

Voraussetzungen

  • Alle Skripts, die Sie mit dem benutzerdefinierten Skript ausführen, müssen einen einzelnen ganzzahligen Wert ausgeben. Wenn die Ausgabe kein einzelner ganzzahliger Wert ist, wird in der Benutzeroberfläche ein Fehler angezeigt.
  • Das benutzerdefinierte Skript verwendet das exec-Plug-in von Telegraf, um Skripts auf dem Betriebssystem einer Endpunkt-VM auszuführen. Die Skripts werden von dem Benutzer ausgeführt, der den Telegraf-Agenten auf einem Betriebssystem installiert hat. Stellen Sie sicher, dass der Benutzer das benutzerdefinierte Skript ausführen kann.

Prozedur

  1. Aktualisieren Sie die Telegraf-Konfiguration im physischen Zielserver, nachdem Sie das Beispielskript ausgeführt haben. Fügen Sie Folgendes zur Datei http.conf hinzu.
    Hinweis: Aktualisieren Sie die Informationen in „<>“ korrekt.
    [[inputs.exec]]
    
    name_prefix = "executescript."
    name_override = "output"
    commands = ["<prefix> <script path which should be run> <argument>"]
    data_format = "value"
    data_type = "integer"
    timeout = "300s"
    
    [inputs.exec.tags]
    file_path = "script path which should be run"
    script_name = "<custom_script_name> on <hostname>"
    Beispiele
    • Fügen Sie beispielsweise im Falle eines Windows Server powershell -File als Präfix vor dem Skript hinzu. script path which should be run ist das benutzerdefinierte Skript, das Sie auf dem physischen Server ausführen möchten. WIN-3VI8MSB5B5D ist der hostname-Eigenschaftswert, der in der Datei http.conf erwähnt wird. Memory.ps1 on WIN-3VI8MSB5B5D ist der Metrikname, der unter dem Objekt Custom Script erfasst wird. Hier ist das Beispiel:
      [[inputs.exec]]
      
      name_prefix = "executescript."
      name_override = "output"
      commands = ["powershell -File C:\\\\opt\\\\Scripts\\\\Memory.ps1"]
      data_format = "value"
      data_type = "integer"
      timeout = "300s"
      
      [inputs.exec.tags]
      file_path = "C:\\opt\\Scripts\\Memory.ps1"
      script_name = "Memory.ps1 on WIN-3VI8MSB5B5D"
    • Im Falle eines Linux-Servers können Sie beispielsweise dem Skript python2.7, /bin/bash oder perl usw. als mögliche Präfixe hinzufügen. script path which should be run ist das benutzerdefinierte Skript, das Sie auf dem physischen Server ausführen möchten. OEL7-OpenSourceTelegraf ist der hostname-Eigenschaftswert, der in der Datei http.conf erwähnt wird. argument.py on OEL7-OpenSourceTelegraf ist der Metrikname, der unter dem Objekt Custom Script erfasst wird. Hier ist das Beispiel:
      [[inputs.exec]]
      
      name_prefix = "executescript."
      commands = ["python2.7 /opt/scripts/python/argument.py 100"]
      data_format = "value"
      data_type = "integer"
      timeout = "300s"
      
      [inputs.exec.tags]
      file_path = "/opt/scripts/python/argument.py"
      script_name = "argument.py on OEL7-OpenSourceTelegraf"
    Hinweis: Ändern Sie keine anderen Telegraf-Konfigurationen, da dies zu unerwünschtem Verhalten führen kann.
  2. Starten Sie Telegraf neu, und warten Sie 10 Minuten, bis Sie die Daten erhalten haben.

Nächste Maßnahme

Sie können Metriken anzeigen, indem Sie das relevante Objekt auf der Registerkarte Metriken der Benutzeroberfläche von vRealize Operations auswählen:
  1. Klicken Sie im linken Bereich auf Umgebung > Benutzerdefinierte Gruppen.
  2. Klicken Sie im rechten Bereich auf das Objekt Operating System World.
  3. Navigieren Sie zur Registerkarte Metriken und wählen Sie das entsprechende Betriebssystemobjekt aus.
  4. Unter Betriebssystemobjekt finden Sie das Objekt Custom Script.