Connector-Agenten ausführen

Nachdem Sie einen Satellite-Konnektor erstellt haben, führen Sie die folgenden Schritte aus, um einen Agenten zu erstellen und die Einrichtung abzuschließen.

Voraussetzungen

Agentenparameter überprüfen

Konfigurationsinformationen werden dem Agenten über die folgenden Umgebungsvariablen bereitgestellt. Jede dieser Umgebungsvariablen kann entweder direkt auf einen Wert oder auf einen Pfad einer Datei gesetzt werden, die den Wert enthält. Der Pfadwert muss innerhalb des Containers zugänglich sein und basiert daher auf dem Mountpunkt und nicht auf einem lokalen Pfad auf dem Host. Ein Beispiel finden Sie in der folgenden Tabelle.

Umgebungsvariablen für die Konfiguration
Umgebungsvariable Erforderlich Beschreibung
SATELLITE_CONNECTOR_ID Ja Die ID des Satellite-Connectors, an den der Agent gebunden ist. Sie finden Ihre Connector-ID in der Satellite-Konsole oder durch Ausführen des Befehls ibmcloud sat connector ls.
SATELLITE_CONNECTOR_IAM_APIKEY Ja Ihr IAM-API-Schlüssel. Aus Sicherheitsgründen sollten Sie Ihren IAM-API-Schlüssel in einer Datei speichern und dann die Datei für diesen Wert bereitstellen. Hinweis: In Windows-Umgebungen müssen Sie den Schrägstrich im Dateipfad mit Escapezeichen versehen.
SATELLITE_CONNECTOR_TAGS Nein Eine benutzerdefinierte Zeichenfolge, die beim Identifizieren des Agenten hilfreich sein kann. Diese Zeichenfolge kann ein beliebiger Wert sein, den Sie nützlich finden. Der Wert muss kleiner-gleich 256 Zeichen sein und wird abgeschnitten, wenn er länger als 256 Zeichen ist. Die folgenden Zeichen werden entfernt: <>/{}%[]?,;@$&.
SATELLITE_CONNECTOR_DIRECT_LINK_INGRESS Nein Der Satellite Tunnel-Ingress-Server, an den der Agentenverkehr geleitet werden soll. Durch die Angabe eines internen Ingresses wird sichergestellt, dass der gesamte Datenverkehr zwischen dem Agent und dem Tunnelserver in Ihrem privaten Netzwerk bleibt.
LOG_LEVEL Nein Legen Sie die Stufe der Protokollierungsdetails fest, die Sie für Ihren Agenten empfangen wollen. Sie können fatal, error, warn, debug, info oder trace angeben. Die Standardstufe ist info. Normalerweise werden die Stufen debug und trace nur beim Debugging verwendet.
PRETTY_LOG Nein Nur für Windows-Umgebungen. Geben Sie " true an, um die Protokolle in einem hübschen Format anzuzeigen, oder " false, um die Protokolle im JSON-Format anzuzeigen.

Agenten auf der Containerplattform ausführen

Bevor Sie beginnen, lesen Sie die Mindestanforderungen.

Schritt 1: Lokale Konfigurationsdateien erstellen

Es gibt mehrere Möglichkeiten, Informationen zu Umgebungsvariablen für die Agentenkonfiguration an den Container zu übergeben. Im folgenden Beispiel werden Konfigurationsdateien verwendet. Sie können die Werte auch mit dem Befehl docker run --env angeben.

Beachten Sie, dass bei Verwendung von --env mit Ihrem API-Schlüssel der API-Schlüssel für die Containerumgebung verfügbar und in der Ausgabe des Befehls docker inspect sichtbar ist. Sie können Ihren API-Schlüssel in einer Datei sichern und dann den Dateinamen in der Umgebungsvariablen verwenden. Wenn Sie den Dateinamen verwenden möchten, müssen Sie sicherstellen, dass der Dateipfad, den Sie in der Umgebungsvariable angeben, an einen Dateipfad im Container angehängt ist, wie im folgenden Beispiel gezeigt.

Die in den folgenden Schritten gezeigten Dateinamen sind Beispiele und können an Ihre Umgebung angepasst werden.

  1. Erstellen Sie ein Verzeichnis für die Konfigurationsdateien, in diesem Beispiel ~/agent/env-files.

  2. Erstellen Sie im Verzeichnis ~/agent/env-files eine Datei mit dem Namen apikey mit einem einzeiligen Wert Ihres IBM Cloud-API-Schlüssels, der auf den Satellite-Connector zugreifen kann.

  3. Erstellen Sie im Verzeichnis ~/agent/env-files eine Datei namens env.txt mit den folgenden Werten. Ändern Sie die Variable " SATELLITE_CONNECTOR_ID mit Ihrer Satellite Anschluss-ID.

    SATELLITE_CONNECTOR_ID=<Your Satellite Connector ID>
    SATELLITE_CONNECTOR_IAM_APIKEY=/agent-env-files/apikey
    SATELLITE_CONNECTOR_TAGS=sample tag
    
  4. An diesem Punkt enthält Ihr Verzeichnis zwei Dateien und ähnelt dem folgenden Beispiel.

    env-files$ ls
    apikey  env.txt
    
  5. Führen Sie die Schritte im folgenden Abschnitt aus, um das Agentenimage mit einer Pull-Operation zu extrahieren.

Schritt 2: Agentenimage wird extrahiert

  1. Melden Sie sich bei IBM Cloud® Container Registry an. Oder melden Sie sich direkt über Docker mit Ihrem API-Schlüssel am Repository an.

    ibmcloud cr region-set icr.io
    
    docker login -u iamapikey -p <your apikey> icr.io
    
  2. Wählen Sie die neueste Version des veröffentlichten Bildes, das zu Ihrer Architektur passt. Akzeptierte Tag-Werte sind latest, latest-amd64, latest-arm64, latest-ppc64le und latest-s390x. Die Liste der veröffentlichten Versionen finden Sie unter IBM Satellite Connector Agent Release History.

    docker pull icr.io/ibm/satellite-connector/satellite-connector-agent:latest
    
  3. Führen Sie die folgenden Schritte aus, um das Agent-Image auszuführen.

