Skip to content

Provisionamento de Vms em ambiente KVM via terraform e ansible-playbook para configuração ambiente Cloudera 5.16.2.

Notifications You must be signed in to change notification settings

mchristian279/ConfigHostCloudera5.16.2

Repository files navigation

Provisionar e Configurar Ambiente Cloudera5.16.2

Provisionamento de 3 hosts em ambiente KVM via terraform e ansible-playbook para configuração dos hosts Cloudera 5.16.2.

Tecnologias Utilizadas:

  • Terraform
  • Ansible
  • Linux
  • KVM

Pré requisitos:

  • KVM libvirt
  • golang v1.13
  • Terraform v0.12
  • Plugin terraform-provider-libvirt
  • Ansible
  • Python
  • Psycopg2

Terraform:

  • machine.tf
  • output.tf
  • variables.tf

Ansible:

  • playbook.yml
  • inventory.hosts

Como Utilizar:

variables.tf este arquivo de variáveis permitirá realizar as personalizações necessárias para adaptação de outras necessidades. Abaixo uma breve explicação:

Variável responsável por definir o número de vms a serem provisionadas:

variable "instance_count" {
  default = "3"
}

Variável responsável por definir a imagem base do S.O (qcow2):

variable "disk_img" {
  default = "file:///Dados/Vms/centos7.0"
}

Variável responsável por definir a rede a ser provisionada:

variable "vm_network_addresses" {
  description = "Configura Rede"
  default     = "192.168.10.0/24"
}

Variável responsável por definir o ip estático das vms (OBS: existem 3 ips pois, a variável instance_count foi definida com o valor 3):

variable "vm_addresses" {
  default = {
    "0" = "192.168.10.10"
    "1" = "192.168.10.11"
    "2" = "192.168.10.12"
  }

}

Variável responsável por definir o nome da rede a ser provisionada no KVM:

variable "vm_network_name" {
  description = "Define o nome da rede no KVM"
  default     = "clustercloudera"
}

Variável responsável por definir o domínio dos hosts:

variable "domain_name" {
  default = "lab.local"
}

Provisionar Vms Terraform:

OBS:foi cadastrado previamente no arquivo /etc/hosts da estação de trabalho que dispara os scripts de provisiomaneto do ambiente os ips e nomes dos hosts:


192.168.10.10 cloudera0
192.168.10.11 cloudera1
192.168.10.12 cloudera2

validar a estrutura dos arquivos terraform:
$ terraform validate

revisar o plano de execução:
$ terraform plan

provisionar ambiente:
$ terraform apply -auto-approve

resultado esperado:

KVM:

Resultado do provisionamento dos hosts KVM

rede provisionada:

vms provisionadas:

Cloudera Manager:

Resultado esperado:

About

Provisionamento de Vms em ambiente KVM via terraform e ansible-playbook para configuração ambiente Cloudera 5.16.2.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages