Installation des Agenten auf Docker

Um den „ Instana “-Agenten auf „ Docker “ zu installieren und zu konfigurieren, laden Sie das Container-Image für den „ Instana “-Agenten herunter und führen Sie es aus. Installieren und starten Sie anschließend den „ Instana “-Host-Agenten als privilegierten Container.

Das Container-Image des „ Instana “-Agenten herunterladen

Das Agent-Image „ Instana “ finden Sie im öffentlichen Repository „ IBM Cloud Container Registry “ unter icr.io/instana/agent:latest.

Darüber hinaus können Sie dynamische und statische Agentenbilder unter Instana Container Registrycontainers.instana.io abrufen.

Führen Sie die folgenden Schritte aus, um das neueste Agent-Image von „ Instana “ abzurufen:

  1. Melden Sie sich mit Ihrem Agentenschlüssel an:
    docker login containers.instana.io -u _ -p <agent_key>
     
  2. Ziehen Sie das gewünschte Bild mithilfe des entsprechenden Befehls aus der folgenden Liste:
# pull the dynamic image, powered by the Azul JDK
docker pull containers.instana.io/instana/release/agent/dynamic:latest

# download the static image, powered by the Azul JDK
docker pull containers.instana.io/instana/release/agent/static:latest

# pull the dynamic image, powered by the OpenJ9 JDK
docker pull containers.instana.io/instana/release/agent/dynamic:latest-j9

# download the static image, powered by the OpenJ9 JDK
docker pull containers.instana.io/instana/release/agent/static:latest-j9
 

Verfügbare Schlagwörter auflisten

Um die verfügbaren Bild-Tags aufzulisten, fragen Sie die öffentliche Tag-Liste von icr.io ab. Die Bild-Tags können mit dem icr.io öffentlichen Register und dem Register containers.instana.io „ Instana “ verwendet werden.

Sie benötigen die Befehlszeilen-Tools Curl zum Abfragen und jq zum Filtern der Ausgabe. Geben Sie den folgenden Befehl ein, um alle verfügbaren Tags aufzulisten:

curl https://icr.io/v2/instana/agent/tags/list | jq
 

Um die Tags nach einer Backend-Version von Instana zu filtern, geben Sie den folgenden Befehl ein. Geben Sie im folgenden Beispiel <backend_version> anstelle von die Version „ Instana “ ein:

INSTANA_VERSION=<backend_version> && curl https://icr.io/v2/instana/agent/tags/list | jq '.tags[] | select(. | contains ("'"$INSTANA_VERSION"'"))'
 

Ausführen des Container-Images für den „ Instana “-Agenten

Docker unterstützt zahlreiche Plattformen wie viele auf Kubernetes basierende Dienste, DC/OS und andere. Die Vorgehensweise zum Ausführen des „ Instana “-Agenten unter „ Docker “ hängt von der Plattform ab.

Hier finden Sie eine Liste der Container-Umgebungen, in denen Sie den Host-Agenten von „ Instana “ installieren können:

Sie können den Agenten auch direkt auf dem „ Linux “-Host installieren (beispielsweise, wenn Sie über ein spezielles Image für Ihre Worker-Rechner verfügen).

Aktualisieren des Container-Images für den „ Instana “-Agenten

Führen Sie den folgenden Befehl aus, um das Image des Agent-Containers manuell zu aktualisieren:

skopeo inspect docker://icr.io/instana/agent:latest-<your-architecture>-dynamic | jq '.Digest'
 

Ersetzen Sie <your-architecture> durch amd64, arm64, s390x oder ppc64le, je nach Ihrer Architektur.

Wenn Sie die Variante OpenJ9 verwenden, führen Sie den folgenden Befehl aus:

skopeo inspect docker://icr.io/instana/agent:latest-<your-architecture>-dynamic-j9 | jq '.Digest'
 

Um das derzeit installierte Image des „ Instana “-Agenten docker zu überprüfen, rufen Sie Kubernetes > „My Cluster“ > „Namespaces“ > „instana-agent“ auf und wählen Sie dann einen Agenten-Pod aus. Wählen Sie den „instana-agent“-Container aus und vergleichen Sie anschließend den SHA-Wert des Images im Dashboard von „ Docker “.

