Conecta tu entorno local de Apache Zeppelin con datos en AWS usando un developer endpoint de AWS Glue. Aquí verás el flujo completo: desde Glue Notebooks hasta la generación y carga de la llave pública SSH, con parámetros clave como DPUs, rol de IAM y opciones de red.
¿Cómo crear un developer endpoint en AWS Glue con Zeppelin Notebook?
Para usar Zeppelin con Glue, se inicia en la consola de AWS. La ruta es clara y evita confusiones con SageMaker, que está orientado a machine learning.
Entra a la consola de AWS y busca Glue.
En el menú izquierdo, abre Notebooks.
Verás dos opciones: SageMaker Notebooks y Zeppelin. Para este caso, elige Zeppelin.
Clic en “Create a Zeppelin Notebook”. Serás llevado a developer endpoints.
Clic en Add Endpoint y nómbralo, por ejemplo: devplazzy.
Asigna un IAM role con permisos sobre Glue y S3. Si no existe, usa “Create IAM Role” desde la interfaz.
¿Qué rol de IAM y permisos se necesitan?
El rol debe permitir acceso a los servicios de Glue y a los buckets de S3 donde está la data. La interfaz de AWS permite crearlo en el momento y luego seleccionarlo para el endpoint.
¿Cómo definir DPUs y librerías desde S3?
Para developer endpoints se recomienda una capacidad de cómputo pequeña para no consumir muchos recursos. En el ejemplo se usan 5 DPUs.
Puedes referenciar librerías de Python alojadas en S3 para cargarlas en el endpoint. También se mencionan librerías basadas en “hard”.
¿Qué opciones de red usar: VPC o configuración genérica?
La red puede dejarse con información genérica para conectarte de forma directa. Sin embargo, si tu organización usa entornos segmentados, puedes elegir una VPC, su tipo de conexión y la subred específica.
El despliegue en VPC aplica cuando tienes ambientes públicos y privados y necesitas controlar el networking.
Si no hay requerimientos especiales, continúa con la configuración por defecto y avanza al siguiente paso.
¿Cómo generar y cargar la llave SSH para el endpoint?
Para conectar tu Zeppelin local al developer endpoint, se requiere una llave pública. Se genera localmente y se carga la parte pública en Glue Notebooks; la llave privada se quedará en tu equipo para la conexión.
¿Qué comandos usar en consola para crear las llaves?
En la consola local, partiendo desde el directorio de Zeppelin, se sube un nivel y se generan las llaves:
# moverse un directorio arribad
cd..# listar para verificar ubicaciónls# generar las llaves pública y privadassh-keygen
# cuando lo solicite, ingresa el nombre: plazyyave# no es necesario agregar más datos# verificar archivos generadosls# deberías ver: plazyyave (privada) y plazyyave.pub (pública)# ver el contenido de la llave públicavim plazyyave.pub
Copia el contenido completo de plazyyave.pub.
En el developer endpoint, pega la llave pública en el campo correspondiente.
Alternativa: usa la opción Upload y selecciona el archivo público desde la carpeta donde lo creaste.
¿Cómo finalizar el alta del endpoint y conectar?
Tras pegar o subir la llave pública, continúa con “Next” y luego “Finish”.
El servicio iniciará el aprovisionamiento del developer endpoint.
Para conectarte más adelante al endpoint, usarás la llave privada que quedó en tu equipo.
¿Qué habilidades y conceptos aplicas aquí?
Configuración de Glue Notebooks con Zeppelin para análisis desde entorno local.
Asignación de IAM role con permisos de Glue y S3.
Ajuste de DPUs para optimizar recursos, ejemplo con 5 DPUs.
Carga de librerías de Python desde S3 al endpoint.
Elección de VPC y subred cuando hay segmentación de red.
Generación y uso de llaves SSH: pública para Glue, privada para la conexión.
¿Te resultó útil esta guía práctica para unir Zeppelin y AWS Glue? Comparte tus dudas o experiencias en los comentarios.
En mayo 2023 no me fue posible seguir con ésta clase porque ya no encontré el menú para crear los "Development Endpoints"
me paso, igual que a ti pero ahora no se por donde continuar
buenas… si comienzo a usar este servicio (Zeppelin), como serian los cobros al usarlo con AWS ??
Yo configure dos endpoint mientras aprendida y a las 12 horas me di cuenta que me estaban cobrando por eso. Ten cuidado de no dejarlos en _Ready _si no los vas a usar, mientras se encuentre en ese estado te va a estar facturando. Una solución puede ser borrarlo si no lo usas.
lo mismo que dije en comentarios anteriores y para los que vengan , si tienen windows armense de paciencia , las maquinas virtuales , instalarlas y hacerles el setup son un dolor de cabeza , si pueden pasense a linux es mucho mejor y no perdes tanto tiempo , si intentan con docker haganlo desde el wsl de linux , porque de ubuntu tambien les va a pasarlo mismo
La sentencia zeppeling-daemon sart funciona en windows ejecutada desde un MINGW64.?
Esa misma pregunta también la tengo yo, esperemos nos puedan apoyar.
Saludos
ese comando parece ser para linux (extensión sh).
para windows deberían usar:
bin\zeppelin.cmd
Buenas tardes
Creo que me equivoque con esta capacitación, por cuanto es muy técnico y no tengo los conocimientos mínimos, que capacitación basica me recomiendan ?
Esta opción no existe en la consola desde Marzo de 2023
Apache Zeppelin es compatible con OpenJDK 11 - 64 bits
Muy bien
claro y conciso, gracias
fully executed
Al usar Apache Zeppelin de forma local y al conectarlo con AWS, las ejecuciones de los scripts que corramos en local generan billing de todas maneras??
Yo creo que te van a cobrar sólo por lo que se procese dentro del servicio Zeppelin (los scripts creo que sólo ayudan a enviar la data), pero a partir de la carga, allí viene la transformación y allí es donde posiblemente cobren por el uso.