Schritt 3: Agentenimage ausführen

  1. Führen Sie den folgenden Befehl aus, um die verfügbaren Versionen des Agentenimage anzuzeigen.

    ibmcloud cr images --include-ibm |egrep -i "tag|satellite"
    

    Beispielausgabe:

    Repository                                                  Tag             Digest         Namesp  Created         Size     Security status
    icr.io/ibm/satellite-connector/satellite-connector-agent    latest          63a97392e510   ibm     -               937 B    -
    icr.io/ibm/satellite-connector/satellite-connector-agent    latest-amd64    0d2b1a5773e5   ibm     1 week ago      50 MB    -
    icr.io/ibm/satellite-connector/satellite-connector-agent    latest-arm64    cb60b8d7040f   ibm     1 week ago      94 MB    -
    icr.io/ibm/satellite-connector/satellite-connector-agent    latest-ppc64le  4bcf8b1f6ea7   ibm     1 week ago      107 MB   -
    icr.io/ibm/satellite-connector/satellite-connector-agent    latest-s390x    27588d9d6143   ibm     1 week ago      94 MB    -
    icr.io/ibm/satellite-connector/satellite-connector-agent    v1.1.0          5f4e42c8d53e   ibm     2 years ago     124 MB   -
    icr.io/ibm/satellite-connector/satellite-connector-agent    v1.1.1          0caddb11b1c1   ibm     1 year ago      125 MB   -
    icr.io/ibm/satellite-connector/satellite-connector-agent    v1.1.10         52db33f1ec43   ibm     -               937 B    -
    icr.io/ibm/satellite-connector/satellite-connector-agent    v1.1.10-amd64   90c920b580fe   ibm     2 months ago    50 MB    -
    icr.io/ibm/satellite-connector/satellite-connector-agent    v1.1.10-arm64   322f92d8c373   ibm     2 months ago    94 MB    -
    icr.io/ibm/satellite-connector/satellite-connector-agent    v1.1.10-ppc64le 603b3507f20c   ibm     2 months ago    107 MB   -
    icr.io/ibm/satellite-connector/satellite-connector-agent    v1.1.10-s390x   afe670f04ea2   ibm     2 months ago    95 MB    -
    
  2. Hängen Sie das Verzeichnis env-files mit der Option -v an das Verzeichnis /agent-env-files des Containers an. Sie können die neueste Version oder eine bestimmte Version des veröffentlichten Image verwenden.

    Wenn eine Umgebungsvariable einen Pfad zu einer Datei verwendet, muss dieser Pfad ein Dateipfad innerhalb des Containers sein. Verwenden Sie zum Abrufen des Dateipfads die Option -v im Befehl docker run. Die Option -v wird durch den Verzeichnispfad der lokalen Umgebungsvariablen angegeben, gefolgt vom angehängten Pfad im Container und getrennt durch :. Beispiel: -v ~/agent/env-files:/agent-env-files, wobei ~/agent/env-files Ihr lokaler Pfad und /agent-env-files ein Pfad in Ihrem Container ist.

    docker run -d --env-file ~/agent/env-files/env.txt -v ~/agent/env-files:/agent-env-files icr.io/ibm/satellite-connector/satellite-connector-agent:latest
    

    Führen Sie den folgenden Beispielbefehl mit Version 1.1.0 des Image aus.

    docker run -d --env-file ~/agent/env-files/env.txt -v ~/agent/env-files:/agent-env-files icr.io/ibm/satellite-connector/satellite-connector-agent:v1.1.0
    
  3. Sie können überprüfen, ob der Tunnel für Ihren Connector eingerichtet wird, indem Sie die Protokolle des Containers überprüfen.

    docker logs CONTAINER-ID
    

    Am Anfang des Protokolls finden Sie Einträge ähnlich den folgenden Beispielen.

    {"level":30,"time":"2023-06-20T16:12:20.133Z","pid":8,"hostname":"6b793f671c79","name":"agentOps","msgid":"A02","msg":"Load SATELLITE_CONNECTOR_ID value from SATELLITE_CONNECTOR_ID environment variable."}
    {"level":30,"time":"2023-06-20T16:12:20.138Z","pid":8,"hostname":"6b793f671c79","name":"agentOps","msgid":"A01","msg":"Load SATELLITE_CONNECTOR_IAM_APIKEY value from file /agent-env-files/apikey."}
    {"level":30,"time":"2023-06-20T16:12:20.140Z","pid":8,"hostname":"6b793f671c79","name":"agentOps","msgid":"A02","msg":"Load SATELLITE_CONNECTOR_TAGS value from SATELLITE_CONNECTOR_TAGS environment variable."}
    {"level":30,"time":"2023-06-20T16:12:20.142Z","pid":8,"hostname":"6b793f671c79","name":"connector-agent","msgid":"LA2","msg":"Connector id: U2F0ZWxsaXRlQ29ubmVjdG9yOiJjaThzdWd1ZDFwZ2RrZmUxa3UxZyI, region: us-south, release info: 20230610-dd48822928d35a84b31029a996fa9abc9d29fc93_A."}
    {"level":30,"time":"2023-06-20T16:12:20.392Z","pid":8,"hostname":"6b793f671c79","name":"tunneldns","msgid":"D04","msg":"DoTunnelDNSLookup DNS resolve c-01-ws.us-south.link.satellite.cloud.ibm.com to 169.61.31.178"}
    {"level":30,"time":"2023-06-20T16:12:21.560Z","pid":8,"hostname":"6b793f671c79","name":"utilities","msg":"MakeLinkAPICall GET /v1/connectors/U2F0ZWxsaXRlQ29ubmVjdG9yOiJjaThzdWd1ZDFwZ2RrZmUxa3UxZyI status code 200"}
    {"level":30,"time":"2023-06-20T16:12:21.563Z","pid":8,"hostname":"6b793f671c79","name":"agent_tunnel","msgid":"LAT03","msg":"Got configuration"}
    {"level":30,"time":"2023-06-20T16:12:21.565Z","pid":8,"hostname":"6b793f671c79","name":"agent_tunnel","msgid":"LAT04-wss://c-01-ws.us-south.link.satellite.cloud.ibm.com/ws","msg":"Connecting to wss://c-01-ws.us-south.link.satellite.cloud.ibm.com/ws"}
    {"level":30,"time":"2023-06-20T16:12:21.922Z","pid":8,"hostname":"6b793f671c79","name":"tunneldns","msgid":"D04","msg":"DoTunnelDNSLookup DNS resolve c-01-ws.us-south.link.satellite.cloud.ibm.com to 169.61.31.178"}
    {"level":30,"time":"2023-06-20T16:12:22.294Z","pid":8,"hostname":"6b793f671c79","name":"TunnelCore","msgid":"TC24","msg":"Tunnel open","connector_id":"U2F0ZWxsaXRlQ29ubmVjdG9yOiJjaThzdWd1ZDFwZ2RrZmUxa3UxZyI"}
    {"level":30,"time":"2023-06-20T16:12:22.299Z","pid":8,"hostname":"6b793f671c79","name":"connector_tunnel_base","msgid":"CTB26-U2F0ZWxsaXRlQ29ubmVjdG9yOiJjaThzdWd1ZDFwZ2RrZmUxa3UxZyI","msg":"Send connector information to tunnel server"}
    {"level":30,"time":"2023-06-20T16:12:22.307Z","pid":8,"hostname":"6b793f671c79","name":"connector_tunnel_base","msgid":"CTB27","msg":"Tunnel connected","connector_id":"U2F0ZWxsaXRlQ29ubmVjdG9yOiJjaThzdWd1ZDFwZ2RrZmUxa3UxZyI","cipher":{"name":"TLS_AES_256_GCM_SHA384","standardName":"TLS_AES_256_GCM_SHA384","version":"TLSv1.3"}}
    

