Saltar al contenido principal

Centro de recursos introductorios

GUÍA DE INTRODUCCIÓN

Conceptos básicos de la nube de AWS

Introducción

Dar los primeros pasos al empezar a crear en la nube puede parecer abrumador. Adaptarse a un enfoque nativo de la nube puede llevar tiempo, especialmente si está acostumbrado a la forma tradicional local de aprovisionar hardware y crear aplicaciones. Familiarizarse con los conceptos básicos de la computación en la nube y la nube de AWS le ayudará a tener confianza al iniciar su traspaso a la nube. En las siguientes secciones, respondemos a preguntas habituales sobre la computación en la nube y analizamos las prácticas recomendadas para desarrollar en AWS.  

¿Qué es la computación en la nube?

Computación local y en la nube

La computación en la nube es la entrega bajo demanda de capacidad informática, almacenamiento de bases de datos, aplicaciones y otros recursos de TI a través de una plataforma de servicios en la nube mediante Internet con un sistema de precios de pago por uso. Tradicionalmente, un desarrollador que buscaba crear una aplicación tenía que adquirir, configurar y mantener la infraestructura física y la aplicación. Aquí es donde entra en juego la computación en la nube.

Una plataforma de servicios en la nube proporciona un acceso rápido a recursos de TI flexibles y de bajo costo que puede usar para crear y mantener software y bases de datos, y crear aplicaciones para satisfacer a los clientes. No es necesario hacer grandes inversiones iniciales en hardware ni dedicar mucho tiempo a la pesada tarea de gestionar ese hardware. Puede acceder a todos los recursos que necesite casi de manera instantánea, y solo pagar por los que utilice. El acceso a los servicios bajo demanda y de pago por uso es fundamental para el modelo de computación en la nube.

Ventajas de la computación en la nube

La nube proporciona a los desarrolladores una mayor flexibilidad, escalabilidad y un tiempo de innovación más rápido. Con la computación en la nube, puede

  • Pague por uso: pague solo cuando utilice los recursos informáticos y solo por la cantidad que utilice.

  • Benefíciese de enormes economías de escala: AWS agrega el uso de cientos de miles de clientes en la nube, lo que genera mayores economías de escala. Esto se traduce en precios de pago por uso más bajos.

  • Deje de adivinar la capacidad: cuando toma una decisión sobre la capacidad antes de implementar una aplicación, a menudo termina quedándose con costosos recursos inactivos o con una capacidad limitada. Con la computación en la nube, puede acceder a tanta o tan poca capacidad como necesite, y escalar o desescalar verticalmente según sus necesidades con solo avisar con unos minutos de antelación.

  • Aumente la velocidad y la agilidad: los recursos de TI están a solo un clic de distancia, lo que significa que reduce el tiempo necesario para poner los recursos a disposición de sus desarrolladores de semanas a minutos. Esto aumenta drásticamente la agilidad de la organización, ya que el costo y el tiempo que se tarda en experimentar y desarrollar son significativamente menores.

  • Obtenga ahorros de costos: las empresas pueden centrarse en proyectos que diferencien sus negocios en lugar de mantener los centros de datos. Con la computación en la nube, puede centrarse en sus clientes, en lugar de en la pesada tarea de almacenar, apilar y alimentar la infraestructura física.

  • Globalízate en minutos: las aplicaciones se pueden implementar en varias regiones del mundo con unos pocos clics. De esta forma, puede ofrecer a sus clientes una menor latencia y una mejor experiencia con un costo mínimo.

¿Qué es la nube de AWS?

AWS ofrece servicios tecnológicos bajo demanda a través de Internet con precios de pago por uso. Esto se conoce como computación en la nube.

La nube de AWS abarca un amplio conjunto de productos globales basados en la nube que incluyen computación, almacenamiento, bases de datos, análisis, redes, dispositivos móviles, herramientas para desarrolladores, herramientas de administración, IoT, seguridad y aplicaciones empresariales: bajo demanda, disponibles en segundos y con precios de pago por uso. Con más de 200 servicios con todas las funciones disponibles en centros de datos de todo el mundo, la nube de AWS tiene lo que necesita para desarrollar, implementar y operar sus aplicaciones, a la vez que reduce los costos, se vuelve más ágil e innova con mayor rapidez.

