Aktivieren und Konfigurieren des Automation Action Script-Sensors

Der Sensor Automation Action Script ist eine Komponente der Funktion Managing Automation. Mit diesem Sensor können Sie die Skriptaktionen, die mit dem Aktionskatalog erstellt wurden, auf dem Zielagenten ausführen. Der Sensor wird automatisch bereitgestellt und installiert, nachdem Sie den Instana-Agenten installiert haben.

Weitere Informationen finden Sie unter Verwalten der Automatisierung.

Freischaltung des Sensors

In der Standardeinstellung ist der Sensor deaktiviert. Um den Sensor zu aktivieren, aktualisieren Sie die Konfigurationsdatei des Agenten wie im folgenden Beispiel gezeigt:

com.instana.plugin.action.script:
  enabled: true # by default is false
 

Skriptausführungsstart konfigurieren

Standardmäßig erstellt der Aktionsskriptsensor die Skripte im temporären Standardverzeichnis des Agenten *instanaAgentDir*/data/tmp und führt sie dort aus. Um diesen Ort zu ändern, fügen Sie die Attribute scriptExecutionHome zur Skriptsensorkonfiguration in der Agentenkonfigurationsdatei hinzu. Der Wert scriptExecutionHome darf kein Leerzeichen enthalten. Wenn das temporäre Standardverzeichnis für den Agenten *instanaAgentDir*/data/tmp ein Leerzeichen enthält, müssen Sie einen Wert für scriptExecutionHome angeben.

com.instana.plugin.action.script:
  enabled: true
  scriptExecutionHome: '/myExecutionDir' # The path used for action script executions.
 

Konfigurieren von runAs

Standardmäßig führt der Aktionsskript-Sensor die Skripte als der Benutzer aus, der den Instana-Agenten gestartet hat. Auf den Betriebssystemen Linux, AIX und Solaris können die Aktionsskripte nicht als root ausgeführt werden. Ebenso können die Aktionsskripte unter Windows nicht als Administrator ausgeführt werden. Um den Aktionsskriptsensor so zu konfigurieren, dass die Aktionsskripts mit alternativen Anmeldeinformationen ausgeführt werden, fügen Sie die Attribute runAs und scriptExecutionHome zur Skriptsensorkonfiguration in der Agentenkonfigurationsdatei hinzu. Der Benutzer runAs benötigt die Berechtigungen read, write und execute im Verzeichnis scriptExecutionHome . Unter Windows müssen Sie auch das Passwort für den Benutzer runAs im Attribut runAsUserPassword angeben. Verwenden Sie den Tresor für runAsUserPassword wie in der folgenden YAML-Konfiguration gezeigt. Bevor Sie sich für einen Benutzernamen für runAs entscheiden, lesen Sie die Informationen unter Erstellen eines speziellen Benutzers für Skriptaktionen.

com.instana.plugin.action.script:
  enabled: true
  runAs: 'aUser'
  scriptExecutionHome: '/myExecutionDir' # The path used for action script executions.
  runAsUserPassword: # Required on Windows operating system.
    configuration_from:
      type: vault
      secret_key:
        path: <secret_path>
        key: <secret_key>
 

Erstellen von runAs Benutzer für Instana-Agent auf Red Hat OpenShift

Wenn Ihr Agent auf Red Hat OpenShift installiert ist, gehen Sie wie folgt vor, um den Benutzer runAs zu erstellen:

  1. Führen Sie den folgenden Befehl aus, um das Instana-Agent-Daemon-Set zu bearbeiten:
    kubectl edit daemonset -n instana-agent
     
  2. Fügen Sie einen postStart Lebenszyklus-Haken für den Instana-Agent-Container hinzu:
lifecycle:
    postStart:
        exec:
          command:
          - /bin/sh
          - -c
          - useradd instana
 

Konfigurieren der maximalen Anzahl gleichzeitiger Aktionen

Standardmäßig führt der Skriptsensor maximal 10 gleichzeitige Skriptaktionen aus. Wenn Sie die maximale Anzahl gleichzeitiger Skriptaktionen ändern möchten, fügen Sie das Attribut maxConcurrentActions zum Abschnitt für die Skriptsensorkonfiguration in der Agentenkonfigurationsdatei wie folgt hinzu:

com.instana.plugin.action.script:
  enabled: true
  maxConcurrentActions: 5  # optional, default value is 10
 

Konfigurieren der Standardzeitüberschreitung für Skripte

Wenn Sie eine Skriptaktion erstellen, können Sie die maximale Zeit in Sekunden festlegen, die bis zum Abschluss der Skriptaktion gewartet werden soll. Wenn Sie die Zeitüberschreitung für Skriptaktionen bei der Erstellung von Skriptaktionen nicht festlegen, wird eine Skriptaktion standardmäßig nach 300 Sekunden beendet. Wenn Sie diese Standardzeitüberschreitung für die Ausführung von Aktionsskripten ändern möchten, fügen Sie das Attribut defaultTimeout zum Konfigurationsabschnitt des Skriptsensors in der Konfigurationsdatei des Agenten wie folgt hinzu:

com.instana.plugin.action.script:
  enabled: true
  defaultTimeout: 600 # optional, default timeout is 300 seconds
 

konfigurieren chroot

