miércoles, 10 de mayo de 2017

Abierto el registro para la pasar la certificación de Google Data Engineer.

Los grandes datos proporcionan grandes oportunidades para obtener una ventaja competitiva en múltiples industrias. Sin embargo, la búsqueda de profesionales con las habilidades necesarias para crear capacidades seguras y escalables que produzcan ideas y oportunidades valiosas puede ser un desafío.

En Google, queremos facilitar a los usuarios de análisis de datos obtener resultados rápidamente. Al mismo tiempo, queremos ayudar a los ingenieros de datos a adquirir las habilidades que necesitan para ser tan valiosos como sea posible para aquellos empleadores.

Para ayudar a enfrentar este desafío, abrimos el registro para la certificación de Google Data Engineer el 2 de mayo de 2017. Esta certificación identifica a profesionales técnicos que pueden apoyar a los responsables de la toma de decisiones ayudándoles a comprender y evaluar los datos en el contexto adecuado y en el momento adecuado. Conseguir esta certificación verifica que tiene la experiencia para diseñar analizar  dar escalabilidad y fiabilidad a los datos.

Para saber si eres un buen candidato para esta certificación, visita la Guía del examen de certificación de Google Data Engineer, que te ayudará a determinar tu disponibilidad para la prueba de certificación.

Presentadas las conclusiones sobre GCP

Conclusiones de la encuesta a los GDG sobre GCP.

 

Después de un llamamiento a la comunidad GDG hispana de como  usan y para que usan GCP en una encuesta, las conclusiones son:

  1. Hay grupos que los usan y muy a fondo pero son muy pocos, (suelen tener un GDE de cloud en la zona)
  2. El resto de la comunidad no usa  o piensan que son para mega proyectos

Solución, difundir  el uso de GCP para proyectos del día a día.


Tenéis toda la información en el blog de gdg spain http://blog.gdg.es/2017/05/google-cloud-tltd-ese-gran-desconocido.html

PD: Tenemos un año por delante de trabajo interesante incluso dentro de las comunidades GDG.

martes, 9 de mayo de 2017

Uso de Terraform para administrar Google Cloud Platform


 

La gestión de infraestructura suele implicar una interfaz web o emitir comandos en el terminal. Estos funcionan bien para individuos y equipos pequeños, pero la gestión de la infraestructura de esta manera puede ser problemático para los equipos más grandes con requisitos complejos. A medida que más organizaciones migran a la nube, los CIO buscan soluciones híbridas y multi-nube. La infraestructura como código es una forma de gestionar esta complejidad.

La herramienta de código abierto Terraform,  puede ayudarle a crear, cambiar y actualizar la infraestructura de manera más segura y predecible a escala. Creado por HashiCorp, Terraform codifica APIs en archivos de configuración declarativa que pueden ser compartidos entre miembros del equipo, editados, revisados ​​y versionados de la misma manera que los desarrolladores de software pueden hacer con código de aplicación.

A continuación, se muestra un ejemplo de configuración de Terraform para crear una instancia en Google Cloud. [GCP]

resource "google_compute_instance" "blog" {
  name         = "default"
  machine_type = "n1-standard-1"
  zone         = "us-central1-a"

  disk {
    image = "debian-cloud/debian-8"
  }

  disk {
    type    = "local-ssd"
    scratch = true
  }

  network_interface {
    network = "default"
  }
}

Debido a que se trata de un archivo de texto, puede tratarse de la misma manera que el código de la aplicación y manipularse con las mismas técnicas que los desarrolladores han tenido durante años, incluyendo linting, pruebas, integración continua, despliegue continuo, colaboración, revisión de código, solicitudes de cambio y seguimiento de cambios. , Automatización y más. Esta es una gran mejora sobre la gestión de la infraestructura con wikis y shell scripts!

Terraform separa la fase de planificación de infraestructura de la fase de ejecución. El comando terraform plan realiza una ejecución en prueba que le muestra lo que sucederá. El comando terraform apply realiza los cambios en la infraestructura real.

$ terraform plan
+ google_compute_instance.default
    can_ip_forward:                    "false"
    create_timeout:                    "4"
    disk.#:                            "2"
    disk.0.auto_delete:                "true"
    disk.0.disk_encryption_key_sha256: ""
    disk.0.image:                      "debian-cloud/debian-8"
    disk.1.auto_delete:                "true"
    disk.1.disk_encryption_key_sha256: ""
    disk.1.scratch:                    "true"
    disk.1.type:                       "local-ssd"
    machine_type:                      "n1-standard-1"
    metadata_fingerprint:              ""
    name:                              "default"
    self_link:                         ""
    tags_fingerprint:                  ""
    zone:                              "us-central1-a"


