proxmoxve.SDNZone.getQinq
Explore with Pulumi AI

Retrieves information about a QinQ Zone in Proxmox SDN. QinQ also known as VLAN stacking, that uses multiple layers of VLAN tags for isolation. The QinQ zone defines the outer VLAN tag (the Service VLAN) whereas the inner VLAN tag is defined by the VNet. Your physical network switches must support stacked VLANs for this configuration. Due to the double stacking of tags, you need 4 more bytes for QinQ VLANs. For example, you must reduce the MTU to 1496 if you physical interface MTU is 1500.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as proxmoxve from "@muhlba91/pulumi-proxmoxve";
const example = proxmoxve.SDNZone.getQinq({
id: "qinq1",
});
export const dataProxmoxVirtualEnvironmentSdnZoneQinq = {
id: example.then(example => example.id),
nodes: example.then(example => example.nodes),
bridge: example.then(example => example.bridge),
service_vlan: example.then(example => example.serviceVlan),
service_vlan_protocol: example.then(example => example.serviceVlanProtocol),
mtu: example.then(example => example.mtu),
dns: example.then(example => example.dns),
dns_zone: example.then(example => example.dnsZone),
ipam: example.then(example => example.ipam),
reverse_dns: example.then(example => example.reverseDns),
};
import pulumi
import pulumi_proxmoxve as proxmoxve
example = proxmoxve.SDNZone.get_qinq(id="qinq1")
pulumi.export("dataProxmoxVirtualEnvironmentSdnZoneQinq", {
"id": example.id,
"nodes": example.nodes,
"bridge": example.bridge,
"service_vlan": example.service_vlan,
"service_vlan_protocol": example.service_vlan_protocol,
"mtu": example.mtu,
"dns": example.dns,
"dns_zone": example.dns_zone,
"ipam": example.ipam,
"reverse_dns": example.reverse_dns,
})
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 {
example, err := sdnzone.GetQinq(ctx, &sdnzone.GetQinqArgs{
Id: "qinq1",
}, nil)
if err != nil {
return err
}
ctx.Export("dataProxmoxVirtualEnvironmentSdnZoneQinq", pulumi.Map{
"id": example.Id,
"nodes": example.Nodes,
"bridge": example.Bridge,
"service_vlan": example.ServiceVlan,
"service_vlan_protocol": example.ServiceVlanProtocol,
"mtu": example.Mtu,
"dns": example.Dns,
"dns_zone": example.DnsZone,
"ipam": example.Ipam,
"reverse_dns": example.ReverseDns,
})
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using ProxmoxVE = Pulumi.ProxmoxVE;
return await Deployment.RunAsync(() =>
{
var example = ProxmoxVE.SDNZone.GetQinq.Invoke(new()
{
Id = "qinq1",
});
return new Dictionary<string, object?>
{
["dataProxmoxVirtualEnvironmentSdnZoneQinq"] =
{
{ "id", example.Apply(getQinqResult => getQinqResult.Id) },
{ "nodes", example.Apply(getQinqResult => getQinqResult.Nodes) },
{ "bridge", example.Apply(getQinqResult => getQinqResult.Bridge) },
{ "service_vlan", example.Apply(getQinqResult => getQinqResult.ServiceVlan) },
{ "service_vlan_protocol", example.Apply(getQinqResult => getQinqResult.ServiceVlanProtocol) },
{ "mtu", example.Apply(getQinqResult => getQinqResult.Mtu) },
{ "dns", example.Apply(getQinqResult => getQinqResult.Dns) },
{ "dns_zone", example.Apply(getQinqResult => getQinqResult.DnsZone) },
{ "ipam", example.Apply(getQinqResult => getQinqResult.Ipam) },
{ "reverse_dns", example.Apply(getQinqResult => getQinqResult.ReverseDns) },
},
};
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.proxmoxve.SDNZone.SDNZoneFunctions;
import com.pulumi.proxmoxve.SDNZone.inputs.GetQinqArgs;
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) {
final var example = SDNZoneFunctions.getQinq(GetQinqArgs.builder()
.id("qinq1")
.build());
ctx.export("dataProxmoxVirtualEnvironmentSdnZoneQinq", Map.ofEntries(
Map.entry("id", example.id()),
Map.entry("nodes", example.nodes()),
Map.entry("bridge", example.bridge()),
Map.entry("service_vlan", example.serviceVlan()),
Map.entry("service_vlan_protocol", example.serviceVlanProtocol()),
Map.entry("mtu", example.mtu()),
Map.entry("dns", example.dns()),
Map.entry("dns_zone", example.dnsZone()),
Map.entry("ipam", example.ipam()),
Map.entry("reverse_dns", example.reverseDns())
));
}
}
variables:
example:
fn::invoke:
function: proxmoxve:SDNZone:getQinq
arguments:
id: qinq1
outputs:
dataProxmoxVirtualEnvironmentSdnZoneQinq:
id: ${example.id}
nodes: ${example.nodes}
bridge: ${example.bridge}
service_vlan: ${example.serviceVlan}
service_vlan_protocol: ${example.serviceVlanProtocol}
mtu: ${example.mtu}
dns: ${example.dns}
dns_zone: ${example.dnsZone}
ipam: ${example.ipam}
reverse_dns: ${example.reverseDns}
Using getQinq
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getQinq(args: GetQinqArgs, opts?: InvokeOptions): Promise<GetQinqResult>
function getQinqOutput(args: GetQinqOutputArgs, opts?: InvokeOptions): Output<GetQinqResult>
def get_qinq(id: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetQinqResult
def get_qinq_output(id: Optional[pulumi.Input[str]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetQinqResult]
func LookupQinq(ctx *Context, args *LookupQinqArgs, opts ...InvokeOption) (*LookupQinqResult, error)
func LookupQinqOutput(ctx *Context, args *LookupQinqOutputArgs, opts ...InvokeOption) LookupQinqResultOutput
> Note: This function is named LookupQinq
in the Go SDK.
public static class GetQinq
{
public static Task<GetQinqResult> InvokeAsync(GetQinqArgs args, InvokeOptions? opts = null)
public static Output<GetQinqResult> Invoke(GetQinqInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<GetQinqResult> getQinq(GetQinqArgs args, InvokeOptions options)
public static Output<GetQinqResult> getQinq(GetQinqArgs args, InvokeOptions options)
fn::invoke:
function: proxmoxve:SDNZone/getQinq:getQinq
arguments:
# arguments dictionary
The following arguments are supported:
- Id string
- The unique identifier of the SDN zone.
- Id string
- The unique identifier of the SDN zone.
- id String
- The unique identifier of the SDN zone.
- id string
- The unique identifier of the SDN zone.
- id str
- The unique identifier of the SDN zone.
- id String
- The unique identifier of the SDN zone.
getQinq Result
The following output properties are available:
- Bridge string
- A local, VLAN-aware bridge that is already configured on each local node
- 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. - Id string
- The unique identifier of the SDN zone.
- 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 are deployed on
- Reverse
Dns string - Reverse DNS API server address.
- Service
Vlan int - Service VLAN tag for QinQ. The tag must be between
1
and4094
. - Service
Vlan stringProtocol - Service VLAN protocol for QinQ. The protocol must be
802.1ad
or802.1q
.
- Bridge string
- A local, VLAN-aware bridge that is already configured on each local node
- 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. - Id string
- The unique identifier of the SDN zone.
- Ipam string
- IP Address Management system.
- Mtu int
- MTU value for the zone.
- Nodes []string
- The Proxmox nodes which the zone and associated VNets are deployed on
- Reverse
Dns string - Reverse DNS API server address.
- Service
Vlan int - Service VLAN tag for QinQ. The tag must be between
1
and4094
. - Service
Vlan stringProtocol - Service VLAN protocol for QinQ. The protocol must be
802.1ad
or802.1q
.
- bridge String
- A local, VLAN-aware bridge that is already configured on each local node
- 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. - id String
- The unique identifier of the SDN zone.
- 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 are deployed on
- reverse
Dns String - Reverse DNS API server address.
- service
Vlan Integer - Service VLAN tag for QinQ. The tag must be between
1
and4094
. - service
Vlan StringProtocol - Service VLAN protocol for QinQ. The protocol must be
802.1ad
or802.1q
.
- bridge string
- A local, VLAN-aware bridge that is already configured on each local node
- 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. - id string
- The unique identifier of the SDN zone.
- ipam string
- IP Address Management system.
- mtu number
- MTU value for the zone.
- nodes string[]
- The Proxmox nodes which the zone and associated VNets are deployed on
- reverse
Dns string - Reverse DNS API server address.
- service
Vlan number - Service VLAN tag for QinQ. The tag must be between
1
and4094
. - service
Vlan stringProtocol - Service VLAN protocol for QinQ. The protocol must be
802.1ad
or802.1q
.
- bridge str
- A local, VLAN-aware bridge that is already configured on each local node
- 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. - id str
- The unique identifier of the SDN zone.
- 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 are deployed on
- reverse_
dns str - Reverse DNS API server address.
- service_
vlan int - Service VLAN tag for QinQ. The tag must be between
1
and4094
. - service_
vlan_ strprotocol - Service VLAN protocol for QinQ. The protocol must be
802.1ad
or802.1q
.
- bridge String
- A local, VLAN-aware bridge that is already configured on each local node
- 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. - id String
- The unique identifier of the SDN zone.
- 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 are deployed on
- reverse
Dns String - Reverse DNS API server address.
- service
Vlan Number - Service VLAN tag for QinQ. The tag must be between
1
and4094
. - service
Vlan StringProtocol - Service VLAN protocol for QinQ. The protocol must be
802.1ad
or802.1q
.
Package Details
- Repository
- proxmoxve muhlba91/pulumi-proxmoxve
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
proxmox
Terraform Provider.
