miércoles, 3 de enero de 2018

Etiquetando con etiquetas DataProc Clusters

En google cloud español publicamos el 2018 Jan 03 por James Malone

Actualice sin paradas Spark & ​​Hadoop, ejecute pruebas A / B, divida el trabajo entre clústeres gracias a las etiquetas de usuario de Cloud Dataproc


Es posible que sea necesario intercambiar los clústeres Apache Spark y Apache Hadoop sin interrumpir los flujos de trabajo y las aplicaciones existentes. Por ejemplo, hay algunos casos en los que es posible que desee intercambiar un clúster ejecutando Spark o Hadoop para:
  • Pruebas o actualizaciones a nuevas versiones de Spark y Hadoop
  • Ejecute pruebas A / B entre clústeres para probar el rendimiento u otros cambios
  • Dividir el trabajo entre los clusters

Intentar hacer esto puede requerir lógica de opquestración complicada o frágil y puede implicar tiempo de inactividad. Sin embargo, con las etiquetas de usuario de Cloud Dataproc, puede ser fácil intercambiar clústeres o compartir trabajo entre clústeres.

Como ejemplo, digamos que quiere denotar sus clústeres de producción y solo enviar trabajo a esos clústeres. Esto es fácil de hacer. En primer lugar, debe crear un clúster con una etiqueta para indicar que se trata de un clúster de producción:

gcloud dataproc clusters create <cluster_name> \
    --labels environment=production
Ahora puede enumerar los clusters que tienen esta etiqueta activa:

gcloud dataproc clusters list \
 --filter "status.state=ACTIVE AND labels.environment=production"
Si tiene múltiples clústeres con esta etiqueta, puede implementar cualquier lógica que desee seleccionar. Cuando desee eliminar este clúster de la flota de producción, solo necesita eliminar o modificar la etiqueta:

gcloud dataproc jobs clusters update <cluster_name> \
 --labels environment=offline
Usemos el caso donde desee que A / B pruebe una nueva versión de Apache Spark con trabajos existentes. En ese caso, podría tener dos clústeres con el entorno = etiqueta de producción y distribuir el 5% del trabajo al nuevo clúster Spark en su herramienta de envío (script personalizado, Apache Airflow, etc.)

Esto también le permite drenar con gracia un grupo de todos los trabajos pendientes antes de eliminarlo simplemente quitando la etiqueta.

¡Esto significa que no necesita cambiar su lógica de envío de trabajos cada vez que quiera cambiar clusters!
________