Para aquellos que quieren trabajar con python 3.3+ y al momento de correr el script les sale un error de que el módulo boto3 no está. Deben correr en la consola (bash) : sudo pip-3.6 install boto3 😁
Recursos
Resumen
Potencia tus flujos de big data con Python y AWS desde un entorno en la nube listo para trabajar. Aquí verás cómo usar Cloud9, configurar una instancia de EC2 de bajo costo, y crear un script con boto3 para listar buckets en S3, apoyándote en la AWS SDK y la CLI.
¿Por qué usar Python y AWS para big data?
Python te permite orquestar recursos en la nube y aprovechar librerías de procesamiento de datos. Además, se integra de forma nativa con los servicios de AWS.
- AWS ofrece SDKs para varios lenguajes: JavaScript, Python, PHP, .NET, Ruby, Go, Node.js, C++ y Java.
- Con Python y la SDK puedes automatizar recursos de big data en AWS.
- Librerías clave: Pandas, Anaconda, Pipenv, Pyenv para flexibilidad en transformación de datos.
- Integración directa con servicios de big data en AWS usando boto3.
¿Cómo crear un IDE con Cloud9 en AWS?
Cloud9 es un IDE en la nube que te conecta a servicios de AWS sin configurar nada en local. Permite escribir, ejecutar y probar código con runners para múltiples lenguajes y terminal con AWS CLI.
¿Qué configuración de instancia conviene?
- Crea un Environment con nombre descriptivo, por ejemplo: Platzi ENV.
- Elige “Create Environment” y usa una instancia EC2 dedicada.
- Selecciona instancia pequeña por costos: t2.micro en la capa gratuita.
¿Qué opciones de red y permisos aplicar?
- Networking por defecto: VPC y subred de la región (por ejemplo, Virginia, us-east-1).
- Asigna un IAM Role al Environment desde Cloud9: Actions > Instance Settings > Attach/Replace IAM Role.
- El rol permite a Cloud9 interactuar con otros servicios de AWS con permisos controlados.
¿Cómo ahorrar costos en Cloud9?
- Habilita el auto-stop por inactividad (por defecto, 30 minutos).
- Puedes ajustar a horas, días o semana según uso.
¿Cómo ejecutar un script en Python con boto3 para S3?
Desde Cloud9, crea un archivo y usa boto3 para inicializar un cliente S3, pasar la región como argumento y listar buckets. Si olvidas el argumento, el runner marcará error: agrega la región (ej.: us-east-1) y ejecuta de nuevo.
- Abre la terminal e interactúa con la AWS CLI:
aws s3 lspara listar buckets. - Crea un archivo, por ejemplo:
s3.py. - Importa las librerías necesarias: boto3 y sys.
- Inicializa el cliente con
region_namerecibido como argumento. - Llama a
list_buckets()y imprime la respuesta en formato JSON.
# s3.py import sys import boto3 # Región como primer argumento: us-east-1, eu-west-1, etc. region = sys.argv[1] # Cliente de S3 inicializado con región dinámica s3 = boto3.client('s3', region_name=region) # Listar buckets y mostrar respuesta response = s3.list_buckets() print(response)
Ejecuta el script desde el runner de Python en Cloud9 o desde la terminal:
python s3.py us-east-1
Más opciones útiles en Cloud9:
- Usa el panel de runners para seleccionar el lenguaje de ejecución.
- Cambia a bash para comandos de la CLI cuando lo prefieras.
- Verifica la instancia EC2 creada automáticamente al aprovisionar Cloud9.
¿Quieres que revisemos permisos detallados del IAM Role o extender el script para crear y borrar buckets? Cuéntame en comentarios qué necesitas construir.



