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
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
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.
Además, cuando se te pregunte por la clave GPG de Apache CouchDB, introduce y para añadir la clave a tu sistema.
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
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)«.
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
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.
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.
Si tienes el nombre de usuario y la contraseña correctos, deberías obtener el panel de administración de Apache 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.
Introduce el nombre de la nueva base de datos y haz clic en Crear.
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.
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 } }
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.
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.
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:
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:
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‘.
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.
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.