Automatización Avanzada en la Implementación de Elastic Cloud Enterprise con Terraform y Ansible (2023)

En esta publicación, llevaremos la automatización a un nivel superior al abordar la implementación de Elastic Cloud Enterprise (ECE) en la nube con Terraform y Ansible. Esta secuela de nuestra primera entrada detalla cómo extender la automatización a la provisión en la nube con Terraform, superando la manualidad en la provisión de instancias EC2 y la configuración de grupos de seguridad.

Mejorando la Metodología con Terraform

En la primera parte, cubrimos la implementación y configuración de ECE en tres zonas de disponibilidad en AWS utilizando Ansible. Sin embargo, la creación de instancias EC2 y la configuración de grupos de seguridad eran procesos manuales. En esta entrada, elevamos nuestra metodología al utilizar Terraform para automatizar tanto la provisión como la configuración de estas instancias y grupos de seguridad. Además, aprovecharemos Terraform para automatizar la instalación, configuración y ejecución del playbook Ansible desarrollado anteriormente.

Terraform: Más que una Herramienta, una Filosofía

Aclarando malentendidos, Terraform no tiene nada que ver con el dispositivo Genesis, como podría pensarse inicialmente. Según HashiCorp, los desarrolladores, es una herramienta para construir, cambiar y versionar infraestructuras mediante configuraciones de alto nivel: infraestructura como código. Esta característica resulta invaluable, ya que permite tener toda la configuración necesaria para poner en marcha y configurar la infraestructura en archivos de texto que pueden ser controlados por versiones y manipulados programáticamente.

Aplicabilidad en Diversos Proveedores de Nube

Aunque nos enfocamos en AWS en esta entrada, es importante destacar que Terraform no se limita a un único proveedor de nube. Puedes utilizar Terraform para aprovisionar y gestionar recursos en cualquier proveedor de nube. Asegúrate de explorar su lista de proveedores principales y no tan principales. Incluso tenemos un ejemplo utilizando GCP en nuestro repositorio de ejemplos en GitHub.

Pasos a Seguir

Siguiendo el ejemplo de instalación básica en la documentación de ECE, nuestros pasos difieren significativamente. Vamos a resumirlos de la siguiente manera:

Instalar Terraform

Consulta la documentación de HashiCorp para obtener las instrucciones detalladas. Asegúrate también de tener Ansible instalado, como se detalló en la primera entrada.

brew install terraform
brew install ansible

Es importante destacar que la configuración que utilizamos es compatible con la versión 0.12 de Terraform, específicamente la versión 0.12.19.

Definir la Infraestructura

Los pasos en esta tarea son:

  1. Iniciar tu configuración de Terraform.
  2. Explorar los archivos para comprender la configuración.
  3. Establecer algunas variables únicas para tu entorno.

Iniciar tu Configuración de Terraform

Para facilitar el proceso, clona nuestro repositorio de ejemplos en GitHub o descarga los archivos desde allí. Todos los cambios se realizarán en estos archivos.

git clone https://github.com/elastic/examples.git
cd /workspace/github/elastic/examples
cd Cloud\ Enterprise/Getting\ Started\ Examples/aws/terraform

Continuará...

References

Top Articles
Latest Posts
Article information

Author: Patricia Veum II

Last Updated: 22/11/2023

Views: 5773

Rating: 4.3 / 5 (64 voted)

Reviews: 95% of readers found this page helpful

Author information

Name: Patricia Veum II

Birthday: 1994-12-16

Address: 2064 Little Summit, Goldieton, MS 97651-0862

Phone: +6873952696715

Job: Principal Officer

Hobby: Rafting, Cabaret, Candle making, Jigsaw puzzles, Inline skating, Magic, Graffiti

Introduction: My name is Patricia Veum II, I am a vast, combative, smiling, famous, inexpensive, zealous, sparkling person who loves writing and wants to share my knowledge and understanding with you.