chore: save current changes
This commit is contained in:
Executable
+87
@@ -0,0 +1,87 @@
|
||||
data "vcd_external_network_v2" "nsxt-ext-net" {
|
||||
name = var.providerGateway
|
||||
}
|
||||
|
||||
<% if (vdcType == "vdcGroup") { %>
|
||||
data "vcd_vdc_group" "groupvdc" {
|
||||
name = var.vdcGroupName
|
||||
}
|
||||
|
||||
data "vcd_org_vdc" "mainvdc" {
|
||||
name = var.vmwareVdc
|
||||
}
|
||||
<% } %>
|
||||
|
||||
resource "vcd_nsxt_edgegateway" "nsxt-edge" {
|
||||
name = var.nsxName
|
||||
description = "Nsxt edge"
|
||||
|
||||
org = var.vmwareOrg
|
||||
|
||||
<% if (vdcType == "vdc") { %>
|
||||
owner_id = var.vmwareServicesId
|
||||
<% } else { %>
|
||||
owner_id = data.vcd_vdc_group.groupvdc.id
|
||||
starting_vdc_id = data.vcd_org_vdc.mainvdc.id
|
||||
<% } %>
|
||||
|
||||
external_network_id = data.vcd_external_network_v2.nsxt-ext-net.id
|
||||
}
|
||||
|
||||
resource "vcd_network_routed_v2" "test_routed_net" {
|
||||
name = var.routedNet
|
||||
|
||||
edge_gateway_id = vcd_nsxt_edgegateway.nsxt-edge.id
|
||||
gateway = "${ application.ipGw }"
|
||||
|
||||
prefix_length = ${ application.ipMask }
|
||||
|
||||
# dns1 = "185.247.187.83"
|
||||
# dns2 = "81.22.46.43"
|
||||
|
||||
dns1 = "${ routedNetConfiguration.mainDns }"
|
||||
dns2 = "${ routedNetConfiguration.secondDns }"
|
||||
|
||||
static_ip_pool {
|
||||
start_address = "${ application.ipStartPool }"
|
||||
end_address = "${ application.ipEndPool }"
|
||||
}
|
||||
|
||||
depends_on = [vcd_nsxt_edgegateway.nsxt-edge]
|
||||
}
|
||||
|
||||
# Включаем AVI
|
||||
resource "vcd_nsxt_alb_settings" "avi" {
|
||||
count = var.alb_enable ? 1 : 0
|
||||
|
||||
org = var.vmwareOrg
|
||||
|
||||
edge_gateway_id = vcd_nsxt_edgegateway.nsxt-edge.id
|
||||
is_active = var.alb_enable
|
||||
|
||||
# Optional definition of service network for the ALB. "192.168.255.125/25" is the default one.
|
||||
# service_network_specification = "192.168.255.125/25"
|
||||
|
||||
depends_on = [vcd_nsxt_edgegateway.nsxt-edge]
|
||||
}
|
||||
|
||||
## Добавляем ServiceEngine Group
|
||||
# Получаем SEGroup
|
||||
data "vcd_nsxt_alb_service_engine_group" "provider-gateway" {
|
||||
count = var.alb_enable ? 1 : 0
|
||||
|
||||
name = var.alb_segroup_name
|
||||
sync_on_refresh = false
|
||||
}
|
||||
|
||||
# Создаем SE
|
||||
resource "vcd_nsxt_alb_edgegateway_service_engine_group" "first" {
|
||||
count = var.alb_enable ? 1 : 0
|
||||
|
||||
edge_gateway_id = vcd_nsxt_edgegateway.nsxt-edge.id
|
||||
service_engine_group_id = data.vcd_nsxt_alb_service_engine_group.provider-gateway[0].id
|
||||
|
||||
max_virtual_services = 100
|
||||
reserved_virtual_services = var.alb_segroup_count
|
||||
depends_on = [vcd_nsxt_alb_settings.avi[0]]
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
resource "vcd_org_vdc" "vdc_services" {
|
||||
name = var.vmwareVdc
|
||||
description = "vcd description"
|
||||
org = var.vmwareOrg
|
||||
|
||||
allocation_model = "Flex"
|
||||
elasticity = true
|
||||
include_vm_memory_overhead = false
|
||||
network_pool_name = var.providerNetworkPoolName
|
||||
provider_vdc_name = var.providerVdcName
|
||||
network_quota = 1
|
||||
cpu_guaranteed = var.cpuGuaranteed
|
||||
cpu_speed = var.vmwareCpuspeed
|
||||
memory_guaranteed = var.memGuaranteed
|
||||
|
||||
compute_capacity {
|
||||
cpu {
|
||||
allocated = var.cpuAllocated
|
||||
limit = var.cpuAllocated
|
||||
}
|
||||
|
||||
# limit ставится в unlimited, чтобы можно было создать ВМки по размеру аллоцирования (впритык), уместив overhead по памяти
|
||||
# Клиент выйти за allocated не сможет, но и дополнительно забираться память для гипервизора не будет
|
||||
memory {
|
||||
allocated = var.memAllocated
|
||||
limit = 0
|
||||
}
|
||||
}
|
||||
|
||||
metadata_entry {
|
||||
key = "instanceUid"
|
||||
type = "MetadataStringValue"
|
||||
value = var.instanceUid
|
||||
user_access = "PRIVATE"
|
||||
is_system = true # Requires System admin privileges
|
||||
}
|
||||
|
||||
dynamic "metadata_entry" {
|
||||
for_each = var.enabled ? [] : [1]
|
||||
content {
|
||||
key = "dtStopped"
|
||||
type = "MetadataStringValue"
|
||||
value = var.dtStopped
|
||||
user_access = "PRIVATE"
|
||||
is_system = true # Requires System admin privileges
|
||||
}
|
||||
}
|
||||
|
||||
dynamic "storage_profile" {
|
||||
for_each = local.storage_config_with_default
|
||||
content {
|
||||
name = storage_profile.value.name
|
||||
limit = storage_profile.value.size
|
||||
enabled = true
|
||||
default = storage_profile.value.default
|
||||
}
|
||||
}
|
||||
|
||||
default_compute_policy_id = var.defaultComputePolicyId
|
||||
vm_sizing_policy_ids = local.all_sizing_policies
|
||||
|
||||
enabled = var.enabled
|
||||
enable_thin_provisioning = true
|
||||
enable_fast_provisioning = false # Если включить параметр, то диски менять системные не получится
|
||||
delete_force = true
|
||||
delete_recursive = true
|
||||
}
|
||||
Executable
+54
@@ -0,0 +1,54 @@
|
||||
resource "vcd_org" "org" {
|
||||
name = var.tenantOrgName
|
||||
full_name = var.tenantOrgName
|
||||
description = var.contragentCode
|
||||
is_enabled = var.vcdEnable
|
||||
delete_recursive = true
|
||||
delete_force = true
|
||||
|
||||
vapp_lease {
|
||||
maximum_runtime_lease_in_sec = 0
|
||||
power_off_on_runtime_lease_expiration = true
|
||||
maximum_storage_lease_in_sec = 0
|
||||
delete_on_storage_lease_expiration = false
|
||||
}
|
||||
vapp_template_lease {
|
||||
maximum_storage_lease_in_sec = 0
|
||||
delete_on_storage_lease_expiration = true
|
||||
}
|
||||
|
||||
metadata_entry {
|
||||
key = "clientid"
|
||||
type = "MetadataStringValue"
|
||||
value = var.contragentCode
|
||||
user_access = "PRIVATE"
|
||||
is_system = true # Requires System admin privileges
|
||||
}
|
||||
|
||||
metadata_entry {
|
||||
key = "status"
|
||||
type = "MetadataStringValue"
|
||||
value = "${ var.clientStatus }"
|
||||
user_access = "PRIVATE"
|
||||
is_system = true # Requires System admin privileges
|
||||
}
|
||||
|
||||
metadata_entry {
|
||||
key = "instanceUid"
|
||||
type = "MetadataStringValue"
|
||||
value = "${ var.instanceUid }"
|
||||
user_access = "PRIVATE"
|
||||
is_system = true # Requires System admin privileges
|
||||
}
|
||||
|
||||
dynamic "metadata_entry" {
|
||||
for_each = var.vcdEnable ? [] : [1]
|
||||
content {
|
||||
key = "dtStopped"
|
||||
type = "MetadataStringValue"
|
||||
value = var.dtStopped
|
||||
user_access = "PRIVATE"
|
||||
is_system = true # Requires System admin privileges
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user