Cómo instalar la base de datos Apache CouchDB NoSQL en CentOS 8

Cómo instalar la base de datos Apache CouchDB NoSQL en CentOS 8

Apache CouchDB es un sistema de base de datos NoSQL gratuito y de código abierto orientado a documentos escrito en Erlang. En comparación con otras bases de datos relacionales, no almacena datos ni relaciones en tablas. Utiliza JSON para almacenar datos, lo que los hace más escalables y fáciles de modelar. También es compatible con una API HTTP silenciosa que le permite crear, editar y eliminar documentos de la base de datos.

En este tutorial, explicaremos cómo instalar la base de datos Apache CouchDB NoSQL en CentOS 8.

requisitos previos

  • Servidor con CentOS 8.
  • La contraseña de root está configurada en su servidor.

Instalar Apache CouchDB

De forma predeterminada, CentOS 8 no proporciona Apache CouchDB en el repositorio predeterminado. Por lo tanto, deberá crear un repositorio Apache CouchDB en el sistema.

El repositorio de CouchDB depende del repositorio de EPEL, por lo que deberá instalar el repositorio de EPEL en el sistema. Puede usar el siguiente comando para instalar:

dnf install epel-release -y

A continuación, cree el repositorio de Apache CouchDB con el siguiente comando:

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

Agregue la siguiente línea:

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

Guarde y cierre el archivo cuando termine. Luego, instale Apache CouchDB usando el siguiente comando:

dnf install couchdb -y

Una vez que la instalación se haya completado con éxito, puede continuar con el siguiente paso.

Configurar CouchDB

Puede configurar CouchDB en modo independiente o en modo clúster. En este tutorial, configuraremos el servidor CouchDB en modo único. De forma predeterminada, CouchDB escucha en el host local y no se crea ninguna cuenta de administrador durante el proceso de instalación. Por lo tanto, deberá crear una cuenta de administrador para CouchDB. Puede crearlo editando el archivo local.ini:

nano /opt/couchdb/etc/local.ini

Establezca bind-address en 0.0.0.0 para permitir el acceso desde una dirección IP externa y establezca una contraseña de administrador internamente [admin] Las partes se muestran a continuación:

[chttpd]
port = 5984
bind_address = 0.0.0.0  

[admins]
admin = password

Guarde y cierre el archivo cuando termine. Luego, inicie el servicio CouchDB y habilítelo para que comience al inicio:

systemctl start couchdbsystemctl enable couchdb

Ahora puede usar el siguiente comando para verificar el estado del servicio CouchDB:

systemctl status couchdb

Deberías obtener el siguiente resultado:

? 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.

También puede verificar el puerto de escucha de CouchDB usando el siguiente comando:

netstat -pnltu | grep 5984

Debería ver el siguiente resultado:

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

Configurar SELinux y cortafuegos

Por defecto, SELinux está habilitado en el sistema. Por lo tanto, se recomienda que deshabilite SELinux en el sistema.

Puede deshabilitar SELinux editando el archivo / etc / selinux / config:

nano /etc/selinux/config

Encuentra la siguiente línea:

SELINUX=enforcing

Y, reemplácelo con la siguiente línea:

SELINUX=permissive

Guarde y cierre el archivo. Luego, reinicie el sistema para aplicar los cambios:

A continuación, deberá permitir el puerto 5984 a través de firewalld. Puedes permitirlo usando el siguiente comando:

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

Cuando haya terminado, puede continuar con el siguiente paso.

Visite la interfaz de usuario web de CouchDB

En este punto, CouchDB se ha instalado y configurado. Ahora es el momento de confirmar que CouchDB funciona correctamente.

Puede verificar CouchDB usando el comando curl:

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

Si todo es normal, debería obtener el siguiente resultado:

{"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"}}

También puede usar la URL https: // su servidor-ip: 5984 / _utils / para acceder a la interfaz de usuario web de CouchDB. Será redirigido a la página de inicio de sesión de CouchDB:

Proporcione su nombre de usuario y contraseña de administrador y haga clic enaccesoBotón. Debería ver el panel de CouchDB en la siguiente pantalla:

CouchDB dashboard

Usar la base de datos CouchDB

CouchDB también le permite crear y eliminar bases de datos usando comandos curl.

Para crear una base de datos llamada testdb en CouchDB, ejecute el siguiente comando:

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

Debería ver el siguiente resultado:

{"ok":true}

Para crear una base de datos llamada userdb en CouchDB, ejecute el siguiente comando:

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

Deberías obtener el siguiente resultado:

{"ok":true}

También puede usar el comando curl para verificar la base de datos de la siguiente manera:

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

Deberías obtener el siguiente resultado:

{"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"}

También puede actualizar el panel de CouchDB para ver la base de datos en un navegador web.

Create a database in CouchDB

Si desea eliminar la base de datos testdb, ejecute el siguiente comando:

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

Deberías obtener el siguiente resultado:

{"ok":true}

en conclusión

¡Felicidades! Ha instalado con éxito Apache CouchDB en CentOS 8. Para obtener más información, puede visitar Apache.CouchDBDocumentación.

Artículos Relacionados