Saltar a contenido

Introducción al cloud computing

Nota

Parte de los contenidos aquí mencionados se han extraído de material proporcionado por cloud@iesmarenostrum.com, a través de un curso de formación del profesorado (CEFIRE).

1. Fundamentos del cloud computing

La computación en la nube o cloud computing permite ofrecer servicios de computación a través de la red (normalmente Internet), y permite a muchas empresas abaratar costes y maximizar su disponibilidad y tiempo de respuesta, delegando en esta nube sus infraestructuras a mayor o menor nivel, desde infraestructuras hardware hasta simples aplicaciones distribuidas en la nube para su acceso remoto.

Veremos a continuación qué características principales definen el paradigma del cloud computing: tipos de servicios ofrecidos, ventajas e inconvenientes, y ejemplos de proveedores de servicios que podemos encontrar.

1.1. Niveles de servicios ofrecidos

Actualmente el cloud computing ofrece servicios a tres niveles diferentes.

Software como servicio (SaaS, Software as a Service)

Es un modelo de distribución de software, en el que las aplicaciones se alojan en un proveedor de servicios en la nube, quedando disponibles para sus usuarios. Como ejemplos más significativos encontramos aplicaciones como Dropbox, Slideshare, PayPal...

La principal ventaja de este nivel es su facilidad de uso (sólo tenemos que acceder y utilizar la aplicación), y la principal desventaja es su limitación (sólo podemos realizar las tareas que permite la aplicación utilizada).

Plataforma como servicio (PaaS, Platform as a Service)

Permite abastecer al usuario de sistemas operativos y servicios asociados. Por lo tanto, los PaaS son contenedores de aplicaciones, donde podemos albergar nuestras aplicaciones para su uso. Algunos ejemplos son Heroku o Joyent.

La principal ventaja de este nivel es su idoneidad para desarrolladores, que pueden desplegar allí sus aplicaciones, y su desventaja mayor es que están restringidas a lo que está disponible (dependientes de ciertos lenguajes, o ciertas tecnologías en algunos casos).

Infraestructura como servicio (IaaS, Infrastructure as a Service)

También conocido como HaaS (Hardware as a Service), se refiere al uso de equipos de terceros, o en otras palabras, al uso de equipos hardware proporcionados por estos proveedores de servicios. Ofrecen también capas de virtualización hardware y/o software, de forma que se pueden desplegar contenedores, o máquinas virtuales, que a su vez incorporen dentro servidores u otras aplicaciones.

Los principales ejemplos de proveedores de servicios a este nivel son AWS (Amazon Web Services), Azure (Microsoft), Google, IBM, etc.

Inteligencia Artificial como servicio (AIaaS, *Artificial Intelligence as a Service)

Como un cuarto nivel de aparición reciente podemos destacar las plataformas AIaaS, orientadas al desarrollo y uso de aplicaciones basadas en inteligencia artificial. Podríamos ubicarlas a medio camino entre las SaaS y las PaaS, ya que permiten tanto utilizar aplicaciones desarrolladas por el proveedor cloud en cuestión (Amazon, Azure, Google...) como también desplegar nuestras propias aplicaciones basadas en IA en su nube.

1.1.1. Escenarios posibles

A la hora de migrar o utilizar los servicios de cloud computing, las empresas emplean uno de estos tres posibles escenarios:

  • Todo en la nube: se suele emplear en proyectos nuevos, ya que migrar todo un proyecto existente a la nube puede ser más costoso.
  • Híbridos: donde una parte del proyecto está en la nube y otra no. Los servicios se van migrando poco a poco, en la medida en que sea posible, pero hay una infraestructura local actual delicada, que debe quedar en la organización.
  • Nube privada o local: consiste en desarrollar un servicio propio de cloud computing para la empresa. No es demasiado habitual porque suele ser más costosa que utilizar la nube global, pero a veces es necesaria para cumplir ciertos estándares de conformidad.