Por ejemplo, con la nube de AWS, puede poner en marcha una máquina virtual, especificar la cantidad de núcleos de vCPU, la memoria, el almacenamiento y otras características en segundos, y pagar por la infraestructura en incrementos por segundo solo mientras está en ejecución. Una ventaja de la red de infraestructura global de AWS es que puede aprovisionar recursos en la región o regiones que mejor se adapten a su caso de uso específico. Cuando haya terminado con los recursos, simplemente puede eliminarlos. Con esta flexibilidad y escalabilidad integradas, puede crear una aplicación para atender a su primer cliente y, a continuación, ampliarla para atender a los 100 millones siguientes.

En este video se explica cómo millones de clientes utilizan AWS para aprovechar las eficiencias de la computación en la nube.

Profundice con estos recursos adicionales
Computación en la nube con AWS
Lista completa de los servicios de AWS por categoría

Computación local y en la nube

Antes de la nube, las empresas y organizaciones alojaban y mantenían el hardware en sus propios centros de datos y, a menudo, asignaban departamentos de infraestructura completos para que se encargaran de sus centros de datos. Esto dio lugar a operaciones costosas que imposibilitaban algunas cargas de trabajo y la experimentación.

La demanda de equipos de cómputo, almacenamiento y redes aumentó a medida que se generalizó el uso de Internet. Para algunas empresas y organizaciones, el costo de mantener una gran presencia física era insostenible. La computación en la nube surgió para resolver este problema.

Para ayudar a diferenciar entre ejecutar cargas de trabajo en las instalaciones y en la nube, considere un escenario en el que un equipo de desarrolladores quiera implementar algunas características nuevas en su aplicación. Antes de implementarlas, el equipo quiere probar las funciones en un entorno de control de calidad (QA) independiente que tenga las mismas configuraciones que el de producción.

En una solución local, un entorno adicional requiere la compra e instalación de hardware, la conexión del cableado necesario, el suministro de energía, la instalación de sistemas operativos y mucho más. Estas tareas pueden llevar mucho tiempo y ser costosas. Mientras tanto, el equipo necesita retrasar el lanzamiento de las nuevas características mientras esperan al entorno de control de calidad. Por el contrario, si ejecuta su aplicación en la nube, puede replicar un entorno de producción completo, tantas veces como sea necesario, en cuestión de minutos o incluso segundos. En lugar de instalar físicamente el hardware y conectar el cableado, la solución se administra a través de Internet.

El uso de la computación en la nube ahorra tiempo durante la configuración y elimina el trabajo pesado indiferenciado. Si observa cualquier aplicación, verá que algunos de sus aspectos son muy importantes para su negocio, como el código. Sin embargo, otros aspectos no son diferentes a los de cualquier otra aplicación que pueda crear, por ejemplo, la computadora en la que se ejecuta el código. Como desarrollador, es probable que quiera centrarse en lo que es exclusivo de su aplicación, no en las tareas habituales, como el aprovisionamiento de un servidor, que no diferencian su aplicación. Como ejemplo, un grupo de investigadores de la Universidad de Clemson logró un hito notable al estudiar el modelado de temas, un componente importante del machine learning asociado con el procesamiento de lenguaje natural (PNL). En menos de 24 horas, crearon un clúster de alto rendimiento en la nube mediante el uso de más de 1 100 000 vCPU en instancias de spot de Amazon EC2 que se ejecutaban en una sola región de AWS. Este es solo un ejemplo de cómo AWS puede ayudarlo a innovar con mayor rapidez.

Pruébelo: implemente una aplicación web LAMP en Amazon Lightsail

Profundice con estos recursos adicionales
Modelos de implementación de computación en nube

IaaS, PaaS y SaaS

La computación en la nube brinda a los desarrolladores la capacidad de centrarse en lo que más importa y evitar la adquisición, el mantenimiento y la planificación de la capacidad de la infraestructura o el trabajo pesado indiferenciado.

