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 stunnel
ein, das die Verbindung redis-cli
mit TLS-Verschlüsselung umhüllt.
stunnel
einrichten
-
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. -
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.
-
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
- Ein Name für einen Service (
-
Führen Sie
stunnel
aus.Geben Sie den Befehl
stunnel
in die Befehlszeile ein. Der Befehl wird unverzüglich im Hintergrund ausgeführt. -
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
- Kopieren Sie die Zertifikatsinformationen aus dem Bereich Endpunkte oder aus dem Feld Base64 der Verbindungsinformationen der Dienstanmeldeinformationen.
- Decodieren Sie bei Bedarf die Base64-Zeichenfolge in Text.
- Speichern Sie das Zertifikat in einer Datei. (Sie können den vorgegebenen Namen übernehmen oder einen eigenen Dateinamen angeben. )
- 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.