LINUX

Cómo instalar CouchDB y Futon en Ubuntu 16.04

Apache CouchDB es un sistema de administración de bases de datos de código abierto que usa JSON para documentos, JavaScript para índices de MapReduce y HTTP regular para su API. A menudo se lo conoce como un sistema de base de datos NoSQL. Tiene una arquitectura de base de datos NoSQL orientada a documentos y está implementada en el lenguaje Erlang orientado a la concurrencia. CouchDB no almacena datos y relaciones en tablas, mientras que almacena todos los datos de forma independiente en los documentos. En Apache CouchDB, los documentos mantienen sus propios datos y un esquema autónomo. Mientras que Futon es la interfaz nativa basada en web integrada en CouchDB que proporciona una buena interfaz que nos ayuda a crear o eliminar bases de datos y administrar documentos individuales de couchdb. En este artículo, instalaremos CouchDB y Futon en nuestra máquina con Ubuntu 16.04 LTS Xenial.

Prerrequisitos

Antes de comenzar, debemos asegurarnos de tener Ubuntu 16.04 LTS Xenial en nuestra máquina o servidor, ya que estamos presentando CouchDB instalación en Ubuntu 16.04 LTS Xenial. Si no tenemos uno y planeamos instalar Ubuntu 16.04, puede descargarlo desde el Página oficial de descarga de Ubuntu. Una vez que tengamos nuestro Ubuntu 16.04 listo para funcionar, primero necesitaremos actualizar el índice del repositorio local del administrador de paquetes apt. Si estamos accediendo usando un usuario root, no necesitamos ingresar sudo cada vez que ejecutamos los comandos, pero como estamos ejecutando un usuario no root, necesitaremos ingresar sudo en cada comando para acceder a los privilegios de root.

$ sudo apt-get update

Una vez que se haya actualizado el repositorio local del administrador de paquetes apt, actualizaremos los paquetes de nuestro sistema Ubuntu usando el siguiente comando.

$ sudo apt-get upgrade

Actualización de Ubuntu Xenial

Agregar repositorio de PPA

Una vez que cumplamos con nuestros requisitos previos, avanzaremos hacia la instalación de CouchDB y Futon. Como tenemos el repositorio Ubuntu PPA de Apache CouchDB mantenido y actualizado por el proyecto CouchDB y las comunidades, lo haremos. La instalación de CouchDB mediante el repositorio de PPA es el método más sencillo y sencillo para instalar la versión oficial de CouchDB. En primer lugar, debemos asegurarnos de haber instalado el paquete llamado software-properties-common para que podamos agregar fácilmente el repositorio PPA en nuestra máquina Ubuntu. Para instalarlo, necesitaremos ejecutar el siguiente comando.

$ sudo apt-get install software-properties-common

A continuación, agregaremos el repositorio oficial de CouchDB PPA usando el comando add-apt-repository en la terminal.

$ sudo add-apt-repository ppa:couchdb/stable

Luego, necesitaremos actualizar el índice del repositorio local del administrador de paquetes apt ya que hemos agregado un nuevo repositorio PPA arriba.

$ sudo apt-get update

Instalación de CouchDB

Ahora, iremos a instalar CouchDB en nuestra máquina ya que se han completado todos los pasos anteriores. Para instalar CouchDB desde el repositorio oficial de PPA, ahora podemos simplemente ejecutar el siguiente comando apt-get en nuestra terminal. Esto instalará couchdb con sus dependencias requeridas de sus respectivos repositorios.

$ sudo apt-get install couchdb

Instalar CouchDB Xenial

Arreglar la propiedad y el permiso

Como algunos archivos y directorios están configurados en el usuario y grupo raíz de forma predeterminada, puede ser riesgoso según la seguridad en la producción, por lo que se recomienda encarecidamente corregir el permiso. Para solucionar el problema, necesitaremos cambiar la propiedad de los archivos que pertenecen al usuario y grupo de couchdb. Como el nuevo usuario y grupo para couchdb ya se crea de forma predeterminada durante el proceso de instalación anterior, no necesitaremos crear otro. Para cambiar la propiedad, simplemente necesitaremos ejecutar el siguiente comando.

$ sudo chown -R couchdb:couchdb /usr/bin/couchdb /etc/couchdb /usr/share/couchdb

Una vez hecho esto, ahora necesitaremos arreglar el permiso de esos archivos y directorios ejecutando lo siguiente.

$ sudo chmod -R 0770 /usr/bin/couchdb /etc/couchdb /usr/share/couchdb

Reinicio de CouchDB

Una vez que todos los pasos anteriores se hayan realizado correctamente, ahora reiniciaremos nuestra instancia de CouchDB. Para hacerlo, ya que estamos ejecutando Ubuntu 16.04 LTS Xenial y se envía con systemd como el sistema de inicio predeterminado, necesitaremos ejecutar el siguiente comando.

$ sudo systemctl restart couchdb

Para probar si CouchDB está funcionando bien o no, simplemente podemos ejecutar el siguiente comando que recuperará la información a través de curl.

$ curl localhost:5984

Sofá CurlDB

Accediendo a Futon

Como CouchDB incluye de forma nativa Futon, la interfaz web de CouchDB, simplemente podemos acceder a ella a través de nuestro navegador web. Para hacerlo, primero necesitaremos realizar un túnel SSH, ya que permitir que Futon atraviese el firewall actualmente puede ser peligroso ya que no hemos establecido las credenciales de administrador adecuadas. Para configurar el túnel SSH, necesitaremos ejecutar el siguiente comando.