1.2. Ventajas e inconvenientes del cloud computing

El cloud computing ofrece una serie de ventajas sobre la computación tradicional:

  • Ahorro de espacio, ya que no necesitamos albergar la infraestructura hardware con la que vamos a trabajar en la empresa.
  • Planificación menos costosa, ya que, ante cualquier cambio en el modelo de negocio (por ejemplo, que necesitemos expandir la empresa y contratar más recursos y servidores), el proveedor de servicios nos proporcionará lo que necesitemos.
  • Mayor seguridad ante ataques informáticos, o incluso acciones gubernamentales, ya que los servicios están distribuidos en diversas plataformas por todo el mundo.
  • En general, menor coste, al no tener que mantener ni comprar una infraestructura local. Se paga sólo por lo que se está utilizando.
  • Capacidad de almacenamiento ilimitada.

Las principales desventajas del cloud computing son:

  • Requiere una conexión a Internet continua
  • En escenarios híbridos (con parte de la infraestructura local en la empresa) puede ofrecer bastante latencia (tiempo de respuesta de los servicios alojados en la nube).
  • Falta de confianza, e incluso problemas legales: se están almacenando datos en servidores remotos que no controlamos del todo.
  • Dependencia tecnológica de otras compañías. Si se pierden los datos en la nube, la compañía tendrá problemas motivados por causas ajenas.

1.3. Principales proveedores de servicios

Amazon fue la empresa pionera en cloud computing. La enorme tienda online en la que se estaba convirtiendo necesitaba de una enorme infraestructura para albergarla, y optaron por desarrollar su propia infraestructura y ahorrar en costes a largo plazo, vendiendo después sus servicios a terceros. Esta plataforma cloud comenzó a estabilizarse y ampliarse a partir de 2006.

Como se puede comprobar, esta idea fue todo un éxito. En 2018, la división AWS (Amazon Web Services), dentro de la compañía de Amazon, obtuvo 26.000 millones de dólares de beneficio. En los últimos años, otras compañías se han unido a este fenómeno, y la cuota de mercado se va dividiendo, aunque con bastante predominancia aún de AWS (en torno a un 30 o 35%).

El otro gran competidor actualmente de AWS es Azure, de Microsoft, con aproximadamente un 15 o 20% de cuota de mercado. Inicialmente (año 2008) se concibió como un proveedor PaaS, pero posteriormente amplió sus horizontes para ser un proveedor IaaS. A partir de 2014 aproximadamente, Microsoft considera prioritario reforzar su orientación al cloud computing.

Tras estos dos gigantes, podemos encontrar otros proveedores importantes, como Google o IBM, aunque con mucha menor cuota de mercado.

¿Quién utiliza AWS?

Podemos encontrar ejemplos significativos de clientes, como Netflix, Spotify, LinkedIn, Instagram... También Apple tiene alojado en Amazon su contenido iCloud. Se estima que aproximadamente el 25 o 30% del tráfico de Internet pasa por los servidores AWS.

¿Quién utiliza Azure?

También algunas grandes empresas emplean Azure como su proveedor de servicios cloud. Es el caso de MediaMarkt o Mercedes, entre otros.

1.3.1. Servicios implementados

Todos los grandes proveedores de servicios cloud ofrecen una serie de servicios básicos a sus clientes: desde el uso de bases de datos convencionales, a servicios de Big Data, contenerización, almacenamiento de archivos, etc. Esto hace que, en mayor o menor medida, dé igual el proveedor que seleccionemos, puesto que todos ellos implementan servicios equivalentes en categorías equivalentes.

Por ejemplo, para dar soporte a contenerización a través de Docker o Kubernetes, AWS dispone del EC2 Container Service, mientras que Azure cuenta con el Azure Container Service (AKS). Para la computación serverless, AWS cuenta con AWS Lambda, y Azure con Azure Functions.