Wenn Sie Helm verwenden, aktualisieren Sie auf die neueste Helm -Tabelle, indem Sie den folgenden Befehl ausführen:

helm pull --repo https://agents.instana.io/helm --untar instana-agent && kubectl apply -f instana-agent/crds && helm upgrade --repo https://agents.instana.io/helm instana-agent --reuse-values --set agent.image.tag=latest --set agent.image.pullPolicy=Always instana-agent
 

Das Diagramm „ Instana “ ( Helm ) stellt intern den „instana-agent-operator“ bereit, der anschließend die Agent-Ressourcen bereitstellt. Diese Bereitstellung basiert auf der benutzerdefinierten Agent-Ressource (CR), die anhand der Werte unter „ Helm “ erstellt wird. Das Betreibermuster erfordert eine benutzerdefinierte Ressourcendefinition (CRD) im Cluster, bevor benutzerdefinierte Ressourcen definiert werden können. Daher enthält das Diagramm „ Helm “ das erforderliche CRD, das bei der Erstinstallation bereitgestellt wird, bevor andere Artefakte übermittelt werden.

Hinweis: Derzeit unterstützt „ Helm “ nur die Erstinstallation von CRDs, nicht jedoch deren Aktualisierung, Löschung oder Deinstallation. Aufgrund dieser Einschränkung werden CRD-Updates nur während der Erstinstallation und nicht während der Upgrades automatisch an den Cluster übermittelt. Weitere Informationen zu dieser Einschränkung finden Sie unter „Benutzerdefinierte Ressourcendefinitionen “.

Wenn Sie den „ Kubernetes “ ( YAML ) verwenden, löschen Sie den Namespace und installieren Sie den Agent neu:

kubectl apply -f <your-instana-agent-daemonset.yaml>
 

Agent installieren

  1. Klicken Sie auf der Startseite der Benutzeroberfläche von „ Instana “ auf „Agenten & Sammler “. Wählen Sie auf der Registerkarte „ Instana -Agenten“ die Option „Agenten installieren “ aus.

  2. Klicken Sie auf die Kachel Docker.

  3. (Optional) Wenn Sie möchten, dass der Host-Agent Teil einer benutzerdefinierten Agent-Zone ist, geben Sie den Namen für die Agent-Zone ein. Wenn Sie einen Namen in das Feld "Agentenzone" eingeben, wird die Zeile --env="INSTANA_AGENT_ZONE=<agent_zone>" \ zum Agent-Bereitstellungscode hinzugefügt.

  4. Kopieren Sie den Code zur Agentenbereitstellung und verwenden Sie ihn, um den „ Instana “-Agenten als privilegierten Container auszuführen:

    Die Benutzeroberfläche von „ Instana “ stellt den Code für die Agentenbereitstellung wie folgt bereit:

    sudo docker run \
      --detach \
      --name instana-agent \
      --volume /var/run:/var/run \
      --volume /run:/run \
      --volume /dev:/dev:ro \
      --volume /sys:/sys:ro \
      --volume /var/log:/var/log:ro \
      --privileged \
      --net=host \
      --pid=host \
      --env="INSTANA_AGENT_ENDPOINT=<the_host_agent_endpoint>" \
      --env="INSTANA_AGENT_ENDPOINT_PORT=<the_host_agent_endpoint_port>" \
      --env="INSTANA_AGENT_KEY=<your_instana_agent_key>" \
      --env="INSTANA_AGENT_DOWNLOAD_KEY=<your_instana_agent_download_key>" \
      icr.io/instana/agent
     

Ihr Agentenschlüssel, Ihr Download-Schlüssel und der Endpunkt des Host-Agenten sind im Code für die Agenteneinrichtung bereits vorbelegt.

Wenn der Host-Agent ausgeführt wird, verwenden Sie den folgenden Befehl, um die Agentenprotokolle zu generieren:

docker logs instana-agent