Configuración de clúster en AWS Redshift
Clase 13 de 25 • Curso de Fundamentos de ETL con Python y Pentaho
¡Hola, te doy la bienvenida! Me da gusto encontrarte en este curso. Soy Alexis, profesor de AWS en Platzi.
Te acompañaré para crear un clúster y su base de datos en AWS Redshift y un bucket en S3. Los usaremos para el target del ETL de este curso.
Antes de continuar, quiero recordarte que es importante que tengas el conocimiento de lo que aprendemos en estos dos cursos donde tengo el gusto de ser tu profe:
- Curso de Introducción a AWS: Fundamentos de Cloud Computing
- Curso de Introducción a AWS: Cómputo, Almacenamiento y Bases de Datos
Te servirá para que este proceso te sea mucho más familiar y para que ya tengas creada tu cuenta de AWS.
Si ya lo tienes sigue estos pasos para configurar el target de tu ETL.
Entra a AWS Free Tier
- Abre el sitio web de AWS Free Tier aquí.
⚠️Es importante recordar que el free tier tiene un período de 1 año para que no te cobre AWS.
- Dentro del buscador de detalles de nivel gratuito busca "redshift".
- Observa que podrás tener una prueba gratuita de 2 meses de AWS Redshift al elegir un nodo tipo DC2.Large.
⚠️⚠️⚠️ Recuerda que es muy muy importante que elijas ese tipo de nodo DC2.Large al crear el clúster de AWS Redshift. Para que sea gratuito por 2 meses, de lo contrario se te harán cobros a tu tarjeta.
Ya que sabes esto, avanza a crear el clúster en los siguientes pasos.
Creación de clúster en AWS Redshift
1. Inicia sesión en la consola de AWS
Da clic en iniciar sesión en la parte superior derecha o aquí.
2. Elige tu región
Después de iniciar sesión en tu cuenta de AWS elige la región donde crearás el clúster en la parte superior derecha de la consola de AWS.
Te sugiero elegir la región de Oregon (us-west-2) que es la que usamos en este curso, pero puedes seleccionar la que mejor te convenga. Solo recuerda cual es para que la pongas al cargar los datos desde la notebook de Python.
3. Buscar el servicio de Redshift
Busca "redshift" en el cuadro de búsqueda de servicios y da clic en la opción Amazon Redshift que aparece.
4. Ve al panel de clústeres
Dentro de la consola de Redshift ve al panel de la izquierda que se despliega con el ícono de las tres rayas horizontales. Selecciona la opción de Clústeres.
5. Crea el clúster
Dentro del panel de clústeres da clic en el botón naranja Crear clúster.
En el resumen de configuración calculada deberás ver que el tipo de nodo sea **dc2.large. ⚠️Recuerda que esto es importante de verificar para que sea gratuito el uso de tu Redshift durante 2 meses.
⚠️Recuerda guardar en un lugar seguro estas credenciales, como en un gestor de contraseñas, para que puedas conectarte al clúster.
Nombra demoplatzi al Nombre de usuario y pon una contraseña segura.
⌛Espera hasta que el estado de creación del clúster lo marque en verde como Available. Esto puede demorar varios minutos, para revisar el estado da clic en el botón refrescar de la flecha en círculo.
6. Modificar las reglas de seguridad del clúster
Entra al clúster dando clic en el nombre dentro del panel de clústeres.
Baja hasta la sección de Configuración de red y seguridad y da clic sobre el Grupo de seguridad de la VPC.
Da clic en el botón inferior Agregar regla
⚠️Esto es algo que no debe hacerse en entornos de producción. En este caso lo harás al ser un demo con fines educativos, para evitar complicaciones de configuración adicional de accesos de seguridad.
7. Conéctate a Redshift desde tu gestor de bases de datos.
Abre tu gestor, ya sea DataSpell, DBeaver o pgAdmin.
Dentro de tu gestor crea una nueva conexión a una base de datos de tipo Redshift. Es muy importante buscar la opción de Redshift.
En el caso de DataSpell ve a la pestaña de Database y en ella da clic en el botón de signo de +.
- Host: es la url del punto de enlace que copiaste eliminando la parte final ":5439/dev". Tendrá una forma como server.redshift.amazonaws.com
- Port: 5439
- User: demoplatzi o el que hayas puesto.
- Password: la que le hayas puesto a tu clúster de AWS Redshift cuando lo creaste en el paso 5.
- Database: dev
Una vez que indique que la conexión es exitosa, da clic en el botón OK, o en el botón disponible de otro gestor, para aceptar la conexión.
Creación de bucket de almacenamiento en AWS S3
Para el ETL crearás un bucket en S3 donde temporalmente almacenarás unos archivos CSV donde guardarás los datos de las tablas que has creado en el proceso de transformación.
1. Entra al panel de S3 desde la consola de AWS.
Busca "S3" en el buscador de la consola y selecciona la opción de S3.
Avanza a la siguiente clase para crear las tablas donde cargarás los datos de los archivos CSV que crearás durante el proceso de carga y donde configurarás ciertas variables de entorno por seguridad. ⚙️➡️