Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/eriknathan/terraform-ec2
Código Terraform para criar uma instância EC2 e toda a rede necessária para acessá-la pela porta 22.
https://github.com/eriknathan/terraform-ec2
Last synced: 3 days ago
JSON representation
Código Terraform para criar uma instância EC2 e toda a rede necessária para acessá-la pela porta 22.
- Host: GitHub
- URL: https://github.com/eriknathan/terraform-ec2
- Owner: eriknathan
- License: mit
- Created: 2024-08-13T22:22:27.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-08-14T16:56:32.000Z (5 months ago)
- Last Synced: 2024-11-06T05:29:19.815Z (about 2 months ago)
- Language: HCL
- Size: 8.79 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# terraform-ec2
Código Terraform para criar uma instância EC2 e toda a rede necessária para acessá-la pela porta 22.---
## Network Module
Este código possui um módulo de rede que é chamado a partir do modules.tf (main) do terraform.A infraestrutura de rede consiste em:
- VPC
- Subnet
- Internet Gateway
- Route Table
- Route Table Association
- Security Group (with port 22 open)---
## EC2 Instance
O código ec2-instance.tf cria:- Uma instância ec2 simples com IP público para que possa ser acessada pela porta 22
- Um par de chaves ssh na AWS que deve ser criado previamente em uma máquina Linux.---
## Variables
A configuração principal possui um arquivo variables.tf, é necessário informar essas variáveis a partir da linha de comando ou com um arquivo **terraform.tfvars**.- example terraform.tfvars structure:
```hcl
cidr_block = "10.0.0.0/16"
project_name = "windowsnaopresta"
instance_ami = "ami-04a81a99f5ec58529"
key_name = "nomedachave"
key_path = "caminhodachave"
meu_ip = "111.000.111.222"
desc_meu_ip = "Descrição do IF"
```---
## Requirements
| Name | Version |
|------|---------|
| [aws](#requirement\_aws) | 5.61.0 |## Providers
| Name | Version |
|------|---------|
| [aws](#provider\_aws) | 5.61.0 |## Modules
| Name | Source | Version |
|------|--------|---------|
| [network](#module\_network) | ./modules/network | n/a |## Resources
| Name | Type |
|------|------|
| [aws_instance.arcanjo_ec2](https://registry.terraform.io/providers/hashicorp/aws/5.61.0/docs/resources/instance) | resource |## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [cidr\_block](#input\_cidr\_block) | Bloco CIDR de rede a ser usado para a VPC. | `string` | n/a | yes |
| [desc\_meu\_ip](#input\_desc\_meu\_ip) | Descrição do Ip Atrelado | `string` | n/a | yes |
| [instance\_ami](#input\_instance\_ami) | AMI da Instancia | `string` | n/a | yes |
| [key\_name](#input\_key\_name) | Nome da Chave | `string` | n/a | yes |
| [key\_path](#input\_key\_path) | Caminho da Chave | `string` | n/a | yes |
| [meu\_ip](#input\_meu\_ip) | IP para liberar acesso via ssh no SG | `string` | n/a | yes |
| [project\_name](#input\_project\_name) | Nome do projeto para usar como nome dos recursos | `string` | n/a | yes |## Outputs
| Name | Description |
|------|-------------|
| [public\_ip](#output\_public\_ip) | n/a |