Verwalten des Host-Agenten unter Linux
Nachdem Sie den Host-Agenten installiert haben, konfigurieren und verwalten Sie den Agenten nach Bedarf. In der folgenden Liste finden Sie alle verfügbaren Konfigurationsoptionen für Agenten unter Linux.
Prüfen des Status des Host-Agenten
Nachdem Sie den Host-Agenten installiert haben, überprüfen Sie dessen Status in der Benutzeroberfläche von „ Instana “ oder auf dem Host. Weitere Informationen finden Sie unter Überprüfen des Status des Host-Agenten.
Anpassen der Agentenkonfiguration
Nach der Installation des Host-Agenten werden die folgenden Konfigurationsdateien erstellt:
/opt/instana/agent/etc/mvn-settings.xml
/opt/instana/agent/etc/org.ops4j.pax.url.mvn.cfg
/opt/instana/agent/etc/instana/com.instana.agent.bootstrap.AgentBootstrap.cfg
/opt/instana/agent/etc/instana/com.instana.agent.main.config.Agent.cfg
/opt/instana/agent/etc/instana/com.instana.agent.main.config.UpdateManager.cfg
/opt/instana/agent/etc/instana/com.instana.agent.main.sender.Backend.cfg
/opt/instana/agent/etc/instana/configuration.yaml
Sie können die Konfiguration des Agenten an Ihre Bedürfnisse anpassen. Sie können beispielsweise den Port und den Hostnamen von TCP für das Backend Instana sowie für Dienste ändern, mit denen Ihr Host-Agent eine Verbindung herstellt, den Agenten so konfigurieren, dass er an mehrere Backends meldet, oder einen Proxy für die indirekte Kommunikation vom Host-Agenten zum Backend Instana einrichten.
Weitere Informationen zum Anpassen der Agentenkonfiguration finden Sie in den folgenden Themen:
- Agentenprotokollierung
- Konfiguration des Backends „ Instana “
- Hostagentenmodus konfigurieren
- Konfigurieren von Host-Agenten mithilfe der Agentenkonfigurationsdatei
- Umwandlung eines statischen Agenten in einen dynamischen Agenten
- Hostagenten-CPU und -Speicher begrenzen
- Abrufen der aktuellen Version von dynamischen Agenten
- Einrichten eines Agenten-Proxys
- Einrichten der „ TLS “-Verschlüsselung für den Agent-Endpunkt
- Aktualisierungsintervall der dynamischen Bearbeiter
- Versionsanbindung dynamischer Bearbeiter
Starten, Stoppen und Aktualisieren des Agenten
In den folgenden Abschnitten erfahren Sie, wie Sie den Host-Agenten unter Linux starten, stoppen und aktualisieren können:
Agenten starten
Wenn Sie den Host-Agenten installieren, wird er beim Systemstart automatisch gestartet. Sie können dieses Verhalten abschalten, indem Sie bei der Installation des Agenten die Umgebungsvariable ' INSTANA_AGENT_AUTOSTART=false setzen.
Um den Host-Agenten zu starten, führen Sie den folgenden Befehl aus:
/opt/instana/agent/bin/startWenn Ihr Betriebssystem "
systemdals Init-System verwendet, führen Sie den folgenden Befehl aus:systemctl start instana-agent.serviceWenn Ihr Betriebssystem "
SysVinitals Init-System verwendet, führen Sie den folgenden Befehl aus:service instana-agent start
Agent stoppen
Um den Agenten zu stoppen, führen Sie den folgenden Befehl aus:
/opt/instana/agent/bin/stop
Wenn Ihr Betriebssystem "
systemdals Init-System verwendet, führen Sie den folgenden Befehl aus:systemctl stop instana-agent.serviceWenn Ihr Betriebssystem "
SysVinitals Init-System verwendet, führen Sie den folgenden Befehl aus:service instana-agent stop
Agent aktualisieren
Sie können den Paketmanager Ihres Betriebssystems verwenden, um ein Agentenpaket auf Ihrem Rechner zu aktualisieren. Um die Pakete und Patches Ihres Systems zu aktualisieren und zu verwalten, führen Sie den folgenden Befehl aus:
yum update // apt-get upgrade
Die Pakete instana-agent-static oder instana-agent-dynamic werden aktualisiert.
Verwaltung von Agenten über das Agent Management Dashboard
Über das Dashboard „Agentenverwaltung“ in der Benutzeroberfläche von „ Instana “ können Sie folgende Vorgänge ausführen:
- Ändern der Agentenmodi
- Ändern der Protokollstufe
- Aktualisierung der Agenten
- Agenten zurücksetzen
- Wiederbelebungsmittel
- Anzeige der Sensoren
- [Konfigurationsmanagement]
- Selbstüberwachung
Führen Sie die folgenden Schritte aus, um das Agent Management Dashboard zu öffnen:
- Wählen Sie in der Seitenleiste der Benutzeroberfläche von „ Instana “ die Option „Infrastruktur“ aus. Alternativ können Sie in der Host-Übersicht unter „ Instana -Agent “ auf den Agenten klicken.
- Klicken Sie auf einen bestimmten überwachten Host.
- Klicken Sie auf dem Host-Dashboard auf Agent Management öffnen.
Umgebungsvariablen festlegen und überschreiben
Wenn der Host-Agent als Paket installiert und über SystemV init oder gestartet systemd wird, müssen Sie bestimmte Umgebungsvariablen für den „ Instana “ festlegen. Darüber hinaus müssen Sie möglicherweise bestimmte Umgebungsvariablen außer Kraft setzen. Beispielsweise müssen für die Unterstützung von „ LXC “-Containern die Befehlszeilen-Tools „ LXC “ im Pfad des Host-Agenten enthalten sein.
Wenn Ihr Betriebssystem '
SysVinitals Init-System verwendet, gehen Sie zum Abschnitt SystemV Init, um Umgebungsvariablen zu setzen und zu überschreiben.Wenn Ihr Betriebssystem "
Systemdals Init-System verwendet, gehen Sie zum Abschnitt Systemd, um Umgebungsvariablen zu setzen und zu überschreiben.
SystemV Init
Wenn Ihr Betriebssystem ' SysVinit als Init-System verwendet, ruft der Host-Agent die entsprechenden Shell-Skripte im Verzeichnis ' /etc/default/Debian und Derivate) oder ' /etc/sysconfig/Red Hat und Derivate) ab.
Wenn der Name des Dienstes nicht geändert wird, verwendet das SysVinit die Datei " /etc/default/instana-agent oder " /etc/sysconfig/instana-agent.
Beispielsweise können Sie in „ Debian “ die Variablen „ Instana “ und aktualisieren PATH , indem Sie verwenden /etc/default/instana-agent (sofern diese Datei lesbar ist):
INSTANA_AGENT_KEY=$agentkey
INSTANA_AGENT_ENDPOINT=$endpoint
INSTANA_AGENT_ENDPOINT_PORT=$endpoint_port
PATH=/usr/local/bin:${PATH}
INSTANA_AGENT_HOST und INSTANA_AGENT_PORT zur Konfiguration des Agenten ist veraltet. Diese Umgebungsvariablen sind für die Konfiguration von „ Instana “-Tracern reserviert, damit diese eine Verbindung zum Agenten herstellen können. Wenn diese global festgelegt sind, können die „ Instana “-Tracer keine Verbindung zum Agenten herstellen. Die Unterstützung für die Verwendung dieser Umgebungsvariablen zur Konfiguration des Agenten wird in zukünftigen Versionen von Instana entfernt.Um die Werte für Endpunkt, Port und Agentenschlüssel zu ermitteln, rufen Sie die Startseite der Benutzeroberfläche von „ Instana “ auf und klicken Sie auf „Agentenbereitstellung “. Klicken Sie auf der Seite „Agenten-Bereitstellungskatalog“ auf die Kachel „ Linux – Automatische Installation (One-Liner) “. Dann können Sie die Werte für Endpunkt, Port und Agentenschlüssel im Verteilungsskript sehen.
Systemd
Wenn Ihr Betriebssystem " Systemd als Init-System verwendet, können Sie Umgebungsvariablen setzen und überschreiben, indem Sie die folgenden verfügbaren Optionen verwenden. Die Drop-in-Units-Methode ist der empfohlene Ansatz, da Sie die Datei der Service-Units nicht ändern müssen, während Sie bei den anderen Methoden Änderungen an der Datei vornehmen müssen. Diese Änderungen können bei den Aktualisierungen auch wieder entfernt werden. Die Drop-in-Units-Methode stellt sicher, dass die Änderungen und eingestellten Umgebungsvariablen auch nach Updates erhalten bleiben.
sudo systemctl daemon-reload Befehl aus und anschließend den sudo systemctl restart instana-agent.service Befehl, um den Agenten mit den geänderten Variablen neu zu laden.Drop-in-Einheiten
Durch die Verwendung vorbeikommen von Units können Sie die spezifischen Einstellungen überschreiben, ohne die ursprüngliche systemd-Unit-Datei zu ändern. Sie müssen die Drop-in-Datei unter ' /etc/systemd/system/<unit>.d/ mit dem Namen ' <name>.conf ablegen.
Um beispielsweise die Umgebungsvariablen ` Instana ` und `PATH` festzulegen, erstellen Sie eine /etc/systemd/system/instana-agent.service.d/10-environment.conf Datei mit folgendem Inhalt:
[Service]
Environment=INSTANA_AGENT_KEY=$agentkey
Environment=INSTANA_AGENT_ENDPOINT=$endpoint
Environment=INSTANA_AGENT_ENDPOINT_PORT=$endpoint_port
Environment=PATH=/usr/local/bin:${PATH}
INSTANA_AGENT_HOST und INSTANA_AGENT_PORT zur Konfiguration des Agenten ist veraltet. Diese Umgebungsvariablen sind für die Konfiguration von „ Instana “-Tracern reserviert, damit diese eine Verbindung zum Agenten herstellen können. Wenn diese global festgelegt sind, können die „ Instana “-Tracer keine Verbindung zum Agenten herstellen. Die Unterstützung für die Verwendung dieser Umgebungsvariablen zur Konfiguration des Agenten wird in zukünftigen Versionen von Instana entfernt.EnvironmentFile-Anweisungen
Diese Methode verwendet die Drop-in-Units mit Ausnahme der Umgebungsanweisungen, die aus einer separaten Datei gelesen werden. Erstellen Sie zum Beispiel eine Datei " /etc/instana/environment.conf mit folgendem Inhalt:
INSTANA_AGENT_KEY=$agentkey
INSTANA_AGENT_ENDPOINT=$endpoint
INSTANA_AGENT_ENDPOINT_PORT=$endpoint_port
PATH=/usr/local/bin:${PATH}
Verwenden Sie dann in der systemd-Drop-in-Unit-Datei die folgende Konfiguration:
[Service]
EnvironmentFile=/etc/instana/environment.conf
INSTANA_AGENT_HOST und INSTANA_AGENT_PORT zur Konfiguration des Agenten ist veraltet. Diese Umgebungsvariablen sind für die Konfiguration von „ Instana “-Tracern reserviert, damit diese eine Verbindung zum Agenten herstellen können. Wenn diese global festgelegt sind, können die „ Instana “-Tracer keine Verbindung zum Agenten herstellen. Die Unterstützung für die Verwendung dieser Umgebungsvariablen zur Konfiguration des Agenten wird in zukünftigen Versionen von Instana entfernt.Globale Umgebungseinstellungen
Standardmäßig liest systemd die globale Konfiguration aus verschiedenen Pfaden wie ' /etc/systemd/system.conf oder ' /etc/systemd/system.conf.d/10-default-env.conf. Indem Sie die " DefaultEnvironment -Konfiguration in diese Dateien stellen, werden sie für alle systemd-Einheiten verfügbar. Weitere Informationen finden Sie unter „systemd-Konfiguration “.
Beispielsweise werden durch die folgende Konfiguration drei Umgebungsvariablen „ Instana “ erstellt, wenn Sie diese in der/etc/systemd/system.conf.d/10-default-env.conf Datei festlegen:
[Manager]
DefaultEnvironment="INSTANA_AGENT_KEY=<key>" "INSTANA_AGENT_ENDPOINT=<endpoint>" "INSTANA_AGENT_ENDPOINT_PORT=<endpoint-port>"
INSTANA_AGENT_HOST und INSTANA_AGENT_PORT zur Konfiguration des Agenten ist veraltet. Diese Umgebungsvariablen sind für die Konfiguration von „ Instana “-Tracern reserviert, damit diese eine Verbindung zum Agenten herstellen können. Wenn diese global festgelegt sind, können die „ Instana “-Tracer keine Verbindung zum Agenten herstellen. Die Unterstützung für die Verwendung dieser Umgebungsvariablen zur Konfiguration des Agenten wird in zukünftigen Versionen von Instana entfernt.Löschen von temporären Dateien
Der Host-Agent von „ Instana “ installiert einige benötigte Dateien im /tmp/.instana/ Verzeichnis. Wenn diese Dateien während der Betriebszeit des Hosts gelöscht werden, kann dies zu Problemen bei Aktualisierungen führen.
Tmpfiles.d
Auf ' system.d-basierten Systemen kann der ' systemd-tmpfiles -Daemon Dateien löschen, die vom Host-Agenten im ' /tmp/.instana benötigt werden, was zu Aktualisierungsfehlern führt, die schwer zu beheben sind.
Seit Version 181 installieren DEB- und RPM-Agentenpakete automatisch das folgende Konfigurationsskript, /usr/lib/tmpfiles.d das das Verhalten so anpasst, dass die erforderlichen Dateien nicht gelöscht werden und die Funktionen des Host-Agenten von „ Instana “ nicht beeinträchtigt werden.
# Instana files in /tmp cannot be deleted when the agent is running,
# or it may lead to issues on agent update
R! /tmp/.java_pid*
R! /tmp/.instana/*
Mit dieser Konfiguration können tmpdfiles.d die Dateien, die vom Instana -Agenten benötigt werden, erst nach einem Neustart des Hosts gelöscht werden. Der neu gestartete Host-Agent von „ Instana “ erstellt die Dateien beim Start neu.
Red Hat Enterprise Linux und CentOS, in den Versionen 6 und 7 enthalten standardmäßig " tmpdfiles.d, die das gesamte " /tmp alle 10 Tage löschen, unabhängig davon, welche Richtlinien ein Paket angeben kann. Das bedeutet, dass ein Paket wie „ Instana “ benutzerdefinierte Richtlinien festlegen kann, um das Verhalten des Systems oder des Pakets selbst zu steuern.
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
# See tmpfiles.d(5) for details
# Clear tmp directories separately, to make them easier to override
v /tmp 1777 root root 10d
v /var/tmp 1777 root root 30d
...
Abgesehen von der Bearbeitung der standardmäßigen " tmpfiles.d gibt es keine bekannte Abhilfemaßnahme. Die Richtlinie tmpfiles.d befindet sich in der Datei /usr/lib/tmpfiles.d/tmp.conf.
Viele Derivate von „ Debian “, darunter „ Ubuntu “, enthalten tmpdfiles.d Standardrichtlinien, die das gesamte /tmp Verzeichnis löschen, unabhängig davon, welche Richtlinien ein Paket wie „ Instana “ festlegen kann. Bei der Installation führen die DEB- und RPM-Pakete einen Test durch, um das Verhalten der temporären Dateien " tmpfiles.d zu überprüfen, indem sie den Befehl " systemd-tmpfiles --remove ausführen.
Auf Systemen, auf denen Richtlinien das von den „ Instana “-Agentenpaketen festgelegte erforderliche Verhalten überschreiben, wird möglicherweise die folgende Warnung angezeigt:
WARNING: The tmpfiles.d policies of this system may cause the Instana agent to malfunction by deleting the /tmp/.instana directory; refer https://www.instana.com/docs/setup_and_manage/host_agent/on/linux#tmpfiles.d for more information.
Sie können dieses Problem lösen, indem Sie die Standardrichtlinien " tmpfiles.d bearbeiten. Die Richtlinie tmpfiles.d befindet sich in der Datei /usr/lib/tmpfiles.d/tmp.conf.
Tmpwatch
Red Hat Enterprise Linux 6 und CentOS 6 enthalten das Tool tmpwatch, das dafür bekannt ist, dass es unnötige Dateien im Verzeichnis " /tmp/.instana löscht. Die Verwendung von tmpwatch in diesen Distributionen kann jedoch gelegentlich Aktualisierungsprobleme mit dem Host-Agenten verursachen. Weitere Informationen finden Sie unter Löschen von temporären Dateien.
# Deal with tmpwatch, found in RHEL 6 and CentOS 6.
# It is a cronjob, installed in /etc/cron.d/daily, with pretty much hardcoded
# configurations to wipe data the Instana agent needs.
readonly TMPWATCH_CRONJOB='/etc/cron.d/daily/tmpwatch'
if [ -f "${TMPWATCH_CRONJOB}" ]; then
# Let's check if we already touched the file and, if not, add our excludes
if ! grep "${TMPWATCH_CRONJOB}" Instana 2&>1 > /dev/null; then
echo "tmpwatch discovered in '${TMPWATCH_CRONJOB}': adding the exclude flags for Instana"
# Edit in place with `sed`
sed -i '/^flags=/a flags="${flags} -x /tmp/instana -x /tmp/.javapid* # Added by Instana"' "${TMPWATCH_CRONJOB}"
fi
fi
Verzeichnis mit Daten zu Reinigungsmitteln
Sie können die Umgebungsvariable AGENT_CLEAN_DATA_DIR verwenden, um das Datenverzeichnis des Agenten zu bereinigen.
Wenn Sie vor dem Start des Agenten true die Option auf AGENT_CLEAN_DATA_DIR setzen, werden die Inhalte der Verzeichnisse „tmp“, „cache“ und „logs“ gelöscht. Bei dynamischen Agenten werden im Rahmen dieses Vorgangs zudem veraltete Artefakte entfernt und die neuesten Artefakte sowie JAR-Dateien abgerufen. Sowohl bei dynamischen als auch bei statischen Agenten wird der Vorgang fortgesetzt, indem der Cache neu aufgebaut und ein neues Agentenprotokoll erstellt wird.
Um die Umgebungsvariable zu aktivieren, verwende die folgende Konfiguration:
export AGENT_CLEAN_DATA_DIR=true
Nachdem Sie die Umgebungsvariable aktiviert haben, starten Sie den Agenten, um den Bereinigungsvorgang auszuführen.
Wenn Sie dynamische Agenten verwenden, wird empfohlen, die AGENT_CLEAN_DATA_DIR Umgebungsvariable zu entfernen, sobald sie nicht mehr benötigt wird. Wenn diese Option aktiviert bleibt, bereinigt der Agent bei jedem Start sein Datenverzeichnis und lädt Artefakte einschließlich Protokolle herunter, was die Startzeit des Agenten verlängert.