$ ssh -L 5984:127.0.0.1:5984 arun@ip-address

Túneles SSH

Nota: Aquí necesitaremos reemplazar arun y dirección IP con nombre de usuario y dirección IP del servidor respectivamente.

Ahora, como hemos configurado con éxito el túnel SSH, ahora accederemos a la interfaz web de CouchDB. Para hacerlo, necesitaremos abrir un navegador web y apuntarlo a http: // localhost: 5984.

Salida Web CouchDB

Luego, para acceder a la aplicación web de Futon, necesitaremos apuntar a http: // localhost: 5984 / _utils / index.html. Una vez hecho esto, tendremos acceso al Panel de administración de la base de datos de Futon en el que podemos realizar diferentes actividades de administración de la base de datos de CouchDB.

Interfaz web Fucton

Asegurar el futón

Como no necesitamos ninguna credencial de inicio de sesión para iniciar sesión en el panel de Futon y como cada cuenta es una cuenta de administrador, cualquiera que acceda a Futon tiene la capacidad de realizar cambios en la base de datos. Entonces, en primer lugar, necesitaremos protegerlo creando una nueva cuenta de administrador. Para hacerlo, simplemente podemos hacer clic en Arreglalo enlace que se muestra en la parte inferior de la barra lateral derecha.

Arreglar el acceso de administrador

Al hacerlo, se abrirá un cuadro de diálogo que nos permitirá crear una nueva cuenta de administrador. Aquí, necesitaremos ingresar el nombre de usuario y la contraseña requeridos que usaremos más adelante para iniciar sesión en Futon.

Creación de una cuenta de administrador CouchDB

Creando bases de datos

Ahora, para crear una base de datos, necesitaremos iniciar sesión en el Panel de control de Futon usando el nombre de usuario y la contraseña creados anteriormente. Luego, haremos clic en el botón Crear base de datos disponible en la parte superior izquierda de la pantalla. Luego, se nos pedirá que ingresemos un nombre para que se cree nuestra nueva base de datos. A continuación, podemos agregar nuevos documentos, editar, eliminar, actualizar y guardar los documentos a través de Futon fácilmente.

Creando una nueva base de datos

Permitir el acceso externo

Si necesita hacer que CouchDB sea accesible y esté disponible fuera de nuestra red local o nuestra máquina local, entonces tendremos que asegurarnos de que se completen los pasos anteriores para asegurar Futon. Luego, necesitaremos agregar 0.0.0.0 a la variable de dirección de enlace en el archivo /etc/couchdb/local.ini en [httpd] cuadra. Para hacerlo, necesitaremos iniciar sesión como usuario root y abrir el archivo usando un editor de texto.

$ su root

# nano /etc/couchdb/local.ini

[httpd]
bind_address = 0.0.0.0

Permitir el acceso externo

Aquí, podemos personalizar nuestras configuraciones de acuerdo con nuestras necesidades y requisitos. Una vez hecho esto, guardaremos el archivo y saldremos del editor de texto. Una vez hecho esto, podemos simplemente cerrar la sesión del usuario root ejecutando el comando exit en la terminal.

Ahora, para aplicar los cambios, necesitaremos reiniciar nuestros servicios CouchDB usando el comando systemctl.

$ sudo systemctl restart couchdb

Permitir firewall

Mientras hacemos que CouchDB esté disponible fuera de nuestra red local, también necesitaremos asegurarnos de que el programa de firewall abra el puerto 5984. Como Ubuntu 16.04 LTS Xenial se ejecuta con systemd como sistema de inicio predeterminado, lo más probable es que firewalld se use como programa de firewall.

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

Una vez que se agrega el puerto para el acceso público, necesitaremos asegurarnos de volver a cargar el programa firewalld.

$ sudo firewall-cmd --reload

Nota: Permitir que CouchDB sea accesible a través de Internet hace que cualquiera pueda agregar y acceder a los documentos y bases de datos, mientras que no pueden editar y eliminar los documentos, ya que ya hemos creado un usuario administrador anteriormente. Por lo tanto, no se recomienda permitir que CouchDB sea accesible externamente, si necesitamos acceder a él de forma remota, podemos hacer uso de un túnel SSH o permitir que una dirección IP específica se conecte a través de iptables o un programa de firewall.

Conclusión

Finalmente, hemos instalado CouchDB fácil y exitosamente con su interfaz basada en web Futon en nuestra máquina con Ubuntu 16.04 LTS Xenial. Todos pueden acceder fácilmente a los documentos y las bases de datos de CouchDB, por lo que debemos asegurarnos de que el público o las personas que no sean de confianza no puedan acceder a nuestra base de datos. Incluso podemos instalarlo manualmente usando los archivos tar disponibles en la página de descarga oficial, pero como estamos ejecutando Ubuntu 16.04 LTS Xenial, es bastante fácil de instalar usando el repositorio PPA. Por lo tanto, si tiene alguna pregunta, sugerencia o comentario, escríbalos en el cuadro de comentarios a continuación. Gracias ! Disfrutar 🙂

Publicaciones relacionadas

Deja una respuesta

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

Botón volver arriba
Cerrar