Skip to content

olcortesb/google-cloud-skills-boost-uc3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 

Repository files navigation

Notas evento BAUC3M & Google and Partners

A continuación notas que compartí con los estudiantes en el transcurso del evento, están divididos por cada laboratorio que trabajamos.

Task 1. Create a Linux VM instance

  • Crear VM instance
    • Console / searchs / VM

ver el codigo al crear la instancia

# Codigo para lanzar la isntancia con el comando de gcloud
gcloud compute instances create VM_NAME \
  --image-project=debian-cloud \
  --image-family=debian-10 \
  --metadata=startup-script='#! /bin/bash
  apt update
  apt -y install apache2
  cat <<EOF > /var/www/html/index.html
  <html><body><p>Linux startup script added directly.</p></body></html>
  EOF'

Verificar la version de linux para que los comandos de apt-get que se van a ejecutar despues funcionen correctamente

Task 2. Enable public access to VM instance

  • Habilitar HTTP
    • Network / firewall
# Revisar el estado de los servicios que tenemos levantados
cat /etc/services
grep -w '80/tcp' /etc/services
grep -w '443/tcp' /etc/services
grep -E -w '22/(tcp|udp)' /etc/services

Task 3. Running a basic Apache Web Server

  • conectarse por ssh a la instancia ( dentro de la misma consola de google cloud)
#!/bin/bash
apt-get update
apt-get install -y apache2
# Verificar que el apache esta instalado 
dpkg -l | grep apache
# un curl de prueba para ver nuestra ip publica
curl ipv4.icanhazip.com

LAB 2: Scale Out and Update a Containerized Application on a Kubernetes Cluster

Pasos previos:

  • Validar que existe el cluster
  • Validar que existe el bucket y el objeto
  • abrir consola google shell
  • Traer el config para acceder al cluster
# Traer las credenciales del cluster a la terminal
gcloud container clusters get-credentials echo-cluster --zone=europe-west4-a
  • Verificar donde esta el config
cd /home/student_00_eb454a988c14/.kube
ls
more config

verificar al version de kubectl

kubectl version
  • ver el estado del cluster
kubectl get nodes -o  wide
kubectl get pods
kubectl get deployment
kubectl get pods -n kube-system
  • Crear deployment
# Verificar que deployment tengo
kubectl get deployment
# Editar deployment
kubectl edit deployment/echo-web
  • (Anexo) Cambiar el editor desde la terminal / abrir el editor web
printenv | grep KUBE_EDITOR
export KUBE_EDITOR=nano

  • Terminar deploy y exponer puerto:
kubectl create deployment echo-web --image=gcr.io/qwiklabs-resources/echo-app:v1
kubectl expose deployment echo-web --type=LoadBalancer --port 80 --target-port 8000
  • Verificar que el puerto funcione
    • Ir a: cluster, workload, Exposing services

Task 1. Build and deploy the updated application with a new tag

  • Verificar Versión de docker
docker --version
  • descargar archivo de google gs
gcloud storage cp gs://qwiklabs-gcp-03-914dea928a54/echo-web-v2.tar.gz .
  • verificar versión de tar
tar --version
  • descomprimir archivo
tar -xf echo-web-v2.tar.gz 
  • verificar archivos que de descomprimieron
cd  echo-web-v2
ls
# Dockerfile  main.go  manifests  README.md
  • Crear imagen docker verificar imagen y subir imagen

Task 2. Push the image to the Container Registry

# El punto "." al final de la primera linea indica el directorio actual
# Suponemos que estamos parados dentro del directorio echo-web-v2 
docker build -t gcr.io/{my-project-id}/echo-app:v2 .
# Verificar que la imagen se creo correctamente
docker images
# Autenticarse en el registry de google
gcloud auth configure-docker
# Subir la imagen
docker push gcr.io/{my-project-id}/quickstart-image

Task 3. Deploy the updated application to the Kubernetes cluster

kubectl create deployment echo-web-v2 --image=gcr.io/qwiklabs-gcp-00-1ab0d71a448a/echo-app:v2

Task 4. Scale out the application

  • Editando el deployment
  • Usando kubectl
kubectl scale deployment echo-web --replicas=2

Task 5. Confirm the application is running

  • Verificar que esta ejecutándose la version 2

LAB 3: Deploy a Compute Instance with a Remote Startup Script

1. Task 1. Create a storage bucket

  • Crear buckets
# Los podemos crear también desde la terminal
gcloud storage buckets create gs://BUCKET_NAME --location=BUCKET_LOCATION
  • Una ves creado:
# Copiar un objeto de google Storage con la terminal:
gcloud storage cp gs://qwiklabs-gcp-03-eb542aca2b0f/resources-install-web.sh .
    

2. Task 2. Create a VM instance with a remote startup script

Dentro del wizard de creación de la instancia ir a:

  • Avanzado
    • Management
      • Labels
        • startup-script-url
          • Pegar url del bucket de gs://

Revisar el código que crea la instancia en la barra lateral derecha

3. Task 3. Create a firewall rule to allow traffic (80/tcp)

  • Ir a la instancia creada
  • Modificar
  • Agregar http como regla de entrada / solo http

Revisar la configuración de network de la instancia

4. Task 4. Test that the VM is serving web content

  • Ver la ip publica que crea para el laboratorio

References:

ANEXO

Conceptos que usamos o estudiamos en los laboratorios:

About

Grupo de notas sobre el evento el dia 26 Abril 2024

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published