En términos de inteligencia artificial, todas las plataformas "dominantes" ofrecen también una variedad de servicios pre-implementados, orientados a procesamiento de imágenes, textos, vídeos, etc. También disponen de herramientas online para desarrollar de modo más o menos sencillos nuestros propios modelos, como es el caso de SageMaker en Amazon, o Azure Machine Learning Studio en Azure. Y, por supuesto, también permiten que despleguemos y alojemos nuestras aplicaciones basadas en IA en sus infraestructuras.

1.3.2. ¿Cuál elegir?

Los motivos que pueden llevar a elegir un proveedor u otro están más relacionados con los costes, fiabilidad, o posibilidad de integrar lo que ya se tiene con la infraestructura proporcionada en la nube. Así, por ejemplo, los antiguos usuarios de tecnologías Microsoft pueden adaptarse mejor a las infraestructuras proporcionadas por Azure que a las de otros proveedores.

1.4. Algunos ejemplos reales

Para concluir esta introducción al cloud computing veremos un par de casos de éxito de empresas que decidieron migrar a cloud.

Meneame

Meneame es el mayor agregador de noticias en castellano a nivel mundial. Su portal tiene cientos de miles de visitas diarias, y necesita una infraestructura web que les dé soporte y sea flexible, para poderse adaptar a que ese flujo de visitas crezca o decrezca.

En 2010 decidieron migrar a AWS, y redujeron los costes a la décima parte, gastando en cada momento sólo lo necesario, y con la capacidad de crecer dinámicamente en un futuro de forma sencilla.

Securitas Direct

Securitas Direct es una multinacional con millones de clientes, que dispone de toda clase de dispositivos de seguridad que generan señales y multimedia por todo el mundo: más de 300 millones de señales al día y más de 42 millones de vídeos, que es necesario que circulen por su infraestructura para la monitorización de las viviendas e instalaciones que protegen.

En 2010 se comenzó con la grabación de vídeo, para lo que las infraestructuras existentes en la empresa eran insuficientes. Nuevamente, se apoyaron en AWS para esta expansión, empleando tecnologías serverless para el procesamiento de señales multimedia.

2. Proveedores cloud para servicios de IA

En este apartado nos centraremos en el ámbito de AIaaS, Artificial Intelligence as a Service, y analizaremos qué servicios ofrecen al respecto los principales proveedores cloud. En otros documentos profundizaremos sobre cómo utilizar algunos de estos servicios.

2.1. Azure

Para poder utilizar los servicios de Azure debemos acceder a su portal. Tendremos que crear una cuenta si no tenemos ninguna creada. En caso de ser estudiantes en algún centro registrado, podemos darnos de alta a través del centro en el programa de Azure para estudiantes, que proporciona un crédito inicial y acceso gratuito a ciertos servicios de la nube, sin necesidad de dar datos de pago. Si optamos por esta opción, podemos consultar datos generales de la plataforma para estudiantes en la sección de Education, desde el portal.

También desde el buscador superior podemos buscar por Suscripciones y consultar el tipo de suscripción que tenemos activa actualmente.

2.1.1. Principales servicios de IA ofrecidos

Entre los principales servicios de IA que ofrece Azure disponemos de:

  • Modelos pre-entrenados para distintas tareas habituales, tales como reconocimiento de imágenes, análisis de textos, síntesis de voz, etc. Es lo que se conoce como los servicios de Azure AI. Explicaremos algunos de ellos en posteriores documentos.
  • Mecanismos de desarrollo y despliegue de modelos en la nube de Azure, tales como el uso de cuadernos online (Notebooks), generación semi-automática de modelos de IA (Azure AutoML), etc, a través del recurso Azure Machine Learning. También explicaremos algunos conceptos sobre esto en posteriores documentos.

2.1.2. Certificados oficiales de Azure relacionados con IA

