https://github.com/global-vmware/vcd_nsxt_security_group
This Repository contains the "vcd_nsxt_security_group" Terraform Module. You can use this Module to deploy Static Groups (a.k.a. Security Groups) into a VMware Cloud Director (VCD) Environment.
https://github.com/global-vmware/vcd_nsxt_security_group
firewall-rules infrastructure-as-code security terraform terraform-module vmware vmware-nsx
Last synced: about 1 year ago
JSON representation
This Repository contains the "vcd_nsxt_security_group" Terraform Module. You can use this Module to deploy Static Groups (a.k.a. Security Groups) into a VMware Cloud Director (VCD) Environment.
- Host: GitHub
- URL: https://github.com/global-vmware/vcd_nsxt_security_group
- Owner: global-vmware
- Created: 2023-05-30T16:28:30.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2023-12-12T20:46:15.000Z (over 2 years ago)
- Last Synced: 2023-12-12T21:35:14.639Z (over 2 years ago)
- Topics: firewall-rules, infrastructure-as-code, security, terraform, terraform-module, vmware, vmware-nsx
- Language: HCL
- Homepage: https://www.rackspace.com/cloud/vmware
- Size: 9.77 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# VCD Security Group Terraform Module
This Terraform module allows you to create Static Groups (a.k.a. Security Groups) in an existing VMware Cloud Director (VCD) Environment. Static Groups are groups of Data Center Group Organization Networks to which Distributed Firewall (DFW) rules apply. This module can be used to provision new Security Groups into [Rackspace Technology SDDC Flex](https://www.rackspace.com/cloud/private/software-defined-data-center-flex) VCD Data Center Regions.
## Requirements
| Name | Version |
|------|---------|
| terraform | ~> 1.2 |
| vcd | ~> 3.8.2 |
## Resources
| Name | Type |
|------|------|
| [vcd_nsxt_security_group](https://registry.terraform.io/providers/vmware/vcd/latest/docs/resources/nsxt_security_group) | resource |
| [vcd_nsxt_edgegateway](https://registry.terraform.io/providers/vmware/vcd/latest/docs/data-sources/nsxt_edgegateway) | data source |
| [vcd_vdc_group](https://registry.terraform.io/providers/vmware/vcd/latest/docs/data-sources/vdc_group) | data source |
| [vcd_network_routed_v2](https://registry.terraform.io/providers/vmware/vcd/latest/docs/data-sources/network_routed_v2) | data source |
## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|----------|
| vdc_org_name | The name of the Data Center Group Organization in VCD | string | - | yes |
| vdc_group_name | The name of the Data Center Group in VCD | string | - | yes |
| vcd_edge_name | Name of the Data Center Group Edge Gateway | string | - | yes |
| org_network_names | List of network names to be fetched | list(object({ name = string })) | [] | yes |
| security_groups | Map of security groups with names, descriptions, and corresponding org network names | map(object({ description = string, org_network_names = list(string) })) | {} | yes |
## Outputs
| Name | Description |
|------|-------------|
| vdc_group_id | ID of the VDC Group |
| edge_gateway_id | ID of the Edge Gateway |
| org_vdc_routed_network_ids | Map of org VDC routed network IDs |
| security_group_ids | Map of created security group IDs |
## Example Usage
```terraform
module "vcd_nsxt_security_group" {
source = "github.com/global-vmware/vcd_nsxt_security_group.git?ref=v1.2.1"
vdc_org_name = ""
vdc_group_name = ""
vdc_edge_name = ""
org_network_names = [
{
name = "US1-Segment-01"
},
{
name = "US1-Segment-02"
},
{
name = "US1-Segment-03"
},
{
name = "US1-Segment-04"
},
{
name = "US1-Segment-05"
}
]
security_groups = {
"US1-Segment-01_Static-Group" = {
description = "US1 Segment 01 Security Group"
org_network_names = ["US1-Segment-01"]
},
"US1-Segment-02_Static-Group" = {
description = "US1 Segment 02 Security Group"
org_network_names = ["US1-Segment-02"]
},
"US1-Segment-03_Static-Group" = {
description = "US1 Segment 03 Security Group"
org_network_names = ["US1-Segment-03"]
},
"US1-Segment-04_Static-Group" = {
description = "US1 Segment 04 Security Group"
org_network_names = ["US1-Segment-04"]
},
"US1-Segment-05_Static-Group" = {
description = "US1 Segment 05 Security Group"
org_network_names = ["US1-Segment-05"]
}
}
}
```
## Authors
This module is maintained by the [Global VMware Cloud Automation Services Team](https://github.com/global-vmware).