$ terraform apply
google_compute_instance.default: Creating...
  can_ip_forward:                    "" => "false"
  create_timeout:                    "" => "4"
  disk.#:                            "" => "2"
  disk.0.auto_delete:                "" => "true"
  disk.0.disk_encryption_key_sha256: "" => ""
  disk.0.image:                      "" => "debian-cloud/debian-8"
  disk.1.auto_delete:                "" => "true"
  disk.1.disk_encryption_key_sha256: "" => ""
  disk.1.scratch:                    "" => "true"
  disk.1.type:                       "" => "local-ssd"
  machine_type:                      "" => "n1-standard-1"
  metadata_fingerprint:              "" => ""
  name:                              "" => "default"
  network_interface.#:               "" => "1"
  network_interface.0.address:       "" => ""
  network_interface.0.name:          "" => ""
  network_interface.0.network:       "" => "default"
  self_link:                         "" => ""
  tags_fingerprint:                  "" => ""
  zone:                              "" => "us-central1-a"
google_compute_instance.default: Still creating... (10s elapsed)
google_compute_instance.default: Still creating... (20s elapsed)
google_compute_instance.default: Creation complete (ID: default)

Apply complete! Resources: 1 added, 0 changed, 0 destroyed.

Esta instancia se ejecuta ahora en Google Cloud:



Terraform puede administrar más que solo administrar instancias. En Google Cloud Next, se anuncio la compatibilidad con las API de GCP para gestionar proyectos y carpetas, así como la facturación

Con estas nuevas API, Terraform puede gestionar proyectos enteros y muchos de sus recursos.
Al agregar sólo unas pocas líneas de código a la configuración de ejemplo anterior, creamos un proyecto vinculado a nuestra organización y cuenta de facturación, habilitamos un número configurable de API y servicios en ese proyecto y lanzamos la instancia dentro de este proyecto recién creado.

resource "google_project" "blog" {
  name            = "blog-demo"
  project_id      = "blog-demo-491834"
  billing_account = "${var.billing_id}"
  org_id          = "${var.org_id}"
}

resource "google_project_services" "blog" {
  project = "${google_project.blog.project_id}"

  services = [
    "iam.googleapis.com",
    "cloudresourcemanager.googleapis.com",
    "cloudapis.googleapis.com",
    "compute-component.googleapis.com",
  ]
}