Nach dem Einrichten eines Agenten können Sie Endpunkte und ACLs erstellen, um den Zugriff auf diese Endpunkte zu verwalten. Weitere Informationen finden Sie unter Connectorendpunkte erstellen und verwalten.

Ausführen des Agenten unter Windows

Führen Sie die folgenden Schritte aus, um einen Connector-Agenten unter Windows auszuführen:

Bevor Sie beginnen, lesen Sie die Mindestanforderungen.

Schritt 1: Connector-Agentendateien über die Befehlszeilenschnittstelle herunterladen

  1. Führen Sie über die Befehlszeilenschnittstelle den folgenden Befehl aus, um die Agentendatei .zip herunterzuladen.

    ibmcloud sat agent attach --platform windows
    

    Beispielausgabe.

    Downloading agent setup tools for windows...
    OK
    Satellite connector agent for windows was successfully returned /var/folders/17/y8wr4y_x1tb4yf__g3wr6g8m0000gp/T/windows_satellite_connector_4097559421.zip
    
  2. Überprüfen Sie die sha512sum des .zip, indem Sie den folgenden Befehl in PowerShell ausführen.

    Get-FileHash -Algorithm SHA512 -Path c:\windows_satellite_connector_1420916628.zip
    
  3. Führen Sie den folgenden Befehl in PowerShell aus, um den Inhalt der Datei .zip zu extrahieren.

    Expand-Archive -Path 'C:\path\to\windows_satellite_connector_4097559421.zip' -DestinationPath ‘C:\path\to\extract'
    
  4. Führen Sie die Schritte im folgenden Abschnitt aus, um die extrahierten Konfigurationsdateien zu aktualisieren.

Schritt 2: Datei config.json aktualisieren

Konfigurationsinformationen werden dem Agenten über die folgenden Umgebungsvariablen in der Datei config.json bereitgestellt, die Sie im vorherigen Schritt extrahiert haben. Überprüfen Sie die folgenden Parameter für das Agentenimage.

  1. Aktualisieren Sie die config.json, die Sie zuvor extrahiert haben, mit den entsprechenden Werten für jeden Parameter.

    Sie müssen den Schrägstrich im Dateipfad mit Escapezeichen versehen.

    Beispiel config.json.

    {
      "SATELLITE_CONNECTOR_ID":"<Your Satellite Connector ID>",
      "SATELLITE_CONNECTOR_IAM_APIKEY":"<Your API Key>",
      "SATELLITE_CONNECTOR_TAGS":"sample tag",
      "LOG_LEVEL": "info",
      "PRETTY_LOG": true
    }
    

    Beispiel config.json mit ausgefüllten Werten.

    {
      "SATELLITE_CONNECTOR_ID":"U2F0ZWxsaXRlQ29ubmVjdG9yOiJjanM4cnRzZjFsN2c0M3U4cmp1MBA",
      "SATELLITE_CONNECTOR_IAM_APIKEY":"C:\\path\\to\\apikey",
      "SATELLITE_CONNECTOR_TAGS":"sample tag",
      "LOG_LEVEL": "info",
      "PRETTY_LOG": true
    }
    
  2. Speichern Sie die Datei.

  3. Führen Sie die Schritte im folgenden Abschnitt aus, um den Agenten zu starten.