Con la creciente popularidad de la computación en la nube, surgieron varios modelos de servicio diferentes para ayudar a satisfacer las necesidades específicas de los diferentes usuarios. Cada tipo de servicio en la nube le ofrece distintos niveles de abstracción, control, flexibilidad y gestión. Comprender las diferencias entre la infraestructura como servicio (IaaS), la plataforma como servicio (PaaS) y el software como servicio (SaaS) lo ayuda a decidir qué tipo de servicio es el adecuado para sus necesidades como desarrollador.

Infraestructura como servicio (IaaS)

La infraestructura como servicio (IaaS), contiene los bloques de creación fundamentales para la TI en la nube. Por lo general, permite acceder a las características de conexión en red, a las computadoras (virtuales o en hardware dedicado) y al espacio de almacenamiento de datos. La IaaS le ofrece el máximo nivel de flexibilidad y control de gestión sobre sus recursos de TI y se parece mucho a los recursos de TI existentes con los que muchos desarrolladores están familiarizados hoy en día.

Pruébelo: implemente una aplicación web LAMP en Amazon Lightsail

Illustration of a cloud with a microchip, coding tag, and checkmark symbol, representing cloud computing or technology services.

Plataforma como servicio (PaaS)

La plataforma como servicio (PaaS) elimina la necesidad de administrar la infraestructura subyacente (normalmente hardware y sistemas operativos) y le permite enfocarse en la implementación y administración de aplicaciones. Esto contribuye a mejorar el nivel de eficiencia, ya que no debe preocuparse por el aprovisionamiento de recursos, la planificación de la capacidad, el mantenimiento del software, la implementación de parches ni ninguna de las demás arduas tareas que conlleva la ejecución de su aplicación.

Pruébelo: Cómo empezar a usar AWS Elastic Beanstalk

Illustration of cloud computing with servers and a database icon connected by lines.

Software como servicio (SaaS)

El software como servicio (SaaS) le proporciona un producto completo que el proveedor del servicio ejecuta y administra. En la mayoría de los casos, quienes hablan de SaaS en realidad se refieren a aplicaciones de usuario final. Con una oferta de SaaS, no tiene que pensar en cómo se mantiene el servicio ni en cómo se administra la infraestructura subyacente. Solo debe preocuparse por cómo utilizar ese software. Un ejemplo común de una aplicación SaaS es un programa de correo electrónico basado en la web que le permite enviar y recibir mensajes sin tener que administrar la incorporación de características ni mantener los servidores y los sistemas operativos en los que se ejecuta el programa de correo electrónico.

Profundice más: software como servicio (SaaS) en AWS

Profundice con estos recursos adicionales
Tipos de computación en nube
Software como servicio (SaaS) en AWS

Illustration of cloud computing with a monitor, pie chart, and envelope icons connected to a cloud.

Infraestructura global

Con la nube, puede llegar a regiones geográficas nuevas e implementar soluciones a escala global en cuestión de minutos. Por ejemplo, AWS tiene infraestructura distribuida en todo el mundo, por lo que puede implementar su aplicación en varias ubicaciones físicas con unos pocos clics. Al acercar las aplicaciones a los usuarios finales, puede reducir la latencia y mejorar la experiencia del usuario.

AWS amplía constantemente la infraestructura global para ayudar a nuestros clientes a lograr una menor latencia y un mayor rendimiento, y para garantizar que sus datos residan solo en la región de AWS que especifiquen. A medida que los clientes amplíen sus empresas, AWS continuará aportando una infraestructura que cumpla sus requisitos globales.

La infraestructura de la nube de AWS está conformada por regiones de AWS y zonas de disponibilidad (AZ). Una región es una ubicación física en el mundo donde disponemos de varias zonas de disponibilidad. Las zonas de disponibilidad constan de uno o varios centros de datos individuales, cada uno de ellos con energía eléctrica, redes y conectividad suficientes, que se alojan en instalaciones independientes. Estas zonas de disponibilidad ofrecen la capacidad de operar bases de datos y aplicaciones de producción con un nivel de disponibilidad, tolerancia a fallos y escalabilidad mayor que el que ofrecería un único centro de datos.

La infraestructura de la nube de AWS es amplia y ofrece 200 servicios con todas las características desde centros de datos de todo el mundo. Con el mayor espacio de infraestructura global de todos los proveedores de nube, AWS le proporciona la infraestructura de nube donde y cuando la necesite.