resource "google_compute_instance" "blog" {
  # ... 

  project = "${google_project.blog.project_id}" # <-- ...="" code="" new="" option="">


Terraform también detecta cambios en la configuración y sólo aplica la diferencia de los cambios.

$ terraform apply
google_compute_instance.default: Refreshing state... (ID: default)
google_project.my_project: Creating...
  name:        "" => "blog-demo"
  number:      "" => ""
  org_id:      "" => "1012963984278"
  policy_data: "" => ""
  policy_etag: "" => ""
  project_id:  "" => "blog-demo-491834"
  skip_delete: "" => ""
google_project.my_project: Still creating... (10s elapsed)
google_project.my_project: Creation complete (ID: blog-demo-491835)

Apply complete! Resources: 1 added, 0 changed, 0 destroyed.

Podemos verificar que el proyecto se crea con las API apropiadas:


Y la instancia existe dentro de este proyecto.



Este proyecto + instancia puede ser eliminado varias veces. Terraform también puede crear y exportar credenciales de IAM y cuentas de servicio para estos proyectos.

Al combinar las nuevas API de gestión de recursos y facturación de GCP y Terraform, tiene más control sobre los recursos de su organización. Con la separación garantizado entre los proyectos y la reproducibilidad proporcionada por Terraform, es posible eliminar rápidamente entornos enteros. 

Terraform paraleliza tantas operaciones como sea posible, por lo que a menudo es posible lebantar un nuevo entorno en pocos minutos. Y en las organizaciones más grandes con facturación acumulada, los equipos de TI pueden utilizar Terraform para eliminar los entornos preconfigurados vinculados a una sola organización de facturación.

Casos de Uso

Hay muchos desafíos que pueden beneficiarse de una infraestructura como el enfoque de código para gestionar los recursos. Aquí hay algunos que vienen a la mente:

Entornos efímeros
Una vez que haya codificado una infraestructura en Terraform, es fácil eliminar los ambientes adicionales para el desarrollo, control de calidad, puesta en escena o pruebas. Muchas organizaciones pagan miles de dólares cada mes por un ambiente dedicado a la puesta en escena. Debido a que Terraform es paralelo a las operaciones, puede confeccionar una copia de la infraestructura de producción mientras te tomas un cafe. Terraform permite a los desarrolladores desplegar sus cambios en copias idénticas a las de producción, permitiéndoles detectar los errores.

Estampado rápido de proyectos
Las nuevas API de google_project de Terraform permiten el sellado rápido de proyectos. Las organizaciones pueden crear fácilmente proyectos idénticos para comprobación, demostraciones de entornos, nuevas contrataciones, pruebas de código o recuperación de desastres. En las organizaciones más grandes con facturación acumulada, los equipos de TI pueden utilizar Terraform para eliminar entornos preconfigurados vinculados a una única organización de facturación.

Integración continua bajo demanda
Puede usar Terraform para crear entornos de integración continua o crear ambientes siempre que estén creados de entornos terraform sin modificar. Estos entornos sólo se ejecutan cuando se necesitan, reduciendo costos y mejorando la paridad usando las mismas configuraciones cada vez.
Cualquiera que sea su caso de uso, la combinación de las nuevas API de gestión de recursos de Terraform y GCP representa una poderosa nueva forma de gestionar los entornos basados ​​en la nube. Para obtener más información, visite el sitio web de Terraform o revise el código en GitHub.

jueves, 4 de mayo de 2017

Redimensionamiento de VM [Como ahorra en GCP]


Optimización de VM con los agentes Stackdriver.

Despues de publicar las recomedaciones de ajustes y optimización  en beta desde Julio de 2016 y los usuarios lo esta usando de forma eficiente ahorrando y optimizando maquinas.



Hasta hace poco, las recomendaciones de uso para consumo se basaban únicamente en las estadísticas de CPU y memoria visibles para el administrador de máquinas virtuales de Compute Engine.
Este enfoque funciona bien para las CPUs que pueden monitorearse con precisión, pero es bastante limitado para la memoria. Allí, el reto es que el administrador de la máquina virtual no tiene idea de cómo el sistema operativo invitado administra la memoria y qué parte se asigna a los procesos y cachés, etc. Sin entender lo que está sucediendo exactamente dentro de una instancia de VM no se podía recomendar  un configuración  a la hora de crear una VM ya que el uso real de la memoria no tenia  visibilidad sobre cómo se consume la memoria RAM.
 

Aquí es donde entra el Agente Stackdriver. Cuando se instala en su instancia de VM, el Agente Stackdriver exporta métricas adicionales a nuestro sistema monitor.
Estas métricas permiten que el sistema "Rightsizing Recommendations" determine con precisión la cantidad de memoria asignada por los procesos frente a cachés del sistema operativo y la cantidad de memoria que liberó. Esto, a su vez, nos permite calcular recomendaciones que se correspondan más estrechamente con la carga de trabajo real.
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQELoK4hNLg5WCwiWH7A4UrrCETZUEI1GdJ3osfZ6GYzBRYW5Nm47i7cwKSPwXi39LYupQiPk2A4jsBIBwYD6agSGlACpgM5MJ5_5lIZ00ggWwYTEpVZ_yIRBbGANju3t3IInWyTtEd1YY/s1600/rightsizing-3.png
Recomendaciones de Stackdriver  basadas en los agentes con un vistazo a la memoria RAM utilizada.

¿Existe un beneficio real para el usuario? Al comparar las recomendaciones de RAM hechas con y sin el Agente Stackdriver, vemos que, en promedio, las recomendaciones basadas en agentes ahorran 50% más de memoria y, en algunos casos, incluso más. El agente ofrece una mejor visibilidad, proporcionando las recomendaciones de uso con  más y mejores datos con los que trabajar, lo que resulta en ahorros tangibles para los usuarios.

Si desea comenzar a usar las recomendaciones de Agente Stackdriver, simplemente instale el agente en sus máquinas virtuales. Las métricas adicionales se utilizarán automáticamente para los ajustes y no necesitará una cuenta Stackdriver.