Introducción a Google Kubernetes Engine

1

Introducción a Google Kubernetes Engine

2

¿Qué es Kubernetes?

Repaso de Docker

3

Qué son los contenedores

4

Qué es Docker

5

Comandos Básicos de Docker

6

Creación del contenedor de Docker

Conceptos Basicos

7

Cluster y nodos ¿Qué son y cómo funcionan?

8

¿Qué son los Pods?

9

Deployments

10

Pods y Deployments en practica

11

Servicios

12

Servicios en práctica

13

Servicios en práctica / Loadbalancer

14

Servicios en práctica / Node Port

15

Crea tu primer Hola Mundo en Google Kubernetes Engine

Conceptos intermedios

16

Archivos descriptivos de infraestructura teoria y práctica

17

Labels teoría

18

Namespaces teoría

19

Labels y Namespaces explicación gráfica

20

Labels y Namespaces en práctica

21

Deployment Avanzado (Blue-green y Canary Deployment)

22

Implementando Deployment avanzados

23

Terminando de implementar nuestro canary deployment

24

Volúmenes

25

Volúmenes en práctica

26

RETO: Crea un blue green deployment

Arquitectura de una app más robusta

27

Desplegar una aplicación Stateful Teoría

28

Desplegar una aplicación Stateful Práctica

29

Auto Scaling teoría

30

Auto Scaling en práctica

31

Node Pools teoría

32

Node Pools práctica

Contenido Bonus

33

Generando un certificado https con Let's Encrypt para GCP

34

Certificado https

35

Service mesh con Istio

36

StackDriver

37

CI/CD con Cloud Builder

38

CI/CD con Cloud Builder práctica

39

Knative, GKE Serverless Addon

40

Comandos utilizados en el curso

41

Buenas prácticas

Comandos utilizados en el curso

40/41

Lectura

Comandos Básicos de Docker

Creación del contenedor de Docker

Pods y Deployments en práctica

Todo fue por interfaz gráfica

Servicios en práctica

Todo fue por interfaz gráfica

Archivos descriptivos de infraestructura teoría y práctica

  • kubectl create -f deployment.yaml
  • kubectl create -f service.yaml

Labels y Namespaces en práctica

  • kubectl get namespaces
  • kubectl create namespace desarrollo
  • kubectl --namespace=desarrollo create -f deployment.yaml

Implementando Deployment avanzados

Todo fue por interfaz gráfica

Volúmenes en práctica

  • touch volume.yaml
  • contenido del archivo
    apiVersion: v1
    kind: Pod
    metadata:
    name: test-pd
    spec:
    containers:
    • image: tomcat:8
      name: test-container
      volumeMounts:
      • mountPath: /test-pd
        name: test-volume
        volumes:
    • name: test-volume
      #This GCE PD must already exist.
      gcePersistentDisk:
      pdName: my-data-disk
      fsType: ext4
  • kubectl create -f volume.yaml

Desplegar una aplicación Stateful Práctica

  • touch mysql.yaml
  • Contenido del archivo mysql.yaml
    apiVersion: v1
    kind: Pod
    metadata:
    name: mysql
    spec:
    containers:
    • image: mysql:5.6
      name: test-container
      env:
      • name: MYSQL_ROOT_PASSWORD
        value: password
        ports:
      • containerPort: 3306
        name: mysql
        volumeMounts:
      • mountPath: /var/lib/mysql
        name: mysql-persistent-storage
        volumes:
    • name: mysql-persistent-storage
      gcePersistentDisk:
      pdName: disk-2
      fsType: ext4

apiVersion: v1
kind: Service
metadata:
name: mysql
spec:
ports:

  • port: 3306
    selector:
    app: mysql
    clusterIP: None
  • kubectl create -f mysql.yaml

Auto Scaling en práctica

  • sudo apt-get install apache2-utils
  • ab -t 10 -n 100000 -c 10 <ip loadbalancer>

Node Pools práctica

  • touch node_pool.yaml
  • Contenido del archivo node_pool.yaml
    apiVersion: v1
    kind: Pod
    metadata:
    name: nginx
    labels:
    env: test
    spec:
    containers:
    • name: nginx
      image: nginx
      imagePullPolicy: IfNotPresent
      nodeSelector:
      name: pool1
  • kubectl create -f node_pool.yaml
  • touch pod1.yaml
  • Contenido del archivo pod1.yaml
    apiVersion: v1
    kind: Pod
    metadata:
    name: nginx
    labels:
    env: test
    spec:
    containers:
    • name: nginx
      image: nginx
      nodeSelector:
      name : pool1
  • kubectl create -f pod1.yaml

Generando un certificado https

Todo fue por interfaz gráfica

CI/CD con Cloud Builder práctica

Aportes 7

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Muy bien por esta sección!!! Ojala lo hagan para otros cursos. Mas allá que uno toma notas, nunca esta demás tener un machete completo 😃

porq no hicieron CD en el curso?

Gracias.

Excelente curso! Muchas gracias profesor Carlos.
Hablando de la oferta de cursos de Platzi en relación a cloud providers el orden de “buen nivel” pienso que es el siguiente:

  1. GCP
  2. AWS
  3. Azure

¡Buen Articulo! Para realizar el trabajo de forma correcta.

Gracias poreste resumen de comandos

GENIO, excelente seccion y muy buen curso.