Wie installiere ich die Apache CouchDB NoSQL Datenbank auf CentOS 8

Apache CouchDB ist ein freies, Open-Source dokumentenorientiertes NoSQL Datenbanksystem, das in Erlang geschrieben wurde. Im Vergleich zu anderen relationalen Datenbanken speichert es keine Daten und Beziehungen in Tabellen. Es verwendet JSON, um Daten zu speichern, was die Daten skalierbarer und einfacher zu modellieren macht. Es unterstützt auch eine restful HTTP-API, die es Ihnen ermöglicht, Datenbankdokumente zu erstellen, zu bearbeiten und zu löschen.

In diesem Tutorial werden wir erklären, wie die Apache CouchDB NoSQL Datenbank unter CentOS 8 installiert wird.

Voraussetzungen

  • Ein Server, auf dem CentOS 8 lÃ?uft.
  • Ein root Passwort wird auf Ihrem Server eingerichtet.

Apache CouchDB installieren

Standardmäßig ist Apache CouchDB nicht im Standard-Repository von CentOS 8 verfÃ?gbar. Daher müssen Sie ein Apache CouchDB Repository in Ihrem System anlegen.

Das CouchDB Repository ist abh�ngig vom EPEL Repository, daher m�ssen Sie das EPEL Repo in Ihrem System installieren. Sie können es mit dem folgenden Befehl installieren:

dnf install epel-release -y

Als nÃ?chstes erstellen Sie das Apache CouchDB Repo mit dem folgenden Befehl:

nano /etc/yum.repos.d/apache-couchdb.repo

Fügen Sie die folgenden Zeilen hinzu:

[bintray--apache-couchdb-rpm]
name=bintray--apache-couchdb-rpm
baseurl=http://apache.bintray.com/couchdb-rpm/el$releasever/$basearch/
gpgcheck=0
repo_gpgcheck=0
enabled=1

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Dann installieren Sie den Apache CouchDB mit dem folgenden Befehl:

dnf install couchdb -y

Wenn die Installation erfolgreich abgeschlossen ist, können Sie mit dem nächsten Schritt fortfahren.

CouchDB konfigurieren

Sie können CouchDB als Standalone Modus oder in einem geclusterten Modus konfigurieren. In diesem Tutorial werden wir den CouchDB Server im Single-Modus konfigurieren. Standardmäßig lauscht CouchDB auf dem Localhost und während der Installation wird kein Admin Account angelegt. Sie mÃ?ssen also ein Admin Konto fÃ?r CouchDB anlegen. Sie können es erstellen, indem Sie die Datei local.ini editieren:

nano /opt/couchdb/etc/local.ini

Setzen Sie die Bindungsadresse auf 0.0.0.0.0, um den Zugriff von externen IP-Adressen zu ermöglichen, und setzen Sie auch das Admin-Passwort innerhalb des [admin]-Bereichs wie unten gezeigt:

[chttpd]
port = 5984
bind_address = 0.0.0.0  

[admins]
admin = password

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Dann starten Sie den CouchDB Dienst und lassen ihn beim Booten starten:

systemctl start couchdb
systemctl enable couchdb

Sie können nun den Status des CouchDB Dienstes mit dem folgenden Befehl Überprüfen:

systemctl status couchdb

Sie sollten die folgende Ausgabe erhalten:

? couchdb.service - Apache CouchDB
   Loaded: loaded (/usr/lib/systemd/system/couchdb.service; disabled; vendor preset: disabled)
   Active: active (running) since Sat 2020-04-11 07:40:47 EDT; 35s ago
 Main PID: 11992 (beam.smp)
    Tasks: 43 (limit: 26213)
   Memory: 36.4M
   CGroup: /system.slice/couchdb.service
           ??11992 /opt/couchdb/bin/../erts-9.3.3.14/bin/beam.smp -K true -A 16 -Bd -- -root /opt/couchdb/bin/.. -progname couchdb -- -home /o>
           ??12004 /opt/couchdb/bin/../erts-9.3.3.14/bin/epmd -daemon
           ??12023 erl_child_setup 1024
           ??12045 sh -s disksup
           ??12047 /opt/couchdb/bin/../lib/os_mon-2.4.4/priv/bin/memsup
           ??12048 /opt/couchdb/bin/../lib/os_mon-2.4.4/priv/bin/cpu_sup

Apr 11 07:40:47 centos8 systemd[1]: Started Apache CouchDB.

Sie können auch den CouchDB Listening Port mit dem folgenden Befehl �berpr�fen:

netstat -pnltu | grep 5984

Sie sollten die folgende Ausgabe sehen:

tcp        0      0 0.0.0.0:5984            0.0.0.0:*               LISTEN      11992/beam.smp

Konfigurieren Sie SELinux und die Firewall

Standardmäßig ist SELinux in Ihrem System aktiviert. Es wird daher empfohlen, SELinux in Ihrem System zu deaktivieren.

Sie können SELinux deaktivieren, indem Sie die Datei /etc/selinux/config editieren:

nano /etc/selinux/config

Suchen Sie die folgende Zeile:

SELINUX=enforcing

Und ersetzen Sie ihn durch die folgende Zeile:

SELINUX=permissive

Speichern und schließen Sie die Datei. Dann starten Sie Ihr System neu, um die Ãnderungen zu Ã?bernehmen:

Als n�chstes m�ssen Sie Port 5984 durch die Firewall erlauben. Sie können ihn mit dem folgenden Befehl erlauben:

firewall-cmd --zone=public --permanent --add-port=5984/tcp
firewall-cmd --reload

Sobald Sie fertig sind, können Sie mit dem n�chsten Schritt fortfahren.

Zugriff auf das CouchDB Web UI

Zu diesem Zeitpunkt ist CouchDB installiert und konfiguriert. Es ist an der Zeit zu bestÃ?tigen, ob CouchDB funktioniert oder nicht.

Sie können den curl Befehl verwenden, um die CouchDB Datenbank zu �berpr�fen:

curl http://your-server-ip:5984/

Wenn alles in Ordnung ist, sollten Sie die folgende Ausgabe erhalten:

{"couchdb":"Welcome","version":"3.0.0","git_sha":"03a77db6c","uuid":"d0406ea8f0b1a3f18020ec90e627ae35","features":["access-ready","partitioned","pluggable-storage-engines","reshard","scheduler"],"vendor":{"name":"The Apache Software Foundation"}}

Sie können auch auf das CouchDB Web UI �ber die URL http://your-server-ip:5984/_utils/ zugreifen. Sie werden auf die CouchDB Login Seite weitergeleitet:

CouchDB Anmeldung

Geben Sie Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf die Schaltfläche Anmelden. Sie sollten das CouchDB Dashboard im folgenden Bildschirm sehen:

CouchDB Dashboard

Arbeiten mit der CouchDB Datenbank

CouchDB erlaubt auch das Anlegen und Löschen von Datenbanken mit dem curl Befehl.

Um eine Datenbank mit dem Namen testdb in CouchDB zu erstellen, fÃ?hren Sie den folgenden Befehl aus:

curl -u admin:password -X PUT http://your-server-ip:5984/testdb

Sie sollten die folgende Ausgabe sehen:

{"ok":true}

Um eine Datenbank mit dem Namen userdb in CouchDB zu erstellen, fÃ?hren Sie den folgenden Befehl aus:

curl -u admin:password -X PUT http://your-server-ip:5984/userdb

Sie sollten die folgende Ausgabe erhalten:

{"ok":true}

Sie können die Datenbank auch mit dem curl Befehl �berpr�fen, wie unten gezeigt:

curl -u admin:password -X GET http://your-server-ip:5984/testdb

Sie sollten die folgende Ausgabe erhalten:

{"db_name":"testdb","purge_seq":"0-g1AAAABXeJzLYWBgYMpgTmEQTM4vTc5ISXIwNDLXMwBCwxyQVB4LkGRoAFL_gSArkQGP2kSGpHqIoiwAtOgYRA","update_seq":"0-g1AAAABXeJzLYWBgYMpgTmEQTM4vTc5ISXIwNDLXMwBCwxyQVB4LkGRoAFL_gSArkQGP2kSGpHqIoiwAtOgYRA","sizes":{"file":16700,"external":0,"active":0},"props":{},"doc_del_count":0,"doc_count":0,"disk_format_version":8,"compact_running":false,"cluster":{"q":2,"n":1,"w":1,"r":1},"instance_start_time":"0"}

Sie können auch das CouchDB Dashboard aktualisieren, um die Datenbanken in Ihrem Web Browser anzuzeigen.

Erstellen einer Datenbank in CouchDB

Wenn Sie die Datenbank testdb löschen möchten, f�hren Sie den folgenden Befehl aus:

curl -u admin:password -X DELETE http://your-server-ip:5984/testdb

Sie sollten die folgende Ausgabe erhalten:

{"ok":true}

Schlussfolgerung

Gratulation! Sie haben Apache CouchDB erfolgreich unter CentOS 8 installiert. F�r weitere Informationen können Sie die Apache CouchDB Dokumentation besuchen.

Das könnte Dich auch interessieren …