Desde el portal de Azure podemos acceder a ciertos cursos de formación que preparan para la obtención de certificados oficiales de Azure, relacionados con el ámbito de la inteligencia artificial:

  • Científico de datos asociado de Azure. Un certificado orientado al ámbito de ciencia de datos y aprendizaje automático. Está compuesto de varios cursos, que van desde una exploración básica del área de trabajo de Azure Machine Learning a entrenamiento de modelos.
  • Azure AI Fundamentals. Un certificado introductorio a conceptos de inteligencia artificial y aprendizaje automático. Se parte de cursos introductorios sobre conceptos de IA, y se avanza hacia conceptos como minería de conocimientos y toma de decisiones.
  • Azure AI Engineer Associate. Un certificado más avanzado que el anterior, para crear soluciones de IA en Azure. Se parte de unos cursos introductorios sobre Azure Cognitive Services, para luego pasar a otros modelos más avanzados de esta plataforma.

2.2. AWS

A continuación explicaremos qué pasos debemos seguir para poder utilizar y/o experimentar con los modelos y servicios basados en IA ofrecidos por Amazon a través de AWS.

2.2.1. Uso gratuito y prueba de servicios: AWS Academy

AWS Academy es un programa de capacitación en la nube ofrecido por AWS. Este programa brinda a las instituciones educativas la oportunidad de formar a sus estudiantes en el campo del cloud computing de manera gratuita. Los recursos proporcionados por AWS incluyen un plan de estudios completo, así como acceso a los servicios de AWS a través de laboratorios creados por los profesores. Es importante destacar que los estudiantes no necesitan tener una cuenta en AWS para acceder a los servicios, ya que pueden utilizar los laboratorios proporcionados por los profesores para practicar y experimentar con los servicios de AWS. Aquí tenemos un enlace a su web principal.

Acceso a los laboratorios

Si eres estudiante en un centro educativo afiliado a AWS Academy, podrás acceder a los laboratorios de prácticas mediante invitación previa del docente, sin necesidad de tener una cuenta en AWS.

La primera vez que accedes a un laboratorio (al pulsar el botón/enlace correspondiente en el correo con la invitación), se solicita crear una cuenta en la plataforma Canvas para poder acceder a los laboratorios.

Es necesario rellenar el formulario de registro, indicando, además de un correo electrónico, una contraseña y una zona horaria. Por último, hay que aceptar la política de uso de Canvas y los términos y condiciones para estudiantes de AWS y finalizar el registro.

Una vez terminado el registro, se produce una redirección a la página de inicio del laboratorio. Cada laboratorio cuenta con un saldo inicial predeterminado y acceso gratuito a ciertos servicios en la nube para poder hacer las prácticas planteadas.

Para realizar las tareas propuestas en el laboratorio, hay que hacer clic sobre el enlace Módulos, y a continuación sobre Laboratorio de aprendizaje.

La primera vez que se accede hay que aceptar una serie de términos y condiciones. Desplázate hasta el final de la página y pulsa I agree, y se cargará la siguiente página:

En la parte superior derecha están disponibles las siguientes acciones:

  • Start Lab: permite iniciar el laboratorio y comenzar a trabajar en él. Una vez que haces clic en "Start Lab", se te proporciona acceso a una instancia de AWS que contiene el entorno de laboratorio.
  • End Lab: permite finalizar el laboratorio y cerrar la instancia de AWS. Al hacer clic en "End Lab", se detienen todos los recursos del laboratorio y se borran todos los datos creados en la instancia de AWS.
  • AWS Details: proporciona información detallada sobre la instancia de AWS que se te ha asignado para el laboratorio. Aquí puedes ver la región de AWS, el tipo de instancia, la dirección IP pública, entre otros detalles.
  • Readme: proporciona instrucciones detalladas sobre el laboratorio. Aquí puedes encontrar información sobre el objetivo del laboratorio, los pasos a seguir, los recursos que se te proporcionan, etc.
  • Reset: permite reiniciar el laboratorio y volver al estado inicial. Al hacer clic en "Reset", se detienen todos los recursos del laboratorio y se borran todos los datos creados en la instancia de AWS. Luego, la instancia de AWS se reinicia y se restablece al estado inicial. Ten en cuenta que esta opción no reseteará tu saldo inicial y se eliminará permanentemente todo lo que hayas realizado.

