Nube y on-premises — el hosting compartido y el alcance de tu responsabilidad

Este artículo forma parte del curso Fundamentos de informática, que construye desde cero los conocimientos prácticos de informática que necesitas como mínimo para programar y hacer vibe coding.
La diferencia está en quién es dueño de los equipos del servidor y hasta qué capa los administras tú. Con diagramas comprobamos el alcance de la responsabilidad en las tres formas y dónde encajan AWS, Google Cloud y Azure.

Este artículo trata las tres formas de alojar una aplicación: on-premises, hosting compartido y nube.

La diferencia se resume en un solo punto: quién es dueño de los equipos del servidor y quién decide lo que hay dentro.

Al final trata también dónde encajan los principales proveedores de nube: AWS, Google Cloud y Azure.

Según dónde lo ejecutas se distinguen tres formas
On-premisesHosting compartidoNubeEquipos: tupropio edificioEquipos: edificiodel proveedorEquipos: edificiodel proveedorConfiguraciónque decides túConfiguracióndel proveedorConfiguraciónque eliges túTe encargas detodo tú mismoEmpezar rápidocon todo fijadoAlquilar solo loque necesitas
Cada fila es una forma. De izquierda a derecha: dónde están los equipos, quién decide lo que hay dentro y para qué uso sirve. Solo en la fila de arriba los equipos son tuyos.

On-premises es la única forma en la que los equipos son tuyos.

Las tres formas se diferencian en quién es dueño de los equipos del servidor y quién decide la configuración

Las tres se diferencian en dos puntos: dónde están los equipos del servidor y quién decide la configuración, es decir el OS (Operating System, el software básico que está entre los equipos y los programas y se encarga de los archivos, la red y la pantalla) y el entorno de ejecución.

El edificio del proveedor donde están los equipos es un centro de datos (data center, un edificio dedicado a alojar y operar muchos servidores),

y la partición que se hace dentro de una de esas máquinas para que funcione como un servidor independiente es un servidor virtual (virtual server; en las instrucciones también se escribe «instancia»).

Poder elegir tú la configuración es lo que separa el hosting compartido de la nube.

Lo que se te asigna dentro del centro de datos del proveedor
El centro de datos del proveedor
  • Un edificio dedicado, con electricidad, climatización y líneas de red
  • Dentro hay muchos servidores físicos iguales
Un servidor físico
Servidor virtual A (tu partición)
  • Eliges un OS, lo arrancas e instalas el entorno de ejecución
  • Colocas aquí app.js y tus datos
Servidor virtual B (la partición de otro usuario)
  • Funciona de forma independiente de A
  • No se ve desde A
Libre
  • Se usará en la próxima contratación
El marco exterior es el centro de datos, una máquina de dentro es un servidor físico y las particiones que hay dentro de ella son los servidores virtuales de cada usuario.

Solo puedes manejar tu propia partición: ni la partición vecina ni el servidor físico en sí se ven.

Con una sola contratación puedes arrancar todos los servidores que quieras y detenerlos cuando termines.

El precio también se fija según cuánto usaste y durante cuánto tiempo.

A esta forma, en la que cualquiera puede darse de alta, los libros de iniciación también la llaman nube pública (public cloud).

La diferencia está en de quién son los equipos y en quién decide lo de dentro

Las tres se diferencian solo en de quién son los equipos del servidor y quién decide lo que hay dentro.

En on-premises los equipos y lo de dentro son tuyos, en el hosting compartido dejas las dos cosas al proveedor y en la nube los equipos son del proveedor y la configuración la eliges tú.

El alcance de la responsabilidad — hasta qué capa administra el proveedor y dónde empieza lo tuyo

Al elegir, lo que miras es quién lo arregla cuando se rompe.

Un servidor está hecho de cinco capas: el edificio con la electricidad y las líneas de red, los equipos, el OS, el entorno de ejecución y la aplicación con sus datos.

El reparto de qué capa administra cada lado es el alcance de la responsabilidad (los proveedores de nube lo llaman modelo de responsabilidad compartida).

CapaOn-premisesHosting compartidoServidor virtual en la nube
Aplicación y datos
Entorno de ejecuciónProveedor
OSProveedor
Equipos del servidorProveedorProveedor
Edificio, electricidad y redProveedorProveedor

En on-premises las cinco capas las administras tú; en el hosting compartido solo la de arriba.

En un servidor virtual de la nube, el límite cae entre los equipos y el OS.

Pedir las piezas y cambiarlas cuando se rompen los equipos es trabajo tuyo solo en on-premises.

En el hosting compartido y en la nube los cambia el proveedor, y en la nube basta con volver a arrancar en otros equipos para que funcione.

Ahora bien, comprobar que la aplicación y los datos funcionan como antes te toca a ti en cualquiera de las formas.

Lo que instalas y administras dentro de un servidor virtual
Un servidor virtual en la nube
  • El proveedor administra el edificio y los equipos
  • El proveedor también cambia los equipos rotos
OS (lo eliges al arrancar)
  • Eliges entre los que hay preparados y lo arrancas
  • Las actualizaciones posteriores al arranque las haces tú
Entorno de ejecución y aplicación (los instalas y los colocas tú)
  • Instalas tú node o python
  • Colocas aquí app.js y tus datos
  • Recuperarlos si se pierden también te toca a ti
El marco exterior es el servidor que contrataste y, cuanto más hacia dentro, más te toca administrar a ti. El proveedor solo aporta hasta el marco exterior.

El proveedor aporta solo hasta los equipos: en cuanto eliges un OS y lo arrancas, lo demás te toca a ti.

El proveedor no arregla los fallos de tu aplicación ni recupera los datos perdidos.