chroot wird verwendet, um eine begrenzte Sandbox zu schaffen, in der das Aktionsskript ausgeführt werden kann. Daher kann das Skript keine Daten außerhalb des scriptExecutionHome Verzeichnisbaums böswillig verändern. Action Script-Unterstützung für chroot ist für Agenten verfügbar, die auf den Betriebssystemen AIX, Linux und Solaris laufen. Wenn chroot aktiviert ist, wird scriptExecutionHome als Stammverzeichnis für den Aktionsskriptprozess verwendet. Sie müssen alle Systembefehle, Interpreter, Binärdateien, Bibliotheken und ausführbaren Dateien, die für den Aufruf des Aktionsskripts erforderlich sind, in das Verzeichnis scriptExecutionHome kopieren. Zumindest müssen Sie den Befehl su kopieren, der intern vom Sensor verwendet wird, um den Benutzer zu ersetzen. Um das chroot für das Aktionsskript zu aktivieren, aktualisieren Sie die Konfigurationsdatei des Agenten wie im folgenden Beispiel gezeigt:

com.instana.plugin.action.script:
  enabled: true
  chrootEnabled: true # by default, chroot support is disabled
  scriptExecutionHome: '/home/test' # The path used for action script executions
 

Einbindung eines Geheimdienstmanagers

Wenn die Skriptaktion in Ihrem Aktionskatalog Vault-Parameter verwendet, müssen Sie den Host-Agenten mit einem Secret Manager integrieren.

Besondere Überlegungen zur Ausführung von Skriptaktionen unter Windows

Wenn Sie die Skriptaktionen auf Windows-Betriebssystemen ausführen, müssen Sie die folgenden Voraussetzungen und Einschränkungen beachten.

Voraussetzungen

Agent-Installation als Windows-Dienst

Beginnend mit dem Action Script-Sensor wird die Skriptausführung 1.0.76 unterstützt, wenn der Instana-Agent als Windows-Dienst installiert ist. Wenn der Agent als Windows-Dienst ausgeführt wird, sind die folgenden zusätzlichen Konfigurationen erforderlich:

Anforderungen an das Instana-Agent-Dienstkonto

Sie müssen den Instana-Agent-Windows-Dienst so konfigurieren, dass er unter dem lokalen Systemkonto ausgeführt wird. Diese Konfiguration ist erforderlich, da die CreateProcessAsUser Windows-API spezielle Berechtigungen benötigt, die nur dem lokalen System zur Verfügung stehen.

Um das Dienstkonto zu konfigurieren, führen Sie die folgenden Schritte aus:

  1. Offene Dienste (services.msc).
  2. Suchen Sie den Instana Agent -Dienst.
  3. Klicken Sie mit der rechten Maustaste und wählen Sie „Eigenschaften “.
  4. Gehen Sie zur Registerkarte „Anmelden “.
  5. Wählen Sie „Lokales Systemkonto“ aus.
  6. Stellen Sie sicher, dass das Kontrollkästchen „Dienst darf mit dem Desktop interagieren“ deaktiviert ist.
  7. Klicken Sie auf „OK“ und starten Sie den Dienst neu.
RunAs Anforderungen der lokalen Sicherheitsrichtlinie des Benutzers

Wenn der Instana-Agent als Windows-Dienst ausgeführt wird, muss der runAs Benutzer (das Benutzerkonto, unter dem Skripte ausgeführt werden) über die Log on as a batch job lokale Sicherheitsrichtlinie verfügen.

Um diese Richtlinie zu konfigurieren, führen Sie die folgenden Schritte aus:

  1. Lokale Sicherheitsrichtlinie öffnen (secpol.msc).
  2. Wählen Sie „Lokale Richtlinien “> „Zuweisung von Benutzerrechten“.
  3. Doppelklicken Sie auf „Als Batch-Job anmelden “.
  4. Klicken Sie auf Benutzer oder Gruppe hinzufügen.
  5. Fügen Sie das runAs Benutzerkonto hinzu (z. B. DOMAIN\username für Domänenkonten oder username für lokale Konten)
  6. Klicken Sie auf „OK“ und übernehmen Sie die Änderungen.

Wenn der runAs Benutzer über diese Richtlinie nicht verfügt, schlägt die Skriptausführung mit dem Fehlercode 1385 (Logon failure: the user has not been granted the requested logon type) fehl.

Interaktive Agenteninstallation

Bei Action Script-Sensorversionen vor kann der Instana-Agent nicht als 1.0.76 Windows-Dienst ausgeführt werden. Der Agent muss als regulärer interaktiver Prozess ausgeführt werden. Wenn Agent als regulärer Prozess ausgeführt wird, müssen Sie sicherstellen, dass PowerShell7.4 oder höher installiert ist.

Einschränkungen

  • Sie können nur Windows-Batch-Skripte, PowerShell, VBScript und Python Skripte ausführen.
  • Sie können die Skripte nicht als Benutzer Administrator ausführen. Der Wert für runAs kann nicht Administrator sein.
  • Sie können die Skripte nicht als Benutzer ausführen, der Lese-, Schreib- und Ausführungszugriff auf den Home-Ordner der Agenteninstallation hat. Der Wert für runAs darf kein Benutzer sein, der Lese-, Schreib- oder Ausführungszugriff auf den Home-Ordner der Agenteninstallation hat.