Pulsa Start Lab para iniciar el laboratorio. En ocasiones, este proceso puede tardar unos minutos.

Observa que ahora el icono de AWS (1) aparece en verde, lo que indica que ya puedes acceder a la consola de administración web de AWS, haciendo clic sobre dicho icono en verde. Una vez dentro de la consola, ya podrás utilizar las herramientas y servicios de AWS que necesites desde la interfaz web.

También se muestra en la parte superior el saldo (2) y el tiempo restante (3) del laboratorio. Cuando el tiempo se agota, la sesión termina, pero cualquier dato y recurso que hayas creado se mantendrán. Sin embargo, si sobrepasas el presupuesto asignado, tu cuenta de laboratorio será deshabilitada y se perderá todo el progreso realizado. Para evitar malgastar tu presupuesto, asegúrate de lanzar solo el número de instancias que necesites, ajustadas a tus requisitos.

Hemos visto en este apartado cómo acceder a los laboratorios de AWS ACademy y también el acceso a la consola de administración web, pero tenemos otras formas de interactuar o consumir recursos de AWS.

2.2.2. Uso comercial: la cuenta AWS

En el caso de que vayamos a hacer un uso más profesional de los servicios de Amazon debemos crear una cuenta. Para ello se debe acceder a aws.amazon.com y elegir Crear una cuenta de AWS.

Una vez se hayan completado los campos de correo electrónico y nombre de cuenta, se solicita verificar la dirección de correo electrónico proporcionada e indicar una contraseña.

Seguidamente, se solicita una determinada información de contacto y el tipo de cuenta a crear. La cuenta peude ser personal o empresarial. Dependiendo del tipo de cuenta que elijamos se pedirá un tipo de información u otra de cara a la facturación. Para empezar a conocer AWS y crear pequeños proyectos, una cuenta personal será suficiente. Sin embargo, si ya se tienen nociones de AWS o trabajas en una empresa grande con múltiples usuarios y departamentos y se necesitan políticas de seguridad y control de acceso más robustas, una cuenta empresarial podría ser más apropiada.

En el siguiente paso se pide registrar una forma de pago, ya que todos los servicios de AWS tienen un costo asociado. Aunque AWS dispone de una capa gratuita que incluye una gran cantidad de recursos durante un período de tiempo limitado, algunos servicios pueden generar cargos fuera de los límites de la capa gratuita y por eso es necesario indicar un método de facturación. Más información sobre la capa gratuita de AWS.

El último paso consiste en verificar tu número de teléfono y seleccionar un plan de soporte para la cuenta de AWS.

Como resultado del proceso de registro, se obtiene una cuenta raíz. Esta cuenta raíz tiene acceso completo a todos los servicios y recursos de AWS, incluyendo la administración de usuarios y grupos, modificación del método de pago o, incluso, cerrar la cuenta. Debido a este nivel de permisos, es recomendable proteger al usuario root con Multi-Factor Authentication (MFA) y configurar usuarios adicionales para realizar las tareas diarias relacionadas con nuestra cuenta. Veremos cómo hacer esto más adelante, ya que primero vamos a conocer el servicio AWS Identity and Access Management (IAM) necesario para activar la MFA, y en general, para administrar el acceso a los recursos de AWS.

AWS IAM

Como hemos comentado, una sola cuenta de AWS puede tener servicios administrados por decenas de personas diferentes que pueden estar en distintos departamentos u oficinas, tener diferentes responsabilidades o niveles de antigüedad, e incluso estar en distintos países. Para mantener un entorno seguro en la nube con todas estas variables en cuestión, es esencial seguir las prácticas recomendadas de AWS Identity and Access Management (IAM).