Schritt 3: Agenten starten

  1. Starten Sie den Agenten, indem Sie den Befehl install in PowerShellausführen.

    .\install
    

    Wenn Sie den Agenten starten und einen Windows Microsoft Defender SmartScreen erhalten, ist dies zu erwarten. Die reinen Text-Installationsskripte sind nicht signiert. Wir empfehlen, sich auf den Schritt zur Überprüfung der sha512sum zu verlassen, nachdem Sie den Agenten heruntergeladen haben.

  2. Überprüfen Sie, ob der Agent installiert ist, indem Sie den Befehl Get-Service in PowerShell ausführen.

    Get-Service 'SatelliteConnectorService'
    
  3. Zeigen Sie die Agentenprotokolle an, indem Sie den Befehl Get-Content in PowerShellausführen.

    Get-Content 'C:\path\to\extract\logs\{satelliteconnectorservice_{{yyyymmdd}}.out.log}'
    
  4. Optional: Stoppen Sie den Agent mit dem Befehl uninstall in PowerShell.

    .\uninstall
    

Nach dem Einrichten eines Agenten können Sie Endpunkte und ACLs erstellen, um den Zugriff auf diese Endpunkte zu verwalten. Weitere Informationen finden Sie unter Connectorendpunkte erstellen und verwalten.

Aktualisierung des Agenten unter Windows

Sie können den Befehl update-service im Agentenpaket verwenden, um Konfigurationsänderungen auf Ihren Agenten anzuwenden. Wenn Sie den Befehl ausführen, wird der Agent gestoppt, deinstalliert und erneut installiert. Führen Sie die folgenden Schritte aus, um Ihren Agenten zu aktualisieren.

  1. Überprüfen Sie vor dem Update die Änderungen im Änderungsprotokoll des Connector Windows-Agenten und stellen Sie fest, ob die neueste Version neuer ist als Ihr derzeit laufender Agent.

    Die aktuelle Versionsnummer finden Sie in der Datei version.txt innerhalb des Agentenpakets für Ihren derzeit laufenden Agenten. Wenn keine version.txt-Datei gefunden wird oder Ihre aktuelle Versionsnummer kleiner ist als die neueste Versionsnummer, steht eine neuere Version zur Aktualisierung zur Verfügung.

  2. Wenn eine neuere Version des Agenten verfügbar ist und Sie diese verwenden möchten, laden Sie die neueste Version herunter, indem Sie die Anweisungen in Schritt 1: Herunterladen der Connector-Agent-Dateien von der CLI befolgen, bevor Sie mit den folgenden Schritten fortfahren.

  3. Ändern Sie die Konfigurationsparameter in der Datei config.json.

    Beispiel config.json.

    {
      "SATELLITE_CONNECTOR_ID":"<Your Satellite Connector ID>",
      "SATELLITE_CONNECTOR_IAM_APIKEY":"<Your API Key>",
      "SATELLITE_CONNECTOR_TAGS":"<tags>",
      "LOG_LEVEL": "info",
      "PRETTY_LOG": true
    }
    

    Beispiel config.json mit ausgefüllten Werten.

    {
      "SATELLITE_CONNECTOR_ID":"U2F0ZWxsaXRlQ29ubmVjdG9yOiJjanM4cnRzZjFsN2c0M3U4cmp1MBA",
      "SATELLITE_CONNECTOR_IAM_APIKEY":"C:\\path\\to\\apikey",
      "SATELLITE_CONNECTOR_TAGS":"sample tag",
      "LOG_LEVEL": "info",
      "PRETTY_LOG": true
    }
    
  4. Führen Sie den Befehl update-service in PowerShellaus.

    .\update-service
    
  5. Überprüfen Sie, ob der Agent installiert ist, indem Sie den Befehl Get-Service in PowerShell ausführen.

    Get-Service 'SatelliteConnectorService'
    
  6. Zeigen Sie die Agentenprotokolle an, indem Sie den Befehl Get-Content in PowerShellausführen.

    Get-Content 'C:\path\to\extract\logs\{satelliteconnectorservice_{{yyyymmdd}}.out.log}'
    

Nächste Schritte

Nach dem Erstellen eines Connector-Agenten können Sie Endpunkte erstellen, um eine Verbindung vom privaten IBM Cloud-Netz zu einer Ressource herzustellen, die an Ihrem Standort ausgeführt wird. Sie können den Zugriff auf Ihre Endpunkte auch steuern, indem Sie Zugriffssteuerungslistenregeln erstellen. Weitere Informationen finden Sie unter Connectorendpunkte erstellen und verwalten.