051.3 Lección 1
Certificate: |
Open Source Essentials |
Version: |
1.0 |
Topic: |
051 Software Fundamentals |
Objective: |
051.3 Computación local y en la nube |
Lesson: |
1 of 1 |
Introducción
Hoy en día, todo el mundo habla de la nube. Las empresas están evaluando servicios con una variedad de proveedores, incluidas grandes empresas como Amazon y Microsoft, para ver que servicios ofrecen en la nube.
Pero la idea de la computación en la nube se remonta sólo a finales de la década del 2000. Y el término es vago, tan vago que muchas personas, incluida la Free Software Foundation, desaconsejan su uso. Sin embargo, la idea de la computación en la nube incorpora algunos conceptos útiles y es una tendencia crucial en la informática moderna. Esta lección analiza qué es la nube (en un nivel alto) y cómo funciona tanto técnica como financieramente. Además, analizaremos los beneficios y riesgos de la nube. Descubriremos, por qué este tema está relacionado con el código abierto.
Computación local y en la nube
Si trabaja o estudia en una organización que tiene más de un par de sistemas informáticos, es casi seguro que hay un centro de datos: una habitación separada para albergar los servidores de la organización, generalmente cerrada con llave y con aire acondicionado. Un centro de datos on-premises (o on-premise) es simplemente un recurso informático físico que las organizaciones tienen para su propio uso.
Existen varias alternativas a la ejecución de un centro de datos local. Durante décadas, antes de la tendencia que llamamos “computación en la nube”, las empresas establecían centros de datos que albergaban computadoras en nombre de los clientes. Por lo tanto, puede otorgarle licencias a cinco servidores de la empresa y darle varias especificaciones de CPU, memoria y almacenamiento, y luego cargar su software en los servidores. Este modelo de negocio es el alojamiento remoto. El alojamiento remoto ofrece muchas ventajas. La organización puede subcontratar eficazmente la experiencia administrativa de la compra y configuración de servidores al negocio de alojamiento remoto, lo que podría generar compras al por mayor. En otras palabras, evita la responsabilidad de tener una infraestructura de TI local. El negocio de hosting remoto garantiza la seguridad física, liberando además al cliente de esa preocupación. Finalmente, configurar un nuevo servidor en una empresa de alojamiento remoto es mucho más rápido que comprar, enviar y configurar el servidor local. Una organización también puede mantener un centro de datos local y al mismo tiempo otorgar licencias para más servidores en el entorno remoto para recuperarse de desastres o proporcionar potencia informática adicional durante períodos de uso intensivo.
Tenga en cuenta que la informática remota supone la presencia de una red rápida y confiable. Exploraremos este problema junto con otros beneficios y debilidades en otra sección.
Todas las ventajas del alojamiento remoto se aplican también a la computación en la nube. La computación en la nube es técnicamente diferente porque no hay ninguna computadora física en particular dedicada a su organización. En cambio, el proveedor de la nube ejecuta múltiples sistemas para múltiples clientes en cada sistema físico, utilizando una capa adicional de software conocida como máquinas virtuales.
Por lo tanto, un servicio en la nube ejecuta un centro de datos como cualquier otra organización, pero sirve a otras organizaciones en lugar de (o además de) a sí mismo. El centro de datos almacena miles de computadoras físicas. En cada computadora física ejecuta un sistema operativo (generalmente llamado hipervisor) que admite múltiples máquinas virtuales. Cada máquina virtual se puede generar y eliminar rápidamente. Cada máquina virtual admite un sistema operativo ejecutado por un cliente ([Computación en la nube]).
¿Dónde entra el software libre y el código abierto? Cuando una empresa utiliza una gran cantidad de computadoras e implementa sistemas operativos, es importante no atascarse con las licencias. Aunque existen modelos de licencia para sistemas operativos propietarios en la nube, es más complicado que simplemente ejecutar una máquina virtual y un sistema operativo de código abierto. El código abierto también suele ser gratuito.
El comienzo de la computación en la nube generalmente se remonta al lanzamiento de Amazon Web Services (AWS) por parte de Amazon.com en 2006. En la actualidad existen docenas de empresas de nube, incluidas ofertas de proveedores tan grandes como Microsoft, Google, Alibaba e IBM. AWS sigue siendo la oferta más grande. Los proveedores compiten ferozmente en el desarrollo de nuevas funciones y servicios, porque todos son fuertes en costo y confiabilidad.
Las ventajas de la computación en la nube se suman a las de la computación remota. Los costos son menores porque un sistema físico puede ejecutar muchos servidores para muchos clientes y puede mantenerse ocupado constantemente. Un cliente que necesita más potencia informática rápidamente para un aumento en el uso puede generar nuevos sistemas en segundos. Los sistemas se pueden gestionar automáticamente a través de una interfaz de programación de aplicaciones (API). Nuevamente, analizaremos más de cerca los beneficios y riesgos más adelante.
Modelos comunes de operación en la nube
Antes de detallar modelos de operación, cabe señalar que muchas empresas han adoptado modelos de nube que cambian totalmente su forma de programar y ofrecer servicios. En lugar de actualizar cada aplicación una o dos veces al año, las empresas permiten actualizaciones rápidas. Pueden hacer esto porque la nube les permite apagar máquinas virtuales e iniciar otras nuevas casi instantáneamente con la nueva versión de la aplicación. La organización también puede ampliarse y reducirse rápidamente, por lo que les gusta dividir las aplicaciones en muchas partes modulares, a veces denominadas microservicios.
Pero en esta sección nos centraremos en las operaciones regulares en los modelos de nube. El modelo de costos de la nube es muy diferente de los costos locales. Los centros de datos locales requieren la compra única de un servidor, junto con costos rutinarios de energía, aire acondicionado y administración. Estos desaparecen cuando obtienes licencias de sistemas de un proveedor de nube, pero se cobra por lo que usa. Los proveedores de la nube dividen el uso de su servidores en períodos de tiempo y cobran por cada período. También cobran por la cantidad de datos que almacena en sus sistemas.
Hasta ahora, hemos estado hablando de proveedores que ofrecen potencia informática a los clientes; esto se llama nube pública, pero también puede haber una nube privada. Algunas organizaciones grandes administran sus propios centros de datos locales como una nube. Proporcionan servicios sólo a sus propios departamentos o subdivisiones, pero tratan a cada uno de sus departamentos como un cliente de un proveedor de nube. El centro de datos realiza un seguimiento de cuánto tiempo de cómputo, datos, etc. Utiliza cada departamento y lo cobra por ese uso.
Muchas organizaciones utilizan múltiples servicios en la nube por diversos motivos, como protegerse contra fallas de los proveedores, mantener los datos en una determinada región geográfica o aprovechar las funciones especiales que ofrece un proveedor en particular. Además, es común mantener tanto un centro de datos local como servidores en la nube, una práctica llamada computación híbrida.
Un cliente que se registra en un servicio en la nube puede elegir en qué regiones geográficas ejecutar. Por ejemplo, Amazon actualmente ofrece regiones en el oeste y el este de EE. UU., varias regiones de Europa y más regiones en todas partes del mundo. Normalmente, elegirías la región más cercana a ti. Pero muchas organizaciones quieren operar en múltiples regiones porque tienen un alcance internacional. A veces, las organizaciones necesitan guardar datos en un lugar particular para cumplir con el Reglamento General de Protección de Datos de Europa (GDPR) o la Ley de Protección de Información Personal de China (PIPL).
Cada región normalmente se subdivide en zonas o zonas de disponibilidad. Se recomienda ejecutar en varias zonas en caso de que un desastre provoque la caída de una zona. Aunque la nube se caracteriza por compartir servidores físicos entre múltiples clientes, algunos proveedores pueden dedicar un solo servidor a un cliente en particular preocupado por la seguridad. Como ninguna otra organización utiliza la computadora, el cliente se siente un poco más seguro al ejecutar sus servicios confidenciales y cargar sus datos en la nube. Esta opción acerca la computación en la nube al antiguo alojamiento remoto.
Tipos comunes de servicios en la nube
En diferentes niveles, la computación en la nube tiene un aspecto muy diferente y está dirigida a diferentes tipos de usuarios. Infraestructura como servicio (IaaS) es la categoría con la que suelen tratar los administradores de sistemas. IaaS proporciona solo hardware y software que admiten máquinas virtuales. Depende de los administradores del sistema del cliente, cargar un sistema operativo y las aplicaciones deseadas en la máquina virtual. El administrador del sistema maneja casi todo de la misma manera que en un centro de datos local. La plataforma como servicio (PaaS) es una invención más reciente, utilizada principalmente por programadores. Aquí, el programador no se preocupa por el sistema operativo y no tiene que cargar las bibliotecas que utiliza el programa. Todo eso lo proporciona el proveedor de la nube. El programador simplemente carga funciones que se ejecutan en la plataforma. Un concepto relacionado es el de la informática serverless.
Software como servicio (SaaS) es una aplicación que se ejecuta en un sistema en la nube. Cada vez que inicia sesión en un sitio de redes sociales, solicita un artículo en una tienda en línea, visita una página web para ingresar sus horas en un sistema de seguimiento de empleo o ingresa un formulario en un sitio gubernamental, está utilizando SaaS. La mayor parte de la aplicación se ejecuta en el sistema remoto y la única parte de la aplicación que se ejecuta en su computadora es la página web que muestra su navegador.
Base de datos como servicio (DaaS) a menudo se agrega a las categorías anteriores. Un servicio de base de datos, como el S3 de Amazon, fue en realidad la primera oferta en la nube. Una oferta DaaS puede ser simplemente una instancia de un servidor de base de datos popular como MySQL, Oracle o MongoDB que se ejecuta en la nube. Los grandes proveedores de nube también ofrecen bases de datos patentadas que se ejecutan únicamente en sus ofertas de nube. En cualquier caso, lees y escribes la base de datos como si la tuvieras en tus sistemas.
Algunas empresas ofrecen otras variaciones de esas categorías básicas, como Security as a Service.
Principales beneficios y riesgos de la computación en la nube y la infraestructura de TI local
Antes de examinar la computación en la nube en detalle, intentemos una analogía. Administrar un centro de datos local es como comprar una casa. Si el sótano se inunda o la caldera deja de funcionar, es necesario buscar a alguien que lo arregle. Por el contrario, el alojamiento remoto y la computación en la nube son como alquilar un apartamento: el propietario es responsable de arreglar la caldera. Además, en la nube puedes agregar y eliminar rápidamente cargas de datos, del mismo modo que puedes cambiar de apartamento más rápidamente de lo que puedes cambiar de casa de tu propiedad. En un apartamento, el propietario podría incluso proporcionar electrodomésticos y muebles. En nuestra analogía, esto es similar a los numerosos servicios que ofrecen los proveedores de la nube, como bases de datos y análisis.
Ahora podemos analizar los beneficios y riesgos de utilizar la nube, en lugar de su propio centro de datos.
La flexibilidad es probablemente la razón más convincente para migrar a la nube. Si es un minorista que necesita ejecutar más servidores cerca de Navidad, o un contador que realiza los cálculos de impuestos que realiza la mayor parte de su negocio en la temporada de impuestos, preferirá la nube para activar nuevas máquinas virtuales en cualquier momento y luego eliminarlos Los costos pueden ser menores en la nube por varias razones. Está compartiendo un servidor físico con muchas otras aplicaciones, por lo que las computadoras se utilizan de manera más eficiente. Como los proveedores de nube son grandes, pueden lograr economías de escala en compras, administración, refrigeración y otros requisitos de infraestructura. Finalmente, los clientes quedan liberados de muchas tareas administrativas, aunque la administración del sistema no va a desaparecer en absoluto. Los clientes aún necesitan administradores de sistemas para crear y cargar su software (conocido como instancias en la nube), para autorizar a los usuarios y otras tareas relacionadas con las operaciones comerciales. Los administradores del sistema deben aprender la API del proveedor y las reglas para usar el servicio, un costo de capacitación que debe tener en cuenta en sus planes.
Por otro lado, hay que tener cuidado con el uso que se hace de la nube. Puede ser difícil realizar un seguimiento de la cantidad de potencia de la computadora que estás usando cuando puedes hacer funcionar los servidores rápidamente, especialmente si automatizas tu escalado. Es posible que al final del período te encuentres con una factura desagradablemente elevada.
¿Es la nube más eficiente en cuanto a emisiones de carbono que hacer funcionar nuestras propias computadoras? Las investigaciones encuentran que los proveedores de nube pueden ejecutar sus sistemas de manera mucho más eficiente que usted o yo. Pero tenemos que comunicarnos con esos sistemas a través de una red, lo que requiere mucha electricidad para alimentar todos los equipos de red. Lamentablemente, la nube aumenta nuestra huella de carbono.
La disponibilidad del servicio a veces es mejor con la nube. Ciertamente, si depende de su propio centro de datos local, es vulnerable a todo tipo de problemas, desde desastres naturales hasta saboteadores internos maliciosos. Pero los centros de datos en la nube también colapsan. Por lo tanto, debes aprovechar las diferentes zonas de disponibilidad y distribuir tu riesgo. Existen herramientas que le permiten cambiar sus servicios de una zona fallida a una que funciona.
Si utiliza los servicios ofrecidos por el proveedor, como una base de datos en la nube, es vulnerable a errores en ese servicio. Por supuesto, también puedes sufrir errores en el software que tienes en tu sistema.
Un riesgo mayor al utilizar los servicios de los proveedores es el bloqueo. Por lo general, puede encontrar una herramienta de conversión automatizada para sacar sus datos del sistema del proveedor a uno nuevo, pero es posible que la herramienta no haga un trabajo completo.
La seguridad puede ser mejor en la nube porque el personal del proveedor probablemente sea más experto que el personal de seguridad. Por otro lado, los proveedores de nube son grandes y bien conocidos, y constituyen objetivos obvios para los ataques. Además, agregar una pieza adicional de software (el hipervisor que controla las máquinas virtuales) introduce un nuevo peligro potencial. Los investigadores han encontrado vulnerabilidades en los hipervisores.
Aunque el cliente sigue siendo el propietario legal de sus datos, almacenarlos en la nube, en teoría, los deja más vulnerables. Por lo general, el cliente cifra los datos para protegerlos en caso de un robo. Las normas de privacidad, como el GDPR mencionado anteriormente, exigen que la información se almacenen en un centro de datos en una región considerada segura.
En última instancia, la mayoría de los ataques a la seguridad comienzan en un nivel alto, como enviar un correo electrónico con malware a un empleado desprevenido. No importa si lo ejecuta de forma local o en la nube. Pero un intruso malicioso que se apodere de la cuenta de un empleado no llegará mucho más lejos a menos que pueda aprovechar las vulnerabilidades de sus servidores; Ahora bien, debe quedar claro que al ejecutar en la nube hace mucha diferencia porque la mayoría de las vulnerabilidades se encuentran en el software y no en el servicio de la nube.
Finalmente, considere sus costos de ancho de banda y redes. Sus clientes, y probablemente su personal, se comunican con servidores que pueden estar a cientos de kilómetros de distancia. Si la conexión de red no es confiable o es lenta, el rendimiento de los servidores en la nube será peor que el de su centro de datos local. Pero hoy en día, todo el mundo se conecta con trabajadores remotos, servicios SaaS y otros sistemas que están geográficamente alejados. El rendimiento de su red afectará casi todo lo que haga, ya sea que esté o no en la nube.
Ejercicios guiados
-
¿Por qué una computadora física en un centro de nube se usa de manera más eficiente que una computadora en un centro de datos local tradicional?
-
¿Qué es una nube híbrida?
-
¿Qué tipo de computación en la nube requiere con mayor frecuencia el trabajo de un administrador del sistema en el lado del cliente?
-
¿Cómo debería proteger su servicio para que no falle si utiliza un proveedor de nube?
Ejercicios de exploración
-
Compare los diferentes tipos de costos que experimenta al ejecutar sus servidores en la nube con los costos de ejecutarlos localmente.
-
Opera desde Oriente Medio, pero tiene muchos clientes en Europa y el Lejano Oriente. Describa dónde colocaría sus servicios en una oferta en la nube.
Resumen
Esta lección describió cómo funciona la computación en la nube y las ventajas y desventajas de usar la nube versus ejecutar sistemas en su propio centro de datos local. Aprendió diferentes modelos de negocios y costos, incluidas las diferencias entre nubes públicas, privadas e híbridas. Y también aprendió los diferentes tipos principales de ofertas de nube y para qué se utiliza cada una.
Respuestas a ejercicios guiados
-
¿Por qué una computadora física en un centro de nube se usa de manera más eficiente que una computadora en un centro de datos local tradicional?
En la nube, cada computadora puede ejecutar múltiples instancias de sistemas operativos e incluso ejecutar instancias cargadas por diferentes clientes. Por lo tanto, la computadora se utiliza con más frecuencia.
-
¿Qué es una nube híbrida?
Una nube híbrida utiliza tanto centros de datos de un proveedor de nube como uno o más centros de datos locales.
-
¿Qué tipo de computación en la nube requiere con mayor frecuencia el trabajo de un administrador del sistema en el lado del cliente?
La infraestructura como servicio (IaaS) requiere que el cliente realice la administración del sistema para tareas como la creación y carga de instancias del sistema operativo y las aplicaciones.
-
¿Cómo debería proteger su servicio para que no caiga si utiliza un proveedor de nube?
Elija varias zonas en cada región donde ejecute su servicio, porque es muy poco probable que muchas zonas fallen simultáneamente.
Respuestas a los ejercicios de exploración
-
Compare los diferentes tipos de costos que experimenta al ejecutar sus servidores en la nube con los costos de ejecutarlos localmente.
En una nube, usted paga por el uso de su CPU y el almacenamiento de datos por cada período medido por el proveedor. Pero no paga ningún costo de hardware. En las instalaciones, usted tiene el costo fijo del hardware, junto con otros equipos como el aire acondicionado, más costos recurrentes como la energía y el mantenimiento físico.
-
Opera desde Oriente Medio, pero tiene muchos clientes en Europa y el Lejano Oriente. Describa dónde colocaría sus servicios en una oferta en la nube.
Utilice una región de Medio Oriente para sus propias oficinas y clientes de Medio Oriente. Una región de Europa es importante para cumplir con el Reglamento General de Protección de Datos (GDPR). Es posible que necesite una región en China para cumplir con la Ley de Protección de Información Personal (PIPL) de China. En cualquier caso, tener regiones del Lejano Oriente y Europa es valioso para un mejor desempeño al interactuar con los clientes en esos lugares.
Dentro de cada región, elija varias zonas para protegerse contra el fallo de una sola zona.