IAM se puede utilizar para gestionar la autenticación y para especificar y aplicar políticas de autorización para especificar qué usuarios pueden obtener acceso a cada servicio. Es decir, permite definir quién, a qué y cómo se accede a los recursos AWS. Puedes obtener más información sobre AWS IAM en la documentación oficial.

Los principales componentes son:

  • Usuario: persona o aplicación que se puede autenticar en AWS. Cada usuario debe tener un nombre único (sin espacios en el nombre) dentro de la cuenta de AWS y un conjunto de credenciales de seguridad que no se comparte con otros usuarios. Estas credenciales son diferentes de las credenciales de seguridad de usuario raíz de la cuenta de AWS.
  • Grupo: conjunto de usuarios de IAM, a los que se les concede una autorización idéntica. Así pues, permite asociar las mismas políticas a varios usuarios de una manera sencilla. Hay que tener en cuenta que:
  • Un grupo puede contener muchos usuarios y un usuario puede pertenecer a varios grupos.
  • Un grupo solo puede contener usuarios y, a su vez, un grupo no puede contener otros grupos.
  • No hay ningún grupo predeterminado que incluya automáticamente a todos los usuarios de la cuenta de AWS.
  • Política de IAM: documento que define permisos para determinar lo que los usuarios pueden hacer en la cuenta de AWS. Una política normalmente concede acceso a recursos determinados y especifica lo que el usuario puede hacer con esos recursos, aunque también pueden denegar explícitamente el acceso.
  • Rol: herramienta para conceder acceso temporal a recursos de AWS específicos de una cuenta de AWS. Un rol de IAM puede tener asociadas políticas de permisos y se puede utilizar para delegar acceso temporal a usuarios o aplicaciones. Dicho de otro modo, un rol de IAM es similar a un usuario, ya que es una identidad de AWS con políticas de permisos que establecen qué puede hacer o no la identidad en AWS. Sin embargo, en lugar de estar asociada únicamente a una persona, el objetivo es que pueda asignarse un rol a cualquier persona que lo necesite. También es conveniente destacar que cuando se asume un rol, se proporcionan credenciales de seguridad temporales para la sesión de rol, de manera que es conveniente utilizar roles para delegar el acceso a usuarios, aplicaciones o servicios que normalmente no tendrían acceso a los recursos de AWS.

Una vez ya sabemos qué hace el servicio AWS IAM, vamos a ver cómo proteger la cuenta raíz de AWS utilizando este servicio.

Proteger la cuenta raíz de AWS

Para proteger las credenciales de nuestro usuario raíz conviene activar la Multi-Factor Authentication (MFA).

La MFA es una característica de seguridad de AWS en la que los usuarios utilizan un segundo paso de autenticación, además de la contraseña, para acceder a sus cuentas de AWS. Este segundo paso de autenticación puede ser un token de seguridad físico, un mensaje de texto SMS o una aplicación de autenticación en un dispositivo móvil.

Para activar MFA en una cuenta de AWS, hay que seguir los siguientes pasos: 1. Inicia sesión en la cuenta AWS. 2. En la barra de búsqueda de la Consola de Administración de AWS, busca el servicio IAM.
3. En el panel de control de IAM, en recomendaciones de seguridad, aparecerá un aviso para proteger al usuario raíz con la MFA. Elige Agregar MFA y luego Activar MFA en la siguiente página.

  1. Elige alguna de las opciones MFA disponibles. Por ejemplo, Dispositivo MFA virtual, que permite utilizar una aplicación de autenticación móvil, como Google Authenticator o Authy, para generar códigos de verificación únicos. Una vez se configura el dispositivo MFA virtual en tu cuenta de AWS, hay que ingresar el código generado por la aplicación en el momento del inicio de sesión para completar la autenticación.
  2. Una vez seleccionado el tipo de dispositivo MFA, elige Continuar. La siguiente página proporciona los pasos necesarios para conectar el dispositivo a tu cuenta. Cuando esté todo listo, elige Asignar MFA.

