1. Packages
  2. Openstack Provider
  3. API Docs
  4. networking
  5. QosMinimumBandwidthRule
OpenStack v5.0.0 published on Friday, Sep 27, 2024 by Pulumi

openstack.networking.QosMinimumBandwidthRule

Explore with Pulumi AI

openstack logo
OpenStack v5.0.0 published on Friday, Sep 27, 2024 by Pulumi

    Manages a V2 Neutron QoS minimum bandwidth rule resource within OpenStack.

    Example Usage

    Create a QoS Policy with some minimum bandwidth rule

    import * as pulumi from "@pulumi/pulumi";
    import * as openstack from "@pulumi/openstack";
    
    const qosPolicy1 = new openstack.networking.QosPolicy("qos_policy_1", {
        name: "qos_policy_1",
        description: "min_kbps",
    });
    const minimumBandwidthRule1 = new openstack.networking.QosMinimumBandwidthRule("minimum_bandwidth_rule_1", {
        qosPolicyId: qosPolicy1.id,
        minKbps: 200,
    });
    
    import pulumi
    import pulumi_openstack as openstack
    
    qos_policy1 = openstack.networking.QosPolicy("qos_policy_1",
        name="qos_policy_1",
        description="min_kbps")
    minimum_bandwidth_rule1 = openstack.networking.QosMinimumBandwidthRule("minimum_bandwidth_rule_1",
        qos_policy_id=qos_policy1.id,
        min_kbps=200)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/networking"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		qosPolicy1, err := networking.NewQosPolicy(ctx, "qos_policy_1", &networking.QosPolicyArgs{
    			Name:        pulumi.String("qos_policy_1"),
    			Description: pulumi.String("min_kbps"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = networking.NewQosMinimumBandwidthRule(ctx, "minimum_bandwidth_rule_1", &networking.QosMinimumBandwidthRuleArgs{
    			QosPolicyId: qosPolicy1.ID(),
    			MinKbps:     pulumi.Int(200),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using OpenStack = Pulumi.OpenStack;
    
    return await Deployment.RunAsync(() => 
    {
        var qosPolicy1 = new OpenStack.Networking.QosPolicy("qos_policy_1", new()
        {
            Name = "qos_policy_1",
            Description = "min_kbps",
        });
    
        var minimumBandwidthRule1 = new OpenStack.Networking.QosMinimumBandwidthRule("minimum_bandwidth_rule_1", new()
        {
            QosPolicyId = qosPolicy1.Id,
            MinKbps = 200,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.openstack.networking.QosPolicy;
    import com.pulumi.openstack.networking.QosPolicyArgs;
    import com.pulumi.openstack.networking.QosMinimumBandwidthRule;
    import com.pulumi.openstack.networking.QosMinimumBandwidthRuleArgs;
    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 qosPolicy1 = new QosPolicy("qosPolicy1", QosPolicyArgs.builder()
                .name("qos_policy_1")
                .description("min_kbps")
                .build());
    
            var minimumBandwidthRule1 = new QosMinimumBandwidthRule("minimumBandwidthRule1", QosMinimumBandwidthRuleArgs.builder()
                .qosPolicyId(qosPolicy1.id())
                .minKbps(200)
                .build());
    
        }
    }
    
    resources:
      qosPolicy1:
        type: openstack:networking:QosPolicy
        name: qos_policy_1
        properties:
          name: qos_policy_1
          description: min_kbps
      minimumBandwidthRule1:
        type: openstack:networking:QosMinimumBandwidthRule
        name: minimum_bandwidth_rule_1
        properties:
          qosPolicyId: ${qosPolicy1.id}
          minKbps: 200
    

    Create QosMinimumBandwidthRule Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new QosMinimumBandwidthRule(name: string, args: QosMinimumBandwidthRuleArgs, opts?: CustomResourceOptions);
    @overload
    def QosMinimumBandwidthRule(resource_name: str,
                                args: QosMinimumBandwidthRuleArgs,
                                opts: Optional[ResourceOptions] = None)
    
    @overload
    def QosMinimumBandwidthRule(resource_name: str,
                                opts: Optional[ResourceOptions] = None,
                                min_kbps: Optional[int] = None,
                                qos_policy_id: Optional[str] = None,
                                direction: Optional[str] = None,
                                region: Optional[str] = None)
    func NewQosMinimumBandwidthRule(ctx *Context, name string, args QosMinimumBandwidthRuleArgs, opts ...ResourceOption) (*QosMinimumBandwidthRule, error)
    public QosMinimumBandwidthRule(string name, QosMinimumBandwidthRuleArgs args, CustomResourceOptions? opts = null)
    public QosMinimumBandwidthRule(String name, QosMinimumBandwidthRuleArgs args)
    public QosMinimumBandwidthRule(String name, QosMinimumBandwidthRuleArgs args, CustomResourceOptions options)
    
    type: openstack:networking:QosMinimumBandwidthRule
    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 QosMinimumBandwidthRuleArgs
    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 QosMinimumBandwidthRuleArgs
    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 QosMinimumBandwidthRuleArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args QosMinimumBandwidthRuleArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args QosMinimumBandwidthRuleArgs
    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 qosMinimumBandwidthRuleResource = new OpenStack.Networking.QosMinimumBandwidthRule("qosMinimumBandwidthRuleResource", new()
    {
        MinKbps = 0,
        QosPolicyId = "string",
        Direction = "string",
        Region = "string",
    });
    
    example, err := networking.NewQosMinimumBandwidthRule(ctx, "qosMinimumBandwidthRuleResource", &networking.QosMinimumBandwidthRuleArgs{
    	MinKbps:     pulumi.Int(0),
    	QosPolicyId: pulumi.String("string"),
    	Direction:   pulumi.String("string"),
    	Region:      pulumi.String("string"),
    })
    
    var qosMinimumBandwidthRuleResource = new QosMinimumBandwidthRule("qosMinimumBandwidthRuleResource", QosMinimumBandwidthRuleArgs.builder()
        .minKbps(0)
        .qosPolicyId("string")
        .direction("string")
        .region("string")
        .build());
    
    qos_minimum_bandwidth_rule_resource = openstack.networking.QosMinimumBandwidthRule("qosMinimumBandwidthRuleResource",
        min_kbps=0,
        qos_policy_id="string",
        direction="string",
        region="string")
    
    const qosMinimumBandwidthRuleResource = new openstack.networking.QosMinimumBandwidthRule("qosMinimumBandwidthRuleResource", {
        minKbps: 0,
        qosPolicyId: "string",
        direction: "string",
        region: "string",
    });
    
    type: openstack:networking:QosMinimumBandwidthRule
    properties:
        direction: string
        minKbps: 0
        qosPolicyId: string
        region: string
    

    QosMinimumBandwidthRule 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 QosMinimumBandwidthRule resource accepts the following input properties:

    MinKbps int
    The minimum kilobits per second. Changing this updates the min kbps value of the existing QoS minimum bandwidth rule.
    QosPolicyId string
    The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.
    Direction string
    The direction of traffic. Defaults to "egress". Changing this updates the direction of the existing QoS minimum bandwidth rule.
    Region string
    The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the region argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.
    MinKbps int
    The minimum kilobits per second. Changing this updates the min kbps value of the existing QoS minimum bandwidth rule.
    QosPolicyId string
    The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.
    Direction string
    The direction of traffic. Defaults to "egress". Changing this updates the direction of the existing QoS minimum bandwidth rule.
    Region string
    The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the region argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.
    minKbps Integer
    The minimum kilobits per second. Changing this updates the min kbps value of the existing QoS minimum bandwidth rule.
    qosPolicyId String
    The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.
    direction String
    The direction of traffic. Defaults to "egress". Changing this updates the direction of the existing QoS minimum bandwidth rule.
    region String
    The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the region argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.
    minKbps number
    The minimum kilobits per second. Changing this updates the min kbps value of the existing QoS minimum bandwidth rule.
    qosPolicyId string
    The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.
    direction string
    The direction of traffic. Defaults to "egress". Changing this updates the direction of the existing QoS minimum bandwidth rule.
    region string
    The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the region argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.
    min_kbps int
    The minimum kilobits per second. Changing this updates the min kbps value of the existing QoS minimum bandwidth rule.
    qos_policy_id str
    The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.
    direction str
    The direction of traffic. Defaults to "egress". Changing this updates the direction of the existing QoS minimum bandwidth rule.
    region str
    The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the region argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.
    minKbps Number
    The minimum kilobits per second. Changing this updates the min kbps value of the existing QoS minimum bandwidth rule.
    qosPolicyId String
    The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.
    direction String
    The direction of traffic. Defaults to "egress". Changing this updates the direction of the existing QoS minimum bandwidth rule.
    region String
    The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the region argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the QosMinimumBandwidthRule 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 QosMinimumBandwidthRule Resource

    Get an existing QosMinimumBandwidthRule 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?: QosMinimumBandwidthRuleState, opts?: CustomResourceOptions): QosMinimumBandwidthRule
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            direction: Optional[str] = None,
            min_kbps: Optional[int] = None,
            qos_policy_id: Optional[str] = None,
            region: Optional[str] = None) -> QosMinimumBandwidthRule
    func GetQosMinimumBandwidthRule(ctx *Context, name string, id IDInput, state *QosMinimumBandwidthRuleState, opts ...ResourceOption) (*QosMinimumBandwidthRule, error)
    public static QosMinimumBandwidthRule Get(string name, Input<string> id, QosMinimumBandwidthRuleState? state, CustomResourceOptions? opts = null)
    public static QosMinimumBandwidthRule get(String name, Output<String> id, QosMinimumBandwidthRuleState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    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.
    The following state arguments are supported:
    Direction string
    The direction of traffic. Defaults to "egress". Changing this updates the direction of the existing QoS minimum bandwidth rule.
    MinKbps int
    The minimum kilobits per second. Changing this updates the min kbps value of the existing QoS minimum bandwidth rule.
    QosPolicyId string
    The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.
    Region string
    The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the region argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.
    Direction string
    The direction of traffic. Defaults to "egress". Changing this updates the direction of the existing QoS minimum bandwidth rule.
    MinKbps int
    The minimum kilobits per second. Changing this updates the min kbps value of the existing QoS minimum bandwidth rule.
    QosPolicyId string
    The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.
    Region string
    The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the region argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.
    direction String
    The direction of traffic. Defaults to "egress". Changing this updates the direction of the existing QoS minimum bandwidth rule.
    minKbps Integer
    The minimum kilobits per second. Changing this updates the min kbps value of the existing QoS minimum bandwidth rule.
    qosPolicyId String
    The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.
    region String
    The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the region argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.
    direction string
    The direction of traffic. Defaults to "egress". Changing this updates the direction of the existing QoS minimum bandwidth rule.
    minKbps number
    The minimum kilobits per second. Changing this updates the min kbps value of the existing QoS minimum bandwidth rule.
    qosPolicyId string
    The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.
    region string
    The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the region argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.
    direction str
    The direction of traffic. Defaults to "egress". Changing this updates the direction of the existing QoS minimum bandwidth rule.
    min_kbps int
    The minimum kilobits per second. Changing this updates the min kbps value of the existing QoS minimum bandwidth rule.
    qos_policy_id str
    The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.
    region str
    The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the region argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.
    direction String
    The direction of traffic. Defaults to "egress". Changing this updates the direction of the existing QoS minimum bandwidth rule.
    minKbps Number
    The minimum kilobits per second. Changing this updates the min kbps value of the existing QoS minimum bandwidth rule.
    qosPolicyId String
    The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.
    region String
    The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the region argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.

    Import

    QoS minimum bandwidth rules can be imported using the qos_policy_id/minimum_bandwidth_rule_id format, e.g.

    $ pulumi import openstack:networking/qosMinimumBandwidthRule:QosMinimumBandwidthRule minimum_bandwidth_rule_1 d6ae28ce-fcb5-4180-aa62-d260a27e09ae/46dfb556-b92f-48ce-94c5-9a9e2140de94
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    OpenStack pulumi/pulumi-openstack
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the openstack Terraform Provider.
    openstack logo
    OpenStack v5.0.0 published on Friday, Sep 27, 2024 by Pulumi