Cómo instalar Apache Couch DB en AlmaLinux 9

Apache CouchDB es una base de datos NoSQL y orientada a documentos de código abierto que admite múltiples formatos y protocolos para almacenar sus datos. Está escrita en Erlang y puede ejecutarse como una base de datos de un solo nodo de alto rendimiento.

Apache CouchDB te permite utilizar JSON para almacenar datos, y también proporciona una interfaz web para gestionar el sistema CouchDB y una API HTTP que te permite consultar datos fácilmente.

En esta guía, te guiaremos a través de la instalación de Apache CouchDB en el servidor AlmaLinux 9. Instalarás Apache CouchDB en un clúster single_node, y configurarás el usuario admin y firewalld para CouchDB. Además, aprenderás a crear una base de datos y un documento en Apache CouchDB a través de la interfaz de usuario web y la API HTTP con Curl.

Requisitos previos

Para completar con esta guía, debes tener lo siguiente:

  • Un servidor AlmaLinux 9.
  • Un usuario no root con privilegios de administrador.
  • Un SELinux con modo permisivo.

Configurar el repositorio Apache CouchDB

Apache CouchDB es una base de datos NoSQL multiplataforma que se puede instalar en Linux, Windows, macOS y FreeBSD, y en tecnología de contenedores como Docker y Kubernetes. Para las distribuciones basadas en RHEL, instalarás CouchDB desde el repositorio oficial a través de DNF.

En primer lugar, ejecuta el siguiente comando para instalar el dnf-plugins-core en tu servidor AlmaLinux.

sudo dnf install dnf-plugins-core -y

dnf plugin core

Añade el repositorio de Apache CouchDB a tu sistema mediante el siguiente comando

sudo dnf config-manager --add-repo https://couchdb.apache.org/repo/couchdb.repo

Ahora, ejecuta el siguiente comando dnf y comprueba los repositorios disponibles en tu sistema. Asegúrate de que se añade el repositorio de Apache CouchDB.

sudo dnf repolist

añadir repositorio couchdb

Después de añadir el repositorio, instala el paquete Apache CouchDB utilizando el comando dnf que aparece a continuación.

sudo dnf install couchdb

Escribe y y pulsa ENTER para continuar.

instalar apache couchdb

Además, cuando se te pregunte por la clave GPG de Apache CouchDB, introduce y para añadir la clave a tu sistema.

importar clave gpg

Una vez finalizada la instalación, continúa.

Instalar Apache CouchDB a través de un repositorio

Después de instalar CouchDB a través de DNF, modificarás la configuración por defecto de CouchDB, configurarás el cluster single_node, configurarás el usuario y contraseña admin, y luego configurarás la dirección HTTP con una dirección IP de servidor local.

Abre la configuración por defecto /opt/couchdb/etc/local.ini utilizando el comando editor nano.

sudo nano /opt/couchdb/etc/local.ini

Dentro de la sección ‘[couchdb]‘, añade la siguiente línea para configurar el nodo único Apache CouchDB.

[couchdb]
single_node=true

Guarda y cierra el archivo cuando hayas terminado.

A continuación, crea una nueva configuración /opt/couchdb/etc/local.d/10-admins.ini utilizando el siguiente comando del editor nano.

sudo nano /opt/couchdb/etc/local.d/10-admins.ini

Añade la siguiente configuración al archivo y asegúrate de cambiar el usuario admin y la contraseña con tus datos. Esta contraseña en texto plano se cifrará automáticamente al ejecutar Apache CouchDB.

[admins]
admin = password

Guarda y cierra el archivo cuando hayas terminado.

Ahora abre la configuración por defecto /opt/couchdb/etc/default.ini utilizando el comando editor nano que aparece a continuación.

sudo nano /opt/couchdb/etc/default.ini

Dentro de la sección ‘[chttpd]‘, cambia la‘bind_address‘ por defecto por tu dirección IP local. Esto te permitirá acceder desde tu ordenador local.

[chttpd]
bind_address = 192.168.5.50

Guarda y cierra el archivo cuando hayas terminado.

Después, ejecuta el siguiente comando systemctl para iniciar y habilitar el servicio couchdb.

sudo systemctl start couchdb
sudo systemctl enable couchdb

configurar couchdb

Por último, verifica el servicio couchdb utilizando el siguiente comando para asegurarte de que se está ejecutando.

sudo systemctl status couchdb

Si couchdb se está ejecutando, deberías obtener una salida como«activo (en ejecución)«.

verificar servidor couchdb

Configurar Firewalld

Ahora que CouchDB se está ejecutando, configurarás firewalld para abrir los puertos 5984/tcp y 4369/tcp y permitir el acceso a tu instalación de Apache CouchDB.

Ejecuta el siguiente comando para abrir los puertos 5984/tcp y 4369/tcp para Apache CouchDB.

sudo firewall-cmd --permanent --add-port={5984/tcp,4369/tcp}

Recarga firewalld para aplicar los cambios.

sudo firewall-cmd --reload

A continuación, comprueba la lista de puertos disponibles en firewalld utilizando el comando siguiente. Asegúrate de que los puertos 5984/tcp y 4369/tcp están disponibles.

