-
Notifications
You must be signed in to change notification settings - Fork 80
/
Copy path850469-Vishnuhs.tf
91 lines (77 loc) · 1.6 KB
/
850469-Vishnuhs.tf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
variable "web_server_ami" {
type="map"
default={
"us-east-1"="ami-b29108ju"
"us-east-2"="ami-0iyj7279"
"us-west-1"="ami-92duc382"
"us-west-2"="ami-8nb75sl8"
}
}
variable "aws_access_key" {}
variable "aws_secret_key" {}
variable "aws-region" {
default="us-region-1"
}
provider "aws" {
access_key="${var.aws_access_key}"
secret_key="${var.aws_secret_key}"
region="${var.aws_region}"
}
resource "aws_instance" "web_server" {
ami="${var.web_server_ami}"
instance_type="t2.micro"
}
resource "aws_key_pair" "key_pair"{
key_name="${var.aws.access_key}"
public_key="${file("/home/aws_rsa.pub")}"
}
resource "aws_default_subnet" "subnet"{
available_zone="us-east-1a"
}
resource "aws_security_group" "web_security_group" {
name="w s g"
ingress {
from_port=0
to_port=22
protocol="tcp"
cidr_blocks=["0.0.0.0/0"]
}
egress {
from_port=0
to_port=0
protocol="-1"
cidr_blocks=["0.0.0.0/0"]
}
}
resource "aws_instance" "web_server" {
ami="${var.web_server_ami}"
instance_type="t2.micro"
subnet_id="${module.vpc.public_subnet[0]}"
}
provisioner "remote_exec" {
inline=[
chmod 600 groups
useradd g user
]
}
connection{
type="ssh"
user="ec2-user"
private-key="${file("/home/learntf/aws_rsa")}"
}
data "template_file" "example_file" {
template="$file(/path/terraform.tf)"
vars
{
username="user"
publickey="key"
}
}
module "vpc"{
source="terraform_aws_modules/aws"
cidr="10.0.0.0/80"
private_subnet=["10.0.1.0/20","10.0.2.0/20","10.0.3.0/20"]
public_subnet=["10.0.101.0/20","10.0.102.0/20","10.0.103.0/20"]
enable_nat_gateway=true
enable_vpn_gateway=true
}