IBM Cloud Docs
Verbindung über die Befehlszeilenschnittstelle (CLI) herstellen

Verbindung über die Befehlszeilenschnittstelle (CLI) herstellen

Greifen Sie direkt über eine Befehlszeilenschnittstelle (CLI) auf Ihre Redis-Datenbank zu. Die CLI ermöglicht die direkte Interaktion und Überwachung der Datenstrukturen, die in der Datenbank erstellt werden. Des Weiteren ist ein solcher Client nützlich für die Verwaltung und Überwachung des Schlüsselbereichs und der Leistung, für die Installation und Änderung von Scripts sowie für andere Managementaktivitäten.

Der redli-Client muss für die Benutzermanagementfunktionen aktualisiert werden, die in Redis 6eingeführt wurden. Wenn Sie versuchen, eine Verbindung herzustellen, ohne den Client zu aktualisieren, erhalten Sie eine Fehlermeldung wie: (error) WRONGPASS invalid username-password pair.

Verbindungszeichenfolgen

Die Verbindungszeichenfolgen werden im Bereich Endpunkte auf der Übersichtsseite Ihrer Bereitstellung angezeigt und können auch über das Cloud Databases CLI-Plug-in und die Cloud Databases API abgerufen werden.

Die Informationen, die die Clients benötigen, um eine Verbindung zu Ihrer Bereitstellung herzustellen, befinden sich im Abschnitt "CLI" eines Berechtigungsnachweises, der auf der Seite Dienstberechtigungsnachweise erstellt wurde. Die Tabelle enthält eine Aufgliederung zu Referenzzwecken.