Configurar usuarios adicionales

Como ya hemos visto, no es recomendable utilizar la cuenta raíz de manera habitual. La recomendación es crear usuarios adicionales con roles y funciones específicas para cada uno.

Para crear usuarios adicionales y asignarles diferentes permisos utilizaremos de nuevo el servicio IAM. Los usuarios creados a traves de este servicio se llaman usuarios IAM. Es importante resaltar de nuevo que estos usuarios no son cuentas independientes sino usuarios creados dentro de la cuenta raíz, con contraseñas propias.

Cuando se crean usuarios IAM en AWS, se pueden elegir dos tipos de acceso: * Acceso a la consola de administración de AWS: permite a los usuarios iniciar sesión en la consola de administración de AWS para realizar tareas y administrar recursos a través de la interfaz gráfica de usuario. * Acceso programático: permite a los usuarios realizar solicitudes a través de las API de AWS utilizando herramientas como AWS CLI, SDK de AWS y otras aplicaciones. Cuando se concede acceso programático, se generan unas claves de acceso que se utilizan para autenticar las solicitudes.

Antes de crear un nuevo usuario, es conveniente crear un grupo de usuarios. Los grupos de usuarios son una forma de dar permisos a varios usuarios al mismo tiempo, lo que puede facilitar la administración de los permisos. Por ejemplo, podríamos crear un grupo de usuarios llamado "Administradores" y darle los permisos de administrador típicos. Cualquier usuario que pertenezca a ese grupo tendrá automáticamente los permisos de administrador. Si un nuevo usuario se une y necesita permisos de administrador, simplemente se añade al grupo de usuarios "Administradores".

A modo de ejemplo, vamos a crear un grupo de usuarios con acceso de administrador: 1. Inicia sesión en una cuenta AWS. 2. Accede a la consola de IAM. 3. En el menú de navegación de la izquierda, selecciona "Grupos de usuarios" y luego haz clic en "Crear grupo". 4. Indica un nombre para el grupo de usuarios, por ejemplo, "Administradores". 5. Después, desplázate hacia abajo en la página y busca la sección "Adjuntar políticas de permisos". Allí, debes buscar "AdministratorAccess" y seleccionar la casilla junto a la política que tenga ese nombre. Finalmente, desplázate hacia abajo y haz clic en "Crear grupo" para completar el proceso.

  1. En la consola de IAM, selecciona "Usuarios" en la barra de navegación de la izquierda y haz clic en "Agregar usuarios".
  2. Indica un nombre de usuario y selecciona el tipo de acceso a AWS que desees otorgarle. Para este ejemplo, selecciona ambas opciones y haz clic en "Siguiente: Permisos". Observa que aparece seleccionada la opción "Requerir reestablecimiento de contraseña", que obligará al usuario a cambiar su contraseña al iniciar sesión.
  1. En la siguiente página, añade el usuario al grupo de administradores creado anteriormente y selecciona "Siguiente: Etiquetas". Las etiquetas sirven para identificar y categorizar los usuarios. Para el ejemplo, elige directamente "Siguiente: Revisar" sin agregar una etiqueta. Este paso redirige a otra página donde puedes revisar los valores que se han establecido para el usuario antes de crearlo.
  2. Selecciona "Crear usuario" para crear el nuevo usuario. Se mostrará una pantalla de confirmación. Antes de presionar el botón "Cerrar" es muy importante que te asegures de descargar el fichero .csv con el ID de la clave de acceso, la clave de acceso secreta y la contraseña generadas, ya que solo se puede acceder a ellas desde esta pantalla.

2.2.3. Principales servicios de IA ofrecidos

Dentro de AWS podemos distinguir también dos tipos principales de servicios ofrecidos:

  • Por un lado, tanto desde AWS Academy como desde la cuenta comercial podemos acceder a una serie de modelos pre-entrenados orientados a reconocimiento de imágenes (Amazon Rekognition), análisis de textos (Amazon Comprehend), síntesis de voz (Amazon Polly), etc, similares a los de Azure. Sí es cierto, sin embargo, que desde los laboratorios de AWS Academy el acceso a algunos de estos modelos está limitado o bloqueado.
  • Por otro lado, tenemos la posibilidad de desarrollar y desplegar nuestros propios modelos, fundamentalmente a través de la herramienta Amazon SageMaker.
  • Además, AWS pone a disposición de los usuarios un terminal interactivo (AWS CLI) con el que poder interactuar con el sistema y realizar cómodamente ciertas tareas de scripting y automatización de ciertos procesos.

Profundizaremos en estos aspectos en documentos posteriores.

2.3. Otras plataformas cloud para IA

Además de las plataformas vistas antes, que podríamos considerar que son, hoy en día, las mayoritarias, existen otras alternativas que podemos utilizar para desarrollar o utilizar modelos basados en inteligencia artificial en la nube. Aquí veremos algunas de ellas.

2.3.1. Google

Google es, junto con Azure y Amazon, la tercera plataforma más utilizada para el desarrollo de aplicaciones cloud y, en especial, aquéllas basadas en IA. Dispone de herramientas y servicios tanto para el análisis y ciencia de datos como para desarrollar nuestros propios modelos de IA, o utilizar algunos de los servicios pre-entrenados que ya proporciona.

Podemos dividir los servicios de la plataforma en dos o tres grandes bloques.

Ciencia de datos. Vertex AI

La plataforma Vertex AI contiene distintos servicios destinados al tratamiento y gestión de datos, junto con la posibilidad de crear, desplegar y escalar ciertos modelos de IA. Hablamos de tareas como preparación de datos, escalado, y también desarrollo y despliegue de modelos. Puedes consultar más información en su web oficial.

Desarrollo de IA

En cuanto al desarrollo de aplicaciones basadas en IA, Google pone a nuestra disposición distintas herramientas y servicios:

  • Google AutoML: permite definir, entrenar y desplegar modelos de IA sin demasiado esfuerzo de programación, con herramientas visuales que permiten con unos cuantos clics definir los componentes del modelo y entrenarlo.
  • Herramientas de procesado de lenguaje natural, que permiten o bien extraer información de textos no estructurados (Google Cloud Natural Language) como establecer sistemas de traducción (Translation AI).
  • Herramientas de procesado de imágenes: detección de objetos, textos, clasificación de imágenes, etc, a través del módulo Vision AI
  • Herramientas de procesado de audio, tanto para convertirlo a texto (Speech-to-Text) como el proceso inverso (Text-to-Speech)
  • Herramientas de procesado de vídeo: extracción de información, etiquetado, etc, a través del módulo Video AI.

Infraestructura para IA

La nube de Google también pone a nuestra disposición distintos tipos de infraestructuras hardware/software para poder desplegar nuestras aplicaciones. Podemos desplegar contenedores específicos para deep learning, o máquinas virtuales, y también disponer de GPUs y TPUs adicionales para nuestros procesos.

2.3.2. IBM

La mayor parte de la infraestructura para IA ofrecida por IBM se centra en Watson. Esta herramienta proporciona una serie de servicios centrados en distintos aspectos:

  • IBM Watson Assistant permite definir y gestionar agentes virtuales, integrables en cualquier negocio como herramienta de atención al cliente.
  • IBM Watson Discovery analiza textos para extraer información valiosa y, junto con IBM Watson Natural Language Understanding, constituyen la infraestructura de procesamiento de lenguaje natural de IBM
  • IBM Watson Speech to Text e IBM Watson Text to Speech constituyen los servicios de transcripción de audio a texto y viceversa, respectivamente.
  • IBM Watson Language Translator ofrece servicios de traducción, tanto de fuentes de audio como escritas.