sudo firewall-cmd --list-all

configurar firewalld

Por último, ejecuta el siguiente comando curl para comprobar Apache CouchDB.

curl http://192.168.5.50:5984/

También puedes instalar‘jq‘ mediante DNF y analizar la salida JSON para hacerla legible.

sudo dnf install -y

Analiza la salida JSON utilizando el comando como se indica a continuación:

curl http://192.168.5.50:5984/ | jq .

Si la instalación de CouchDB se ha realizado correctamente, deberías obtener lo siguiente.

comprobar couchdb

Acceso a la Administración Web de Apache CouchDB

Llegados a este punto, ya has configurado Apache CouchDB y firewalld, y estás listo para acceder a la instalación de CouchDB.

Para acceder a Apache CouchDB, visita la dirección IP de tu servidor seguida del puerto 5984 (es decir: http://192.168.5.50:5984/_utils#setup) utilizando tu navegador web favorito. Deberías obtener la página de inicio de sesión de Apache CouchDB.

Introduce tu usuario y contraseña de administrador, y haz clic en Iniciar sesión.

Inicio de sesión en CouchDB

Si tienes el nombre de usuario y la contraseña correctos, deberías obtener el panel de administración de Apache CouchDB.

panel de control de couchdb

Gestionar la Base de Datos en Apache CouchDB

Ahora que has iniciado sesión en el panel de administración de Apache CouchDB, el siguiente paso es aprender a crear una base de datos e insertar datos en CouchDB a través de la interfaz web y la API HTTP con Curl.

Gestión de operaciones básicas a través de la interfaz web

Antes de empezar, asegúrate de que has iniciado sesión en el panel de administración de Apache CouchDB.

En primer lugar, crearás una nueva base de datos a través de la interfaz web de Apache CouchDB:

Haz clic en el menú Bases de Datos y pulsa el botón Crear Base de Datos.

crear base de datos

Introduce el nombre de la nueva base de datos y haz clic en Crear.

nombre de la base de datos de entrada

Ahora que has creado una base de datos en Apache CouchDB, haz clic en el nombre de tu base de datos.

Para crear un nuevo documento, haz clic en el botón Crear Documento.

crear documento

Introduce tus datos JSON y haz clic en Crear Documento para confirmar.

{
    "item": "apple",
   "prices": {
       "Fresh Mart": 1.59,
       "Price Max": 5.99,
       "Apples Express": 0.79
   }
}

insertar datos

Una vez creado el documento, deberías obtener el resultado«Guardando documento«.

En los detalles de tu base de datos, haz clic en la pestaña Tabla, y deberías ver el documento JSON que has creado.

detalles del documento

Si necesitas modificar el documento, haz clic en el nombre del documento, edítalo y luego haz clic en Guardar cambios. También puedes eliminar documentos desde allí con el botón Eliminar del menú de la derecha.

editar eliminar documento

Operaciones básicas de base de datos con Curl

En la siguiente sección, aprenderás a crear una base de datos y a insertar datos en Apache CouchDB a través de la API HTTP utilizando Curl.

Primero, ejecuta el siguiente comando para autenticarte en Apache CouchDB y listar las bases de datos disponibles mediante curl. Asegúrate de cambiar el usuario admin y la contraseña con tus datos.

curl -X GET http://admin:[email protected]:5984/_all_dbs | jq .

Si tienes éxito, deberías ver los frutos de la base de datos que has creado a través de la interfaz web disponible.

Ahora, crea una nueva base de datos CouchDB utilizando la opción PUT en un curl como el siguiente.

curl -X PUT http://admin:[email protected]:5984/players | jq .

Una vez creada la base de datos, deberías obtener una salida como la siguiente:

crear base de datos

Una vez creada la base de datos, comprueba los detalles de los jugadores de la base de datos utilizando el comando siguiente.

curl -X GET http://admin:[email protected]:5984/players | jq .

Se mostrará la siguiente salida:

comprobar base de datos

A continuación, para crear un nuevo documento e insertar datos en CouchDB, utiliza el siguiente comando curl.

curl -X PUT http://admin:[email protected]:5984/players/documents \
-d '{"Name": "Nikola Jokic", "Team": "Denver Nuggets"}' | jq .

Si tiene éxito, deberías obtener la salida ‘»ok»: true.

insertar datos

Comprueba los detalles de tu documento utilizando el siguiente comando. Deberías ver que tu documento está disponible en Apache CouchDB.

curl -X GET http://admin:[email protected]:5984/players/documents

Deberías ver los datos que has añadido, como los siguientes.

recuperar datos

Conclusión

¡Enhorabuena! Has instalado correctamente Apache CouchDB en el servidor AlmaLinux 9. También has configurado un clúster single_node, has añadido un usuario y una contraseña de administrador, y también has configurado CouchDB para que se ejecute en la dirección IP interna.

Además, también has aprendido a crear una nueva base de datos y a insertar datos en CouchDB a través de la interfaz web y la API HTTP con Curl. Ahora, puedes añadir más nodos y configurar un clúster Apache CouchDB para maximizar su rendimiento.

También te podría gustar...