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

Inicio de sesión en CouchDB

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 que lo hacen más escalable y fácil de modelar los datos. También es compatible con una API HTTP tranquila 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

  • Un servidor que ejecuta CentOS 8.
  • Una contrase√Īa de root est√° configurada en su servidor.

Instalar Apache CouchDB

De forma predeterminada, Apache CouchDB no est√° disponible en el repositorio predeterminado de CentOS 8. Por lo tanto, deber√° crear un repositorio de Apache CouchDB en su sistema.

El repositorio de CouchDB depende del repositorio de EPEL, por lo que deber√° instalar el repositorio de EPEL en su sistema. Puedes instalarlo con el siguiente comando:

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 las siguientes líneas:

[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

Guarde y cierre el archivo cuando haya terminado. 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 como modo independiente o en modo agrupado. En este tutorial, configuraremos el servidor CouchDB en modo √ļnico. De forma predeterminada, CouchDB escucha en el host local y no se crea una cuenta de administrador durante la 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 la direcci√≥n de enlace en 0.0.0.0 para permitir el acceso desde direcciones IP externas y tambi√©n configure la contrase√Īa de administrador dentro [admin] secci√≥n como se muestra a continuaci√≥n:

[chttpd]
port = 5984
bind_address = 0.0.0.0  

[admins]
admin = password

Guarde y cierre el archivo cuando haya terminado. Luego, inicie el servicio CouchDB y habilítelo para que se inicie en el arranque:

systemctl start couchdb
systemctl enable couchdb

Ahora puede verificar el estado del servicio CouchDB usando el siguiente comando:

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 con 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 Firewall

De manera predeterminada, SELinux est√° habilitado en su sistema. Por lo tanto, se recomienda desactivar SELinux en su 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 su sistema para aplicar los cambios:

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

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

Una vez que haya terminado, puede continuar con el siguiente paso.

Acceda a la interfaz de usuario web de CouchDB

En este punto, CouchDB est√° instalado y configurado. Es hora de confirmar si CouchDB est√° funcionando o no.

Puede usar el comando curl para verificar CouchDB:

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

Si todo está bien, debería obtener el siguiente resultado: Anuncio

{"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 acceder a la interfaz de usuario web de CouchDB utilizando la URL http://your-server-ip:5984/_utils/. Será redirigido a la página de inicio de sesión de CouchDB:

Inicio de sesión en CouchDB

Proporcione su nombre de usuario y contrase√Īa de administrador y haga clic en el Iniciar sesi√≥n bot√≥n. Deber√≠a ver el panel de CouchDB en la siguiente pantalla:

Tablero de CouchDB

Trabajar con la base de datos CouchDB

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

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

curl -u admin:password -X PUT http://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 http://your-server-ip:5984/userdb

Deberías obtener el siguiente resultado:

{"ok":true}

También puede verificar la base de datos usando el comando curl como se muestra a continuación:

curl -u admin:password -X GET http://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 las bases de datos en su navegador web.

Crear una base de datos en CouchDB

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

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

Deberías obtener el siguiente resultado:

{"ok":true}

Conclusión

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *