Introducción a Contenedores con Docker y Kubernetes

Por: Coursera . en: , ,

  • Entendiendo los Beneficios de los Contenedores
    • En este módulo, aprenderá sobre el concepto, las características, los casos de uso y los beneficios de los contenedores, y la diferencia entre los contenedores y las máquinas virtuales. Aprenderá sobre el término "Docker" y los diferentes usos de este término. Una de las herramientas más utilizadas de Docker es la interfaz de línea de comandos (CLI). Le presentaremos algunos de los comandos CLI de Docker más utilizados y cómo funcionan. Los contenedores y las imágenes son dos entidades distintas, y en este módulo aprenderá las diferencias entre los contenedores y las imágenes. Aprenderá a construir imágenes de contenedores usando Dockerfiles. Finalmente, aprenderá acerca de los registros de contenedores y las funcionalidades que proveen para ayudar a los desarrolladores a trabajar de manera más segura y productiva. Al final del módulo, hará un ejercicio práctico en el que escribirá un Dockerfile, construirá una imagen y la ejecutará como un contenedor, y almacenará la imagen en un registro.
  • Entendiendo la arquitectura de los Kubernetes
    • En este módulo, aprenderá qué es la orquestación de contenedores y cómo ayuda a crear y gestionar el ciclo de vida de los entornos de contenedores complejos. kubernetes es la plataforma de orquestación de contenedores más popular. En este módulo, le familiarizaremos con los componentes arquitectónicos clave de Kubernetes, como los componentes del plano de control y los controladores. También aprenderá los fundamentos de los objetos de Kubernetes y cómo funcionan objetos específicos de Kubernetes como Pods, ReplicaSets y Deployments. El CLI de Kubernetes, o "kubectl", se utiliza para manipular objetos y gestionar cargas de trabajo en un cluster de Kubernetes. Le presentaremos algunos comandos básicos de kubectl y explicaremos las ventajas y deficiencias relativas de los comandos imperativos y declarativos. Finalmente, al final de este módulo, utilizará los comandos CLI de kubectl para crear recursos en un cluster de Kubernetes real.
  • Gestión de aplicaciones con Kubernetes
    • En este módulo, aprenderá sobre algunos conceptos clave como los ReplicaSets, la autoescala, las actualizaciones continuas, los ConfigMaps, los Secretos y los enlaces de servicio, y cómo se pueden utilizar para gestionar las aplicaciones de Kubernetes. Aprenderá a utilizar ReplicaSets para escalar aplicaciones para satisfacer la creciente demanda, y luego utilizar la función de autoescalado para hacer esta escalada dinámica, según la demanda. Mediante la función de actualizaciones continuas, aprenderá a publicar actualizaciones en su aplicación y también a retroceder los cambios sin crear ninguna interrupción perceptible para sus usuarios. Almacenar en código variables de configuración e información sensible nunca es una buena idea. Aprenderá a utilizar ConfigMaps y Secrets para proporcionar variables de configuración e información sensible a sus despliegues y mantener su código limpio. Finalmente, realizará un ejercicio práctico para escalar y actualizar las aplicaciones desplegadas en Kubernetes.
  • El ecosistema de Kubernetes: OpenShift, Istio, etc.
    • En este módulo, aprenderá sobre el creciente ecosistema de Kubernetes y se le presentarán algunas herramientas adicionales que funcionan bien con los Kubernetes para apoyar el desarrollo nativo de la nube. Aprenderá sobre la Cloud Native Computing Foundation (CNCF) que alberga a los Kubernetes, y los valiosos recursos que proporciona para navegar por el ecosistema. Obtendrá una comprensión tanto de las similitudes como de las diferencias entre Red Hat OpenShift y los Kubernetes, y cómo es una arquitectura OpenShift. Se familiarizará con las construcciones y BuildConfigs de OpenShift y aprenderá sobre las diversas estrategias de construcción y los disparadores que ofrece OpenShift. Los operadores utilizan recursos y controladores personalizados para ayudar a empaquetar el software y automatizar las tareas dentro de un clúster. En este módulo, aprenderá cómo un operador puede desplegar una aplicación completa con facilidad. Por último, aprenderá sobre Istio, una malla de servicios, que proporciona gestión de tráfico y seguridad, y facilita la comunicación entre los servicios de una aplicación. Al final del módulo, hará un ejercicio práctico en el que usará el oc CLI para realizar comandos en un clúster OpenShift. Usará las capacidades de construcción de OpenShift para desplegar una aplicación desde el código fuente almacenado en un repositorio git.
  • Asignación final
    • Para el Proyecto Final, pondrá en práctica las herramientas y conceptos aprendidos en este curso, y desplegará una sencilla aplicación de libro de visitas con Docker y Kubernetes. Toda la aplicación se desplegará y gestionará en OpenShift.

Plataforma