Herramientas para desarrolladores

Cómo interactuar con AWS

Cuando la infraestructura se vuelve virtual, como ocurre con la computación en la nube, la forma en que los desarrolladores trabajan con la infraestructura cambia ligeramente. En lugar de administrar la infraestructura de manera física, la administra de manera lógica a través de la interfaz de programación de aplicaciones de AWS (API de AWS) . Al crear, eliminar o cambiar cualquier recurso de AWS, utilizará llamadas a la API a AWS para hacerlo.

Puede realizar estas llamadas a la API de varias formas, pero nos centraremos en estas para introducir este tema:

  • La Consola de administración de AWS
  • La interfaz de línea de comandos de AWS (AWS CLI)
  • IDE y kits de herramientas IDE
  • Kits de desarrollo de software (SDK) de AWS

La Consola de administración de AWS

Al empezar a usar AWS, las personas suelen empezar con la consola de administración de AWS, una consola basada en la web en la que se inicia sesión a través de un navegador. La consola incluye una amplia colección de consolas de servicio para administrar los recursos de AWS. Al trabajar en la consola, no tiene que preocuparse por las secuencias de comandos o la sintaxis. También puede seleccionar la región específica en la que desea que esté un servicio de AWS.

Después de trabajar en la consola, es posible que desee dejar de implementar manualmente el servicio de AWS, tal vez porque se ha familiarizado más con AWS o porque trabaja en un entorno de producción que requiere cierto grado de gestión de riesgos. Aquí es donde entra en juego la interfaz de línea de comandos (CLI) de AWS.

AWS CLI

La CLI de AWS es una herramienta de código abierto que le permite crear y configurar los servicios de AWS mediante los comandos de su shell de línea de comandos. Puede ejecutar comandos en Linux o macOS mediante programas de shell comunes, como bash, zsh y tcsh, o en Windows, en la línea de comandos de Windows o en PowerShell. Una opción para empezar a utilizar rápidamente la CLI de AWS es AWS CloudShell, un shell basado en navegador que proporciona acceso por línea de comandos a los recursos de AWS. CloudShell está preautenticado con las credenciales de la consola. Las herramientas de desarrollo y operaciones más comunes están preinstaladas, por lo que no se requiere ninguna instalación o configuración local.

Al pasar a la AWS CLI, puede crear scripts o programar las llamadas a la API. En lugar de utilizar una GUI, se crean comandos con una sintaxis de AWS definida. Una ventaja de la CLI es que puede crear comandos únicos para crear varios recursos de AWS, lo que podría ayudar a reducir la posibilidad de que se produzcan errores humanos al seleccionar y configurar los recursos. Con la CLI, necesita aprender la sintaxis adecuada para formar comandos pero, a medida que escribe estos comandos, los hace repetibles. Esto debería ahorrarle tiempo a largo plazo

IDE y conjuntos de herramientas IDE

AWS ofrece soporte para los populares entornos de desarrollo integrado (IDE) y kits de herramientas de IDE para que pueda crear, depurar e implementar su código en AWS desde su entorno preferido. Los IDE y kits de herramientas compatibles incluyen AWS Cloud9, IntelliJ, PyCharm, Visual Studio, Visual Studio Code, Azure DevOps, Rider y WebStorm.

SDK

Los kits de desarrollo de software (SDK) son herramientas que le permiten interactuar con la API de AWS mediante programación. AWS crea y mantiene los SDK para los lenguajes de programación más populares, incluidos los que se muestran en el diagrama.

Los SDK resultan útiles cuando desea integrar el código fuente de su aplicación con los servicios de AWS. Por ejemplo, puede usar el SDK de Python para escribir código para almacenar archivos en Amazon Simple Storage Service (Amazon S3) en lugar de en su disco duro local. La capacidad de administrar los servicios de AWS desde un lugar en el que pueda ejecutar el código fuente, con condiciones, bucles, matrices, listas y otros elementos de programación, proporciona mucha potencia y creatividad.

Estas son solo algunas de las herramientas disponibles para los desarrolladores en AWS. Para obtener una lista completa de las herramientas de AWS para desarrollar aplicaciones de forma más rápida y sencilla, consulte Tools to Build on AWS.

