-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcompute.tf
78 lines (66 loc) · 2.03 KB
/
compute.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
# Datacenter
resource "vsphere_datacenter" "datacenter" {
name = "Datacenter"
}
resource "vsphere_compute_cluster" "compute_cluster" {
name = "Wells"
datacenter_id = vsphere_datacenter.datacenter.moid
host_managed = true
drs_enabled = true
drs_automation_level = "fullyAutomated"
ha_enabled = true
}
# Hosts
resource "vsphere_host" "cluster_hosts" {
for_each = { for i in var.cluster_hosts : i.name => i }
hostname = each.value.ip
username = each.value.user
password = each.value.password
#license = var.licenses.esxi
cluster = vsphere_compute_cluster.compute_cluster.id
thumbprint = each.value.thumbprint
}
resource "vsphere_host" "standalone_hosts" {
for_each = { for i in var.standalone_hosts : i.name => i }
hostname = each.value.ip
username = each.value.user
password = each.value.password
#license = var.licenses.esxi
datacenter = vsphere_datacenter.datacenter.moid
thumbprint = each.value.thumbprint
}
# Resource Pools
resource "vsphere_resource_pool" "tkg" {
name = "tkg"
parent_resource_pool_id = vsphere_compute_cluster.compute_cluster.resource_pool_id
}
resource "vsphere_resource_pool" "hashistack" {
name = "hashistack"
parent_resource_pool_id = vsphere_compute_cluster.compute_cluster.resource_pool_id
}
# Folders
resource "vsphere_folder" "tkg_folder" {
path = "tkg"
type = "vm"
datacenter_id = vsphere_datacenter.datacenter.moid
}
resource "vsphere_folder" "bastion_folder" {
path = "bastion"
type = "vm"
datacenter_id = vsphere_datacenter.datacenter.moid
}
resource "vsphere_folder" "packer" {
path = "Packer"
type = "vm"
datacenter_id = vsphere_datacenter.datacenter.moid
}
resource "vsphere_folder" "hashistack" {
path = "HashiStack"
type = "vm"
datacenter_id = vsphere_datacenter.datacenter.moid
}
resource "vsphere_folder" "vault" {
path = "Vault"
type = "vm"
datacenter_id = vsphere_datacenter.datacenter.moid
}