Cualquiera debería tener un servidor

17 de mayo de 2024 por
Héctor Romero López
| Sin comentarios aún

Llevo pensando alrededor de 4 semanas como puede ser este post. ¿Por qué? Porque existen miles de motivos por los que cualquiera debe de tener un servidor y podemos enfocarlo desde cientos de puntos de vista (los cuales iremos explorando en este y sucesivos post). Sin embargo, como buen punto de partida sería hablar sobre las ventajas que tiene para cualquier desarrollador tener un servidor propio.

Últimamente estamos acostumbrados a utilizar servicios administrados para todo, tendemos a utilizar servicios modo Saas (Software as a Service) para nuestras bases de datos (como puede ser Amazon RDS), para desplegar las aplicaciones (como puede ser Heroku) o directamente dejamos que un tercero gestione toda la infraestructura de forma automática y directamente actualizamos el código (como sucede en el modelo Odoo SH).

La ventaja que tienen estos servicios esta muy clara: Nos facilitan la vida. El (los) problema(s) que tenemos son múltiples:

  1. El coste de estos servicios suele ser mayor. Ya que nos ofrecen comodidad, tendremos que recompensarlos de alguna forma.
  2. La personalización es menor, puesto que para que los proveedores garanticen el correcto funcionamiento, impide que el usuario pueda modificar a placer cualquier configuración del servicio. Finalmente nos lleva a no poder tener el máximo control sobre los servicios. 

Teniendo presente las ventajas/desventajas de los servicios administrados, uno de los otros puntos que considero más importante sobre el resto es que cualquier persona dentro de IT tiene que aprender ha desplegar aplicaciones en un servidor, ya sea un servidor físico o un VPS. 

¿Por qué es importante aprender despliegues?

En algún momento de la carrera dentro del mundo tech, tendrás que enfrentarte al escenario donde tienes que compartir tu aplicación. Puede ser cualquier tipo de aplicación, bien desarrollada por ti mismo o bien un servicio existente (como puede ser Wordpress ). En este momento será necesario que te enfrentes a una terminal dentro de un sistema Linux (o Windows si quieres ir por el camino complicado).

Este escenario, siempre nos resulta lejano porque pensamos que nunca tenemos que mostrar el trabajo hasta que ha sido terminado. Finalmente postergamos enfrentarnos al despliegue de los proyectos.

¿La ventaja de hacerlo dentro de nuestro servidor? Podemos configurarlo como queramos y mejor nos convenga y podemos tener en un mismo servidor múltiples servicios corriendo e incluso mezclar diferentes versiones del mismo proyecto, tendremos libertad para ello y no tendremos restricciones (excepto la capacidad del mismo servidor).

¿Es muy complicado configurar un servidor propio?

La respuesta es NO. Siempre depende del tipo de aplicación que quieras desplegar y cuan compleja quieres que se vuelva la tarea.

Si hablamos de aplicaciones donde tenemos una estructura monolítica (Front + Back y BD) sería cuestión de 5 minutos. Si hablamos de aplicaciones con Front y Back separados puede llevar más tiempo. Si hablamos de microservicios, lo dejamos para otro dia...

Al final, la configuración se basa en aprender determinados conceptos básicos que todos tendríamos que conocer para poder movernos dentro del mundo tech. Por ejemplo:

  1. Configurar registros DNS
  2. Configurar un proxy inverso (Nginx, Apache o similares)
  3. Configurar reglas de seguridad (Firewall)

Adicionalmente, recomiendo encarecidamente a prender Docker para que tu vida sea más sencilla. Pero no es obligatorio.

​¿Cuáles serían los primeros pasos?

Personalmente, pienso que para dar los primeros pasos, se optaría por obtener un servidor en AWS o DigitalOcean (que permiten el pago por hora) aprovechando la capa gratuita e intentar desplegar un servicio como Owncloud. 

Mi segunda recomendación sería obtener un dominio (los cuales son baratos) dentro de plataformas como NameCheap o Goddady.

Y a partir de este punto comenzar a utilizarlo. Si ganas la lucha porque funcione el servicio de Owncloud podrás observar que tendrás una nube privada a un precio inferior que otros servicios y con mejores prestaciones. Ya todo depende del uso que quieras darle.


Si estás interesado en como ejecutar el proceso y en conocer el background de todas estas cosas que hemos comentado, ¡no te pierdas el resto del contenido!

Héctor Romero López 17 de mayo de 2024
Compartir
Categorías
Nuestros blogs
Archivar
Identificarse dejar un comentario