Giter Site home page Giter Site logo

terraform-scaleway-vpc-module's Introduction

Scaleway VPC Terraform module

Terraform module that can be used to deploy VPC resources on Scaleway. Common deployment examples can be found in examples/.

Usage

The example below provision a basic VPC with a Public Gateway and a Load Balancer with some instances behind it.

module "vpc" {
  # to modify
  source  = "scaleway/vpc"
  version = ">= 1.0.0"

  private_network_name = "my_vpc"
  zone                 = "fr-par-1"
}

Requirements

Name Version
terraform >= 0.13
scaleway >= 2.10.0

Providers

Name Version
scaleway >= 2.10.0

Resources

Name Type
scaleway_vpc_public_gateway_ip resource
scaleway_vpc_public_gateway resource
scaleway_vpc_private_network resource
scaleway_vpc_public_gateway_dhcp resource
scaleway_vpc_gateway_network resource
scaleway_instance_server resource
scaleway_vpc_public_gateway_dhcp_reservation) resource
scaleway_lb_backend resource
scaleway_lb_ip resource
scaleway_lb resource
scaleway_lb_certificate resource

Inputs

Name Description Type Default Required
reverse_dns_zone Reverse domain name for the IP address bool false no
gateway_reverse_dns Create (reserve) a new flexible IP address that can be used for a Public Gateway in a specified Scaleway Project bool false no
private_network_name Name to be used on private network resource as identifier string "" yes
public_gateway_name Name to be used on gateway resource as identifier string "" yes
vpc_public_gateway_type Type to be used on gateway resource as default string VPC-GW-S no
public_gateway_bastion_enabled Defines whether SSH bastion is enabled on the gateway bool true no
name Name to be used on all the resources as identifier string "" no
tags A list of tags to add to all resources list(string) [] no
vpc_tags Additional tags for the VPC list(string) [] no
zones Zones in which resources should be created list(string) null yes
timeouts Define maximum timeout for creating, updating, and deleting VPC resources map(string) {} no
gateway_reserve_ip Reserve a flexible IP for the gateway. bool false no
public_gateway_dns_reverse Defines a reverse domain name for the IP address string null no
gateway_network_cleanup_dhcp Defines whether to clean up attached DHCP configurations (if any, and if not attached to another Gateway Network) bool true no
gateway_network_enable_masquerade Defines whether the gateway should masquerade traffic for the attached Private Network (i.e. whether to enable dynamic NAT) bool true no
gateway_dhcp_subnet Subnet for the DHCP server string 192.168.0.0/24 no
gateway_dhcp_address IP address of the DHCP server. This will be the gateway's address in the Private Network. Defaults to the first address of the subnet. (IP address) string 192.168.0.1 no
gateway_dhcp_pool_low Low IP (inclusive) of the dynamic address pool. Must be in the config's subnet. Defaults to the second address of the subnet. (IP address) string 192.168.0.2 no
gateway_dhcp_pool_high High IP (inclusive) of the dynamic address pool. Must be in the config's subnet. Defaults to the last address of the subnet. (IP address) string 192.168.0.254 no
gateway_dhcp_enable_dynamic Defines whether to enable dynamic pooling of IPs. When false, only pre-existing DHCP reservations will be handed out. Defaults to true bool true no
gateway_dhcp_push_default_route Defines whether the gateway should push a default route to DHCP clients or only hand out IPs. Defaults to true bool true no
gateway_dhcp_push_dns_server Defines whether the gateway should push custom DNS servers to clients. This allows for Instance hostname -> IP resolution. Defaults to true. bool true no
gateway_dhcp_dns_server_servers_override A list of additional Array of DNS server IP addresses used to override the DNS server list pushed to DHCP clients, instead of the gateway itself. Default the gateway_dhcp_address list(string) [] no
gateway_dhcp_valid_lifetime How long DHCP entries will be valid for (in seconds) string 3600 no
gateway_dhcp_renew_timer After how long a renew will be attempted. Must be 30s lower than rebind_timer. (in seconds) string 3000 no
gateway_dhcp_rebind_timer After how long a DHCP client will query for a new lease if previous renews fail. Must be 30s lower than valid_lifetime. (in seconds) string 3060 no
gateway_dhcp_dns_search Array of DNS server IP addresses used to override the DNS server list pushed to DHCP clients, instead of the gateway itself list(string) [] no
instances A map of interface and/or instance mac addresses containing their properties any {} no
wait_reservations Determines whether wait reservations are available bool true no

Outputs

Name Description
public_gateway_ip_address Address of the public gateway IP.
public_gateway_ip_id ID of gateway IP.
public_gateway_id ID of public gateway.
private_network_id ID of private networks.
reservations Array containing the full resource object and attributes for all reservations

terraform-scaleway-vpc-module's People

Contributors

monitob avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.