Você está na página 1de 6

En este lab, continuaremos con la instancia de Compute Engine

que creamos antes.

Ya instalamos git.

Usemos el comando "git clone" para el repositorio de esta clase.

"https://github.com/ GoogleCloudPlatform/training-data".

Ya está, ahora tenemos nuestro…

Ahora estamos en el directorio de la clase.

Estamos haciendo el "lab2b".

En este punto, queremos ejecutar el programa "transform.py".

Pero se requieren algunos paquetes de Python.

Por ejemplo, "matplotlib", "basemap", "numpy", etc.

Entonces, debemos instalar varios paquetes.

Necesitamos "Python basemap", "numpy" y "matplotlib".

Lo hacemos con "apt-get".

Entonces, escribamos "bash install_missing.sh".

Todos los paquetes de Python que faltan se instalarán.

Se completó la instalación.

Ahora, transferiremos los datos de los terremotos.

La transferencia de esos datos se realiza mediante "wget"

y se invoca esta URL en particular.

Esto es algo que pueden hacer incluso desde su navegador.

Veamos cómo se vería.

Iré a mi navegador y pegaré esa URL.

Ahí está, ese es mi archivo CSV.

Este es el archivo que obtendré

pero lo tendré en Cloud.

Obtendré la hora, la latitud, la longitud la profundidad del terremoto, etcétera.

Hagámoslo entonces.
"Bash ingest.sh"

Ahora, tendremos

"earthquakes.csv"

que es el primer archivo que obtuvimos.

Si vemos las primeras líneas del archivo

veremos que tiene el encabezado y que ocurrieron terremotos

en Kenai, Alaska, y en Running Springs, California, recientemente.

Ahora tenemos "earthquakes.csv", pero es solo un archivo CSV.

Lo que queremos en realidad es un mapa.

Para hacer un mapa, ejecutaremos "transform.py".

Lo que hace es analizar los datos del terremoto.

Luego, les pone un marcador que depende de la magnitud del terremoto.

Luego, crea un archivo de imagen PNG

gracias a la funcionalidad "basemap" en Python.

Ahora, escribamos "python transform.py".

Ahora, hay un nuevo archivo que es "earthquakes.png"

que es básicamente el mapa.

Ahora, tomemos los tres archivos de los terremotos.

"ls earthquakes.*", hay tres archivos de terremotos.

Copiemos los archivos a nuestro depósito.

Para hacerlo, necesitaremos crear el depósito.

Iremos a Cloud Console y, luego, al área de almacenamiento.

Ahí está el almacenamiento y ya tengo varios depósitos.

Pueden crear un depósito.

En este punto, puedo tratar de crear un depósito


y, si ya existe, GCS nos alertará

de que el nombre de depósito está en uso y que escoja otro diferente.

Puedo escoger un nombre y crear el depósito.

Cuando lo haga, podré elegir las zonas, las regiones y todo lo demás.

Puedo configurar que sea globalmente accesible

o que esté solo dentro de una región.

Pero no necesito crear un depósito porque ya lo tengo.

Lo que haré es volver y copiar los datos.

"gsutil cp earthquakes.*"

copiar en "gs://cloud-training-demos/earthquakes/".

Así, los copiará todos.

Una buena práctica es hacerlo con multiprocesos.

Agregaré una "-m", que es para el multiproceso.

Copiaré tres archivos, así que sería bueno tenerlos en paralelo.

Entonces, "gsutil -m cp earthquakes.*"

copiar a "gs://cloud-training-demos/earthquakes/".

En este punto, notarán que los tres archivos

se están copiando a la vez y los tres archivos están ahí.

Ahora, puedo ir a mi navegador

y en los terremotos, hay tres archivos.

Los tres se copiaron a las 12:39.

En este momento, esos tres archivos no son accesibles para nadie más.

Si trato de acceder a esta página.

Veamos.

Ahora, compartamos estos tres archivos públicamente.

Vamos a hacerlo.

Ahora, tengo un vínculo público.

que es: storage.googleapis.com.

Ese siempre es el caso y cloud-training-demos es mi proyecto.


El resto es un lugar para esos archivos

el nombre del BLOB, por así decirlo.

Entonces, "earthquakes/earthquakes.htm".

Notarán que ahora tenemos… estos son los terremotos

que ocurrieron la semana pasada en todo el mundo.

En este punto, ya no se necesita la instancia de Compute Engine.

Ya terminamos.

Entonces, podemos volver a GCP Console

a nuestra instancia de Compute Engine.

Si hacemos clic aquí, podemos borrarla.

Además de borrarla, podemos detenerla.

Esto hace que ya no se pague por el procesamiento en esa instancia.

Sigue existiendo el cargo del disco

pero todo lo que instalé en la máquina, seguirá ahí.

Entonces, puedo detener la instancia y volverla a iniciar.

Puedo presionar "detener"

la instancia se detiene y queda en modo de hibernación.

No usaré esa instancia, pero si la necesito, la puedo iniciar.

Pero en este caso, ya no la necesitaremos

entonces la borraremos.

Borrar la instancia.

Y así terminamos.

Si reflexionan en lo que hemos hecho aquí

la única razón por la que creamos esta instancia de Compute Engine

era para poder hacer algunas tareas menores.

Como la copia con gsutil y algunos programas de Python.

Es realmente un desperdicio crear una máquina virtual nueva

para algo tan simple.

Una mejor manera de hacerlo, hubiera sido usar Cloud Shell.

Para acceder a Cloud Shell, hagan clic en esta flecha en GCP Console.
Hagan clic en esa flecha donde dice "Activar Cloud Shell".

En la parte inferior de la ventana, verán Cloud Shell.

Se está aprovisionando.

Cloud Shell es una máquina virtual.

Es una micro VM gratuita

en el momento de esta grabación.

Básicamente, tienen una máquina virtual.

Y les digo algo interesante.

Una vez que tengo mi máquina virtual

escribiré "Is"

y notarán que ya tengo algo.

¿Por qué?

Porque esto no es como Compute Engine, que cuando se crea una instancia

está totalmente vacía.

Lo que obtengo es "mi directorio principal en la nube".

Todo el mundo obtiene 5 GB de espacio.

Entonces, se puede tener un directorio principal en la nube

con secuencias de comandos comunes, repositorios, etcétera.

Ya tiene git instalado.

A diferencia de una instancia de Compute Engine

que ahora sabemos que se usa para desarrollo.

Ya tiene git y gsutil instalados

al igual que gcloud.

Todo esto ya está instalado.

Python también.

Eso lo hace muy conveniente para hacer tareas rápidas en la nube.

No es necesario iniciar una nueva VM.


Ahora, esta VM en particular se encuentra disponible

solo mientras esté activa la ventana del navegador.

Si cierro la ventana, la VM desaparece.

Es una micro VM.

No es conveniente para hacer procesamiento a gran escala

pero se puede usar

como consola de comando.

Es donde se pueden realizar varias operaciones sin servidor

que se ajustarán a la escala automáticamente.

Cloud Shell es un buen lugar

para tener todos los scripts de lanzamiento, etcétera.

Y saber que se tienen todos los comandos de la nube disponibles.

Además, está detrás del firewall de Google.

Se encuentra en GCP Cloud

y puede aprovechar la velocidad de red

que se obtiene en la nube.

Você também pode gostar