Skip to content

Terraform module which manages NSX-T ALB loadbalancer ressources on VMWare Cloud Director.

Notifications You must be signed in to change notification settings

noris-network/terraform-vcd-nsxt-alb-virtual-service

Repository files navigation

terraform-vcd-nsxt-alb-virtual-service

Terraform module which manages NSX-T ALB loadbalancer ressources on VMWare Cloud Director.

Requirements

Name Version
terraform >= 1.1.9
vcd >= 3.9.0

Providers

Name Version
vcd 3.9.0

Modules

No modules.

Resources

Name Type
vcd_nsxt_alb_virtual_service.nsxt_alb_virtual_service resource
vcd_library_certificate.library_certificate data source
vcd_nsxt_alb_edgegateway_service_engine_group.nsxt_alb_edgegateway_service_engine_group data source
vcd_nsxt_alb_pool.nsxt_alb_pool data source
vcd_nsxt_edgegateway.nsxt_edgegateway data source
vcd_vdc_group.vdc_group data source

Inputs

Name Description Type Default Required
application_profile_type The type of application profile for the NSX-T ALB Virtual Service. string n/a yes
ca_certificate_required Defines if a CA certificate is required for the virtual service. Set to true for HTTPS and L4_TLS types, and to false for HTTP and L4 types. bool n/a yes
pool_name The name of the NSX-T ALB Pool. string n/a yes
service_engine_group_name The name of the NSX-T ALB Service Engine Group. string n/a yes
service_ports List of service ports configuration for the NSX-T ALB Virtual Service.
list(object({
start_port = number
end_port = optional(number)
type = string
ssl_enabled = optional(bool)
}))
n/a yes
vdc_edgegateway_name Edge Gateway of Customer. string n/a yes
vdc_group_name Default Virtual Data Center Group of Customer. string n/a yes
vdc_org_name The name of the organization to use. string n/a yes
virtual_ip_address IP Address for the service to listen on. string n/a yes
virtual_service_name The name of the NSX-T ALB Virtual Service. string n/a yes
cert_alias The alias of the certificate from the VCD library. string null no
is_transparent_mode_enabled Whether the transparent mode is enabled for the NSX-T ALB Virtual Service. bool false no
virtual_service_description The description of the NSX-T ALB Virtual Service. string null no

Outputs

Name Description
nsxt_alb_application_profile_type Type of application profile for the NSX-T ALB Virtual Service.
nsxt_alb_pool_id ID of the NSX-T ALB Pool.
nsxt_alb_pool_name Name of the NSX-T ALB Pool.
nsxt_alb_virtual_service_id ID of the created NSX-T ALB Virtual Service.
nsxt_alb_virtual_service_service_ports List of service ports configuration for the NSX-T ALB Virtual Service.
nsxt_alb_virtual_service_vip IP Address of the created NSX-T ALB Virtual Service.

Examples

module "webserver_loadbalancer" {
  source                    = "git::https://github.com/noris-network/terraform-vcd-alb-virtual-service?ref=1.0.0"
  vdc_org_name              = "myORG"
  vdc_group_name            = "myDCGroup"
  vdc_edgegateway_name      = "T1-myORG"
  service_engine_group_name = "mySEG"
  virtual_service_name      = "webserver_lb"
  pool_name                 = "webserver_alb_pool"
  application_profile_type  = "HTTPS"
  ca_certificate_required   = true
  cert_alias                = "www.example.net"
  virtual_ip_address        = "123.234.123.234"
  service_ports             = [
    {
      start_port  = 443
      ssl_enabled = true
      type        = "TCP_PROXY"
    }
  ]
}

About

Terraform module which manages NSX-T ALB loadbalancer ressources on VMWare Cloud Director.

Topics

Resources

Stars

Watchers

Forks

Languages