Infraestructura como código (IaC)

Al igual que los desarrolladores de software escriben el código de las aplicaciones, AWS proporciona servicios que permiten la creación, el despliegue y el mantenimiento de la infraestructura de forma programática, descriptiva y declarativa.

AWS CDK

El AWS Cloud Development Kit (AWS CDK) es un marco de desarrollo de software para definir la infraestructura de la nube en código y aprovisionarla a través de AWS CloudFormation. El AWS CDK admite lenguajes de programación conocidos, como TypeScript, JavaScript, Python, Java, C#/.Net y Go (en la versión preliminar para desarrolladores).

El aprovisionamiento de aplicaciones en la nube puede ser un desafío, ya que requiere escribir scripts personalizados, mantener plantillas o aprender lenguajes específicos del dominio. El AWS CDK usa la familiaridad y la capacidad de expresión de los lenguajes de programación para diseñar aplicaciones. Proporciona componentes de alto nivel llamados constructos que preconfiguran recursos en la nube con valores predeterminados puestos a prueba. Esto le permite crear aplicaciones en la nube con facilidad. El AWS CDK aprovisiona los recursos de una manera segura y repetible a través de AWS CloudFormation. También le permite redactar y compartir componentes personalizados propios que incorporan los requisitos de su organización, proceso que lo ayuda a agilizar los proyectos nuevos.

Diagram showing three steps: "Use pre-configured application components," "Model your application," and "Provision your application with AWS CloudFormation," with corresponding icons and descriptions.

Profundice con estos recursos adicionales

AWS CloudFormation

Modelar y configurar los recursos de AWS puede llevar mucho tiempo. Aquí es donde AWS CloudFormation puede ayudar. CloudFormation lo ayuda a modelar y configurar sus recursos de AWS para que pueda dedicar menos tiempo a administrar recursos y más tiempo a centrarse en sus aplicaciones. Con CloudFormation, puede crear una plantilla que describa todos los recursos de AWS que desee (como instancias de Amazon EC2 o instancias de base de datos de Amazon RDS). Una vez que haya creado la plantilla, CloudFormation se encarga de aprovisionar y configurar esos recursos por usted. No tiene que crear ni configurar de manera individual los recursos de AWS, ni tampoco averiguar las dependencias, ya que CloudFormation se encarga de esas tareas. CloudFormation puede ayudarlo a simplificar la administración de la infraestructura, replicarla rápidamente y controlar y rastrear fácilmente los cambios en su infraestructura.

Missing alt text value

Responsabilidad de AWS

Ser responsable de la seguridad de la nube significa que AWS protege y asegura la infraestructura que ejecuta los servicios ofrecidos en la nube de AWS. AWS es responsable de:

  • Proteger y asegurar las regiones, las zonas de disponibilidad y los centros de datos de AWS, incluso la seguridad física de los edificios
  • Administrar el hardware, el software y los componentes de red que ejecutan los servicios de AWS, como los servidores físicos, los sistemas operativos del host, las capas de virtualización y los componentes de red de AWS.

Diagram illustrating the shared responsibility model between AWS and customers, with customers responsible for security "in" the cloud (e.g., data, applications, and configurations) and AWS responsible for security "of" the cloud (e.g., infrastructure, regions, and hardware).

Infraestructura Well-Architected

Responsabilidad del cliente

Los clientes, o cualquier persona que desarrolle en la nube, son responsables de la seguridad en la nube. Al utilizar cualquier servicio de AWS, es responsable de configurar correctamente el servicio y las aplicaciones, además de garantizar la seguridad de los datos.

Su nivel de responsabilidad depende del servicio de AWS. Algunos servicios requieren que realice todas las tareas de administración y configuración de seguridad necesarias, mientras que otros servicios más abstractos requieren que solo administre los datos y controle el acceso a sus recursos.

Debido a los diferentes niveles de esfuerzo, los clientes deben considerar qué servicios de AWS utilizan y revisar el nivel de responsabilidad requerido para proteger cada servicio. También deben revisar cómo el modelo de seguridad compartida se alinea con los estándares de seguridad de su entorno de TI, además de las leyes y reglamentos aplicables.

