Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/equinix-labs/terraform-equinix-fabric-connection-metal
Terraform module to set up a single or redundant Metal shared connection from an Equinix Fabric port / Network Edge device
https://github.com/equinix-labs/terraform-equinix-fabric-connection-metal
equinix equinix-fabric equinix-metal terraform terraform-module
Last synced: 7 days ago
JSON representation
Terraform module to set up a single or redundant Metal shared connection from an Equinix Fabric port / Network Edge device
- Host: GitHub
- URL: https://github.com/equinix-labs/terraform-equinix-fabric-connection-metal
- Owner: equinix-labs
- License: apache-2.0
- Created: 2021-11-22T12:20:42.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-12-15T08:36:56.000Z (11 months ago)
- Last Synced: 2024-04-23T13:57:06.482Z (7 months ago)
- Topics: equinix, equinix-fabric, equinix-metal, terraform, terraform-module
- Language: HCL
- Homepage:
- Size: 63.5 KB
- Stars: 0
- Watchers: 7
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Codeowners: CODEOWNERS
Awesome Lists containing this project
README
## Equinix Fabric L2 Connection To Equinix Metal Connection Terraform module
[![Experimental](https://img.shields.io/badge/Stability-Experimental-red.svg)](https://github.com/equinix-labs/standards#about-uniform-standards)
[![terraform](https://github.com/equinix-labs/terraform-equinix-template/actions/workflows/integration.yaml/badge.svg)](https://github.com/equinix-labs/terraform-equinix-template/actions/workflows/integration.yaml)`terraform-equinix-fabric-connection-metal` is a minimal Terraform module that utilizes [Terraform providers for Equinix](https://registry.terraform.io/namespaces/equinix) to set up an Equinix Metal shared connection.
A part of Platform Equinix, your Equinix Metal™ infrastructure can connect with other parties, such as public cloud providers, network service providers, or your own colocation cages in Equinix by defining an [Equinix Fabric - software-defined interconnections](https://metal.equinix.com/developers/docs/equinix-interconnect/introduction/)
Setting Up a [Fabric Billed Fabric Virtual Connections](https://deploy.equinix.com/developers/docs/metal/interconnections/fabric-billed-fabric-vc/) requires requesting the connection on the Equinix Metal side, retrieving a token and using that token to request a connection on the Equinix Fabric side. This module is intended to abstract you from this process and handle the connection as a single resource.
```html
Origin Destination
(A-side) (Z-side)┌────────────────┐ ┌───────────────┐
│ Equinix Fabric │ Equinix Metal │ Equinix Metal │
│ Port / Network ├───── Fabric Billed ───────►│ Port │
│ Edge Device / │ Virtual Connection └───────────────┘
│ Service Token │ (50 Mbps - 10 Gbps)
└────────────────┘
```### Usage
This project is experimental and supported by the user community. Equinix does not provide support for this project.
Install Terraform using the official guides at .
This project may be forked, cloned, or downloaded and modified as needed as the base in your integrations and deployments.
This project may also be used as a [Terraform module](https://learn.hashicorp.com/collections/terraform/modules).
To use this module in a new project, create a file such as:
```hcl
provider "equinix" {}variable "metal_project_name" {}
variable "edge_device_id" {}module "equinix-fabric-connection-metal" {
source = "equinix-labs/fabric-connection-metal/equinix"# required variables
fabric_notification_users = ["[email protected]"]
fabric_destination_metro_code = "SV"metal_project_name = var.metal_project_name
# optional variables
network_edge_device_id = var.edge_device_id
}
```Run `terraform init -upgrade` and `terraform apply`.
#### Resources
| Name | Type |
| :-----: | :------: |
| [equinix_metal_project.this](https://registry.terraform.io/providers/equinix/metal/latest/docs/data-sources/project) | data source |
| [equinix_metal_connection.this](https://registry.terraform.io/providers/equinix/metal/latest/docs/resources/device) | resource |
| [equinix-fabric-connection](https://registry.terraform.io/modules/equinix-labs/fabric-connection/equinix/latest) | module |#### Variables
See for a description of all variables.
#### Outputs
See for a description of all outputs.
### Examples
- [Fabric Port connection](https://registry.terraform.io/modules/equinix-labs/fabric-connection-metal/equinix/latest/examples/fabric-port-connection/)
- [Network Edge device redundant connection](https://registry.terraform.io/modules/equinix-labs/fabric-connection-metal/equinix/latest/examples/network-edge-device-redundant-connection/)
- [Fabric a-side Service Token redundant connection](https://registry.terraform.io/modules/equinix-labs/fabric-connection-metal/equinix/latest/examples/service-token-redundant-connection)