Equipe - 2 programadores e meio

Felipe Gabriel S. de Almeida
João Luís R. D. Vignoli
Miguel Kauã de Pietro

Ideia Geral
Inicialmente buscamos criar um sistema usando o Cloud da Magalu com o intuito de desenvolver um sistema que fosse capaz de integrar dispositivos IoTs além de disponibilizar os dados desses dispositivos, buscando também simplificar o processo de criação dessa infraestrutura.

Ponta pé inicial
Primeiramente buscamos compreender o funcionamento da CLI e da ferramenta “terraform” onde demos nossos primeiros passos para configuração do nosso ambiente, momento esse que tivemos muita dificuldade na configuração e instalação das ferramentas.

Desenvolvimento
Ao decorrer do tempo conseguimos superar nosso dificuldades iniciais e finalmente conseguimos configurar o primeiro modelo de VM que nos motivou a continuar. Dessa forma conseguimos concluir o corpo da ideia que se baseava na criação de um servidor MQTT onde conseguimos acessar e enviar dados facilmente, porem não conseguimos concluir a disponibilização desses dados. Com o passar do tempo foi necessária a criação de um arquivo de saída para facilitar a visualização das informações da VM (Output.tf), o que nos permitiu otimizar parte do tempo que seria gasto na procura dessas informações.

Main.tf

terraform {
    required_providers {
        mgc = {
        source = "MagaluCloud/mgc"
        }
    }
}

provider "mgc" {
    alias = "sudeste"
    region = "br-se1"
    #teapi_key = "4ecd89ea-e283-44a9-88f3-26c10571d4a8"
}

resource "mgc_virtual_machine_instances" "testando_virtual_machine" {
    provider = mgc.sudeste
    name = "testando_gerenciamento_de_dados"
    machine_type = {
      name = "BV1-1-10"
    }
    image = {
      name = "cloud-ubuntu-22.04 LTS"
    }

    network = {
      associate_public_ip = true
      delete_public_ip = false
      interface = {
      security_groups = [{
        id = "4aa1a237-2d57-439b-bf6a-177ddbace4cb"
      }]
    }
    }

    ssh_key_name = "testegerenciamento" 

    provisioner "remote-exec" {
    inline = [
      "sudo apt-get update -y && sudo apt-get update -y",
      "sudo apt-get install mosquitto -y",
      "touch server.conf",
      "cat<<EOF > server.conf",
      "listener 1883",
      "allow_anonymous true",
      "EOF",
      "ps -ef | grep mosquitto",
      ""
    ]
    connection {
      type        = "ssh"
      user        = "ubuntu"
      private_key = file("C:/Users/maria/.ssh/id_rsa")
      host        = mgc_virtual_machine_instances.testando_virtual_machine.network.public_address
    }
    }
  }

Output.tf

output "public_ip" {
  value = mgc_virtual_machine_instances.testando_virtual_machine.network.public_address
  description = "IP público da VM"
}

Conclusão
Gostariamos de agradeçer a MagaluCloud pela oportunidade de participar de Hackton maravilhoso que com certeza agregou muito na vida de todos os participantes, além disso, gostariamos de destacar esse evento foi muito importante para nos mostrar um pouco da realidade empresarial e seus desafios. Além disso, embora gostaríamos de ter finalizado o projeto disponibilizando uma API que fosse capaz de disponibilizar os dados capturados dos dispositivos conectados ao Cloud.

2 curtidas