proxmoxve.SDNZone.Vlan
Explore with Pulumi AI

VLAN Zone in Proxmox SDN. It uses an existing local Linux or OVS bridge to connect to the node’s physical interface. It uses VLAN tagging defined in the VNet to isolate the network segments. This allows connectivity of VMs between different nodes.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as proxmoxve from "@muhlba91/pulumi-proxmoxve";
const example = new proxmoxve.sdnzone.Vlan("example", {
bridge: "vmbr0",
dns: "1.1.1.1",
dnsZone: "example.com",
zoneId: "vlan1",
ipam: "pve",
mtu: 1500,
nodes: ["pve"],
reverseDns: "1.1.1.1",
});
import pulumi
import pulumi_proxmoxve as proxmoxve
example = proxmoxve.sdnzone.Vlan("example",
bridge="vmbr0",
dns="1.1.1.1",
dns_zone="example.com",
zone_id="vlan1",
ipam="pve",
mtu=1500,
nodes=["pve"],
reverse_dns="1.1.1.1")
package main
import (
"github.com/muhlba91/pulumi-proxmoxve/sdk/v7/go/proxmoxve/sdnzone"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := sdnzone.NewVlan(ctx, "example", &sdnzone.VlanArgs{
Bridge: pulumi.String("vmbr0"),
Dns: pulumi.String("1.1.1.1"),
DnsZone: pulumi.String("example.com"),
ZoneId: pulumi.String("vlan1"),
Ipam: pulumi.String("pve"),
Mtu: pulumi.Int(1500),
Nodes: pulumi.StringArray{
pulumi.String("pve"),
},
ReverseDns: pulumi.String("1.1.1.1"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using ProxmoxVE = Pulumi.ProxmoxVE;
return await Deployment.RunAsync(() =>
{
var example = new ProxmoxVE.SDNZone.Vlan("example", new()
{
Bridge = "vmbr0",
Dns = "1.1.1.1",
DnsZone = "example.com",
ZoneId = "vlan1",
Ipam = "pve",
Mtu = 1500,
Nodes = new[]
{
"pve",
},
ReverseDns = "1.1.1.1",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import io.muehlbachler.pulumi.proxmoxve.SDNZone.Vlan;
import io.muehlbachler.pulumi.proxmoxve.SDNZone.VlanArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new Vlan("example", VlanArgs.builder()
.bridge("vmbr0")
.dns("1.1.1.1")
.dnsZone("example.com")
.zoneId("vlan1")
.ipam("pve")
.mtu(1500)
.nodes("pve")
.reverseDns("1.1.1.1")
.build());
}
}
resources:
example:
type: proxmoxve:SDNZone:Vlan
properties:
bridge: vmbr0
# Optional attributes
dns: 1.1.1.1
dnsZone: example.com
zoneId: vlan1
ipam: pve
mtu: 1500
nodes:
- pve
reverseDns: 1.1.1.1
Create Vlan Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Vlan(name: string, args: VlanArgs, opts?: CustomResourceOptions);
@overload
def Vlan(resource_name: str,
args: VlanArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Vlan(resource_name: str,
opts: Optional[ResourceOptions] = None,
bridge: Optional[str] = None,
nodes: Optional[Sequence[str]] = None,
zone_id: Optional[str] = None,
dns: Optional[str] = None,
dns_zone: Optional[str] = None,
ipam: Optional[str] = None,
mtu: Optional[int] = None,
reverse_dns: Optional[str] = None)
func NewVlan(ctx *Context, name string, args VlanArgs, opts ...ResourceOption) (*Vlan, error)
public Vlan(string name, VlanArgs args, CustomResourceOptions? opts = null)
type: proxmoxve:SDNZone:Vlan
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args VlanArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args VlanArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args VlanArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args VlanArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args VlanArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var vlanResource = new ProxmoxVE.SDNZone.Vlan("vlanResource", new()
{
Bridge = "string",
Nodes = new[]
{
"string",
},
ZoneId = "string",
Dns = "string",
DnsZone = "string",
Ipam = "string",
Mtu = 0,
ReverseDns = "string",
});
example, err := sdnzone.NewVlan(ctx, "vlanResource", &sdnzone.VlanArgs{
Bridge: pulumi.String("string"),
Nodes: pulumi.StringArray{
pulumi.String("string"),
},
ZoneId: pulumi.String("string"),
Dns: pulumi.String("string"),
DnsZone: pulumi.String("string"),
Ipam: pulumi.String("string"),
Mtu: pulumi.Int(0),
ReverseDns: pulumi.String("string"),
})
var vlanResource = new Vlan("vlanResource", VlanArgs.builder()
.bridge("string")
.nodes("string")
.zoneId("string")
.dns("string")
.dnsZone("string")
.ipam("string")
.mtu(0)
.reverseDns("string")
.build());
vlan_resource = proxmoxve.sdnzone.Vlan("vlanResource",
bridge="string",
nodes=["string"],
zone_id="string",
dns="string",
dns_zone="string",
ipam="string",
mtu=0,
reverse_dns="string")
const vlanResource = new proxmoxve.sdnzone.Vlan("vlanResource", {
bridge: "string",
nodes: ["string"],
zoneId: "string",
dns: "string",
dnsZone: "string",
ipam: "string",
mtu: 0,
reverseDns: "string",
});
type: proxmoxve:SDNZone:Vlan
properties:
bridge: string
dns: string
dnsZone: string
ipam: string
mtu: 0
nodes:
- string
reverseDns: string
zoneId: string
Vlan Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Vlan resource accepts the following input properties:
- Bridge string
- The local bridge or OVS switch, already configured on each node that allows node-to-node connection.
- Nodes List<string>
- The Proxmox nodes which the zone and associated VNets should be deployed on
- Zone
Id string - The unique identifier of the SDN zone.
- Dns string
- DNS API server address.
- Dns
Zone string - DNS domain name. Used to register hostnames, such as
<hostname>.<domain>
. The DNS zone must already exist on the DNS server. - Ipam string
- IP Address Management system.
- Mtu int
- MTU value for the zone.
- Reverse
Dns string - Reverse DNS API server address.
- Bridge string
- The local bridge or OVS switch, already configured on each node that allows node-to-node connection.
- Nodes []string
- The Proxmox nodes which the zone and associated VNets should be deployed on
- Zone
Id string - The unique identifier of the SDN zone.
- Dns string
- DNS API server address.
- Dns
Zone string - DNS domain name. Used to register hostnames, such as
<hostname>.<domain>
. The DNS zone must already exist on the DNS server. - Ipam string
- IP Address Management system.
- Mtu int
- MTU value for the zone.
- Reverse
Dns string - Reverse DNS API server address.
- bridge String
- The local bridge or OVS switch, already configured on each node that allows node-to-node connection.
- nodes List<String>
- The Proxmox nodes which the zone and associated VNets should be deployed on
- zone
Id String - The unique identifier of the SDN zone.
- dns String
- DNS API server address.
- dns
Zone String - DNS domain name. Used to register hostnames, such as
<hostname>.<domain>
. The DNS zone must already exist on the DNS server. - ipam String
- IP Address Management system.
- mtu Integer
- MTU value for the zone.
- reverse
Dns String - Reverse DNS API server address.
- bridge string
- The local bridge or OVS switch, already configured on each node that allows node-to-node connection.
- nodes string[]
- The Proxmox nodes which the zone and associated VNets should be deployed on
- zone
Id string - The unique identifier of the SDN zone.
- dns string
- DNS API server address.
- dns
Zone string - DNS domain name. Used to register hostnames, such as
<hostname>.<domain>
. The DNS zone must already exist on the DNS server. - ipam string
- IP Address Management system.
- mtu number
- MTU value for the zone.
- reverse
Dns string - Reverse DNS API server address.
- bridge str
- The local bridge or OVS switch, already configured on each node that allows node-to-node connection.
- nodes Sequence[str]
- The Proxmox nodes which the zone and associated VNets should be deployed on
- zone_
id str - The unique identifier of the SDN zone.
- dns str
- DNS API server address.
- dns_
zone str - DNS domain name. Used to register hostnames, such as
<hostname>.<domain>
. The DNS zone must already exist on the DNS server. - ipam str
- IP Address Management system.
- mtu int
- MTU value for the zone.
- reverse_
dns str - Reverse DNS API server address.
- bridge String
- The local bridge or OVS switch, already configured on each node that allows node-to-node connection.
- nodes List<String>
- The Proxmox nodes which the zone and associated VNets should be deployed on
- zone
Id String - The unique identifier of the SDN zone.
- dns String
- DNS API server address.
- dns
Zone String - DNS domain name. Used to register hostnames, such as
<hostname>.<domain>
. The DNS zone must already exist on the DNS server. - ipam String
- IP Address Management system.
- mtu Number
- MTU value for the zone.
- reverse
Dns String - Reverse DNS API server address.
Outputs
All input properties are implicitly available as output properties. Additionally, the Vlan resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing Vlan Resource
Get an existing Vlan resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: VlanState, opts?: CustomResourceOptions): Vlan
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
bridge: Optional[str] = None,
dns: Optional[str] = None,
dns_zone: Optional[str] = None,
ipam: Optional[str] = None,
mtu: Optional[int] = None,
nodes: Optional[Sequence[str]] = None,
reverse_dns: Optional[str] = None,
zone_id: Optional[str] = None) -> Vlan
func GetVlan(ctx *Context, name string, id IDInput, state *VlanState, opts ...ResourceOption) (*Vlan, error)
public static Vlan Get(string name, Input<string> id, VlanState? state, CustomResourceOptions? opts = null)
public static Vlan get(String name, Output<String> id, VlanState state, CustomResourceOptions options)
resources: _: type: proxmoxve:SDNZone:Vlan get: id: ${id}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Bridge string
- The local bridge or OVS switch, already configured on each node that allows node-to-node connection.
- Dns string
- DNS API server address.
- Dns
Zone string - DNS domain name. Used to register hostnames, such as
<hostname>.<domain>
. The DNS zone must already exist on the DNS server. - Ipam string
- IP Address Management system.
- Mtu int
- MTU value for the zone.
- Nodes List<string>
- The Proxmox nodes which the zone and associated VNets should be deployed on
- Reverse
Dns string - Reverse DNS API server address.
- Zone
Id string - The unique identifier of the SDN zone.
- Bridge string
- The local bridge or OVS switch, already configured on each node that allows node-to-node connection.
- Dns string
- DNS API server address.
- Dns
Zone string - DNS domain name. Used to register hostnames, such as
<hostname>.<domain>
. The DNS zone must already exist on the DNS server. - Ipam string
- IP Address Management system.
- Mtu int
- MTU value for the zone.
- Nodes []string
- The Proxmox nodes which the zone and associated VNets should be deployed on
- Reverse
Dns string - Reverse DNS API server address.
- Zone
Id string - The unique identifier of the SDN zone.
- bridge String
- The local bridge or OVS switch, already configured on each node that allows node-to-node connection.
- dns String
- DNS API server address.
- dns
Zone String - DNS domain name. Used to register hostnames, such as
<hostname>.<domain>
. The DNS zone must already exist on the DNS server. - ipam String
- IP Address Management system.
- mtu Integer
- MTU value for the zone.
- nodes List<String>
- The Proxmox nodes which the zone and associated VNets should be deployed on
- reverse
Dns String - Reverse DNS API server address.
- zone
Id String - The unique identifier of the SDN zone.
- bridge string
- The local bridge or OVS switch, already configured on each node that allows node-to-node connection.
- dns string
- DNS API server address.
- dns
Zone string - DNS domain name. Used to register hostnames, such as
<hostname>.<domain>
. The DNS zone must already exist on the DNS server. - ipam string
- IP Address Management system.
- mtu number
- MTU value for the zone.
- nodes string[]
- The Proxmox nodes which the zone and associated VNets should be deployed on
- reverse
Dns string - Reverse DNS API server address.
- zone
Id string - The unique identifier of the SDN zone.
- bridge str
- The local bridge or OVS switch, already configured on each node that allows node-to-node connection.
- dns str
- DNS API server address.
- dns_
zone str - DNS domain name. Used to register hostnames, such as
<hostname>.<domain>
. The DNS zone must already exist on the DNS server. - ipam str
- IP Address Management system.
- mtu int
- MTU value for the zone.
- nodes Sequence[str]
- The Proxmox nodes which the zone and associated VNets should be deployed on
- reverse_
dns str - Reverse DNS API server address.
- zone_
id str - The unique identifier of the SDN zone.
- bridge String
- The local bridge or OVS switch, already configured on each node that allows node-to-node connection.
- dns String
- DNS API server address.
- dns
Zone String - DNS domain name. Used to register hostnames, such as
<hostname>.<domain>
. The DNS zone must already exist on the DNS server. - ipam String
- IP Address Management system.
- mtu Number
- MTU value for the zone.
- nodes List<String>
- The Proxmox nodes which the zone and associated VNets should be deployed on
- reverse
Dns String - Reverse DNS API server address.
- zone
Id String - The unique identifier of the SDN zone.
Import
#!/usr/bin/env sh
VLAN SDN zone can be imported using its unique identifier (zone ID)
$ pulumi import proxmoxve:SDNZone/vlan:Vlan example vlan1
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- proxmoxve muhlba91/pulumi-proxmoxve
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
proxmox
Terraform Provider.