Por debajo del límite, el proveedor; por encima, tú

Un servidor está hecho de cinco capas: el proveedor administra las de abajo y tú las de arriba.

En on-premises todo es tuyo, en el hosting compartido solo la capa de arriba y en un servidor virtual de la nube es tuyo todo lo que está por encima de los equipos, así que el proveedor solo arregla lo que está por debajo del límite.

En la nube eliges dónde va cada pieza de la aplicación

En la nube no hay solo servidores virtuales.

Si eliges un servicio administrado (managed service, un servicio en el que el proveedor se encarga de instalar, actualizar y atender las averías del OS y del entorno de ejecución, y tú solo lo configuras y lo usas), el límite se mueve hacia arriba.

Cada pieza va a un sitio distinto, así que el límite también cambia según la pieza.

Dónde va cada pieza cambia, y también cambia lo que haces tú
Archivos delfrontendBackendBase de datosAlmacenamientode archivosServidor virtualBase de datosadministradaColocar y ajustarla publicaciónElegir el OS einstalar entornoSolo diseño detablas y datos
A la izquierda están las piezas de my-app, en el centro dónde va cada una en la nube y a la derecha el trabajo que te queda. Cuanto más abajo, menos haces tú.

Con el almacenamiento de archivos y la base de datos administrada, administrar el OS y el entorno de ejecución pasa al lado del proveedor.

El trabajo que queda en tus manos al pasar a una base de datos administrada
Actualizar el OSActualizar entornoCambiar equipo rotoEl proveedorse encargaA ti te quedantablas y datos
Los tres de arriba confluyen en el centro y de ahí hacia abajo queda solo uno. Los tres que confluyen dejan de estar en tus manos.

Con una base de datos administrada, lo único que haces es diseñar las tablas y meter y sacar los datos.

Para el backend también hay un sitio donde el procesamiento se ejecuta solo cuando llega una solicitud.

Todo lo que está dentro del recuadro son equipos del proveedor y tú no tienes ningún equipo.

Aun así, el OS y el entorno de ejecución que hay dentro del servidor virtual los instalas y los actualizas tú.

Al elegir dónde va una pieza, el límite se mueve con ella

Cuanto más dejas al proveedor al elegir dónde va una pieza, menos trabajo te queda.

Con una base de datos administrada lo único que haces es diseñar las tablas y meter y sacar los datos, mientras que para el backend que está en un servidor virtual sigue siendo cosa tuya todo lo que está por encima del OS.

AWS, Google Cloud y Azure — las categorías que comparten y las áreas en las que destaca cada uno

AWS, Google Cloud y Microsoft Azure son los nombres de las nubes que operan Amazon, Google y Microsoft.

Cada uno es el nombre que una empresa da a su nube, y contiene muchos servicios distintos.

La unidad geográfica en la que se agrupan los centros de datos es una región (region).

Lo que hay dentro de un solo proveedor de nube
Un proveedor de nube (por ejemplo, AWS)
  • Coloca centros de datos por todo el mundo
  • Ofrece las mismas categorías de servicio en cualquier área
Región de Tokio
Servidor virtual
  • Eliges un OS, lo arrancas y lo usas
Base de datos administrada
  • Guarda tablas y datos
Almacenamiento de archivos
  • Colocas archivos para publicarlos o conservarlos
Una región de otra área
  • Tiene las mismas categorías de servicio
  • Puedes elegir un área cercana a quienes usan la aplicación
El marco exterior es un proveedor, los marcos de dentro son regiones y los marcos que hay dentro de esos son las categorías de servicio que se ofrecen en cada región.

Si eliges una región cercana a quienes usan la aplicación, el tiempo de ida y vuelta de la solicitud y la respuesta se acorta.

CategoríaAWSGoogle CloudMicrosoft Azure
Empresa que lo operaAmazonGoogleMicrosoft
Servidor virtualAmazon EC2Compute EngineVirtual Machines
Base de datos administradaAmazon RDSCloud SQLAzure SQL Database
Almacenamiento de archivosAmazon S3Cloud StorageBlob Storage

Con mirar la categoría de la columna izquierda entiendes qué papel cumple un nombre, aunque lo veas por primera vez.

Lo que las tres empresas tienen en común llega hasta estas categorías.

Aunque cubran las mismas categorías de servicio, cada proveedor ha desarrollado más unas áreas que otras.

No hace falta decidirse por una sola empresa.

Usar varios proveedores, cada uno para un uso distinto, es multicloud (multi-cloud, usar varios proveedores de nube según el uso) y puedes elegir para cada pieza el proveedor que destaca en esa área.

Ahora bien, como la pantalla de administración y los términos cambian de un proveedor a otro, hay más que aprender y más que administrar.

Mientras la aplicación sea pequeña, quédate con un solo proveedor y piensa en repartirla cuando surja la necesidad.

Categorías comunes, áreas fuertes distintas

AWS, Google Cloud y Azure son los nombres de las nubes de Amazon, Google y Microsoft, y las tres empresas tienen las mismas categorías de servicio: servidor virtual, base de datos administrada y almacenamiento de archivos.

Como las categorías son comunes, con entender una empresa puedes leer las demás traduciendo sus nombres a esas categorías, pero cada una destaca en áreas distintas y existe también la opción de usar varias según el uso, el multicloud.

QUIZ

Verificación de conocimientos

Responde cada pregunta una a una.

Pregunta 1Cuando usas hosting compartido, ¿qué capa administras tú?

Pregunta 2Cuando usas un servidor virtual en la nube, ¿quién hace las actualizaciones del OS?

Pregunta 3¿Cuál de estas afirmaciones sobre AWS, Google Cloud y Microsoft Azure es correcta?