Feldname Index Beschreibung
Bin Die empfohlene Binärdatei zum Erstellen einer Verbindung. In diesem Fall ist dies redli.
Composed Ein formatierter Befehl zum Aufbauen einer Verbindung zu Ihrer Bereitstellung. Der Befehl kombiniert die ausführbare Binärdatei (Bin) und die Einstellungen der Variablen für die Environment und verwendet Arguments als Befehlszeilenparameter.
Environment Eine Liste von Schlüsseln/Werten, die Sie als Umgebungsvariablen festlegen.
Arguments 0... Die Informationen, die als Argumente an den im Feld 'Bin' angezeigten Befehl übergeben werden.
Certificate Base64 Ein diensteigenes Zertifikat, das verwendet wird, um zu bestätigen, dass eine Anwendung eine Verbindung zum entsprechenden Server herstellt. Das Zertifikat liegt in Base64-Codierung vor.
Certificate Name Der zugewiesene Name für das diensteigene Zertifikat.
Type Der Typ des Pakets, das diese Verbindungsinformationen verwendet; in diesem Fall cli.
{: caption=redis``cli Verbindungsinformationen" caption-side="top"}
  • 0... Gibt an, dass es möglicherweise weitere derartige Einträge in einem Array gibt.

Installieren von redli

Bei redli handelt es sich um einen quelloffenen Redis-Befehlszeilenclient. Der Client ist eigenständig, bildet die Befehlszeilenargumente der Redis-CLI (redis-cli) ab und fügt Unterstützung für TLS/SSL-Redis-Verbindungen hinzu. Er erkennt das Protokoll rediss: in URIs und unterstützt das Flag --tls für Nicht-URI-Verbindungen. Der Client ist in der Lage, eine Verbindung zu Redis-Instanzen herzustellen, die über TLS/SSL gesichert sind, ohne dass hierfür Tunnel erforderlich sind. Laden Sie es von der Seite für Releasesherunter und installieren Sie es.

Verbindung zu redli herstellen

Der Befehl ibmcloud cdb deployment-connections ist für alle Elemente geeignet, die beim Erstellen der Clientverbindung infrage kommen. Beispiel: Verwenden Sie zum Herstellen einer Verbindung zu einer Bereitstellung namens 'NewRedis' folgenden Befehl:

ibmcloud cdb deployment-connections NewRedis --start

oder

ibmcloud cdb cxn NewRedis -s

Der Befehl fordert zur Eingabe des Passworts admin auf und führt dann den redli Befehlszeilen-Client aus, um eine Verbindung zur Datenbank herzustellen.

Wenn Sie das Cloud Databases-Plug-in nicht installiert haben, können Sie mithilfe des Befehls redli eine Verbindung zu Ihren Redis-Datenbanken herstellen. Laden Sie das diensteigene Zertifikat aus Ihrer Bereitstellung herunter und speichern Sie es. Verwenden Sie dann redli, indem Sie ihm die Verbindungszeichenfolge "composed" und den Pfad zum diensteigenen Zertifikat angeben.

redli --uri rediss://admin:$PASSWORD@e6b2c3f8-54a6-439e-8d8a-aa6c4a78df49.8f7bfd8f3faa4218aec56e069eb46187.databases.appdomain.cloud:32371/0 --certfile /path/to/redis-cert.pem

Es gibt noch andere Verbindungsoptionen und Parameter, die von redli unterstützt werden. Weitere Informationen finden Sie in der Dokumentation im redli GitHub repo.

Installieren von redis-cli

redis-cli ist die offizielle unterstützte Befehlszeilenschnittstelle für Redis. Leider unterstützt diese Schnittstelle keine TLS-Verbindungen.

Wenn Sie sich für die Verwendung von redis-cli entscheiden, sind einige zusätzliche Konfigurationsschritte erforderlich. Die Schnittstelle ist Teil des Redis-Pakets. Daher muss Redis lokal installiert sein, um die Schnittstelle verwenden zu können. Installieren Sie auf macOS, brew und verwenden Sie dann brew install redis, um das System zum Laufen zu bringen. Unter Linux finden Sie im Paketmanager Ihrer Distribution das neueste Redis-Paket, oder, wenn Sie möchten, können Sie den Quellcode herunterladen und ihn selbst erstellen.

Verbindung zu redis-cli herstellen

redis-cli unterstützt keine Verbindungen, die für TLS aktiviert sind. Wenn Sie redis-cli mit einer verschlüsselten Verbindung verwenden möchten, richten Sie ein Dienstprogramm wie stunnelein, das die Verbindung redis-cli mit TLS-Verschlüsselung umhüllt.

stunnel einrichten

  1. Installieren Sie stunnel. Verwenden Sie Ihren Paketmanager für Linux, Homebrew für Mac oder laden Sie das entsprechende Paket für Ihre Plattform herunter.

  2. Rufen Sie Verbindungsinformationen ab. Zum Einrichten einer Verbindung benötigt stunnel den Host, den Port und das Zertifikat Ihrer Redis-Bereitstellung. Host und Port sind in der "erstellten" CLI-Verbindungszeichenfolge enthalten. Sie können auch in der Aufschlüsselung der Verbindungszeichenfolgen gefunden werden, die für die Verbindung mit externen Anwendungen und Treibern bereitgestellt wird.

    Das Zertifikat befindet sich im Base64 der Verbindungsinformationen der Dienstanmeldeinformationen. Kopieren Sie das Zertifikat, decodieren Sie es und speichern Sie es in einer Datei.

  3. Fügen Sie Ihre Konfigurationsdaten zur Datei stunnel.conf hinzu. Die Konfiguration enthält die folgenden Informationen:

    • Ein Name für einen Service ([redis-cli])
    • Eine Einstellung, die besagt, dass diese stunnel-Instanz ein TLS-Client ist. (client=yes)
    • Eine IP-Adresse und einen Port für die Annahme von Verbindungen (accept=127.0.0.1:6830) und zum Verbinden.
    • Der Hostname und der Port für die Verbindung (connect=portal972-7.bmix-lon-yp-38898e17-ff6f-4340-9da8-2ba24c41e6d8.composeci-us-ibm-com.composedb.com:24370`)
    • Den Pfad zum Zertifikat.
    [redis-cli]
    client=yes  
    accept=127.0.0.1:6830  
    connect=sl-us-south-1-portal.7.dblayer.com:23870
    verify=2  
    checkHost=sl-us-south-1-portal.7.dblayer.com
    CAfile=/path/to/redis/cert.crt
    
  4. Führen Sie stunnel aus.

    Geben Sie den Befehl stunnel in die Befehlszeile ein. Der Befehl wird unverzüglich im Hintergrund ausgeführt.

  5. Führen Sie in einem neuen Terminalfenster den Befehl redis-cli unter Verweis auf den lokalen Host und Port aus und authentifizieren Sie sich mit den Berechtigungsnachweisen der Bereitstellung.

    redis-cli -p 6830 -a <PASSWORD>
    

Verwendung des diensteigenen Zertifikats

  1. Kopieren Sie die Zertifikatsinformationen aus dem Bereich Endpunkte oder aus dem Feld Base64 der Verbindungsinformationen der Dienstanmeldeinformationen.
  2. Decodieren Sie bei Bedarf die Base64-Zeichenfolge in Text.
  3. Speichern Sie das Zertifikat in einer Datei. (Sie können den vorgegebenen Namen übernehmen oder einen eigenen Dateinamen angeben. )
  4. Geben Sie gegenüber dem Treiber oder Client den Pfad zum Zertifikat an.

CLI-Plugin-Unterstützung für das diensteigene Zertifikat

Sie können das dekodierte Zertifikat für Ihren Einsatz mit dem CLI-Plugin mit einem Befehl wie diesem anzeigen:

ibmcloud cdb deployment-cacert <INSTANCE_NAME_OR_CRN>

Dieser Befehl dekodiert die Base64 in Text. Kopieren Sie die Ausgabe des Befehls in eine Datei, speichern Sie die Datei und geben Sie den Pfad zur Datei für den Client an.