Un concepto clave es que los clientes mantengan un control total de sus datos y sean responsables de administrar la seguridad relacionada con su contenido.

Este breve resumen de la seguridad en la nube presenta únicamente los conceptos básicos. Consulte la página de formación sobre seguridad para obtener más información sobre temas clave, áreas de investigación y oportunidades de formación sobre seguridad en la nube en AWS.

Seguridad
Modelo de responsabilidad compartida de AWS
Aprendizaje de seguridad

Introducción

Lance su primera aplicación

AWS proporciona componentes básicos que puede ensamblar rápidamente para soportar prácticamente cualquier carga de trabajo. Con AWS, encontrará un conjunto completo de servicios de alta disponibilidad que están diseñados para trabajar juntos a fin de crear aplicaciones escalables sofisticadas.

Para empezar, elija uno de los siguientes temas para ver un tutorial paso a paso que lo pondrá en marcha en menos de 30 minutos, o visite el Centro de desarrolladores de AWS para explorar otros tutoriales.

Explore el nivel gratuito

El nivel gratuito de AWS le permite adquirir experiencia práctica con una amplia selección de productos y servicios de AWS. En el nivel gratuito de AWS, puede probar cargas de trabajo y ejecutar aplicaciones para obtener más información y crear la solución adecuada para su organización.

Explore más de 100 productos y comience a crear en AWS con el nivel gratuito. Hay tres tipos diferentes de ofertas gratuitas disponibles según el producto utilizado. Haga clic en el enlace de abajo para explorar nuestras ofertas.

  • Pruebas gratuitas: las ofertas de prueba gratuitas a corto plazo comienzan a partir de la fecha en que se activa un servicio en particular
  • 12 meses gratis: disfrute de estas ofertas durante 12 meses a partir de la fecha de registro inicial en AWS
  • Siempre gratis: estas ofertas de nivel gratuito no caducan y están disponibles para todos los clientes de AWS. Nota: El proceso de registro requiere una tarjeta de crédito, que no se cobrará hasta que comience a utilizar los servicios. No existen compromisos a largo plazo y puede dejar de utilizar AWS en cualquier momento.

Nota: El proceso de registro requiere una tarjeta de crédito, que no se cobrará hasta que comiences a usar los servicios. No existen compromisos a largo plazo y puede dejar de utilizar AWS en cualquier momento.

AWS Educate

AWS Educate ofrece cientos de horas de recursos de formación en línea gratuitos y a su propio ritmo, y la oportunidad de practicar de forma práctica en la consola de administración de AWS. Diseñado específicamente para el estudiante curioso y principiante en la nube, AWS Educate proporciona un acceso sencillo y sin barreras para aprender, practicar y evaluar sus habilidades en la nube. No se necesita una tarjeta de crédito ni una cuenta de Amazon.com o AWS. 

  • Acceso sencillo y sin barreras: los alumnos de tan solo 13 años pueden registrarse en AWS Educate con solo una dirección de correo electrónico y acceder a laboratorios prácticos gratuitos en la consola de AWS para aprender, practicar y evaluar sus habilidades en la nube en tiempo real. No se necesita tarjeta de crédito.

  • Contenido diseñado para principiantes: AWS Educate ofrece cientos de horas de recursos de aprendizaje centrados en los estudiantes que recién comienzan a usar la nube. ¿Quiere aprender con un video o experimentando con la nube de AWS? Tenemos algo para todos.

  • Conexión con el empleo: los estudiantes pueden acceder a la bolsa de trabajo de AWS Educate para explorar, buscar y postularse a miles de puestos de trabajo y pasantías muy demandados en organizaciones de todo tipo en todo el mundo.

  • Desarrolle su red: complete los cursos con laboratorios prácticos para obtener insignias digitales y obtener una invitación a la comunidad de talentos emergentes de AWS, su lugar para conectarse con otros talentos que inician su carrera.
Regístrese ahora

Comience a crear

Puede empezar a crear en AWS de inmediato con la capa gratuita de AWS y nuestra biblioteca de tutoriales prácticos.

¿Ha encontrado lo que buscaba hoy?

Ayúdenos a mejorar la calidad del contenido de nuestras páginas compartiendo sus comentarios