Documentation ¶
Index ¶
- type L7PolicyV2
- func (*L7PolicyV2) ElementType() reflect.Type
- func (i *L7PolicyV2) ToL7PolicyV2Output() L7PolicyV2Output
- func (i *L7PolicyV2) ToL7PolicyV2OutputWithContext(ctx context.Context) L7PolicyV2Output
- func (i *L7PolicyV2) ToL7PolicyV2PtrOutput() L7PolicyV2PtrOutput
- func (i *L7PolicyV2) ToL7PolicyV2PtrOutputWithContext(ctx context.Context) L7PolicyV2PtrOutput
- type L7PolicyV2Args
- type L7PolicyV2Array
- type L7PolicyV2ArrayInput
- type L7PolicyV2ArrayOutput
- func (L7PolicyV2ArrayOutput) ElementType() reflect.Type
- func (o L7PolicyV2ArrayOutput) Index(i pulumi.IntInput) L7PolicyV2Output
- func (o L7PolicyV2ArrayOutput) ToL7PolicyV2ArrayOutput() L7PolicyV2ArrayOutput
- func (o L7PolicyV2ArrayOutput) ToL7PolicyV2ArrayOutputWithContext(ctx context.Context) L7PolicyV2ArrayOutput
- type L7PolicyV2Input
- type L7PolicyV2Map
- type L7PolicyV2MapInput
- type L7PolicyV2MapOutput
- func (L7PolicyV2MapOutput) ElementType() reflect.Type
- func (o L7PolicyV2MapOutput) MapIndex(k pulumi.StringInput) L7PolicyV2Output
- func (o L7PolicyV2MapOutput) ToL7PolicyV2MapOutput() L7PolicyV2MapOutput
- func (o L7PolicyV2MapOutput) ToL7PolicyV2MapOutputWithContext(ctx context.Context) L7PolicyV2MapOutput
- type L7PolicyV2Output
- func (L7PolicyV2Output) ElementType() reflect.Type
- func (o L7PolicyV2Output) ToL7PolicyV2Output() L7PolicyV2Output
- func (o L7PolicyV2Output) ToL7PolicyV2OutputWithContext(ctx context.Context) L7PolicyV2Output
- func (o L7PolicyV2Output) ToL7PolicyV2PtrOutput() L7PolicyV2PtrOutput
- func (o L7PolicyV2Output) ToL7PolicyV2PtrOutputWithContext(ctx context.Context) L7PolicyV2PtrOutput
- type L7PolicyV2PtrInput
- type L7PolicyV2PtrOutput
- type L7PolicyV2State
- type L7RuleV2
- func (*L7RuleV2) ElementType() reflect.Type
- func (i *L7RuleV2) ToL7RuleV2Output() L7RuleV2Output
- func (i *L7RuleV2) ToL7RuleV2OutputWithContext(ctx context.Context) L7RuleV2Output
- func (i *L7RuleV2) ToL7RuleV2PtrOutput() L7RuleV2PtrOutput
- func (i *L7RuleV2) ToL7RuleV2PtrOutputWithContext(ctx context.Context) L7RuleV2PtrOutput
- type L7RuleV2Args
- type L7RuleV2Array
- type L7RuleV2ArrayInput
- type L7RuleV2ArrayOutput
- type L7RuleV2Input
- type L7RuleV2Map
- type L7RuleV2MapInput
- type L7RuleV2MapOutput
- type L7RuleV2Output
- func (L7RuleV2Output) ElementType() reflect.Type
- func (o L7RuleV2Output) ToL7RuleV2Output() L7RuleV2Output
- func (o L7RuleV2Output) ToL7RuleV2OutputWithContext(ctx context.Context) L7RuleV2Output
- func (o L7RuleV2Output) ToL7RuleV2PtrOutput() L7RuleV2PtrOutput
- func (o L7RuleV2Output) ToL7RuleV2PtrOutputWithContext(ctx context.Context) L7RuleV2PtrOutput
- type L7RuleV2PtrInput
- type L7RuleV2PtrOutput
- type L7RuleV2State
- type Listener
- func (*Listener) ElementType() reflect.Type
- func (i *Listener) ToListenerOutput() ListenerOutput
- func (i *Listener) ToListenerOutputWithContext(ctx context.Context) ListenerOutput
- func (i *Listener) ToListenerPtrOutput() ListenerPtrOutput
- func (i *Listener) ToListenerPtrOutputWithContext(ctx context.Context) ListenerPtrOutput
- type ListenerArgs
- type ListenerArray
- type ListenerArrayInput
- type ListenerArrayOutput
- type ListenerInput
- type ListenerMap
- type ListenerMapInput
- type ListenerMapOutput
- type ListenerOutput
- func (ListenerOutput) ElementType() reflect.Type
- func (o ListenerOutput) ToListenerOutput() ListenerOutput
- func (o ListenerOutput) ToListenerOutputWithContext(ctx context.Context) ListenerOutput
- func (o ListenerOutput) ToListenerPtrOutput() ListenerPtrOutput
- func (o ListenerOutput) ToListenerPtrOutputWithContext(ctx context.Context) ListenerPtrOutput
- type ListenerPtrInput
- type ListenerPtrOutput
- type ListenerState
- type LoadBalancer
- func (*LoadBalancer) ElementType() reflect.Type
- func (i *LoadBalancer) ToLoadBalancerOutput() LoadBalancerOutput
- func (i *LoadBalancer) ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput
- func (i *LoadBalancer) ToLoadBalancerPtrOutput() LoadBalancerPtrOutput
- func (i *LoadBalancer) ToLoadBalancerPtrOutputWithContext(ctx context.Context) LoadBalancerPtrOutput
- type LoadBalancerArgs
- type LoadBalancerArray
- type LoadBalancerArrayInput
- type LoadBalancerArrayOutput
- func (LoadBalancerArrayOutput) ElementType() reflect.Type
- func (o LoadBalancerArrayOutput) Index(i pulumi.IntInput) LoadBalancerOutput
- func (o LoadBalancerArrayOutput) ToLoadBalancerArrayOutput() LoadBalancerArrayOutput
- func (o LoadBalancerArrayOutput) ToLoadBalancerArrayOutputWithContext(ctx context.Context) LoadBalancerArrayOutput
- type LoadBalancerInput
- type LoadBalancerMap
- type LoadBalancerMapInput
- type LoadBalancerMapOutput
- func (LoadBalancerMapOutput) ElementType() reflect.Type
- func (o LoadBalancerMapOutput) MapIndex(k pulumi.StringInput) LoadBalancerOutput
- func (o LoadBalancerMapOutput) ToLoadBalancerMapOutput() LoadBalancerMapOutput
- func (o LoadBalancerMapOutput) ToLoadBalancerMapOutputWithContext(ctx context.Context) LoadBalancerMapOutput
- type LoadBalancerOutput
- func (LoadBalancerOutput) ElementType() reflect.Type
- func (o LoadBalancerOutput) ToLoadBalancerOutput() LoadBalancerOutput
- func (o LoadBalancerOutput) ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput
- func (o LoadBalancerOutput) ToLoadBalancerPtrOutput() LoadBalancerPtrOutput
- func (o LoadBalancerOutput) ToLoadBalancerPtrOutputWithContext(ctx context.Context) LoadBalancerPtrOutput
- type LoadBalancerPtrInput
- type LoadBalancerPtrOutput
- type LoadBalancerState
- type Member
- func (*Member) ElementType() reflect.Type
- func (i *Member) ToMemberOutput() MemberOutput
- func (i *Member) ToMemberOutputWithContext(ctx context.Context) MemberOutput
- func (i *Member) ToMemberPtrOutput() MemberPtrOutput
- func (i *Member) ToMemberPtrOutputWithContext(ctx context.Context) MemberPtrOutput
- type MemberArgs
- type MemberArray
- type MemberArrayInput
- type MemberArrayOutput
- type MemberInput
- type MemberMap
- type MemberMapInput
- type MemberMapOutput
- type MemberOutput
- func (MemberOutput) ElementType() reflect.Type
- func (o MemberOutput) ToMemberOutput() MemberOutput
- func (o MemberOutput) ToMemberOutputWithContext(ctx context.Context) MemberOutput
- func (o MemberOutput) ToMemberPtrOutput() MemberPtrOutput
- func (o MemberOutput) ToMemberPtrOutputWithContext(ctx context.Context) MemberPtrOutput
- type MemberPtrInput
- type MemberPtrOutput
- type MemberState
- type MemberV1
- func (*MemberV1) ElementType() reflect.Type
- func (i *MemberV1) ToMemberV1Output() MemberV1Output
- func (i *MemberV1) ToMemberV1OutputWithContext(ctx context.Context) MemberV1Output
- func (i *MemberV1) ToMemberV1PtrOutput() MemberV1PtrOutput
- func (i *MemberV1) ToMemberV1PtrOutputWithContext(ctx context.Context) MemberV1PtrOutput
- type MemberV1Args
- type MemberV1Array
- type MemberV1ArrayInput
- type MemberV1ArrayOutput
- type MemberV1Input
- type MemberV1Map
- type MemberV1MapInput
- type MemberV1MapOutput
- type MemberV1Output
- func (MemberV1Output) ElementType() reflect.Type
- func (o MemberV1Output) ToMemberV1Output() MemberV1Output
- func (o MemberV1Output) ToMemberV1OutputWithContext(ctx context.Context) MemberV1Output
- func (o MemberV1Output) ToMemberV1PtrOutput() MemberV1PtrOutput
- func (o MemberV1Output) ToMemberV1PtrOutputWithContext(ctx context.Context) MemberV1PtrOutput
- type MemberV1PtrInput
- type MemberV1PtrOutput
- type MemberV1State
- type Members
- func (*Members) ElementType() reflect.Type
- func (i *Members) ToMembersOutput() MembersOutput
- func (i *Members) ToMembersOutputWithContext(ctx context.Context) MembersOutput
- func (i *Members) ToMembersPtrOutput() MembersPtrOutput
- func (i *Members) ToMembersPtrOutputWithContext(ctx context.Context) MembersPtrOutput
- type MembersArgs
- type MembersArray
- type MembersArrayInput
- type MembersArrayOutput
- type MembersInput
- type MembersMap
- type MembersMapInput
- type MembersMapOutput
- type MembersMember
- type MembersMemberArgs
- type MembersMemberArray
- type MembersMemberArrayInput
- type MembersMemberArrayOutput
- func (MembersMemberArrayOutput) ElementType() reflect.Type
- func (o MembersMemberArrayOutput) Index(i pulumi.IntInput) MembersMemberOutput
- func (o MembersMemberArrayOutput) ToMembersMemberArrayOutput() MembersMemberArrayOutput
- func (o MembersMemberArrayOutput) ToMembersMemberArrayOutputWithContext(ctx context.Context) MembersMemberArrayOutput
- type MembersMemberInput
- type MembersMemberOutput
- func (o MembersMemberOutput) Address() pulumi.StringOutput
- func (o MembersMemberOutput) AdminStateUp() pulumi.BoolPtrOutput
- func (MembersMemberOutput) ElementType() reflect.Type
- func (o MembersMemberOutput) Id() pulumi.StringPtrOutput
- func (o MembersMemberOutput) Name() pulumi.StringPtrOutput
- func (o MembersMemberOutput) ProtocolPort() pulumi.IntOutput
- func (o MembersMemberOutput) SubnetId() pulumi.StringPtrOutput
- func (o MembersMemberOutput) ToMembersMemberOutput() MembersMemberOutput
- func (o MembersMemberOutput) ToMembersMemberOutputWithContext(ctx context.Context) MembersMemberOutput
- func (o MembersMemberOutput) Weight() pulumi.IntPtrOutput
- type MembersOutput
- func (MembersOutput) ElementType() reflect.Type
- func (o MembersOutput) ToMembersOutput() MembersOutput
- func (o MembersOutput) ToMembersOutputWithContext(ctx context.Context) MembersOutput
- func (o MembersOutput) ToMembersPtrOutput() MembersPtrOutput
- func (o MembersOutput) ToMembersPtrOutputWithContext(ctx context.Context) MembersPtrOutput
- type MembersPtrInput
- type MembersPtrOutput
- type MembersState
- type Monitor
- func (*Monitor) ElementType() reflect.Type
- func (i *Monitor) ToMonitorOutput() MonitorOutput
- func (i *Monitor) ToMonitorOutputWithContext(ctx context.Context) MonitorOutput
- func (i *Monitor) ToMonitorPtrOutput() MonitorPtrOutput
- func (i *Monitor) ToMonitorPtrOutputWithContext(ctx context.Context) MonitorPtrOutput
- type MonitorArgs
- type MonitorArray
- type MonitorArrayInput
- type MonitorArrayOutput
- type MonitorInput
- type MonitorMap
- type MonitorMapInput
- type MonitorMapOutput
- type MonitorOutput
- func (MonitorOutput) ElementType() reflect.Type
- func (o MonitorOutput) ToMonitorOutput() MonitorOutput
- func (o MonitorOutput) ToMonitorOutputWithContext(ctx context.Context) MonitorOutput
- func (o MonitorOutput) ToMonitorPtrOutput() MonitorPtrOutput
- func (o MonitorOutput) ToMonitorPtrOutputWithContext(ctx context.Context) MonitorPtrOutput
- type MonitorPtrInput
- type MonitorPtrOutput
- type MonitorState
- type MonitorV1
- func (*MonitorV1) ElementType() reflect.Type
- func (i *MonitorV1) ToMonitorV1Output() MonitorV1Output
- func (i *MonitorV1) ToMonitorV1OutputWithContext(ctx context.Context) MonitorV1Output
- func (i *MonitorV1) ToMonitorV1PtrOutput() MonitorV1PtrOutput
- func (i *MonitorV1) ToMonitorV1PtrOutputWithContext(ctx context.Context) MonitorV1PtrOutput
- type MonitorV1Args
- type MonitorV1Array
- type MonitorV1ArrayInput
- type MonitorV1ArrayOutput
- func (MonitorV1ArrayOutput) ElementType() reflect.Type
- func (o MonitorV1ArrayOutput) Index(i pulumi.IntInput) MonitorV1Output
- func (o MonitorV1ArrayOutput) ToMonitorV1ArrayOutput() MonitorV1ArrayOutput
- func (o MonitorV1ArrayOutput) ToMonitorV1ArrayOutputWithContext(ctx context.Context) MonitorV1ArrayOutput
- type MonitorV1Input
- type MonitorV1Map
- type MonitorV1MapInput
- type MonitorV1MapOutput
- type MonitorV1Output
- func (MonitorV1Output) ElementType() reflect.Type
- func (o MonitorV1Output) ToMonitorV1Output() MonitorV1Output
- func (o MonitorV1Output) ToMonitorV1OutputWithContext(ctx context.Context) MonitorV1Output
- func (o MonitorV1Output) ToMonitorV1PtrOutput() MonitorV1PtrOutput
- func (o MonitorV1Output) ToMonitorV1PtrOutputWithContext(ctx context.Context) MonitorV1PtrOutput
- type MonitorV1PtrInput
- type MonitorV1PtrOutput
- type MonitorV1State
- type Pool
- type PoolArgs
- type PoolArray
- type PoolArrayInput
- type PoolArrayOutput
- type PoolInput
- type PoolMap
- type PoolMapInput
- type PoolMapOutput
- type PoolOutput
- func (PoolOutput) ElementType() reflect.Type
- func (o PoolOutput) ToPoolOutput() PoolOutput
- func (o PoolOutput) ToPoolOutputWithContext(ctx context.Context) PoolOutput
- func (o PoolOutput) ToPoolPtrOutput() PoolPtrOutput
- func (o PoolOutput) ToPoolPtrOutputWithContext(ctx context.Context) PoolPtrOutput
- type PoolPersistence
- type PoolPersistenceArgs
- func (PoolPersistenceArgs) ElementType() reflect.Type
- func (i PoolPersistenceArgs) ToPoolPersistenceOutput() PoolPersistenceOutput
- func (i PoolPersistenceArgs) ToPoolPersistenceOutputWithContext(ctx context.Context) PoolPersistenceOutput
- func (i PoolPersistenceArgs) ToPoolPersistencePtrOutput() PoolPersistencePtrOutput
- func (i PoolPersistenceArgs) ToPoolPersistencePtrOutputWithContext(ctx context.Context) PoolPersistencePtrOutput
- type PoolPersistenceInput
- type PoolPersistenceOutput
- func (o PoolPersistenceOutput) CookieName() pulumi.StringPtrOutput
- func (PoolPersistenceOutput) ElementType() reflect.Type
- func (o PoolPersistenceOutput) ToPoolPersistenceOutput() PoolPersistenceOutput
- func (o PoolPersistenceOutput) ToPoolPersistenceOutputWithContext(ctx context.Context) PoolPersistenceOutput
- func (o PoolPersistenceOutput) ToPoolPersistencePtrOutput() PoolPersistencePtrOutput
- func (o PoolPersistenceOutput) ToPoolPersistencePtrOutputWithContext(ctx context.Context) PoolPersistencePtrOutput
- func (o PoolPersistenceOutput) Type() pulumi.StringOutput
- type PoolPersistencePtrInput
- type PoolPersistencePtrOutput
- func (o PoolPersistencePtrOutput) CookieName() pulumi.StringPtrOutput
- func (o PoolPersistencePtrOutput) Elem() PoolPersistenceOutput
- func (PoolPersistencePtrOutput) ElementType() reflect.Type
- func (o PoolPersistencePtrOutput) ToPoolPersistencePtrOutput() PoolPersistencePtrOutput
- func (o PoolPersistencePtrOutput) ToPoolPersistencePtrOutputWithContext(ctx context.Context) PoolPersistencePtrOutput
- func (o PoolPersistencePtrOutput) Type() pulumi.StringPtrOutput
- type PoolPtrInput
- type PoolPtrOutput
- type PoolState
- type PoolV1
- func (*PoolV1) ElementType() reflect.Type
- func (i *PoolV1) ToPoolV1Output() PoolV1Output
- func (i *PoolV1) ToPoolV1OutputWithContext(ctx context.Context) PoolV1Output
- func (i *PoolV1) ToPoolV1PtrOutput() PoolV1PtrOutput
- func (i *PoolV1) ToPoolV1PtrOutputWithContext(ctx context.Context) PoolV1PtrOutput
- type PoolV1Args
- type PoolV1Array
- type PoolV1ArrayInput
- type PoolV1ArrayOutput
- type PoolV1Input
- type PoolV1Map
- type PoolV1MapInput
- type PoolV1MapOutput
- type PoolV1Output
- func (PoolV1Output) ElementType() reflect.Type
- func (o PoolV1Output) ToPoolV1Output() PoolV1Output
- func (o PoolV1Output) ToPoolV1OutputWithContext(ctx context.Context) PoolV1Output
- func (o PoolV1Output) ToPoolV1PtrOutput() PoolV1PtrOutput
- func (o PoolV1Output) ToPoolV1PtrOutputWithContext(ctx context.Context) PoolV1PtrOutput
- type PoolV1PtrInput
- type PoolV1PtrOutput
- type PoolV1State
- type Quota
- type QuotaArgs
- type QuotaArray
- type QuotaArrayInput
- type QuotaArrayOutput
- type QuotaInput
- type QuotaMap
- type QuotaMapInput
- type QuotaMapOutput
- type QuotaOutput
- func (QuotaOutput) ElementType() reflect.Type
- func (o QuotaOutput) ToQuotaOutput() QuotaOutput
- func (o QuotaOutput) ToQuotaOutputWithContext(ctx context.Context) QuotaOutput
- func (o QuotaOutput) ToQuotaPtrOutput() QuotaPtrOutput
- func (o QuotaOutput) ToQuotaPtrOutputWithContext(ctx context.Context) QuotaPtrOutput
- type QuotaPtrInput
- type QuotaPtrOutput
- type QuotaState
- type Vip
- type VipArgs
- type VipArray
- type VipArrayInput
- type VipArrayOutput
- type VipInput
- type VipMap
- type VipMapInput
- type VipMapOutput
- type VipOutput
- type VipPtrInput
- type VipPtrOutput
- type VipState
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type L7PolicyV2 ¶
type L7PolicyV2 struct { pulumi.CustomResourceState // The L7 Policy action - can either be REDIRECT\_TO\_POOL, // REDIRECT\_TO\_URL or REJECT. Action pulumi.StringOutput `pulumi:"action"` // The administrative state of the L7 Policy. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrOutput `pulumi:"adminStateUp"` // Human-readable description for the L7 Policy. Description pulumi.StringPtrOutput `pulumi:"description"` // The Listener on which the L7 Policy will be associated with. // Changing this creates a new L7 Policy. ListenerId pulumi.StringOutput `pulumi:"listenerId"` // Human-readable name for the L7 Policy. Does not have // to be unique. Name pulumi.StringOutput `pulumi:"name"` // The position of this policy on the listener. Positions start at 1. Position pulumi.IntOutput `pulumi:"position"` // Requests matching this policy will be redirected to the // pool with this ID. Only valid if action is REDIRECT\_TO\_POOL. RedirectPoolId pulumi.StringPtrOutput `pulumi:"redirectPoolId"` // Requests matching this policy will be redirected to this URL. // Only valid if action is REDIRECT\_TO\_URL. RedirectUrl pulumi.StringPtrOutput `pulumi:"redirectUrl"` // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an . If omitted, the // `region` argument of the provider is used. Changing this creates a new // L7 Policy. Region pulumi.StringOutput `pulumi:"region"` // Required for admins. The UUID of the tenant who owns // the L7 Policy. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new L7 Policy. TenantId pulumi.StringOutput `pulumi:"tenantId"` }
Manages a Load Balancer L7 Policy resource within OpenStack.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/loadbalancer" "github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/networking" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { network1, err := networking.NewNetwork(ctx, "network1", &networking.NetworkArgs{ AdminStateUp: pulumi.Bool(true), }) if err != nil { return err } subnet1, err := networking.NewSubnet(ctx, "subnet1", &networking.SubnetArgs{ Cidr: pulumi.String("192.168.199.0/24"), IpVersion: pulumi.Int(4), NetworkId: network1.ID(), }) if err != nil { return err } loadbalancer1, err := loadbalancer.NewLoadBalancer(ctx, "loadbalancer1", &loadbalancer.LoadBalancerArgs{ VipSubnetId: subnet1.ID(), }) if err != nil { return err } listener1, err := loadbalancer.NewListener(ctx, "listener1", &loadbalancer.ListenerArgs{ LoadbalancerId: loadbalancer1.ID(), Protocol: pulumi.String("HTTP"), ProtocolPort: pulumi.Int(8080), }) if err != nil { return err } pool1, err := loadbalancer.NewPool(ctx, "pool1", &loadbalancer.PoolArgs{ LbMethod: pulumi.String("ROUND_ROBIN"), LoadbalancerId: loadbalancer1.ID(), Protocol: pulumi.String("HTTP"), }) if err != nil { return err } _, err = loadbalancer.NewL7PolicyV2(ctx, "l7policy1", &loadbalancer.L7PolicyV2Args{ Action: pulumi.String("REDIRECT_TO_POOL"), Description: pulumi.String("test l7 policy"), ListenerId: listener1.ID(), Position: pulumi.Int(1), RedirectPoolId: pool1.ID(), }) if err != nil { return err } return nil }) }
```
## Import
Load Balancer L7 Policy can be imported using the L7 Policy ID, e.g.
```sh
$ pulumi import openstack:loadbalancer/l7PolicyV2:L7PolicyV2 l7policy_1 8a7a79c2-cf17-4e65-b2ae-ddc8bfcf6c74
```
func GetL7PolicyV2 ¶
func GetL7PolicyV2(ctx *pulumi.Context, name string, id pulumi.IDInput, state *L7PolicyV2State, opts ...pulumi.ResourceOption) (*L7PolicyV2, error)
GetL7PolicyV2 gets an existing L7PolicyV2 resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewL7PolicyV2 ¶
func NewL7PolicyV2(ctx *pulumi.Context, name string, args *L7PolicyV2Args, opts ...pulumi.ResourceOption) (*L7PolicyV2, error)
NewL7PolicyV2 registers a new resource with the given unique name, arguments, and options.
func (*L7PolicyV2) ElementType ¶ added in v2.10.0
func (*L7PolicyV2) ElementType() reflect.Type
func (*L7PolicyV2) ToL7PolicyV2Output ¶ added in v2.10.0
func (i *L7PolicyV2) ToL7PolicyV2Output() L7PolicyV2Output
func (*L7PolicyV2) ToL7PolicyV2OutputWithContext ¶ added in v2.10.0
func (i *L7PolicyV2) ToL7PolicyV2OutputWithContext(ctx context.Context) L7PolicyV2Output
func (*L7PolicyV2) ToL7PolicyV2PtrOutput ¶ added in v2.14.1
func (i *L7PolicyV2) ToL7PolicyV2PtrOutput() L7PolicyV2PtrOutput
func (*L7PolicyV2) ToL7PolicyV2PtrOutputWithContext ¶ added in v2.14.1
func (i *L7PolicyV2) ToL7PolicyV2PtrOutputWithContext(ctx context.Context) L7PolicyV2PtrOutput
type L7PolicyV2Args ¶
type L7PolicyV2Args struct { // The L7 Policy action - can either be REDIRECT\_TO\_POOL, // REDIRECT\_TO\_URL or REJECT. Action pulumi.StringInput // The administrative state of the L7 Policy. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrInput // Human-readable description for the L7 Policy. Description pulumi.StringPtrInput // The Listener on which the L7 Policy will be associated with. // Changing this creates a new L7 Policy. ListenerId pulumi.StringInput // Human-readable name for the L7 Policy. Does not have // to be unique. Name pulumi.StringPtrInput // The position of this policy on the listener. Positions start at 1. Position pulumi.IntPtrInput // Requests matching this policy will be redirected to the // pool with this ID. Only valid if action is REDIRECT\_TO\_POOL. RedirectPoolId pulumi.StringPtrInput // Requests matching this policy will be redirected to this URL. // Only valid if action is REDIRECT\_TO\_URL. RedirectUrl pulumi.StringPtrInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an . If omitted, the // `region` argument of the provider is used. Changing this creates a new // L7 Policy. Region pulumi.StringPtrInput // Required for admins. The UUID of the tenant who owns // the L7 Policy. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new L7 Policy. TenantId pulumi.StringPtrInput }
The set of arguments for constructing a L7PolicyV2 resource.
func (L7PolicyV2Args) ElementType ¶
func (L7PolicyV2Args) ElementType() reflect.Type
type L7PolicyV2Array ¶ added in v2.14.1
type L7PolicyV2Array []L7PolicyV2Input
func (L7PolicyV2Array) ElementType ¶ added in v2.14.1
func (L7PolicyV2Array) ElementType() reflect.Type
func (L7PolicyV2Array) ToL7PolicyV2ArrayOutput ¶ added in v2.14.1
func (i L7PolicyV2Array) ToL7PolicyV2ArrayOutput() L7PolicyV2ArrayOutput
func (L7PolicyV2Array) ToL7PolicyV2ArrayOutputWithContext ¶ added in v2.14.1
func (i L7PolicyV2Array) ToL7PolicyV2ArrayOutputWithContext(ctx context.Context) L7PolicyV2ArrayOutput
type L7PolicyV2ArrayInput ¶ added in v2.14.1
type L7PolicyV2ArrayInput interface { pulumi.Input ToL7PolicyV2ArrayOutput() L7PolicyV2ArrayOutput ToL7PolicyV2ArrayOutputWithContext(context.Context) L7PolicyV2ArrayOutput }
L7PolicyV2ArrayInput is an input type that accepts L7PolicyV2Array and L7PolicyV2ArrayOutput values. You can construct a concrete instance of `L7PolicyV2ArrayInput` via:
L7PolicyV2Array{ L7PolicyV2Args{...} }
type L7PolicyV2ArrayOutput ¶ added in v2.14.1
type L7PolicyV2ArrayOutput struct{ *pulumi.OutputState }
func (L7PolicyV2ArrayOutput) ElementType ¶ added in v2.14.1
func (L7PolicyV2ArrayOutput) ElementType() reflect.Type
func (L7PolicyV2ArrayOutput) Index ¶ added in v2.14.1
func (o L7PolicyV2ArrayOutput) Index(i pulumi.IntInput) L7PolicyV2Output
func (L7PolicyV2ArrayOutput) ToL7PolicyV2ArrayOutput ¶ added in v2.14.1
func (o L7PolicyV2ArrayOutput) ToL7PolicyV2ArrayOutput() L7PolicyV2ArrayOutput
func (L7PolicyV2ArrayOutput) ToL7PolicyV2ArrayOutputWithContext ¶ added in v2.14.1
func (o L7PolicyV2ArrayOutput) ToL7PolicyV2ArrayOutputWithContext(ctx context.Context) L7PolicyV2ArrayOutput
type L7PolicyV2Input ¶ added in v2.10.0
type L7PolicyV2Input interface { pulumi.Input ToL7PolicyV2Output() L7PolicyV2Output ToL7PolicyV2OutputWithContext(ctx context.Context) L7PolicyV2Output }
type L7PolicyV2Map ¶ added in v2.14.1
type L7PolicyV2Map map[string]L7PolicyV2Input
func (L7PolicyV2Map) ElementType ¶ added in v2.14.1
func (L7PolicyV2Map) ElementType() reflect.Type
func (L7PolicyV2Map) ToL7PolicyV2MapOutput ¶ added in v2.14.1
func (i L7PolicyV2Map) ToL7PolicyV2MapOutput() L7PolicyV2MapOutput
func (L7PolicyV2Map) ToL7PolicyV2MapOutputWithContext ¶ added in v2.14.1
func (i L7PolicyV2Map) ToL7PolicyV2MapOutputWithContext(ctx context.Context) L7PolicyV2MapOutput
type L7PolicyV2MapInput ¶ added in v2.14.1
type L7PolicyV2MapInput interface { pulumi.Input ToL7PolicyV2MapOutput() L7PolicyV2MapOutput ToL7PolicyV2MapOutputWithContext(context.Context) L7PolicyV2MapOutput }
L7PolicyV2MapInput is an input type that accepts L7PolicyV2Map and L7PolicyV2MapOutput values. You can construct a concrete instance of `L7PolicyV2MapInput` via:
L7PolicyV2Map{ "key": L7PolicyV2Args{...} }
type L7PolicyV2MapOutput ¶ added in v2.14.1
type L7PolicyV2MapOutput struct{ *pulumi.OutputState }
func (L7PolicyV2MapOutput) ElementType ¶ added in v2.14.1
func (L7PolicyV2MapOutput) ElementType() reflect.Type
func (L7PolicyV2MapOutput) MapIndex ¶ added in v2.14.1
func (o L7PolicyV2MapOutput) MapIndex(k pulumi.StringInput) L7PolicyV2Output
func (L7PolicyV2MapOutput) ToL7PolicyV2MapOutput ¶ added in v2.14.1
func (o L7PolicyV2MapOutput) ToL7PolicyV2MapOutput() L7PolicyV2MapOutput
func (L7PolicyV2MapOutput) ToL7PolicyV2MapOutputWithContext ¶ added in v2.14.1
func (o L7PolicyV2MapOutput) ToL7PolicyV2MapOutputWithContext(ctx context.Context) L7PolicyV2MapOutput
type L7PolicyV2Output ¶ added in v2.10.0
type L7PolicyV2Output struct {
*pulumi.OutputState
}
func (L7PolicyV2Output) ElementType ¶ added in v2.10.0
func (L7PolicyV2Output) ElementType() reflect.Type
func (L7PolicyV2Output) ToL7PolicyV2Output ¶ added in v2.10.0
func (o L7PolicyV2Output) ToL7PolicyV2Output() L7PolicyV2Output
func (L7PolicyV2Output) ToL7PolicyV2OutputWithContext ¶ added in v2.10.0
func (o L7PolicyV2Output) ToL7PolicyV2OutputWithContext(ctx context.Context) L7PolicyV2Output
func (L7PolicyV2Output) ToL7PolicyV2PtrOutput ¶ added in v2.14.1
func (o L7PolicyV2Output) ToL7PolicyV2PtrOutput() L7PolicyV2PtrOutput
func (L7PolicyV2Output) ToL7PolicyV2PtrOutputWithContext ¶ added in v2.14.1
func (o L7PolicyV2Output) ToL7PolicyV2PtrOutputWithContext(ctx context.Context) L7PolicyV2PtrOutput
type L7PolicyV2PtrInput ¶ added in v2.14.1
type L7PolicyV2PtrInput interface { pulumi.Input ToL7PolicyV2PtrOutput() L7PolicyV2PtrOutput ToL7PolicyV2PtrOutputWithContext(ctx context.Context) L7PolicyV2PtrOutput }
type L7PolicyV2PtrOutput ¶ added in v2.14.1
type L7PolicyV2PtrOutput struct {
*pulumi.OutputState
}
func (L7PolicyV2PtrOutput) ElementType ¶ added in v2.14.1
func (L7PolicyV2PtrOutput) ElementType() reflect.Type
func (L7PolicyV2PtrOutput) ToL7PolicyV2PtrOutput ¶ added in v2.14.1
func (o L7PolicyV2PtrOutput) ToL7PolicyV2PtrOutput() L7PolicyV2PtrOutput
func (L7PolicyV2PtrOutput) ToL7PolicyV2PtrOutputWithContext ¶ added in v2.14.1
func (o L7PolicyV2PtrOutput) ToL7PolicyV2PtrOutputWithContext(ctx context.Context) L7PolicyV2PtrOutput
type L7PolicyV2State ¶
type L7PolicyV2State struct { // The L7 Policy action - can either be REDIRECT\_TO\_POOL, // REDIRECT\_TO\_URL or REJECT. Action pulumi.StringPtrInput // The administrative state of the L7 Policy. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrInput // Human-readable description for the L7 Policy. Description pulumi.StringPtrInput // The Listener on which the L7 Policy will be associated with. // Changing this creates a new L7 Policy. ListenerId pulumi.StringPtrInput // Human-readable name for the L7 Policy. Does not have // to be unique. Name pulumi.StringPtrInput // The position of this policy on the listener. Positions start at 1. Position pulumi.IntPtrInput // Requests matching this policy will be redirected to the // pool with this ID. Only valid if action is REDIRECT\_TO\_POOL. RedirectPoolId pulumi.StringPtrInput // Requests matching this policy will be redirected to this URL. // Only valid if action is REDIRECT\_TO\_URL. RedirectUrl pulumi.StringPtrInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an . If omitted, the // `region` argument of the provider is used. Changing this creates a new // L7 Policy. Region pulumi.StringPtrInput // Required for admins. The UUID of the tenant who owns // the L7 Policy. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new L7 Policy. TenantId pulumi.StringPtrInput }
func (L7PolicyV2State) ElementType ¶
func (L7PolicyV2State) ElementType() reflect.Type
type L7RuleV2 ¶
type L7RuleV2 struct { pulumi.CustomResourceState // The administrative state of the L7 Rule. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrOutput `pulumi:"adminStateUp"` // The comparison type for the L7 rule - can either be // CONTAINS, STARTS\_WITH, ENDS_WITH, EQUAL_TO or REGEX CompareType pulumi.StringOutput `pulumi:"compareType"` // When true the logic of the rule is inverted. For example, with invert // true, equal to would become not equal to. Default is false. Invert pulumi.BoolPtrOutput `pulumi:"invert"` // The key to use for the comparison. For example, the name of the cookie to // evaluate. Valid when `type` is set to COOKIE or HEADER. Key pulumi.StringPtrOutput `pulumi:"key"` // The ID of the L7 Policy to query. Changing this creates a new // L7 Rule. L7policyId pulumi.StringOutput `pulumi:"l7policyId"` // The ID of the Listener owning this resource. ListenerId pulumi.StringOutput `pulumi:"listenerId"` // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an . If omitted, the // `region` argument of the provider is used. Changing this creates a new // L7 Rule. Region pulumi.StringOutput `pulumi:"region"` // Required for admins. The UUID of the tenant who owns // the L7 Rule. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new L7 Rule. TenantId pulumi.StringOutput `pulumi:"tenantId"` // The L7 Rule type - can either be COOKIE, FILE\_TYPE, HEADER, // HOST\_NAME or PATH. Type pulumi.StringOutput `pulumi:"type"` // The value to use for the comparison. For example, the file type to // compare. Value pulumi.StringOutput `pulumi:"value"` }
Manages a V2 L7 Rule resource within OpenStack.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/loadbalancer" "github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/networking" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { network1, err := networking.NewNetwork(ctx, "network1", &networking.NetworkArgs{ AdminStateUp: pulumi.Bool(true), }) if err != nil { return err } subnet1, err := networking.NewSubnet(ctx, "subnet1", &networking.SubnetArgs{ Cidr: pulumi.String("192.168.199.0/24"), IpVersion: pulumi.Int(4), NetworkId: network1.ID(), }) if err != nil { return err } loadbalancer1, err := loadbalancer.NewLoadBalancer(ctx, "loadbalancer1", &loadbalancer.LoadBalancerArgs{ VipSubnetId: subnet1.ID(), }) if err != nil { return err } listener1, err := loadbalancer.NewListener(ctx, "listener1", &loadbalancer.ListenerArgs{ LoadbalancerId: loadbalancer1.ID(), Protocol: pulumi.String("HTTP"), ProtocolPort: pulumi.Int(8080), }) if err != nil { return err } _, err = loadbalancer.NewPool(ctx, "pool1", &loadbalancer.PoolArgs{ LbMethod: pulumi.String("ROUND_ROBIN"), LoadbalancerId: loadbalancer1.ID(), Protocol: pulumi.String("HTTP"), }) if err != nil { return err } l7policy1, err := loadbalancer.NewL7PolicyV2(ctx, "l7policy1", &loadbalancer.L7PolicyV2Args{ Action: pulumi.String("REDIRECT_TO_URL"), Description: pulumi.String("test description"), ListenerId: listener1.ID(), Position: pulumi.Int(1), RedirectUrl: pulumi.String("http://www.example.com"), }) if err != nil { return err } _, err = loadbalancer.NewL7RuleV2(ctx, "l7rule1", &loadbalancer.L7RuleV2Args{ CompareType: pulumi.String("EQUAL_TO"), L7policyId: l7policy1.ID(), Type: pulumi.String("PATH"), Value: pulumi.String("/api"), }) if err != nil { return err } return nil }) }
```
## Import
Load Balancer L7 Rule can be imported using the L7 Policy ID and L7 Rule ID separated by a slash, e.g.
```sh
$ pulumi import openstack:loadbalancer/l7RuleV2:L7RuleV2 l7rule_1 e0bd694a-abbe-450e-b329-0931fd1cc5eb/4086b0c9-b18c-4d1c-b6b8-4c56c3ad2a9e
```
func GetL7RuleV2 ¶
func GetL7RuleV2(ctx *pulumi.Context, name string, id pulumi.IDInput, state *L7RuleV2State, opts ...pulumi.ResourceOption) (*L7RuleV2, error)
GetL7RuleV2 gets an existing L7RuleV2 resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewL7RuleV2 ¶
func NewL7RuleV2(ctx *pulumi.Context, name string, args *L7RuleV2Args, opts ...pulumi.ResourceOption) (*L7RuleV2, error)
NewL7RuleV2 registers a new resource with the given unique name, arguments, and options.
func (*L7RuleV2) ElementType ¶ added in v2.10.0
func (*L7RuleV2) ToL7RuleV2Output ¶ added in v2.10.0
func (i *L7RuleV2) ToL7RuleV2Output() L7RuleV2Output
func (*L7RuleV2) ToL7RuleV2OutputWithContext ¶ added in v2.10.0
func (i *L7RuleV2) ToL7RuleV2OutputWithContext(ctx context.Context) L7RuleV2Output
func (*L7RuleV2) ToL7RuleV2PtrOutput ¶ added in v2.14.1
func (i *L7RuleV2) ToL7RuleV2PtrOutput() L7RuleV2PtrOutput
func (*L7RuleV2) ToL7RuleV2PtrOutputWithContext ¶ added in v2.14.1
func (i *L7RuleV2) ToL7RuleV2PtrOutputWithContext(ctx context.Context) L7RuleV2PtrOutput
type L7RuleV2Args ¶
type L7RuleV2Args struct { // The administrative state of the L7 Rule. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrInput // The comparison type for the L7 rule - can either be // CONTAINS, STARTS\_WITH, ENDS_WITH, EQUAL_TO or REGEX CompareType pulumi.StringInput // When true the logic of the rule is inverted. For example, with invert // true, equal to would become not equal to. Default is false. Invert pulumi.BoolPtrInput // The key to use for the comparison. For example, the name of the cookie to // evaluate. Valid when `type` is set to COOKIE or HEADER. Key pulumi.StringPtrInput // The ID of the L7 Policy to query. Changing this creates a new // L7 Rule. L7policyId pulumi.StringInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an . If omitted, the // `region` argument of the provider is used. Changing this creates a new // L7 Rule. Region pulumi.StringPtrInput // Required for admins. The UUID of the tenant who owns // the L7 Rule. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new L7 Rule. TenantId pulumi.StringPtrInput // The L7 Rule type - can either be COOKIE, FILE\_TYPE, HEADER, // HOST\_NAME or PATH. Type pulumi.StringInput // The value to use for the comparison. For example, the file type to // compare. Value pulumi.StringInput }
The set of arguments for constructing a L7RuleV2 resource.
func (L7RuleV2Args) ElementType ¶
func (L7RuleV2Args) ElementType() reflect.Type
type L7RuleV2Array ¶ added in v2.14.1
type L7RuleV2Array []L7RuleV2Input
func (L7RuleV2Array) ElementType ¶ added in v2.14.1
func (L7RuleV2Array) ElementType() reflect.Type
func (L7RuleV2Array) ToL7RuleV2ArrayOutput ¶ added in v2.14.1
func (i L7RuleV2Array) ToL7RuleV2ArrayOutput() L7RuleV2ArrayOutput
func (L7RuleV2Array) ToL7RuleV2ArrayOutputWithContext ¶ added in v2.14.1
func (i L7RuleV2Array) ToL7RuleV2ArrayOutputWithContext(ctx context.Context) L7RuleV2ArrayOutput
type L7RuleV2ArrayInput ¶ added in v2.14.1
type L7RuleV2ArrayInput interface { pulumi.Input ToL7RuleV2ArrayOutput() L7RuleV2ArrayOutput ToL7RuleV2ArrayOutputWithContext(context.Context) L7RuleV2ArrayOutput }
L7RuleV2ArrayInput is an input type that accepts L7RuleV2Array and L7RuleV2ArrayOutput values. You can construct a concrete instance of `L7RuleV2ArrayInput` via:
L7RuleV2Array{ L7RuleV2Args{...} }
type L7RuleV2ArrayOutput ¶ added in v2.14.1
type L7RuleV2ArrayOutput struct{ *pulumi.OutputState }
func (L7RuleV2ArrayOutput) ElementType ¶ added in v2.14.1
func (L7RuleV2ArrayOutput) ElementType() reflect.Type
func (L7RuleV2ArrayOutput) Index ¶ added in v2.14.1
func (o L7RuleV2ArrayOutput) Index(i pulumi.IntInput) L7RuleV2Output
func (L7RuleV2ArrayOutput) ToL7RuleV2ArrayOutput ¶ added in v2.14.1
func (o L7RuleV2ArrayOutput) ToL7RuleV2ArrayOutput() L7RuleV2ArrayOutput
func (L7RuleV2ArrayOutput) ToL7RuleV2ArrayOutputWithContext ¶ added in v2.14.1
func (o L7RuleV2ArrayOutput) ToL7RuleV2ArrayOutputWithContext(ctx context.Context) L7RuleV2ArrayOutput
type L7RuleV2Input ¶ added in v2.10.0
type L7RuleV2Input interface { pulumi.Input ToL7RuleV2Output() L7RuleV2Output ToL7RuleV2OutputWithContext(ctx context.Context) L7RuleV2Output }
type L7RuleV2Map ¶ added in v2.14.1
type L7RuleV2Map map[string]L7RuleV2Input
func (L7RuleV2Map) ElementType ¶ added in v2.14.1
func (L7RuleV2Map) ElementType() reflect.Type
func (L7RuleV2Map) ToL7RuleV2MapOutput ¶ added in v2.14.1
func (i L7RuleV2Map) ToL7RuleV2MapOutput() L7RuleV2MapOutput
func (L7RuleV2Map) ToL7RuleV2MapOutputWithContext ¶ added in v2.14.1
func (i L7RuleV2Map) ToL7RuleV2MapOutputWithContext(ctx context.Context) L7RuleV2MapOutput
type L7RuleV2MapInput ¶ added in v2.14.1
type L7RuleV2MapInput interface { pulumi.Input ToL7RuleV2MapOutput() L7RuleV2MapOutput ToL7RuleV2MapOutputWithContext(context.Context) L7RuleV2MapOutput }
L7RuleV2MapInput is an input type that accepts L7RuleV2Map and L7RuleV2MapOutput values. You can construct a concrete instance of `L7RuleV2MapInput` via:
L7RuleV2Map{ "key": L7RuleV2Args{...} }
type L7RuleV2MapOutput ¶ added in v2.14.1
type L7RuleV2MapOutput struct{ *pulumi.OutputState }
func (L7RuleV2MapOutput) ElementType ¶ added in v2.14.1
func (L7RuleV2MapOutput) ElementType() reflect.Type
func (L7RuleV2MapOutput) MapIndex ¶ added in v2.14.1
func (o L7RuleV2MapOutput) MapIndex(k pulumi.StringInput) L7RuleV2Output
func (L7RuleV2MapOutput) ToL7RuleV2MapOutput ¶ added in v2.14.1
func (o L7RuleV2MapOutput) ToL7RuleV2MapOutput() L7RuleV2MapOutput
func (L7RuleV2MapOutput) ToL7RuleV2MapOutputWithContext ¶ added in v2.14.1
func (o L7RuleV2MapOutput) ToL7RuleV2MapOutputWithContext(ctx context.Context) L7RuleV2MapOutput
type L7RuleV2Output ¶ added in v2.10.0
type L7RuleV2Output struct {
*pulumi.OutputState
}
func (L7RuleV2Output) ElementType ¶ added in v2.10.0
func (L7RuleV2Output) ElementType() reflect.Type
func (L7RuleV2Output) ToL7RuleV2Output ¶ added in v2.10.0
func (o L7RuleV2Output) ToL7RuleV2Output() L7RuleV2Output
func (L7RuleV2Output) ToL7RuleV2OutputWithContext ¶ added in v2.10.0
func (o L7RuleV2Output) ToL7RuleV2OutputWithContext(ctx context.Context) L7RuleV2Output
func (L7RuleV2Output) ToL7RuleV2PtrOutput ¶ added in v2.14.1
func (o L7RuleV2Output) ToL7RuleV2PtrOutput() L7RuleV2PtrOutput
func (L7RuleV2Output) ToL7RuleV2PtrOutputWithContext ¶ added in v2.14.1
func (o L7RuleV2Output) ToL7RuleV2PtrOutputWithContext(ctx context.Context) L7RuleV2PtrOutput
type L7RuleV2PtrInput ¶ added in v2.14.1
type L7RuleV2PtrInput interface { pulumi.Input ToL7RuleV2PtrOutput() L7RuleV2PtrOutput ToL7RuleV2PtrOutputWithContext(ctx context.Context) L7RuleV2PtrOutput }
type L7RuleV2PtrOutput ¶ added in v2.14.1
type L7RuleV2PtrOutput struct {
*pulumi.OutputState
}
func (L7RuleV2PtrOutput) ElementType ¶ added in v2.14.1
func (L7RuleV2PtrOutput) ElementType() reflect.Type
func (L7RuleV2PtrOutput) ToL7RuleV2PtrOutput ¶ added in v2.14.1
func (o L7RuleV2PtrOutput) ToL7RuleV2PtrOutput() L7RuleV2PtrOutput
func (L7RuleV2PtrOutput) ToL7RuleV2PtrOutputWithContext ¶ added in v2.14.1
func (o L7RuleV2PtrOutput) ToL7RuleV2PtrOutputWithContext(ctx context.Context) L7RuleV2PtrOutput
type L7RuleV2State ¶
type L7RuleV2State struct { // The administrative state of the L7 Rule. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrInput // The comparison type for the L7 rule - can either be // CONTAINS, STARTS\_WITH, ENDS_WITH, EQUAL_TO or REGEX CompareType pulumi.StringPtrInput // When true the logic of the rule is inverted. For example, with invert // true, equal to would become not equal to. Default is false. Invert pulumi.BoolPtrInput // The key to use for the comparison. For example, the name of the cookie to // evaluate. Valid when `type` is set to COOKIE or HEADER. Key pulumi.StringPtrInput // The ID of the L7 Policy to query. Changing this creates a new // L7 Rule. L7policyId pulumi.StringPtrInput // The ID of the Listener owning this resource. ListenerId pulumi.StringPtrInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an . If omitted, the // `region` argument of the provider is used. Changing this creates a new // L7 Rule. Region pulumi.StringPtrInput // Required for admins. The UUID of the tenant who owns // the L7 Rule. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new L7 Rule. TenantId pulumi.StringPtrInput // The L7 Rule type - can either be COOKIE, FILE\_TYPE, HEADER, // HOST\_NAME or PATH. Type pulumi.StringPtrInput // The value to use for the comparison. For example, the file type to // compare. Value pulumi.StringPtrInput }
func (L7RuleV2State) ElementType ¶
func (L7RuleV2State) ElementType() reflect.Type
type Listener ¶
type Listener struct { pulumi.CustomResourceState // The administrative state of the Listener. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrOutput `pulumi:"adminStateUp"` // A list of CIDR blocks that are permitted to connect to this listener, denying // all other source addresses. If not present, defaults to allow all. AllowedCidrs pulumi.StringArrayOutput `pulumi:"allowedCidrs"` // The maximum number of connections allowed // for the Listener. ConnectionLimit pulumi.IntOutput `pulumi:"connectionLimit"` // The ID of the default pool with which the // Listener is associated. DefaultPoolId pulumi.StringOutput `pulumi:"defaultPoolId"` // A reference to a Barbican Secrets // container which stores TLS information. This is required if the protocol // is `TERMINATED_HTTPS`. See // [here](https://wiki.openstack.org/wiki/Network/LBaaS/docs/how-to-create-tls-loadbalancer) // for more information. DefaultTlsContainerRef pulumi.StringPtrOutput `pulumi:"defaultTlsContainerRef"` // Human-readable description for the Listener. Description pulumi.StringPtrOutput `pulumi:"description"` // The list of key value pairs representing headers to insert // into the request before it is sent to the backend members. Changing this updates the headers of the // existing listener. InsertHeaders pulumi.MapOutput `pulumi:"insertHeaders"` // The load balancer on which to provision this // Listener. Changing this creates a new Listener. LoadbalancerId pulumi.StringOutput `pulumi:"loadbalancerId"` // Human-readable name for the Listener. Does not have // to be unique. Name pulumi.StringOutput `pulumi:"name"` // The protocol - can either be TCP, HTTP, HTTPS, // TERMINATED_HTTPS or UDP (supported only in Octavia). Changing this creates a // new Listener. Protocol pulumi.StringOutput `pulumi:"protocol"` // The port on which to listen for client traffic. // Changing this creates a new Listener. ProtocolPort pulumi.IntOutput `pulumi:"protocolPort"` // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an . If omitted, the // `region` argument of the provider is used. Changing this creates a new // Listener. Region pulumi.StringOutput `pulumi:"region"` // A list of references to Barbican Secrets // containers which store SNI information. See // [here](https://wiki.openstack.org/wiki/Network/LBaaS/docs/how-to-create-tls-loadbalancer) // for more information. SniContainerRefs pulumi.StringArrayOutput `pulumi:"sniContainerRefs"` // Required for admins. The UUID of the tenant who owns // the Listener. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new Listener. TenantId pulumi.StringOutput `pulumi:"tenantId"` // The client inactivity timeout in milliseconds. TimeoutClientData pulumi.IntOutput `pulumi:"timeoutClientData"` // The member connection timeout in milliseconds. TimeoutMemberConnect pulumi.IntOutput `pulumi:"timeoutMemberConnect"` // The member inactivity timeout in milliseconds. TimeoutMemberData pulumi.IntOutput `pulumi:"timeoutMemberData"` // The time in milliseconds, to wait for additional // TCP packets for content inspection. TimeoutTcpInspect pulumi.IntOutput `pulumi:"timeoutTcpInspect"` }
Manages a V2 listener resource within OpenStack.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/loadbalancer" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := loadbalancer.NewListener(ctx, "listener1", &loadbalancer.ListenerArgs{ InsertHeaders: pulumi.StringMap{ "X-Forwarded-For": pulumi.String("true"), }, LoadbalancerId: pulumi.String("d9415786-5f1a-428b-b35f-2f1523e146d2"), Protocol: pulumi.String("HTTP"), ProtocolPort: pulumi.Int(8080), }) if err != nil { return err } return nil }) }
```
## Import
Load Balancer Listener can be imported using the Listener ID, e.g.
```sh
$ pulumi import openstack:loadbalancer/listener:Listener listener_1 b67ce64e-8b26-405d-afeb-4a078901f15a
```
func GetListener ¶
func GetListener(ctx *pulumi.Context, name string, id pulumi.IDInput, state *ListenerState, opts ...pulumi.ResourceOption) (*Listener, error)
GetListener gets an existing Listener resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewListener ¶
func NewListener(ctx *pulumi.Context, name string, args *ListenerArgs, opts ...pulumi.ResourceOption) (*Listener, error)
NewListener registers a new resource with the given unique name, arguments, and options.
func (*Listener) ElementType ¶ added in v2.10.0
func (*Listener) ToListenerOutput ¶ added in v2.10.0
func (i *Listener) ToListenerOutput() ListenerOutput
func (*Listener) ToListenerOutputWithContext ¶ added in v2.10.0
func (i *Listener) ToListenerOutputWithContext(ctx context.Context) ListenerOutput
func (*Listener) ToListenerPtrOutput ¶ added in v2.14.1
func (i *Listener) ToListenerPtrOutput() ListenerPtrOutput
func (*Listener) ToListenerPtrOutputWithContext ¶ added in v2.14.1
func (i *Listener) ToListenerPtrOutputWithContext(ctx context.Context) ListenerPtrOutput
type ListenerArgs ¶
type ListenerArgs struct { // The administrative state of the Listener. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrInput // A list of CIDR blocks that are permitted to connect to this listener, denying // all other source addresses. If not present, defaults to allow all. AllowedCidrs pulumi.StringArrayInput // The maximum number of connections allowed // for the Listener. ConnectionLimit pulumi.IntPtrInput // The ID of the default pool with which the // Listener is associated. DefaultPoolId pulumi.StringPtrInput // A reference to a Barbican Secrets // container which stores TLS information. This is required if the protocol // is `TERMINATED_HTTPS`. See // [here](https://wiki.openstack.org/wiki/Network/LBaaS/docs/how-to-create-tls-loadbalancer) // for more information. DefaultTlsContainerRef pulumi.StringPtrInput // Human-readable description for the Listener. Description pulumi.StringPtrInput // The list of key value pairs representing headers to insert // into the request before it is sent to the backend members. Changing this updates the headers of the // existing listener. InsertHeaders pulumi.MapInput // The load balancer on which to provision this // Listener. Changing this creates a new Listener. LoadbalancerId pulumi.StringInput // Human-readable name for the Listener. Does not have // to be unique. Name pulumi.StringPtrInput // The protocol - can either be TCP, HTTP, HTTPS, // TERMINATED_HTTPS or UDP (supported only in Octavia). Changing this creates a // new Listener. Protocol pulumi.StringInput // The port on which to listen for client traffic. // Changing this creates a new Listener. ProtocolPort pulumi.IntInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an . If omitted, the // `region` argument of the provider is used. Changing this creates a new // Listener. Region pulumi.StringPtrInput // A list of references to Barbican Secrets // containers which store SNI information. See // [here](https://wiki.openstack.org/wiki/Network/LBaaS/docs/how-to-create-tls-loadbalancer) // for more information. SniContainerRefs pulumi.StringArrayInput // Required for admins. The UUID of the tenant who owns // the Listener. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new Listener. TenantId pulumi.StringPtrInput // The client inactivity timeout in milliseconds. TimeoutClientData pulumi.IntPtrInput // The member connection timeout in milliseconds. TimeoutMemberConnect pulumi.IntPtrInput // The member inactivity timeout in milliseconds. TimeoutMemberData pulumi.IntPtrInput // The time in milliseconds, to wait for additional // TCP packets for content inspection. TimeoutTcpInspect pulumi.IntPtrInput }
The set of arguments for constructing a Listener resource.
func (ListenerArgs) ElementType ¶
func (ListenerArgs) ElementType() reflect.Type
type ListenerArray ¶ added in v2.14.1
type ListenerArray []ListenerInput
func (ListenerArray) ElementType ¶ added in v2.14.1
func (ListenerArray) ElementType() reflect.Type
func (ListenerArray) ToListenerArrayOutput ¶ added in v2.14.1
func (i ListenerArray) ToListenerArrayOutput() ListenerArrayOutput
func (ListenerArray) ToListenerArrayOutputWithContext ¶ added in v2.14.1
func (i ListenerArray) ToListenerArrayOutputWithContext(ctx context.Context) ListenerArrayOutput
type ListenerArrayInput ¶ added in v2.14.1
type ListenerArrayInput interface { pulumi.Input ToListenerArrayOutput() ListenerArrayOutput ToListenerArrayOutputWithContext(context.Context) ListenerArrayOutput }
ListenerArrayInput is an input type that accepts ListenerArray and ListenerArrayOutput values. You can construct a concrete instance of `ListenerArrayInput` via:
ListenerArray{ ListenerArgs{...} }
type ListenerArrayOutput ¶ added in v2.14.1
type ListenerArrayOutput struct{ *pulumi.OutputState }
func (ListenerArrayOutput) ElementType ¶ added in v2.14.1
func (ListenerArrayOutput) ElementType() reflect.Type
func (ListenerArrayOutput) Index ¶ added in v2.14.1
func (o ListenerArrayOutput) Index(i pulumi.IntInput) ListenerOutput
func (ListenerArrayOutput) ToListenerArrayOutput ¶ added in v2.14.1
func (o ListenerArrayOutput) ToListenerArrayOutput() ListenerArrayOutput
func (ListenerArrayOutput) ToListenerArrayOutputWithContext ¶ added in v2.14.1
func (o ListenerArrayOutput) ToListenerArrayOutputWithContext(ctx context.Context) ListenerArrayOutput
type ListenerInput ¶ added in v2.10.0
type ListenerInput interface { pulumi.Input ToListenerOutput() ListenerOutput ToListenerOutputWithContext(ctx context.Context) ListenerOutput }
type ListenerMap ¶ added in v2.14.1
type ListenerMap map[string]ListenerInput
func (ListenerMap) ElementType ¶ added in v2.14.1
func (ListenerMap) ElementType() reflect.Type
func (ListenerMap) ToListenerMapOutput ¶ added in v2.14.1
func (i ListenerMap) ToListenerMapOutput() ListenerMapOutput
func (ListenerMap) ToListenerMapOutputWithContext ¶ added in v2.14.1
func (i ListenerMap) ToListenerMapOutputWithContext(ctx context.Context) ListenerMapOutput
type ListenerMapInput ¶ added in v2.14.1
type ListenerMapInput interface { pulumi.Input ToListenerMapOutput() ListenerMapOutput ToListenerMapOutputWithContext(context.Context) ListenerMapOutput }
ListenerMapInput is an input type that accepts ListenerMap and ListenerMapOutput values. You can construct a concrete instance of `ListenerMapInput` via:
ListenerMap{ "key": ListenerArgs{...} }
type ListenerMapOutput ¶ added in v2.14.1
type ListenerMapOutput struct{ *pulumi.OutputState }
func (ListenerMapOutput) ElementType ¶ added in v2.14.1
func (ListenerMapOutput) ElementType() reflect.Type
func (ListenerMapOutput) MapIndex ¶ added in v2.14.1
func (o ListenerMapOutput) MapIndex(k pulumi.StringInput) ListenerOutput
func (ListenerMapOutput) ToListenerMapOutput ¶ added in v2.14.1
func (o ListenerMapOutput) ToListenerMapOutput() ListenerMapOutput
func (ListenerMapOutput) ToListenerMapOutputWithContext ¶ added in v2.14.1
func (o ListenerMapOutput) ToListenerMapOutputWithContext(ctx context.Context) ListenerMapOutput
type ListenerOutput ¶ added in v2.10.0
type ListenerOutput struct {
*pulumi.OutputState
}
func (ListenerOutput) ElementType ¶ added in v2.10.0
func (ListenerOutput) ElementType() reflect.Type
func (ListenerOutput) ToListenerOutput ¶ added in v2.10.0
func (o ListenerOutput) ToListenerOutput() ListenerOutput
func (ListenerOutput) ToListenerOutputWithContext ¶ added in v2.10.0
func (o ListenerOutput) ToListenerOutputWithContext(ctx context.Context) ListenerOutput
func (ListenerOutput) ToListenerPtrOutput ¶ added in v2.14.1
func (o ListenerOutput) ToListenerPtrOutput() ListenerPtrOutput
func (ListenerOutput) ToListenerPtrOutputWithContext ¶ added in v2.14.1
func (o ListenerOutput) ToListenerPtrOutputWithContext(ctx context.Context) ListenerPtrOutput
type ListenerPtrInput ¶ added in v2.14.1
type ListenerPtrInput interface { pulumi.Input ToListenerPtrOutput() ListenerPtrOutput ToListenerPtrOutputWithContext(ctx context.Context) ListenerPtrOutput }
type ListenerPtrOutput ¶ added in v2.14.1
type ListenerPtrOutput struct {
*pulumi.OutputState
}
func (ListenerPtrOutput) ElementType ¶ added in v2.14.1
func (ListenerPtrOutput) ElementType() reflect.Type
func (ListenerPtrOutput) ToListenerPtrOutput ¶ added in v2.14.1
func (o ListenerPtrOutput) ToListenerPtrOutput() ListenerPtrOutput
func (ListenerPtrOutput) ToListenerPtrOutputWithContext ¶ added in v2.14.1
func (o ListenerPtrOutput) ToListenerPtrOutputWithContext(ctx context.Context) ListenerPtrOutput
type ListenerState ¶
type ListenerState struct { // The administrative state of the Listener. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrInput // A list of CIDR blocks that are permitted to connect to this listener, denying // all other source addresses. If not present, defaults to allow all. AllowedCidrs pulumi.StringArrayInput // The maximum number of connections allowed // for the Listener. ConnectionLimit pulumi.IntPtrInput // The ID of the default pool with which the // Listener is associated. DefaultPoolId pulumi.StringPtrInput // A reference to a Barbican Secrets // container which stores TLS information. This is required if the protocol // is `TERMINATED_HTTPS`. See // [here](https://wiki.openstack.org/wiki/Network/LBaaS/docs/how-to-create-tls-loadbalancer) // for more information. DefaultTlsContainerRef pulumi.StringPtrInput // Human-readable description for the Listener. Description pulumi.StringPtrInput // The list of key value pairs representing headers to insert // into the request before it is sent to the backend members. Changing this updates the headers of the // existing listener. InsertHeaders pulumi.MapInput // The load balancer on which to provision this // Listener. Changing this creates a new Listener. LoadbalancerId pulumi.StringPtrInput // Human-readable name for the Listener. Does not have // to be unique. Name pulumi.StringPtrInput // The protocol - can either be TCP, HTTP, HTTPS, // TERMINATED_HTTPS or UDP (supported only in Octavia). Changing this creates a // new Listener. Protocol pulumi.StringPtrInput // The port on which to listen for client traffic. // Changing this creates a new Listener. ProtocolPort pulumi.IntPtrInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an . If omitted, the // `region` argument of the provider is used. Changing this creates a new // Listener. Region pulumi.StringPtrInput // A list of references to Barbican Secrets // containers which store SNI information. See // [here](https://wiki.openstack.org/wiki/Network/LBaaS/docs/how-to-create-tls-loadbalancer) // for more information. SniContainerRefs pulumi.StringArrayInput // Required for admins. The UUID of the tenant who owns // the Listener. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new Listener. TenantId pulumi.StringPtrInput // The client inactivity timeout in milliseconds. TimeoutClientData pulumi.IntPtrInput // The member connection timeout in milliseconds. TimeoutMemberConnect pulumi.IntPtrInput // The member inactivity timeout in milliseconds. TimeoutMemberData pulumi.IntPtrInput // The time in milliseconds, to wait for additional // TCP packets for content inspection. TimeoutTcpInspect pulumi.IntPtrInput }
func (ListenerState) ElementType ¶
func (ListenerState) ElementType() reflect.Type
type LoadBalancer ¶
type LoadBalancer struct { pulumi.CustomResourceState // The administrative state of the Loadbalancer. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrOutput `pulumi:"adminStateUp"` // Human-readable description for the Loadbalancer. Description pulumi.StringPtrOutput `pulumi:"description"` // The UUID of a flavor. Changing this creates a new // loadbalancer. FlavorId pulumi.StringOutput `pulumi:"flavorId"` // The name of the provider. Changing this // creates a new loadbalancer. LoadbalancerProvider pulumi.StringOutput `pulumi:"loadbalancerProvider"` // Human-readable name for the Loadbalancer. Does not have // to be unique. Name pulumi.StringOutput `pulumi:"name"` // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an LB member. If omitted, the // `region` argument of the provider is used. Changing this creates a new // LB member. Region pulumi.StringOutput `pulumi:"region"` // A list of security group IDs to apply to the // loadbalancer. The security groups must be specified by ID and not name (as // opposed to how they are configured with the Compute Instance). SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"` // Required for admins. The UUID of the tenant who owns // the Loadbalancer. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new loadbalancer. TenantId pulumi.StringOutput `pulumi:"tenantId"` // The ip address of the load balancer. // Changing this creates a new loadbalancer. VipAddress pulumi.StringOutput `pulumi:"vipAddress"` // The network on which to allocate the // Loadbalancer's address. A tenant can only create Loadbalancers on networks // authorized by policy (e.g. networks that belong to them or networks that // are shared). Changing this creates a new loadbalancer. // It is available only for Octavia. VipNetworkId pulumi.StringOutput `pulumi:"vipNetworkId"` // The port UUID that the loadbalancer will use. // Changing this creates a new loadbalancer. It is available only for Octavia. VipPortId pulumi.StringOutput `pulumi:"vipPortId"` // The subnet on which to allocate the // Loadbalancer's address. A tenant can only create Loadbalancers on networks // authorized by policy (e.g. networks that belong to them or networks that // are shared). Changing this creates a new loadbalancer. // It is required to Neutron LBaaS but optional for Octavia. VipSubnetId pulumi.StringOutput `pulumi:"vipSubnetId"` }
Manages a V2 loadbalancer resource within OpenStack.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/loadbalancer" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := loadbalancer.NewLoadBalancer(ctx, "lb1", &loadbalancer.LoadBalancerArgs{ VipSubnetId: pulumi.String("d9415786-5f1a-428b-b35f-2f1523e146d2"), }) if err != nil { return err } return nil }) }
```
## Import
Load Balancer can be imported using the Load Balancer ID, e.g.
```sh
$ pulumi import openstack:loadbalancer/loadBalancer:LoadBalancer loadbalancer_1 19bcfdc7-c521-4a7e-9459-6750bd16df76
```
func GetLoadBalancer ¶
func GetLoadBalancer(ctx *pulumi.Context, name string, id pulumi.IDInput, state *LoadBalancerState, opts ...pulumi.ResourceOption) (*LoadBalancer, error)
GetLoadBalancer gets an existing LoadBalancer resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewLoadBalancer ¶
func NewLoadBalancer(ctx *pulumi.Context, name string, args *LoadBalancerArgs, opts ...pulumi.ResourceOption) (*LoadBalancer, error)
NewLoadBalancer registers a new resource with the given unique name, arguments, and options.
func (*LoadBalancer) ElementType ¶ added in v2.10.0
func (*LoadBalancer) ElementType() reflect.Type
func (*LoadBalancer) ToLoadBalancerOutput ¶ added in v2.10.0
func (i *LoadBalancer) ToLoadBalancerOutput() LoadBalancerOutput
func (*LoadBalancer) ToLoadBalancerOutputWithContext ¶ added in v2.10.0
func (i *LoadBalancer) ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput
func (*LoadBalancer) ToLoadBalancerPtrOutput ¶ added in v2.14.1
func (i *LoadBalancer) ToLoadBalancerPtrOutput() LoadBalancerPtrOutput
func (*LoadBalancer) ToLoadBalancerPtrOutputWithContext ¶ added in v2.14.1
func (i *LoadBalancer) ToLoadBalancerPtrOutputWithContext(ctx context.Context) LoadBalancerPtrOutput
type LoadBalancerArgs ¶
type LoadBalancerArgs struct { // The administrative state of the Loadbalancer. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrInput // Human-readable description for the Loadbalancer. Description pulumi.StringPtrInput // The UUID of a flavor. Changing this creates a new // loadbalancer. FlavorId pulumi.StringPtrInput // The name of the provider. Changing this // creates a new loadbalancer. LoadbalancerProvider pulumi.StringPtrInput // Human-readable name for the Loadbalancer. Does not have // to be unique. Name pulumi.StringPtrInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an LB member. If omitted, the // `region` argument of the provider is used. Changing this creates a new // LB member. Region pulumi.StringPtrInput // A list of security group IDs to apply to the // loadbalancer. The security groups must be specified by ID and not name (as // opposed to how they are configured with the Compute Instance). SecurityGroupIds pulumi.StringArrayInput // Required for admins. The UUID of the tenant who owns // the Loadbalancer. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new loadbalancer. TenantId pulumi.StringPtrInput // The ip address of the load balancer. // Changing this creates a new loadbalancer. VipAddress pulumi.StringPtrInput // The network on which to allocate the // Loadbalancer's address. A tenant can only create Loadbalancers on networks // authorized by policy (e.g. networks that belong to them or networks that // are shared). Changing this creates a new loadbalancer. // It is available only for Octavia. VipNetworkId pulumi.StringPtrInput // The port UUID that the loadbalancer will use. // Changing this creates a new loadbalancer. It is available only for Octavia. VipPortId pulumi.StringPtrInput // The subnet on which to allocate the // Loadbalancer's address. A tenant can only create Loadbalancers on networks // authorized by policy (e.g. networks that belong to them or networks that // are shared). Changing this creates a new loadbalancer. // It is required to Neutron LBaaS but optional for Octavia. VipSubnetId pulumi.StringPtrInput }
The set of arguments for constructing a LoadBalancer resource.
func (LoadBalancerArgs) ElementType ¶
func (LoadBalancerArgs) ElementType() reflect.Type
type LoadBalancerArray ¶ added in v2.14.1
type LoadBalancerArray []LoadBalancerInput
func (LoadBalancerArray) ElementType ¶ added in v2.14.1
func (LoadBalancerArray) ElementType() reflect.Type
func (LoadBalancerArray) ToLoadBalancerArrayOutput ¶ added in v2.14.1
func (i LoadBalancerArray) ToLoadBalancerArrayOutput() LoadBalancerArrayOutput
func (LoadBalancerArray) ToLoadBalancerArrayOutputWithContext ¶ added in v2.14.1
func (i LoadBalancerArray) ToLoadBalancerArrayOutputWithContext(ctx context.Context) LoadBalancerArrayOutput
type LoadBalancerArrayInput ¶ added in v2.14.1
type LoadBalancerArrayInput interface { pulumi.Input ToLoadBalancerArrayOutput() LoadBalancerArrayOutput ToLoadBalancerArrayOutputWithContext(context.Context) LoadBalancerArrayOutput }
LoadBalancerArrayInput is an input type that accepts LoadBalancerArray and LoadBalancerArrayOutput values. You can construct a concrete instance of `LoadBalancerArrayInput` via:
LoadBalancerArray{ LoadBalancerArgs{...} }
type LoadBalancerArrayOutput ¶ added in v2.14.1
type LoadBalancerArrayOutput struct{ *pulumi.OutputState }
func (LoadBalancerArrayOutput) ElementType ¶ added in v2.14.1
func (LoadBalancerArrayOutput) ElementType() reflect.Type
func (LoadBalancerArrayOutput) Index ¶ added in v2.14.1
func (o LoadBalancerArrayOutput) Index(i pulumi.IntInput) LoadBalancerOutput
func (LoadBalancerArrayOutput) ToLoadBalancerArrayOutput ¶ added in v2.14.1
func (o LoadBalancerArrayOutput) ToLoadBalancerArrayOutput() LoadBalancerArrayOutput
func (LoadBalancerArrayOutput) ToLoadBalancerArrayOutputWithContext ¶ added in v2.14.1
func (o LoadBalancerArrayOutput) ToLoadBalancerArrayOutputWithContext(ctx context.Context) LoadBalancerArrayOutput
type LoadBalancerInput ¶ added in v2.10.0
type LoadBalancerInput interface { pulumi.Input ToLoadBalancerOutput() LoadBalancerOutput ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput }
type LoadBalancerMap ¶ added in v2.14.1
type LoadBalancerMap map[string]LoadBalancerInput
func (LoadBalancerMap) ElementType ¶ added in v2.14.1
func (LoadBalancerMap) ElementType() reflect.Type
func (LoadBalancerMap) ToLoadBalancerMapOutput ¶ added in v2.14.1
func (i LoadBalancerMap) ToLoadBalancerMapOutput() LoadBalancerMapOutput
func (LoadBalancerMap) ToLoadBalancerMapOutputWithContext ¶ added in v2.14.1
func (i LoadBalancerMap) ToLoadBalancerMapOutputWithContext(ctx context.Context) LoadBalancerMapOutput
type LoadBalancerMapInput ¶ added in v2.14.1
type LoadBalancerMapInput interface { pulumi.Input ToLoadBalancerMapOutput() LoadBalancerMapOutput ToLoadBalancerMapOutputWithContext(context.Context) LoadBalancerMapOutput }
LoadBalancerMapInput is an input type that accepts LoadBalancerMap and LoadBalancerMapOutput values. You can construct a concrete instance of `LoadBalancerMapInput` via:
LoadBalancerMap{ "key": LoadBalancerArgs{...} }
type LoadBalancerMapOutput ¶ added in v2.14.1
type LoadBalancerMapOutput struct{ *pulumi.OutputState }
func (LoadBalancerMapOutput) ElementType ¶ added in v2.14.1
func (LoadBalancerMapOutput) ElementType() reflect.Type
func (LoadBalancerMapOutput) MapIndex ¶ added in v2.14.1
func (o LoadBalancerMapOutput) MapIndex(k pulumi.StringInput) LoadBalancerOutput
func (LoadBalancerMapOutput) ToLoadBalancerMapOutput ¶ added in v2.14.1
func (o LoadBalancerMapOutput) ToLoadBalancerMapOutput() LoadBalancerMapOutput
func (LoadBalancerMapOutput) ToLoadBalancerMapOutputWithContext ¶ added in v2.14.1
func (o LoadBalancerMapOutput) ToLoadBalancerMapOutputWithContext(ctx context.Context) LoadBalancerMapOutput
type LoadBalancerOutput ¶ added in v2.10.0
type LoadBalancerOutput struct {
*pulumi.OutputState
}
func (LoadBalancerOutput) ElementType ¶ added in v2.10.0
func (LoadBalancerOutput) ElementType() reflect.Type
func (LoadBalancerOutput) ToLoadBalancerOutput ¶ added in v2.10.0
func (o LoadBalancerOutput) ToLoadBalancerOutput() LoadBalancerOutput
func (LoadBalancerOutput) ToLoadBalancerOutputWithContext ¶ added in v2.10.0
func (o LoadBalancerOutput) ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput
func (LoadBalancerOutput) ToLoadBalancerPtrOutput ¶ added in v2.14.1
func (o LoadBalancerOutput) ToLoadBalancerPtrOutput() LoadBalancerPtrOutput
func (LoadBalancerOutput) ToLoadBalancerPtrOutputWithContext ¶ added in v2.14.1
func (o LoadBalancerOutput) ToLoadBalancerPtrOutputWithContext(ctx context.Context) LoadBalancerPtrOutput
type LoadBalancerPtrInput ¶ added in v2.14.1
type LoadBalancerPtrInput interface { pulumi.Input ToLoadBalancerPtrOutput() LoadBalancerPtrOutput ToLoadBalancerPtrOutputWithContext(ctx context.Context) LoadBalancerPtrOutput }
type LoadBalancerPtrOutput ¶ added in v2.14.1
type LoadBalancerPtrOutput struct {
*pulumi.OutputState
}
func (LoadBalancerPtrOutput) ElementType ¶ added in v2.14.1
func (LoadBalancerPtrOutput) ElementType() reflect.Type
func (LoadBalancerPtrOutput) ToLoadBalancerPtrOutput ¶ added in v2.14.1
func (o LoadBalancerPtrOutput) ToLoadBalancerPtrOutput() LoadBalancerPtrOutput
func (LoadBalancerPtrOutput) ToLoadBalancerPtrOutputWithContext ¶ added in v2.14.1
func (o LoadBalancerPtrOutput) ToLoadBalancerPtrOutputWithContext(ctx context.Context) LoadBalancerPtrOutput
type LoadBalancerState ¶
type LoadBalancerState struct { // The administrative state of the Loadbalancer. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrInput // Human-readable description for the Loadbalancer. Description pulumi.StringPtrInput // The UUID of a flavor. Changing this creates a new // loadbalancer. FlavorId pulumi.StringPtrInput // The name of the provider. Changing this // creates a new loadbalancer. LoadbalancerProvider pulumi.StringPtrInput // Human-readable name for the Loadbalancer. Does not have // to be unique. Name pulumi.StringPtrInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an LB member. If omitted, the // `region` argument of the provider is used. Changing this creates a new // LB member. Region pulumi.StringPtrInput // A list of security group IDs to apply to the // loadbalancer. The security groups must be specified by ID and not name (as // opposed to how they are configured with the Compute Instance). SecurityGroupIds pulumi.StringArrayInput // Required for admins. The UUID of the tenant who owns // the Loadbalancer. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new loadbalancer. TenantId pulumi.StringPtrInput // The ip address of the load balancer. // Changing this creates a new loadbalancer. VipAddress pulumi.StringPtrInput // The network on which to allocate the // Loadbalancer's address. A tenant can only create Loadbalancers on networks // authorized by policy (e.g. networks that belong to them or networks that // are shared). Changing this creates a new loadbalancer. // It is available only for Octavia. VipNetworkId pulumi.StringPtrInput // The port UUID that the loadbalancer will use. // Changing this creates a new loadbalancer. It is available only for Octavia. VipPortId pulumi.StringPtrInput // The subnet on which to allocate the // Loadbalancer's address. A tenant can only create Loadbalancers on networks // authorized by policy (e.g. networks that belong to them or networks that // are shared). Changing this creates a new loadbalancer. // It is required to Neutron LBaaS but optional for Octavia. VipSubnetId pulumi.StringPtrInput }
func (LoadBalancerState) ElementType ¶
func (LoadBalancerState) ElementType() reflect.Type
type Member ¶
type Member struct { pulumi.CustomResourceState // The IP address of the member to receive traffic from // the load balancer. Changing this creates a new member. Address pulumi.StringOutput `pulumi:"address"` // The administrative state of the member. // A valid value is true (UP) or false (DOWN). Defaults to true. AdminStateUp pulumi.BoolPtrOutput `pulumi:"adminStateUp"` // Human-readable name for the member. Name pulumi.StringOutput `pulumi:"name"` // The id of the pool that this member will be assigned // to. Changing this creates a new member. PoolId pulumi.StringOutput `pulumi:"poolId"` // The port on which to listen for client traffic. // Changing this creates a new member. ProtocolPort pulumi.IntOutput `pulumi:"protocolPort"` // The region in which to obtain the V2 Networking client. // A Networking client is needed to create a member. If omitted, the `region` // argument of the provider is used. Changing this creates a new member. Region pulumi.StringOutput `pulumi:"region"` // The subnet in which to access the member. Changing // this creates a new member. SubnetId pulumi.StringPtrOutput `pulumi:"subnetId"` // Required for admins. The UUID of the tenant who owns // the member. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new member. TenantId pulumi.StringOutput `pulumi:"tenantId"` // A positive integer value that indicates the relative // portion of traffic that this member should receive from the pool. For // example, a member with a weight of 10 receives five times as much traffic // as a member with a weight of 2. Defaults to 1. Weight pulumi.IntOutput `pulumi:"weight"` }
Manages a V2 member resource within OpenStack.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/loadbalancer" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := loadbalancer.NewMember(ctx, "member1", &loadbalancer.MemberArgs{ Address: pulumi.String("192.168.199.23"), PoolId: pulumi.String("935685fb-a896-40f9-9ff4-ae531a3a00fe"), ProtocolPort: pulumi.Int(8080), }) if err != nil { return err } return nil }) }
```
## Import
Load Balancer Pool Member can be imported using the Pool ID and Member ID separated by a slash, e.g.
```sh
$ pulumi import openstack:loadbalancer/member:Member member_1 c22974d2-4c95-4bcb-9819-0afc5ed303d5/9563b79c-8460-47da-8a95-2711b746510f
```
func GetMember ¶
func GetMember(ctx *pulumi.Context, name string, id pulumi.IDInput, state *MemberState, opts ...pulumi.ResourceOption) (*Member, error)
GetMember gets an existing Member resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewMember ¶
func NewMember(ctx *pulumi.Context, name string, args *MemberArgs, opts ...pulumi.ResourceOption) (*Member, error)
NewMember registers a new resource with the given unique name, arguments, and options.
func (*Member) ElementType ¶ added in v2.10.0
func (*Member) ToMemberOutput ¶ added in v2.10.0
func (i *Member) ToMemberOutput() MemberOutput
func (*Member) ToMemberOutputWithContext ¶ added in v2.10.0
func (i *Member) ToMemberOutputWithContext(ctx context.Context) MemberOutput
func (*Member) ToMemberPtrOutput ¶ added in v2.14.1
func (i *Member) ToMemberPtrOutput() MemberPtrOutput
func (*Member) ToMemberPtrOutputWithContext ¶ added in v2.14.1
func (i *Member) ToMemberPtrOutputWithContext(ctx context.Context) MemberPtrOutput
type MemberArgs ¶
type MemberArgs struct { // The IP address of the member to receive traffic from // the load balancer. Changing this creates a new member. Address pulumi.StringInput // The administrative state of the member. // A valid value is true (UP) or false (DOWN). Defaults to true. AdminStateUp pulumi.BoolPtrInput // Human-readable name for the member. Name pulumi.StringPtrInput // The id of the pool that this member will be assigned // to. Changing this creates a new member. PoolId pulumi.StringInput // The port on which to listen for client traffic. // Changing this creates a new member. ProtocolPort pulumi.IntInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create a member. If omitted, the `region` // argument of the provider is used. Changing this creates a new member. Region pulumi.StringPtrInput // The subnet in which to access the member. Changing // this creates a new member. SubnetId pulumi.StringPtrInput // Required for admins. The UUID of the tenant who owns // the member. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new member. TenantId pulumi.StringPtrInput // A positive integer value that indicates the relative // portion of traffic that this member should receive from the pool. For // example, a member with a weight of 10 receives five times as much traffic // as a member with a weight of 2. Defaults to 1. Weight pulumi.IntPtrInput }
The set of arguments for constructing a Member resource.
func (MemberArgs) ElementType ¶
func (MemberArgs) ElementType() reflect.Type
type MemberArray ¶ added in v2.14.1
type MemberArray []MemberInput
func (MemberArray) ElementType ¶ added in v2.14.1
func (MemberArray) ElementType() reflect.Type
func (MemberArray) ToMemberArrayOutput ¶ added in v2.14.1
func (i MemberArray) ToMemberArrayOutput() MemberArrayOutput
func (MemberArray) ToMemberArrayOutputWithContext ¶ added in v2.14.1
func (i MemberArray) ToMemberArrayOutputWithContext(ctx context.Context) MemberArrayOutput
type MemberArrayInput ¶ added in v2.14.1
type MemberArrayInput interface { pulumi.Input ToMemberArrayOutput() MemberArrayOutput ToMemberArrayOutputWithContext(context.Context) MemberArrayOutput }
MemberArrayInput is an input type that accepts MemberArray and MemberArrayOutput values. You can construct a concrete instance of `MemberArrayInput` via:
MemberArray{ MemberArgs{...} }
type MemberArrayOutput ¶ added in v2.14.1
type MemberArrayOutput struct{ *pulumi.OutputState }
func (MemberArrayOutput) ElementType ¶ added in v2.14.1
func (MemberArrayOutput) ElementType() reflect.Type
func (MemberArrayOutput) Index ¶ added in v2.14.1
func (o MemberArrayOutput) Index(i pulumi.IntInput) MemberOutput
func (MemberArrayOutput) ToMemberArrayOutput ¶ added in v2.14.1
func (o MemberArrayOutput) ToMemberArrayOutput() MemberArrayOutput
func (MemberArrayOutput) ToMemberArrayOutputWithContext ¶ added in v2.14.1
func (o MemberArrayOutput) ToMemberArrayOutputWithContext(ctx context.Context) MemberArrayOutput
type MemberInput ¶ added in v2.10.0
type MemberInput interface { pulumi.Input ToMemberOutput() MemberOutput ToMemberOutputWithContext(ctx context.Context) MemberOutput }
type MemberMap ¶ added in v2.14.1
type MemberMap map[string]MemberInput
func (MemberMap) ElementType ¶ added in v2.14.1
func (MemberMap) ToMemberMapOutput ¶ added in v2.14.1
func (i MemberMap) ToMemberMapOutput() MemberMapOutput
func (MemberMap) ToMemberMapOutputWithContext ¶ added in v2.14.1
func (i MemberMap) ToMemberMapOutputWithContext(ctx context.Context) MemberMapOutput
type MemberMapInput ¶ added in v2.14.1
type MemberMapInput interface { pulumi.Input ToMemberMapOutput() MemberMapOutput ToMemberMapOutputWithContext(context.Context) MemberMapOutput }
MemberMapInput is an input type that accepts MemberMap and MemberMapOutput values. You can construct a concrete instance of `MemberMapInput` via:
MemberMap{ "key": MemberArgs{...} }
type MemberMapOutput ¶ added in v2.14.1
type MemberMapOutput struct{ *pulumi.OutputState }
func (MemberMapOutput) ElementType ¶ added in v2.14.1
func (MemberMapOutput) ElementType() reflect.Type
func (MemberMapOutput) MapIndex ¶ added in v2.14.1
func (o MemberMapOutput) MapIndex(k pulumi.StringInput) MemberOutput
func (MemberMapOutput) ToMemberMapOutput ¶ added in v2.14.1
func (o MemberMapOutput) ToMemberMapOutput() MemberMapOutput
func (MemberMapOutput) ToMemberMapOutputWithContext ¶ added in v2.14.1
func (o MemberMapOutput) ToMemberMapOutputWithContext(ctx context.Context) MemberMapOutput
type MemberOutput ¶ added in v2.10.0
type MemberOutput struct {
*pulumi.OutputState
}
func (MemberOutput) ElementType ¶ added in v2.10.0
func (MemberOutput) ElementType() reflect.Type
func (MemberOutput) ToMemberOutput ¶ added in v2.10.0
func (o MemberOutput) ToMemberOutput() MemberOutput
func (MemberOutput) ToMemberOutputWithContext ¶ added in v2.10.0
func (o MemberOutput) ToMemberOutputWithContext(ctx context.Context) MemberOutput
func (MemberOutput) ToMemberPtrOutput ¶ added in v2.14.1
func (o MemberOutput) ToMemberPtrOutput() MemberPtrOutput
func (MemberOutput) ToMemberPtrOutputWithContext ¶ added in v2.14.1
func (o MemberOutput) ToMemberPtrOutputWithContext(ctx context.Context) MemberPtrOutput
type MemberPtrInput ¶ added in v2.14.1
type MemberPtrInput interface { pulumi.Input ToMemberPtrOutput() MemberPtrOutput ToMemberPtrOutputWithContext(ctx context.Context) MemberPtrOutput }
type MemberPtrOutput ¶ added in v2.14.1
type MemberPtrOutput struct {
*pulumi.OutputState
}
func (MemberPtrOutput) ElementType ¶ added in v2.14.1
func (MemberPtrOutput) ElementType() reflect.Type
func (MemberPtrOutput) ToMemberPtrOutput ¶ added in v2.14.1
func (o MemberPtrOutput) ToMemberPtrOutput() MemberPtrOutput
func (MemberPtrOutput) ToMemberPtrOutputWithContext ¶ added in v2.14.1
func (o MemberPtrOutput) ToMemberPtrOutputWithContext(ctx context.Context) MemberPtrOutput
type MemberState ¶
type MemberState struct { // The IP address of the member to receive traffic from // the load balancer. Changing this creates a new member. Address pulumi.StringPtrInput // The administrative state of the member. // A valid value is true (UP) or false (DOWN). Defaults to true. AdminStateUp pulumi.BoolPtrInput // Human-readable name for the member. Name pulumi.StringPtrInput // The id of the pool that this member will be assigned // to. Changing this creates a new member. PoolId pulumi.StringPtrInput // The port on which to listen for client traffic. // Changing this creates a new member. ProtocolPort pulumi.IntPtrInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create a member. If omitted, the `region` // argument of the provider is used. Changing this creates a new member. Region pulumi.StringPtrInput // The subnet in which to access the member. Changing // this creates a new member. SubnetId pulumi.StringPtrInput // Required for admins. The UUID of the tenant who owns // the member. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new member. TenantId pulumi.StringPtrInput // A positive integer value that indicates the relative // portion of traffic that this member should receive from the pool. For // example, a member with a weight of 10 receives five times as much traffic // as a member with a weight of 2. Defaults to 1. Weight pulumi.IntPtrInput }
func (MemberState) ElementType ¶
func (MemberState) ElementType() reflect.Type
type MemberV1 ¶
type MemberV1 struct { pulumi.CustomResourceState // The IP address of the member. Changing this creates a // new member. Address pulumi.StringOutput `pulumi:"address"` // The administrative state of the member. // Acceptable values are 'true' and 'false'. Changing this value updates the // state of the existing member. AdminStateUp pulumi.BoolOutput `pulumi:"adminStateUp"` // The ID of the LB pool. Changing this creates a new // member. PoolId pulumi.StringOutput `pulumi:"poolId"` // An integer representing the port on which the member is // hosted. Changing this creates a new member. Port pulumi.IntOutput `pulumi:"port"` // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an LB member. If omitted, the // `region` argument of the provider is used. Changing this creates a new // LB member. Region pulumi.StringOutput `pulumi:"region"` // The owner of the member. Required if admin wants to // create a member for another tenant. Changing this creates a new member. TenantId pulumi.StringPtrOutput `pulumi:"tenantId"` Weight pulumi.IntOutput `pulumi:"weight"` }
Manages a V1 load balancer member resource within OpenStack.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/loadbalancer" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := loadbalancer.NewMemberV1(ctx, "member1", &loadbalancer.MemberV1Args{ Address: pulumi.String("192.168.0.10"), PoolId: pulumi.String("d9415786-5f1a-428b-b35f-2f1523e146d2"), Port: pulumi.Int(80), }) if err != nil { return err } return nil }) }
```
## Import
Load Balancer Members can be imported using the `id`, e.g.
```sh
$ pulumi import openstack:loadbalancer/memberV1:MemberV1 member_1 a7498676-4fe4-4243-a864-2eaaf18c73df
```
func GetMemberV1 ¶
func GetMemberV1(ctx *pulumi.Context, name string, id pulumi.IDInput, state *MemberV1State, opts ...pulumi.ResourceOption) (*MemberV1, error)
GetMemberV1 gets an existing MemberV1 resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewMemberV1 ¶
func NewMemberV1(ctx *pulumi.Context, name string, args *MemberV1Args, opts ...pulumi.ResourceOption) (*MemberV1, error)
NewMemberV1 registers a new resource with the given unique name, arguments, and options.
func (*MemberV1) ElementType ¶ added in v2.10.0
func (*MemberV1) ToMemberV1Output ¶ added in v2.10.0
func (i *MemberV1) ToMemberV1Output() MemberV1Output
func (*MemberV1) ToMemberV1OutputWithContext ¶ added in v2.10.0
func (i *MemberV1) ToMemberV1OutputWithContext(ctx context.Context) MemberV1Output
func (*MemberV1) ToMemberV1PtrOutput ¶ added in v2.14.1
func (i *MemberV1) ToMemberV1PtrOutput() MemberV1PtrOutput
func (*MemberV1) ToMemberV1PtrOutputWithContext ¶ added in v2.14.1
func (i *MemberV1) ToMemberV1PtrOutputWithContext(ctx context.Context) MemberV1PtrOutput
type MemberV1Args ¶
type MemberV1Args struct { // The IP address of the member. Changing this creates a // new member. Address pulumi.StringInput // The administrative state of the member. // Acceptable values are 'true' and 'false'. Changing this value updates the // state of the existing member. AdminStateUp pulumi.BoolPtrInput // The ID of the LB pool. Changing this creates a new // member. PoolId pulumi.StringInput // An integer representing the port on which the member is // hosted. Changing this creates a new member. Port pulumi.IntInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an LB member. If omitted, the // `region` argument of the provider is used. Changing this creates a new // LB member. Region pulumi.StringPtrInput // The owner of the member. Required if admin wants to // create a member for another tenant. Changing this creates a new member. TenantId pulumi.StringPtrInput Weight pulumi.IntPtrInput }
The set of arguments for constructing a MemberV1 resource.
func (MemberV1Args) ElementType ¶
func (MemberV1Args) ElementType() reflect.Type
type MemberV1Array ¶ added in v2.14.1
type MemberV1Array []MemberV1Input
func (MemberV1Array) ElementType ¶ added in v2.14.1
func (MemberV1Array) ElementType() reflect.Type
func (MemberV1Array) ToMemberV1ArrayOutput ¶ added in v2.14.1
func (i MemberV1Array) ToMemberV1ArrayOutput() MemberV1ArrayOutput
func (MemberV1Array) ToMemberV1ArrayOutputWithContext ¶ added in v2.14.1
func (i MemberV1Array) ToMemberV1ArrayOutputWithContext(ctx context.Context) MemberV1ArrayOutput
type MemberV1ArrayInput ¶ added in v2.14.1
type MemberV1ArrayInput interface { pulumi.Input ToMemberV1ArrayOutput() MemberV1ArrayOutput ToMemberV1ArrayOutputWithContext(context.Context) MemberV1ArrayOutput }
MemberV1ArrayInput is an input type that accepts MemberV1Array and MemberV1ArrayOutput values. You can construct a concrete instance of `MemberV1ArrayInput` via:
MemberV1Array{ MemberV1Args{...} }
type MemberV1ArrayOutput ¶ added in v2.14.1
type MemberV1ArrayOutput struct{ *pulumi.OutputState }
func (MemberV1ArrayOutput) ElementType ¶ added in v2.14.1
func (MemberV1ArrayOutput) ElementType() reflect.Type
func (MemberV1ArrayOutput) Index ¶ added in v2.14.1
func (o MemberV1ArrayOutput) Index(i pulumi.IntInput) MemberV1Output
func (MemberV1ArrayOutput) ToMemberV1ArrayOutput ¶ added in v2.14.1
func (o MemberV1ArrayOutput) ToMemberV1ArrayOutput() MemberV1ArrayOutput
func (MemberV1ArrayOutput) ToMemberV1ArrayOutputWithContext ¶ added in v2.14.1
func (o MemberV1ArrayOutput) ToMemberV1ArrayOutputWithContext(ctx context.Context) MemberV1ArrayOutput
type MemberV1Input ¶ added in v2.10.0
type MemberV1Input interface { pulumi.Input ToMemberV1Output() MemberV1Output ToMemberV1OutputWithContext(ctx context.Context) MemberV1Output }
type MemberV1Map ¶ added in v2.14.1
type MemberV1Map map[string]MemberV1Input
func (MemberV1Map) ElementType ¶ added in v2.14.1
func (MemberV1Map) ElementType() reflect.Type
func (MemberV1Map) ToMemberV1MapOutput ¶ added in v2.14.1
func (i MemberV1Map) ToMemberV1MapOutput() MemberV1MapOutput
func (MemberV1Map) ToMemberV1MapOutputWithContext ¶ added in v2.14.1
func (i MemberV1Map) ToMemberV1MapOutputWithContext(ctx context.Context) MemberV1MapOutput
type MemberV1MapInput ¶ added in v2.14.1
type MemberV1MapInput interface { pulumi.Input ToMemberV1MapOutput() MemberV1MapOutput ToMemberV1MapOutputWithContext(context.Context) MemberV1MapOutput }
MemberV1MapInput is an input type that accepts MemberV1Map and MemberV1MapOutput values. You can construct a concrete instance of `MemberV1MapInput` via:
MemberV1Map{ "key": MemberV1Args{...} }
type MemberV1MapOutput ¶ added in v2.14.1
type MemberV1MapOutput struct{ *pulumi.OutputState }
func (MemberV1MapOutput) ElementType ¶ added in v2.14.1
func (MemberV1MapOutput) ElementType() reflect.Type
func (MemberV1MapOutput) MapIndex ¶ added in v2.14.1
func (o MemberV1MapOutput) MapIndex(k pulumi.StringInput) MemberV1Output
func (MemberV1MapOutput) ToMemberV1MapOutput ¶ added in v2.14.1
func (o MemberV1MapOutput) ToMemberV1MapOutput() MemberV1MapOutput
func (MemberV1MapOutput) ToMemberV1MapOutputWithContext ¶ added in v2.14.1
func (o MemberV1MapOutput) ToMemberV1MapOutputWithContext(ctx context.Context) MemberV1MapOutput
type MemberV1Output ¶ added in v2.10.0
type MemberV1Output struct {
*pulumi.OutputState
}
func (MemberV1Output) ElementType ¶ added in v2.10.0
func (MemberV1Output) ElementType() reflect.Type
func (MemberV1Output) ToMemberV1Output ¶ added in v2.10.0
func (o MemberV1Output) ToMemberV1Output() MemberV1Output
func (MemberV1Output) ToMemberV1OutputWithContext ¶ added in v2.10.0
func (o MemberV1Output) ToMemberV1OutputWithContext(ctx context.Context) MemberV1Output
func (MemberV1Output) ToMemberV1PtrOutput ¶ added in v2.14.1
func (o MemberV1Output) ToMemberV1PtrOutput() MemberV1PtrOutput
func (MemberV1Output) ToMemberV1PtrOutputWithContext ¶ added in v2.14.1
func (o MemberV1Output) ToMemberV1PtrOutputWithContext(ctx context.Context) MemberV1PtrOutput
type MemberV1PtrInput ¶ added in v2.14.1
type MemberV1PtrInput interface { pulumi.Input ToMemberV1PtrOutput() MemberV1PtrOutput ToMemberV1PtrOutputWithContext(ctx context.Context) MemberV1PtrOutput }
type MemberV1PtrOutput ¶ added in v2.14.1
type MemberV1PtrOutput struct {
*pulumi.OutputState
}
func (MemberV1PtrOutput) ElementType ¶ added in v2.14.1
func (MemberV1PtrOutput) ElementType() reflect.Type
func (MemberV1PtrOutput) ToMemberV1PtrOutput ¶ added in v2.14.1
func (o MemberV1PtrOutput) ToMemberV1PtrOutput() MemberV1PtrOutput
func (MemberV1PtrOutput) ToMemberV1PtrOutputWithContext ¶ added in v2.14.1
func (o MemberV1PtrOutput) ToMemberV1PtrOutputWithContext(ctx context.Context) MemberV1PtrOutput
type MemberV1State ¶
type MemberV1State struct { // The IP address of the member. Changing this creates a // new member. Address pulumi.StringPtrInput // The administrative state of the member. // Acceptable values are 'true' and 'false'. Changing this value updates the // state of the existing member. AdminStateUp pulumi.BoolPtrInput // The ID of the LB pool. Changing this creates a new // member. PoolId pulumi.StringPtrInput // An integer representing the port on which the member is // hosted. Changing this creates a new member. Port pulumi.IntPtrInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an LB member. If omitted, the // `region` argument of the provider is used. Changing this creates a new // LB member. Region pulumi.StringPtrInput // The owner of the member. Required if admin wants to // create a member for another tenant. Changing this creates a new member. TenantId pulumi.StringPtrInput Weight pulumi.IntPtrInput }
func (MemberV1State) ElementType ¶
func (MemberV1State) ElementType() reflect.Type
type Members ¶ added in v2.2.0
type Members struct { pulumi.CustomResourceState // A set of dictionaries containing member parameters. The // structure is described below. Members MembersMemberArrayOutput `pulumi:"members"` // The id of the pool that members will be assigned to. // Changing this creates a new members resource. PoolId pulumi.StringOutput `pulumi:"poolId"` // The region in which to obtain the V2 Networking client. // A Networking client is needed to create pool members. If omitted, the // `region` argument of the provider is used. Changing this creates a new // members resource. Region pulumi.StringOutput `pulumi:"region"` }
Manages a V2 members resource within OpenStack (batch members update).
> **Note:** This resource works only within Octavia API. For legacy Neutron LBaaS v2 extension please use loadbalancer.Member resource.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/loadbalancer" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := loadbalancer.NewMembers(ctx, "members1", &loadbalancer.MembersArgs{ Members: loadbalancer.MembersMemberArray{ &loadbalancer.MembersMemberArgs{ Address: pulumi.String("192.168.199.23"), ProtocolPort: pulumi.Int(8080), }, &loadbalancer.MembersMemberArgs{ Address: pulumi.String("192.168.199.24"), ProtocolPort: pulumi.Int(8080), }, }, PoolId: pulumi.String("935685fb-a896-40f9-9ff4-ae531a3a00fe"), }) if err != nil { return err } return nil }) }
```
## Import
Load Balancer Pool Members can be imported using the Pool ID, e.g.
```sh
$ pulumi import openstack:loadbalancer/members:Members members_1 c22974d2-4c95-4bcb-9819-0afc5ed303d5
```
func GetMembers ¶ added in v2.2.0
func GetMembers(ctx *pulumi.Context, name string, id pulumi.IDInput, state *MembersState, opts ...pulumi.ResourceOption) (*Members, error)
GetMembers gets an existing Members resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewMembers ¶ added in v2.2.0
func NewMembers(ctx *pulumi.Context, name string, args *MembersArgs, opts ...pulumi.ResourceOption) (*Members, error)
NewMembers registers a new resource with the given unique name, arguments, and options.
func (*Members) ElementType ¶ added in v2.10.0
func (*Members) ToMembersOutput ¶ added in v2.10.0
func (i *Members) ToMembersOutput() MembersOutput
func (*Members) ToMembersOutputWithContext ¶ added in v2.10.0
func (i *Members) ToMembersOutputWithContext(ctx context.Context) MembersOutput
func (*Members) ToMembersPtrOutput ¶ added in v2.14.1
func (i *Members) ToMembersPtrOutput() MembersPtrOutput
func (*Members) ToMembersPtrOutputWithContext ¶ added in v2.14.1
func (i *Members) ToMembersPtrOutputWithContext(ctx context.Context) MembersPtrOutput
type MembersArgs ¶ added in v2.2.0
type MembersArgs struct { // A set of dictionaries containing member parameters. The // structure is described below. Members MembersMemberArrayInput // The id of the pool that members will be assigned to. // Changing this creates a new members resource. PoolId pulumi.StringInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create pool members. If omitted, the // `region` argument of the provider is used. Changing this creates a new // members resource. Region pulumi.StringPtrInput }
The set of arguments for constructing a Members resource.
func (MembersArgs) ElementType ¶ added in v2.2.0
func (MembersArgs) ElementType() reflect.Type
type MembersArray ¶ added in v2.14.1
type MembersArray []MembersInput
func (MembersArray) ElementType ¶ added in v2.14.1
func (MembersArray) ElementType() reflect.Type
func (MembersArray) ToMembersArrayOutput ¶ added in v2.14.1
func (i MembersArray) ToMembersArrayOutput() MembersArrayOutput
func (MembersArray) ToMembersArrayOutputWithContext ¶ added in v2.14.1
func (i MembersArray) ToMembersArrayOutputWithContext(ctx context.Context) MembersArrayOutput
type MembersArrayInput ¶ added in v2.14.1
type MembersArrayInput interface { pulumi.Input ToMembersArrayOutput() MembersArrayOutput ToMembersArrayOutputWithContext(context.Context) MembersArrayOutput }
MembersArrayInput is an input type that accepts MembersArray and MembersArrayOutput values. You can construct a concrete instance of `MembersArrayInput` via:
MembersArray{ MembersArgs{...} }
type MembersArrayOutput ¶ added in v2.14.1
type MembersArrayOutput struct{ *pulumi.OutputState }
func (MembersArrayOutput) ElementType ¶ added in v2.14.1
func (MembersArrayOutput) ElementType() reflect.Type
func (MembersArrayOutput) Index ¶ added in v2.14.1
func (o MembersArrayOutput) Index(i pulumi.IntInput) MembersOutput
func (MembersArrayOutput) ToMembersArrayOutput ¶ added in v2.14.1
func (o MembersArrayOutput) ToMembersArrayOutput() MembersArrayOutput
func (MembersArrayOutput) ToMembersArrayOutputWithContext ¶ added in v2.14.1
func (o MembersArrayOutput) ToMembersArrayOutputWithContext(ctx context.Context) MembersArrayOutput
type MembersInput ¶ added in v2.10.0
type MembersInput interface { pulumi.Input ToMembersOutput() MembersOutput ToMembersOutputWithContext(ctx context.Context) MembersOutput }
type MembersMap ¶ added in v2.14.1
type MembersMap map[string]MembersInput
func (MembersMap) ElementType ¶ added in v2.14.1
func (MembersMap) ElementType() reflect.Type
func (MembersMap) ToMembersMapOutput ¶ added in v2.14.1
func (i MembersMap) ToMembersMapOutput() MembersMapOutput
func (MembersMap) ToMembersMapOutputWithContext ¶ added in v2.14.1
func (i MembersMap) ToMembersMapOutputWithContext(ctx context.Context) MembersMapOutput
type MembersMapInput ¶ added in v2.14.1
type MembersMapInput interface { pulumi.Input ToMembersMapOutput() MembersMapOutput ToMembersMapOutputWithContext(context.Context) MembersMapOutput }
MembersMapInput is an input type that accepts MembersMap and MembersMapOutput values. You can construct a concrete instance of `MembersMapInput` via:
MembersMap{ "key": MembersArgs{...} }
type MembersMapOutput ¶ added in v2.14.1
type MembersMapOutput struct{ *pulumi.OutputState }
func (MembersMapOutput) ElementType ¶ added in v2.14.1
func (MembersMapOutput) ElementType() reflect.Type
func (MembersMapOutput) MapIndex ¶ added in v2.14.1
func (o MembersMapOutput) MapIndex(k pulumi.StringInput) MembersOutput
func (MembersMapOutput) ToMembersMapOutput ¶ added in v2.14.1
func (o MembersMapOutput) ToMembersMapOutput() MembersMapOutput
func (MembersMapOutput) ToMembersMapOutputWithContext ¶ added in v2.14.1
func (o MembersMapOutput) ToMembersMapOutputWithContext(ctx context.Context) MembersMapOutput
type MembersMember ¶ added in v2.2.0
type MembersMember struct { // The IP address of the members to receive traffic from // the load balancer. Address string `pulumi:"address"` // The administrative state of the member. // A valid value is true (UP) or false (DOWN). Defaults to true. AdminStateUp *bool `pulumi:"adminStateUp"` // The unique ID for the members. Id *string `pulumi:"id"` // Human-readable name for the member. Name *string `pulumi:"name"` // The port on which to listen for client traffic. ProtocolPort int `pulumi:"protocolPort"` // The subnet in which to access the member. SubnetId *string `pulumi:"subnetId"` // A positive integer value that indicates the relative // portion of traffic that this members should receive from the pool. For // example, a member with a weight of 10 receives five times as much traffic // as a member with a weight of 2. Defaults to 1. Weight *int `pulumi:"weight"` }
type MembersMemberArgs ¶ added in v2.2.0
type MembersMemberArgs struct { // The IP address of the members to receive traffic from // the load balancer. Address pulumi.StringInput `pulumi:"address"` // The administrative state of the member. // A valid value is true (UP) or false (DOWN). Defaults to true. AdminStateUp pulumi.BoolPtrInput `pulumi:"adminStateUp"` // The unique ID for the members. Id pulumi.StringPtrInput `pulumi:"id"` // Human-readable name for the member. Name pulumi.StringPtrInput `pulumi:"name"` // The port on which to listen for client traffic. ProtocolPort pulumi.IntInput `pulumi:"protocolPort"` // The subnet in which to access the member. SubnetId pulumi.StringPtrInput `pulumi:"subnetId"` // A positive integer value that indicates the relative // portion of traffic that this members should receive from the pool. For // example, a member with a weight of 10 receives five times as much traffic // as a member with a weight of 2. Defaults to 1. Weight pulumi.IntPtrInput `pulumi:"weight"` }
func (MembersMemberArgs) ElementType ¶ added in v2.2.0
func (MembersMemberArgs) ElementType() reflect.Type
func (MembersMemberArgs) ToMembersMemberOutput ¶ added in v2.2.0
func (i MembersMemberArgs) ToMembersMemberOutput() MembersMemberOutput
func (MembersMemberArgs) ToMembersMemberOutputWithContext ¶ added in v2.2.0
func (i MembersMemberArgs) ToMembersMemberOutputWithContext(ctx context.Context) MembersMemberOutput
type MembersMemberArray ¶ added in v2.2.0
type MembersMemberArray []MembersMemberInput
func (MembersMemberArray) ElementType ¶ added in v2.2.0
func (MembersMemberArray) ElementType() reflect.Type
func (MembersMemberArray) ToMembersMemberArrayOutput ¶ added in v2.2.0
func (i MembersMemberArray) ToMembersMemberArrayOutput() MembersMemberArrayOutput
func (MembersMemberArray) ToMembersMemberArrayOutputWithContext ¶ added in v2.2.0
func (i MembersMemberArray) ToMembersMemberArrayOutputWithContext(ctx context.Context) MembersMemberArrayOutput
type MembersMemberArrayInput ¶ added in v2.2.0
type MembersMemberArrayInput interface { pulumi.Input ToMembersMemberArrayOutput() MembersMemberArrayOutput ToMembersMemberArrayOutputWithContext(context.Context) MembersMemberArrayOutput }
MembersMemberArrayInput is an input type that accepts MembersMemberArray and MembersMemberArrayOutput values. You can construct a concrete instance of `MembersMemberArrayInput` via:
MembersMemberArray{ MembersMemberArgs{...} }
type MembersMemberArrayOutput ¶ added in v2.2.0
type MembersMemberArrayOutput struct{ *pulumi.OutputState }
func (MembersMemberArrayOutput) ElementType ¶ added in v2.2.0
func (MembersMemberArrayOutput) ElementType() reflect.Type
func (MembersMemberArrayOutput) Index ¶ added in v2.2.0
func (o MembersMemberArrayOutput) Index(i pulumi.IntInput) MembersMemberOutput
func (MembersMemberArrayOutput) ToMembersMemberArrayOutput ¶ added in v2.2.0
func (o MembersMemberArrayOutput) ToMembersMemberArrayOutput() MembersMemberArrayOutput
func (MembersMemberArrayOutput) ToMembersMemberArrayOutputWithContext ¶ added in v2.2.0
func (o MembersMemberArrayOutput) ToMembersMemberArrayOutputWithContext(ctx context.Context) MembersMemberArrayOutput
type MembersMemberInput ¶ added in v2.2.0
type MembersMemberInput interface { pulumi.Input ToMembersMemberOutput() MembersMemberOutput ToMembersMemberOutputWithContext(context.Context) MembersMemberOutput }
MembersMemberInput is an input type that accepts MembersMemberArgs and MembersMemberOutput values. You can construct a concrete instance of `MembersMemberInput` via:
MembersMemberArgs{...}
type MembersMemberOutput ¶ added in v2.2.0
type MembersMemberOutput struct{ *pulumi.OutputState }
func (MembersMemberOutput) Address ¶ added in v2.2.0
func (o MembersMemberOutput) Address() pulumi.StringOutput
The IP address of the members to receive traffic from the load balancer.
func (MembersMemberOutput) AdminStateUp ¶ added in v2.2.0
func (o MembersMemberOutput) AdminStateUp() pulumi.BoolPtrOutput
The administrative state of the member. A valid value is true (UP) or false (DOWN). Defaults to true.
func (MembersMemberOutput) ElementType ¶ added in v2.2.0
func (MembersMemberOutput) ElementType() reflect.Type
func (MembersMemberOutput) Id ¶ added in v2.2.0
func (o MembersMemberOutput) Id() pulumi.StringPtrOutput
The unique ID for the members.
func (MembersMemberOutput) Name ¶ added in v2.2.0
func (o MembersMemberOutput) Name() pulumi.StringPtrOutput
Human-readable name for the member.
func (MembersMemberOutput) ProtocolPort ¶ added in v2.2.0
func (o MembersMemberOutput) ProtocolPort() pulumi.IntOutput
The port on which to listen for client traffic.
func (MembersMemberOutput) SubnetId ¶ added in v2.2.0
func (o MembersMemberOutput) SubnetId() pulumi.StringPtrOutput
The subnet in which to access the member.
func (MembersMemberOutput) ToMembersMemberOutput ¶ added in v2.2.0
func (o MembersMemberOutput) ToMembersMemberOutput() MembersMemberOutput
func (MembersMemberOutput) ToMembersMemberOutputWithContext ¶ added in v2.2.0
func (o MembersMemberOutput) ToMembersMemberOutputWithContext(ctx context.Context) MembersMemberOutput
func (MembersMemberOutput) Weight ¶ added in v2.2.0
func (o MembersMemberOutput) Weight() pulumi.IntPtrOutput
A positive integer value that indicates the relative portion of traffic that this members should receive from the pool. For example, a member with a weight of 10 receives five times as much traffic as a member with a weight of 2. Defaults to 1.
type MembersOutput ¶ added in v2.10.0
type MembersOutput struct {
*pulumi.OutputState
}
func (MembersOutput) ElementType ¶ added in v2.10.0
func (MembersOutput) ElementType() reflect.Type
func (MembersOutput) ToMembersOutput ¶ added in v2.10.0
func (o MembersOutput) ToMembersOutput() MembersOutput
func (MembersOutput) ToMembersOutputWithContext ¶ added in v2.10.0
func (o MembersOutput) ToMembersOutputWithContext(ctx context.Context) MembersOutput
func (MembersOutput) ToMembersPtrOutput ¶ added in v2.14.1
func (o MembersOutput) ToMembersPtrOutput() MembersPtrOutput
func (MembersOutput) ToMembersPtrOutputWithContext ¶ added in v2.14.1
func (o MembersOutput) ToMembersPtrOutputWithContext(ctx context.Context) MembersPtrOutput
type MembersPtrInput ¶ added in v2.14.1
type MembersPtrInput interface { pulumi.Input ToMembersPtrOutput() MembersPtrOutput ToMembersPtrOutputWithContext(ctx context.Context) MembersPtrOutput }
type MembersPtrOutput ¶ added in v2.14.1
type MembersPtrOutput struct {
*pulumi.OutputState
}
func (MembersPtrOutput) ElementType ¶ added in v2.14.1
func (MembersPtrOutput) ElementType() reflect.Type
func (MembersPtrOutput) ToMembersPtrOutput ¶ added in v2.14.1
func (o MembersPtrOutput) ToMembersPtrOutput() MembersPtrOutput
func (MembersPtrOutput) ToMembersPtrOutputWithContext ¶ added in v2.14.1
func (o MembersPtrOutput) ToMembersPtrOutputWithContext(ctx context.Context) MembersPtrOutput
type MembersState ¶ added in v2.2.0
type MembersState struct { // A set of dictionaries containing member parameters. The // structure is described below. Members MembersMemberArrayInput // The id of the pool that members will be assigned to. // Changing this creates a new members resource. PoolId pulumi.StringPtrInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create pool members. If omitted, the // `region` argument of the provider is used. Changing this creates a new // members resource. Region pulumi.StringPtrInput }
func (MembersState) ElementType ¶ added in v2.2.0
func (MembersState) ElementType() reflect.Type
type Monitor ¶
type Monitor struct { pulumi.CustomResourceState // The administrative state of the monitor. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrOutput `pulumi:"adminStateUp"` // The time, in seconds, between sending probes to members. Delay pulumi.IntOutput `pulumi:"delay"` // Required for HTTP(S) types. Expected HTTP codes // for a passing HTTP(S) monitor. You can either specify a single status like // "200", or a range like "200-202". ExpectedCodes pulumi.StringOutput `pulumi:"expectedCodes"` // Required for HTTP(S) types. The HTTP method used // for requests by the monitor. If this attribute is not specified, it // defaults to "GET". HttpMethod pulumi.StringOutput `pulumi:"httpMethod"` // Number of permissible ping failures before // changing the member's status to INACTIVE. Must be a number between 1 // and 10. MaxRetries pulumi.IntOutput `pulumi:"maxRetries"` // Number of permissible ping failures befor changing the member's // status to ERROR. Must be a number between 1 and 10 (supported only in Octavia). // Changing this updates the maxRetriesDown of the existing monitor. MaxRetriesDown pulumi.IntOutput `pulumi:"maxRetriesDown"` // The Name of the Monitor. Name pulumi.StringOutput `pulumi:"name"` // The id of the pool that this monitor will be assigned to. PoolId pulumi.StringOutput `pulumi:"poolId"` // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an . If omitted, the // `region` argument of the provider is used. Changing this creates a new // monitor. Region pulumi.StringOutput `pulumi:"region"` // Required for admins. The UUID of the tenant who owns // the monitor. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new monitor. TenantId pulumi.StringOutput `pulumi:"tenantId"` // Maximum number of seconds for a monitor to wait for a // ping reply before it times out. The value must be less than the delay // value. Timeout pulumi.IntOutput `pulumi:"timeout"` // The type of probe, which is PING, TCP, HTTP, HTTPS, // TLS-HELLO or UDP-CONNECT (supported only in Octavia), that is sent by the load // balancer to verify the member state. Changing this creates a new monitor. Type pulumi.StringOutput `pulumi:"type"` // Required for HTTP(S) types. URI path that will be // accessed if monitor type is HTTP or HTTPS. UrlPath pulumi.StringOutput `pulumi:"urlPath"` }
Manages a V2 monitor resource within OpenStack.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/loadbalancer" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := loadbalancer.NewMonitor(ctx, "monitor1", &loadbalancer.MonitorArgs{ Delay: pulumi.Int(20), MaxRetries: pulumi.Int(5), PoolId: pulumi.Any(openstack_lb_pool_v2.Pool_1.Id), Timeout: pulumi.Int(10), Type: pulumi.String("PING"), }) if err != nil { return err } return nil }) }
```
## Import
Load Balancer Pool Monitor can be imported using the Monitor ID, e.g.
```sh
$ pulumi import openstack:loadbalancer/monitor:Monitor monitor_1 47c26fc3-2403-427a-8c79-1589bd0533c2
```
In case of using OpenContrail, the import may not work properly. If you face an issue, try to import the monitor providing its parent pool ID
```sh
$ pulumi import openstack:loadbalancer/monitor:Monitor monitor_1 47c26fc3-2403-427a-8c79-1589bd0533c2/708bc224-0f8c-4981-ac82-97095fe051b6
```
func GetMonitor ¶
func GetMonitor(ctx *pulumi.Context, name string, id pulumi.IDInput, state *MonitorState, opts ...pulumi.ResourceOption) (*Monitor, error)
GetMonitor gets an existing Monitor resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewMonitor ¶
func NewMonitor(ctx *pulumi.Context, name string, args *MonitorArgs, opts ...pulumi.ResourceOption) (*Monitor, error)
NewMonitor registers a new resource with the given unique name, arguments, and options.
func (*Monitor) ElementType ¶ added in v2.10.0
func (*Monitor) ToMonitorOutput ¶ added in v2.10.0
func (i *Monitor) ToMonitorOutput() MonitorOutput
func (*Monitor) ToMonitorOutputWithContext ¶ added in v2.10.0
func (i *Monitor) ToMonitorOutputWithContext(ctx context.Context) MonitorOutput
func (*Monitor) ToMonitorPtrOutput ¶ added in v2.14.1
func (i *Monitor) ToMonitorPtrOutput() MonitorPtrOutput
func (*Monitor) ToMonitorPtrOutputWithContext ¶ added in v2.14.1
func (i *Monitor) ToMonitorPtrOutputWithContext(ctx context.Context) MonitorPtrOutput
type MonitorArgs ¶
type MonitorArgs struct { // The administrative state of the monitor. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrInput // The time, in seconds, between sending probes to members. Delay pulumi.IntInput // Required for HTTP(S) types. Expected HTTP codes // for a passing HTTP(S) monitor. You can either specify a single status like // "200", or a range like "200-202". ExpectedCodes pulumi.StringPtrInput // Required for HTTP(S) types. The HTTP method used // for requests by the monitor. If this attribute is not specified, it // defaults to "GET". HttpMethod pulumi.StringPtrInput // Number of permissible ping failures before // changing the member's status to INACTIVE. Must be a number between 1 // and 10. MaxRetries pulumi.IntInput // Number of permissible ping failures befor changing the member's // status to ERROR. Must be a number between 1 and 10 (supported only in Octavia). // Changing this updates the maxRetriesDown of the existing monitor. MaxRetriesDown pulumi.IntPtrInput // The Name of the Monitor. Name pulumi.StringPtrInput // The id of the pool that this monitor will be assigned to. PoolId pulumi.StringInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an . If omitted, the // `region` argument of the provider is used. Changing this creates a new // monitor. Region pulumi.StringPtrInput // Required for admins. The UUID of the tenant who owns // the monitor. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new monitor. TenantId pulumi.StringPtrInput // Maximum number of seconds for a monitor to wait for a // ping reply before it times out. The value must be less than the delay // value. Timeout pulumi.IntInput // The type of probe, which is PING, TCP, HTTP, HTTPS, // TLS-HELLO or UDP-CONNECT (supported only in Octavia), that is sent by the load // balancer to verify the member state. Changing this creates a new monitor. Type pulumi.StringInput // Required for HTTP(S) types. URI path that will be // accessed if monitor type is HTTP or HTTPS. UrlPath pulumi.StringPtrInput }
The set of arguments for constructing a Monitor resource.
func (MonitorArgs) ElementType ¶
func (MonitorArgs) ElementType() reflect.Type
type MonitorArray ¶ added in v2.14.1
type MonitorArray []MonitorInput
func (MonitorArray) ElementType ¶ added in v2.14.1
func (MonitorArray) ElementType() reflect.Type
func (MonitorArray) ToMonitorArrayOutput ¶ added in v2.14.1
func (i MonitorArray) ToMonitorArrayOutput() MonitorArrayOutput
func (MonitorArray) ToMonitorArrayOutputWithContext ¶ added in v2.14.1
func (i MonitorArray) ToMonitorArrayOutputWithContext(ctx context.Context) MonitorArrayOutput
type MonitorArrayInput ¶ added in v2.14.1
type MonitorArrayInput interface { pulumi.Input ToMonitorArrayOutput() MonitorArrayOutput ToMonitorArrayOutputWithContext(context.Context) MonitorArrayOutput }
MonitorArrayInput is an input type that accepts MonitorArray and MonitorArrayOutput values. You can construct a concrete instance of `MonitorArrayInput` via:
MonitorArray{ MonitorArgs{...} }
type MonitorArrayOutput ¶ added in v2.14.1
type MonitorArrayOutput struct{ *pulumi.OutputState }
func (MonitorArrayOutput) ElementType ¶ added in v2.14.1
func (MonitorArrayOutput) ElementType() reflect.Type
func (MonitorArrayOutput) Index ¶ added in v2.14.1
func (o MonitorArrayOutput) Index(i pulumi.IntInput) MonitorOutput
func (MonitorArrayOutput) ToMonitorArrayOutput ¶ added in v2.14.1
func (o MonitorArrayOutput) ToMonitorArrayOutput() MonitorArrayOutput
func (MonitorArrayOutput) ToMonitorArrayOutputWithContext ¶ added in v2.14.1
func (o MonitorArrayOutput) ToMonitorArrayOutputWithContext(ctx context.Context) MonitorArrayOutput
type MonitorInput ¶ added in v2.10.0
type MonitorInput interface { pulumi.Input ToMonitorOutput() MonitorOutput ToMonitorOutputWithContext(ctx context.Context) MonitorOutput }
type MonitorMap ¶ added in v2.14.1
type MonitorMap map[string]MonitorInput
func (MonitorMap) ElementType ¶ added in v2.14.1
func (MonitorMap) ElementType() reflect.Type
func (MonitorMap) ToMonitorMapOutput ¶ added in v2.14.1
func (i MonitorMap) ToMonitorMapOutput() MonitorMapOutput
func (MonitorMap) ToMonitorMapOutputWithContext ¶ added in v2.14.1
func (i MonitorMap) ToMonitorMapOutputWithContext(ctx context.Context) MonitorMapOutput
type MonitorMapInput ¶ added in v2.14.1
type MonitorMapInput interface { pulumi.Input ToMonitorMapOutput() MonitorMapOutput ToMonitorMapOutputWithContext(context.Context) MonitorMapOutput }
MonitorMapInput is an input type that accepts MonitorMap and MonitorMapOutput values. You can construct a concrete instance of `MonitorMapInput` via:
MonitorMap{ "key": MonitorArgs{...} }
type MonitorMapOutput ¶ added in v2.14.1
type MonitorMapOutput struct{ *pulumi.OutputState }
func (MonitorMapOutput) ElementType ¶ added in v2.14.1
func (MonitorMapOutput) ElementType() reflect.Type
func (MonitorMapOutput) MapIndex ¶ added in v2.14.1
func (o MonitorMapOutput) MapIndex(k pulumi.StringInput) MonitorOutput
func (MonitorMapOutput) ToMonitorMapOutput ¶ added in v2.14.1
func (o MonitorMapOutput) ToMonitorMapOutput() MonitorMapOutput
func (MonitorMapOutput) ToMonitorMapOutputWithContext ¶ added in v2.14.1
func (o MonitorMapOutput) ToMonitorMapOutputWithContext(ctx context.Context) MonitorMapOutput
type MonitorOutput ¶ added in v2.10.0
type MonitorOutput struct {
*pulumi.OutputState
}
func (MonitorOutput) ElementType ¶ added in v2.10.0
func (MonitorOutput) ElementType() reflect.Type
func (MonitorOutput) ToMonitorOutput ¶ added in v2.10.0
func (o MonitorOutput) ToMonitorOutput() MonitorOutput
func (MonitorOutput) ToMonitorOutputWithContext ¶ added in v2.10.0
func (o MonitorOutput) ToMonitorOutputWithContext(ctx context.Context) MonitorOutput
func (MonitorOutput) ToMonitorPtrOutput ¶ added in v2.14.1
func (o MonitorOutput) ToMonitorPtrOutput() MonitorPtrOutput
func (MonitorOutput) ToMonitorPtrOutputWithContext ¶ added in v2.14.1
func (o MonitorOutput) ToMonitorPtrOutputWithContext(ctx context.Context) MonitorPtrOutput
type MonitorPtrInput ¶ added in v2.14.1
type MonitorPtrInput interface { pulumi.Input ToMonitorPtrOutput() MonitorPtrOutput ToMonitorPtrOutputWithContext(ctx context.Context) MonitorPtrOutput }
type MonitorPtrOutput ¶ added in v2.14.1
type MonitorPtrOutput struct {
*pulumi.OutputState
}
func (MonitorPtrOutput) ElementType ¶ added in v2.14.1
func (MonitorPtrOutput) ElementType() reflect.Type
func (MonitorPtrOutput) ToMonitorPtrOutput ¶ added in v2.14.1
func (o MonitorPtrOutput) ToMonitorPtrOutput() MonitorPtrOutput
func (MonitorPtrOutput) ToMonitorPtrOutputWithContext ¶ added in v2.14.1
func (o MonitorPtrOutput) ToMonitorPtrOutputWithContext(ctx context.Context) MonitorPtrOutput
type MonitorState ¶
type MonitorState struct { // The administrative state of the monitor. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrInput // The time, in seconds, between sending probes to members. Delay pulumi.IntPtrInput // Required for HTTP(S) types. Expected HTTP codes // for a passing HTTP(S) monitor. You can either specify a single status like // "200", or a range like "200-202". ExpectedCodes pulumi.StringPtrInput // Required for HTTP(S) types. The HTTP method used // for requests by the monitor. If this attribute is not specified, it // defaults to "GET". HttpMethod pulumi.StringPtrInput // Number of permissible ping failures before // changing the member's status to INACTIVE. Must be a number between 1 // and 10. MaxRetries pulumi.IntPtrInput // Number of permissible ping failures befor changing the member's // status to ERROR. Must be a number between 1 and 10 (supported only in Octavia). // Changing this updates the maxRetriesDown of the existing monitor. MaxRetriesDown pulumi.IntPtrInput // The Name of the Monitor. Name pulumi.StringPtrInput // The id of the pool that this monitor will be assigned to. PoolId pulumi.StringPtrInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an . If omitted, the // `region` argument of the provider is used. Changing this creates a new // monitor. Region pulumi.StringPtrInput // Required for admins. The UUID of the tenant who owns // the monitor. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new monitor. TenantId pulumi.StringPtrInput // Maximum number of seconds for a monitor to wait for a // ping reply before it times out. The value must be less than the delay // value. Timeout pulumi.IntPtrInput // The type of probe, which is PING, TCP, HTTP, HTTPS, // TLS-HELLO or UDP-CONNECT (supported only in Octavia), that is sent by the load // balancer to verify the member state. Changing this creates a new monitor. Type pulumi.StringPtrInput // Required for HTTP(S) types. URI path that will be // accessed if monitor type is HTTP or HTTPS. UrlPath pulumi.StringPtrInput }
func (MonitorState) ElementType ¶
func (MonitorState) ElementType() reflect.Type
type MonitorV1 ¶
type MonitorV1 struct { pulumi.CustomResourceState // The administrative state of the monitor. // Acceptable values are "true" and "false". Changing this value updates the // state of the existing monitor. AdminStateUp pulumi.StringOutput `pulumi:"adminStateUp"` // The time, in seconds, between sending probes to members. // Changing this creates a new monitor. Delay pulumi.IntOutput `pulumi:"delay"` // Required for HTTP(S) types. Expected HTTP codes // for a passing HTTP(S) monitor. You can either specify a single status like // "200", or a range like "200-202". Changing this updates the expectedCodes // of the existing monitor. ExpectedCodes pulumi.StringPtrOutput `pulumi:"expectedCodes"` // Required for HTTP(S) types. The HTTP method used // for requests by the monitor. If this attribute is not specified, it defaults // to "GET". Changing this updates the httpMethod of the existing monitor. HttpMethod pulumi.StringPtrOutput `pulumi:"httpMethod"` // Number of permissible ping failures before changing // the member's status to INACTIVE. Must be a number between 1 and 10. Changing // this updates the maxRetries of the existing monitor. MaxRetries pulumi.IntOutput `pulumi:"maxRetries"` // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an LB monitor. If omitted, the // `region` argument of the provider is used. Changing this creates a new // LB monitor. Region pulumi.StringOutput `pulumi:"region"` // The owner of the monitor. Required if admin wants to // create a monitor for another tenant. Changing this creates a new monitor. TenantId pulumi.StringOutput `pulumi:"tenantId"` // Maximum number of seconds for a monitor to wait for a // ping reply before it times out. The value must be less than the delay value. // Changing this updates the timeout of the existing monitor. Timeout pulumi.IntOutput `pulumi:"timeout"` // The type of probe, which is PING, TCP, HTTP, or HTTPS, // that is sent by the monitor to verify the member state. Changing this // creates a new monitor. Type pulumi.StringOutput `pulumi:"type"` // Required for HTTP(S) types. URI path that will be // accessed if monitor type is HTTP or HTTPS. Changing this updates the // urlPath of the existing monitor. UrlPath pulumi.StringPtrOutput `pulumi:"urlPath"` }
Manages a V1 load balancer monitor resource within OpenStack.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/loadbalancer" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := loadbalancer.NewMonitorV1(ctx, "monitor1", &loadbalancer.MonitorV1Args{ AdminStateUp: pulumi.String("true"), Delay: pulumi.Int(30), MaxRetries: pulumi.Int(3), Timeout: pulumi.Int(5), Type: pulumi.String("PING"), }) if err != nil { return err } return nil }) }
```
## Import
Load Balancer Members can be imported using the `id`, e.g.
```sh
$ pulumi import openstack:loadbalancer/monitorV1:MonitorV1 monitor_1 119d7530-72e9-449a-aa97-124a5ef1992c
```
func GetMonitorV1 ¶
func GetMonitorV1(ctx *pulumi.Context, name string, id pulumi.IDInput, state *MonitorV1State, opts ...pulumi.ResourceOption) (*MonitorV1, error)
GetMonitorV1 gets an existing MonitorV1 resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewMonitorV1 ¶
func NewMonitorV1(ctx *pulumi.Context, name string, args *MonitorV1Args, opts ...pulumi.ResourceOption) (*MonitorV1, error)
NewMonitorV1 registers a new resource with the given unique name, arguments, and options.
func (*MonitorV1) ElementType ¶ added in v2.10.0
func (*MonitorV1) ToMonitorV1Output ¶ added in v2.10.0
func (i *MonitorV1) ToMonitorV1Output() MonitorV1Output
func (*MonitorV1) ToMonitorV1OutputWithContext ¶ added in v2.10.0
func (i *MonitorV1) ToMonitorV1OutputWithContext(ctx context.Context) MonitorV1Output
func (*MonitorV1) ToMonitorV1PtrOutput ¶ added in v2.14.1
func (i *MonitorV1) ToMonitorV1PtrOutput() MonitorV1PtrOutput
func (*MonitorV1) ToMonitorV1PtrOutputWithContext ¶ added in v2.14.1
func (i *MonitorV1) ToMonitorV1PtrOutputWithContext(ctx context.Context) MonitorV1PtrOutput
type MonitorV1Args ¶
type MonitorV1Args struct { // The administrative state of the monitor. // Acceptable values are "true" and "false". Changing this value updates the // state of the existing monitor. AdminStateUp pulumi.StringPtrInput // The time, in seconds, between sending probes to members. // Changing this creates a new monitor. Delay pulumi.IntInput // Required for HTTP(S) types. Expected HTTP codes // for a passing HTTP(S) monitor. You can either specify a single status like // "200", or a range like "200-202". Changing this updates the expectedCodes // of the existing monitor. ExpectedCodes pulumi.StringPtrInput // Required for HTTP(S) types. The HTTP method used // for requests by the monitor. If this attribute is not specified, it defaults // to "GET". Changing this updates the httpMethod of the existing monitor. HttpMethod pulumi.StringPtrInput // Number of permissible ping failures before changing // the member's status to INACTIVE. Must be a number between 1 and 10. Changing // this updates the maxRetries of the existing monitor. MaxRetries pulumi.IntInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an LB monitor. If omitted, the // `region` argument of the provider is used. Changing this creates a new // LB monitor. Region pulumi.StringPtrInput // The owner of the monitor. Required if admin wants to // create a monitor for another tenant. Changing this creates a new monitor. TenantId pulumi.StringPtrInput // Maximum number of seconds for a monitor to wait for a // ping reply before it times out. The value must be less than the delay value. // Changing this updates the timeout of the existing monitor. Timeout pulumi.IntInput // The type of probe, which is PING, TCP, HTTP, or HTTPS, // that is sent by the monitor to verify the member state. Changing this // creates a new monitor. Type pulumi.StringInput // Required for HTTP(S) types. URI path that will be // accessed if monitor type is HTTP or HTTPS. Changing this updates the // urlPath of the existing monitor. UrlPath pulumi.StringPtrInput }
The set of arguments for constructing a MonitorV1 resource.
func (MonitorV1Args) ElementType ¶
func (MonitorV1Args) ElementType() reflect.Type
type MonitorV1Array ¶ added in v2.14.1
type MonitorV1Array []MonitorV1Input
func (MonitorV1Array) ElementType ¶ added in v2.14.1
func (MonitorV1Array) ElementType() reflect.Type
func (MonitorV1Array) ToMonitorV1ArrayOutput ¶ added in v2.14.1
func (i MonitorV1Array) ToMonitorV1ArrayOutput() MonitorV1ArrayOutput
func (MonitorV1Array) ToMonitorV1ArrayOutputWithContext ¶ added in v2.14.1
func (i MonitorV1Array) ToMonitorV1ArrayOutputWithContext(ctx context.Context) MonitorV1ArrayOutput
type MonitorV1ArrayInput ¶ added in v2.14.1
type MonitorV1ArrayInput interface { pulumi.Input ToMonitorV1ArrayOutput() MonitorV1ArrayOutput ToMonitorV1ArrayOutputWithContext(context.Context) MonitorV1ArrayOutput }
MonitorV1ArrayInput is an input type that accepts MonitorV1Array and MonitorV1ArrayOutput values. You can construct a concrete instance of `MonitorV1ArrayInput` via:
MonitorV1Array{ MonitorV1Args{...} }
type MonitorV1ArrayOutput ¶ added in v2.14.1
type MonitorV1ArrayOutput struct{ *pulumi.OutputState }
func (MonitorV1ArrayOutput) ElementType ¶ added in v2.14.1
func (MonitorV1ArrayOutput) ElementType() reflect.Type
func (MonitorV1ArrayOutput) Index ¶ added in v2.14.1
func (o MonitorV1ArrayOutput) Index(i pulumi.IntInput) MonitorV1Output
func (MonitorV1ArrayOutput) ToMonitorV1ArrayOutput ¶ added in v2.14.1
func (o MonitorV1ArrayOutput) ToMonitorV1ArrayOutput() MonitorV1ArrayOutput
func (MonitorV1ArrayOutput) ToMonitorV1ArrayOutputWithContext ¶ added in v2.14.1
func (o MonitorV1ArrayOutput) ToMonitorV1ArrayOutputWithContext(ctx context.Context) MonitorV1ArrayOutput
type MonitorV1Input ¶ added in v2.10.0
type MonitorV1Input interface { pulumi.Input ToMonitorV1Output() MonitorV1Output ToMonitorV1OutputWithContext(ctx context.Context) MonitorV1Output }
type MonitorV1Map ¶ added in v2.14.1
type MonitorV1Map map[string]MonitorV1Input
func (MonitorV1Map) ElementType ¶ added in v2.14.1
func (MonitorV1Map) ElementType() reflect.Type
func (MonitorV1Map) ToMonitorV1MapOutput ¶ added in v2.14.1
func (i MonitorV1Map) ToMonitorV1MapOutput() MonitorV1MapOutput
func (MonitorV1Map) ToMonitorV1MapOutputWithContext ¶ added in v2.14.1
func (i MonitorV1Map) ToMonitorV1MapOutputWithContext(ctx context.Context) MonitorV1MapOutput
type MonitorV1MapInput ¶ added in v2.14.1
type MonitorV1MapInput interface { pulumi.Input ToMonitorV1MapOutput() MonitorV1MapOutput ToMonitorV1MapOutputWithContext(context.Context) MonitorV1MapOutput }
MonitorV1MapInput is an input type that accepts MonitorV1Map and MonitorV1MapOutput values. You can construct a concrete instance of `MonitorV1MapInput` via:
MonitorV1Map{ "key": MonitorV1Args{...} }
type MonitorV1MapOutput ¶ added in v2.14.1
type MonitorV1MapOutput struct{ *pulumi.OutputState }
func (MonitorV1MapOutput) ElementType ¶ added in v2.14.1
func (MonitorV1MapOutput) ElementType() reflect.Type
func (MonitorV1MapOutput) MapIndex ¶ added in v2.14.1
func (o MonitorV1MapOutput) MapIndex(k pulumi.StringInput) MonitorV1Output
func (MonitorV1MapOutput) ToMonitorV1MapOutput ¶ added in v2.14.1
func (o MonitorV1MapOutput) ToMonitorV1MapOutput() MonitorV1MapOutput
func (MonitorV1MapOutput) ToMonitorV1MapOutputWithContext ¶ added in v2.14.1
func (o MonitorV1MapOutput) ToMonitorV1MapOutputWithContext(ctx context.Context) MonitorV1MapOutput
type MonitorV1Output ¶ added in v2.10.0
type MonitorV1Output struct {
*pulumi.OutputState
}
func (MonitorV1Output) ElementType ¶ added in v2.10.0
func (MonitorV1Output) ElementType() reflect.Type
func (MonitorV1Output) ToMonitorV1Output ¶ added in v2.10.0
func (o MonitorV1Output) ToMonitorV1Output() MonitorV1Output
func (MonitorV1Output) ToMonitorV1OutputWithContext ¶ added in v2.10.0
func (o MonitorV1Output) ToMonitorV1OutputWithContext(ctx context.Context) MonitorV1Output
func (MonitorV1Output) ToMonitorV1PtrOutput ¶ added in v2.14.1
func (o MonitorV1Output) ToMonitorV1PtrOutput() MonitorV1PtrOutput
func (MonitorV1Output) ToMonitorV1PtrOutputWithContext ¶ added in v2.14.1
func (o MonitorV1Output) ToMonitorV1PtrOutputWithContext(ctx context.Context) MonitorV1PtrOutput
type MonitorV1PtrInput ¶ added in v2.14.1
type MonitorV1PtrInput interface { pulumi.Input ToMonitorV1PtrOutput() MonitorV1PtrOutput ToMonitorV1PtrOutputWithContext(ctx context.Context) MonitorV1PtrOutput }
type MonitorV1PtrOutput ¶ added in v2.14.1
type MonitorV1PtrOutput struct {
*pulumi.OutputState
}
func (MonitorV1PtrOutput) ElementType ¶ added in v2.14.1
func (MonitorV1PtrOutput) ElementType() reflect.Type
func (MonitorV1PtrOutput) ToMonitorV1PtrOutput ¶ added in v2.14.1
func (o MonitorV1PtrOutput) ToMonitorV1PtrOutput() MonitorV1PtrOutput
func (MonitorV1PtrOutput) ToMonitorV1PtrOutputWithContext ¶ added in v2.14.1
func (o MonitorV1PtrOutput) ToMonitorV1PtrOutputWithContext(ctx context.Context) MonitorV1PtrOutput
type MonitorV1State ¶
type MonitorV1State struct { // The administrative state of the monitor. // Acceptable values are "true" and "false". Changing this value updates the // state of the existing monitor. AdminStateUp pulumi.StringPtrInput // The time, in seconds, between sending probes to members. // Changing this creates a new monitor. Delay pulumi.IntPtrInput // Required for HTTP(S) types. Expected HTTP codes // for a passing HTTP(S) monitor. You can either specify a single status like // "200", or a range like "200-202". Changing this updates the expectedCodes // of the existing monitor. ExpectedCodes pulumi.StringPtrInput // Required for HTTP(S) types. The HTTP method used // for requests by the monitor. If this attribute is not specified, it defaults // to "GET". Changing this updates the httpMethod of the existing monitor. HttpMethod pulumi.StringPtrInput // Number of permissible ping failures before changing // the member's status to INACTIVE. Must be a number between 1 and 10. Changing // this updates the maxRetries of the existing monitor. MaxRetries pulumi.IntPtrInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an LB monitor. If omitted, the // `region` argument of the provider is used. Changing this creates a new // LB monitor. Region pulumi.StringPtrInput // The owner of the monitor. Required if admin wants to // create a monitor for another tenant. Changing this creates a new monitor. TenantId pulumi.StringPtrInput // Maximum number of seconds for a monitor to wait for a // ping reply before it times out. The value must be less than the delay value. // Changing this updates the timeout of the existing monitor. Timeout pulumi.IntPtrInput // The type of probe, which is PING, TCP, HTTP, or HTTPS, // that is sent by the monitor to verify the member state. Changing this // creates a new monitor. Type pulumi.StringPtrInput // Required for HTTP(S) types. URI path that will be // accessed if monitor type is HTTP or HTTPS. Changing this updates the // urlPath of the existing monitor. UrlPath pulumi.StringPtrInput }
func (MonitorV1State) ElementType ¶
func (MonitorV1State) ElementType() reflect.Type
type Pool ¶
type Pool struct { pulumi.CustomResourceState // The administrative state of the pool. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrOutput `pulumi:"adminStateUp"` // Human-readable description for the pool. Description pulumi.StringPtrOutput `pulumi:"description"` // The load balancing algorithm to // distribute traffic to the pool's members. Must be one of // ROUND_ROBIN, LEAST_CONNECTIONS, SOURCE_IP, or SOURCE_IP_PORT (supported only // in Octavia). LbMethod pulumi.StringOutput `pulumi:"lbMethod"` // The Listener on which the members of the pool // will be associated with. Changing this creates a new pool. // Note: One of LoadbalancerID or ListenerID must be provided. ListenerId pulumi.StringPtrOutput `pulumi:"listenerId"` // The load balancer on which to provision this // pool. Changing this creates a new pool. // Note: One of LoadbalancerID or ListenerID must be provided. LoadbalancerId pulumi.StringPtrOutput `pulumi:"loadbalancerId"` // Human-readable name for the pool. Name pulumi.StringOutput `pulumi:"name"` // Omit this field to prevent session persistence. Indicates // whether connections in the same session will be processed by the same Pool // member or not. Changing this creates a new pool. Persistence PoolPersistenceOutput `pulumi:"persistence"` // The protocol - can either be TCP, HTTP, HTTPS, PROXY // or UDP (supported only in Octavia). Changing this creates a new pool. Protocol pulumi.StringOutput `pulumi:"protocol"` // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an . If omitted, the // `region` argument of the provider is used. Changing this creates a new // pool. Region pulumi.StringOutput `pulumi:"region"` // Required for admins. The UUID of the tenant who owns // the pool. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new pool. TenantId pulumi.StringOutput `pulumi:"tenantId"` }
Manages a V2 pool resource within OpenStack.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/loadbalancer" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := loadbalancer.NewPool(ctx, "pool1", &loadbalancer.PoolArgs{ LbMethod: pulumi.String("ROUND_ROBIN"), ListenerId: pulumi.String("d9415786-5f1a-428b-b35f-2f1523e146d2"), Persistence: &loadbalancer.PoolPersistenceArgs{ CookieName: pulumi.String("testCookie"), Type: pulumi.String("APP_COOKIE"), }, Protocol: pulumi.String("HTTP"), }) if err != nil { return err } return nil }) }
```
## Import
Load Balancer Pool can be imported using the Pool ID, e.g.
```sh
$ pulumi import openstack:loadbalancer/pool:Pool pool_1 60ad9ee4-249a-4d60-a45b-aa60e046c513
```
func GetPool ¶
func GetPool(ctx *pulumi.Context, name string, id pulumi.IDInput, state *PoolState, opts ...pulumi.ResourceOption) (*Pool, error)
GetPool gets an existing Pool resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewPool ¶
func NewPool(ctx *pulumi.Context, name string, args *PoolArgs, opts ...pulumi.ResourceOption) (*Pool, error)
NewPool registers a new resource with the given unique name, arguments, and options.
func (*Pool) ElementType ¶ added in v2.10.0
func (*Pool) ToPoolOutput ¶ added in v2.10.0
func (i *Pool) ToPoolOutput() PoolOutput
func (*Pool) ToPoolOutputWithContext ¶ added in v2.10.0
func (i *Pool) ToPoolOutputWithContext(ctx context.Context) PoolOutput
func (*Pool) ToPoolPtrOutput ¶ added in v2.14.1
func (i *Pool) ToPoolPtrOutput() PoolPtrOutput
func (*Pool) ToPoolPtrOutputWithContext ¶ added in v2.14.1
func (i *Pool) ToPoolPtrOutputWithContext(ctx context.Context) PoolPtrOutput
type PoolArgs ¶
type PoolArgs struct { // The administrative state of the pool. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrInput // Human-readable description for the pool. Description pulumi.StringPtrInput // The load balancing algorithm to // distribute traffic to the pool's members. Must be one of // ROUND_ROBIN, LEAST_CONNECTIONS, SOURCE_IP, or SOURCE_IP_PORT (supported only // in Octavia). LbMethod pulumi.StringInput // The Listener on which the members of the pool // will be associated with. Changing this creates a new pool. // Note: One of LoadbalancerID or ListenerID must be provided. ListenerId pulumi.StringPtrInput // The load balancer on which to provision this // pool. Changing this creates a new pool. // Note: One of LoadbalancerID or ListenerID must be provided. LoadbalancerId pulumi.StringPtrInput // Human-readable name for the pool. Name pulumi.StringPtrInput // Omit this field to prevent session persistence. Indicates // whether connections in the same session will be processed by the same Pool // member or not. Changing this creates a new pool. Persistence PoolPersistencePtrInput // The protocol - can either be TCP, HTTP, HTTPS, PROXY // or UDP (supported only in Octavia). Changing this creates a new pool. Protocol pulumi.StringInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an . If omitted, the // `region` argument of the provider is used. Changing this creates a new // pool. Region pulumi.StringPtrInput // Required for admins. The UUID of the tenant who owns // the pool. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new pool. TenantId pulumi.StringPtrInput }
The set of arguments for constructing a Pool resource.
func (PoolArgs) ElementType ¶
type PoolArray ¶ added in v2.14.1
type PoolArray []PoolInput
func (PoolArray) ElementType ¶ added in v2.14.1
func (PoolArray) ToPoolArrayOutput ¶ added in v2.14.1
func (i PoolArray) ToPoolArrayOutput() PoolArrayOutput
func (PoolArray) ToPoolArrayOutputWithContext ¶ added in v2.14.1
func (i PoolArray) ToPoolArrayOutputWithContext(ctx context.Context) PoolArrayOutput
type PoolArrayInput ¶ added in v2.14.1
type PoolArrayInput interface { pulumi.Input ToPoolArrayOutput() PoolArrayOutput ToPoolArrayOutputWithContext(context.Context) PoolArrayOutput }
PoolArrayInput is an input type that accepts PoolArray and PoolArrayOutput values. You can construct a concrete instance of `PoolArrayInput` via:
PoolArray{ PoolArgs{...} }
type PoolArrayOutput ¶ added in v2.14.1
type PoolArrayOutput struct{ *pulumi.OutputState }
func (PoolArrayOutput) ElementType ¶ added in v2.14.1
func (PoolArrayOutput) ElementType() reflect.Type
func (PoolArrayOutput) Index ¶ added in v2.14.1
func (o PoolArrayOutput) Index(i pulumi.IntInput) PoolOutput
func (PoolArrayOutput) ToPoolArrayOutput ¶ added in v2.14.1
func (o PoolArrayOutput) ToPoolArrayOutput() PoolArrayOutput
func (PoolArrayOutput) ToPoolArrayOutputWithContext ¶ added in v2.14.1
func (o PoolArrayOutput) ToPoolArrayOutputWithContext(ctx context.Context) PoolArrayOutput
type PoolInput ¶ added in v2.10.0
type PoolInput interface { pulumi.Input ToPoolOutput() PoolOutput ToPoolOutputWithContext(ctx context.Context) PoolOutput }
type PoolMap ¶ added in v2.14.1
func (PoolMap) ElementType ¶ added in v2.14.1
func (PoolMap) ToPoolMapOutput ¶ added in v2.14.1
func (i PoolMap) ToPoolMapOutput() PoolMapOutput
func (PoolMap) ToPoolMapOutputWithContext ¶ added in v2.14.1
func (i PoolMap) ToPoolMapOutputWithContext(ctx context.Context) PoolMapOutput
type PoolMapInput ¶ added in v2.14.1
type PoolMapInput interface { pulumi.Input ToPoolMapOutput() PoolMapOutput ToPoolMapOutputWithContext(context.Context) PoolMapOutput }
PoolMapInput is an input type that accepts PoolMap and PoolMapOutput values. You can construct a concrete instance of `PoolMapInput` via:
PoolMap{ "key": PoolArgs{...} }
type PoolMapOutput ¶ added in v2.14.1
type PoolMapOutput struct{ *pulumi.OutputState }
func (PoolMapOutput) ElementType ¶ added in v2.14.1
func (PoolMapOutput) ElementType() reflect.Type
func (PoolMapOutput) MapIndex ¶ added in v2.14.1
func (o PoolMapOutput) MapIndex(k pulumi.StringInput) PoolOutput
func (PoolMapOutput) ToPoolMapOutput ¶ added in v2.14.1
func (o PoolMapOutput) ToPoolMapOutput() PoolMapOutput
func (PoolMapOutput) ToPoolMapOutputWithContext ¶ added in v2.14.1
func (o PoolMapOutput) ToPoolMapOutputWithContext(ctx context.Context) PoolMapOutput
type PoolOutput ¶ added in v2.10.0
type PoolOutput struct {
*pulumi.OutputState
}
func (PoolOutput) ElementType ¶ added in v2.10.0
func (PoolOutput) ElementType() reflect.Type
func (PoolOutput) ToPoolOutput ¶ added in v2.10.0
func (o PoolOutput) ToPoolOutput() PoolOutput
func (PoolOutput) ToPoolOutputWithContext ¶ added in v2.10.0
func (o PoolOutput) ToPoolOutputWithContext(ctx context.Context) PoolOutput
func (PoolOutput) ToPoolPtrOutput ¶ added in v2.14.1
func (o PoolOutput) ToPoolPtrOutput() PoolPtrOutput
func (PoolOutput) ToPoolPtrOutputWithContext ¶ added in v2.14.1
func (o PoolOutput) ToPoolPtrOutputWithContext(ctx context.Context) PoolPtrOutput
type PoolPersistence ¶
type PoolPersistence struct { // The name of the cookie if persistence mode is set // appropriately. Required if `type = APP_COOKIE`. CookieName *string `pulumi:"cookieName"` // The type of persistence mode. The current specification // supports SOURCE_IP, HTTP_COOKIE, and APP_COOKIE. Type string `pulumi:"type"` }
type PoolPersistenceArgs ¶
type PoolPersistenceArgs struct { // The name of the cookie if persistence mode is set // appropriately. Required if `type = APP_COOKIE`. CookieName pulumi.StringPtrInput `pulumi:"cookieName"` // The type of persistence mode. The current specification // supports SOURCE_IP, HTTP_COOKIE, and APP_COOKIE. Type pulumi.StringInput `pulumi:"type"` }
func (PoolPersistenceArgs) ElementType ¶
func (PoolPersistenceArgs) ElementType() reflect.Type
func (PoolPersistenceArgs) ToPoolPersistenceOutput ¶
func (i PoolPersistenceArgs) ToPoolPersistenceOutput() PoolPersistenceOutput
func (PoolPersistenceArgs) ToPoolPersistenceOutputWithContext ¶
func (i PoolPersistenceArgs) ToPoolPersistenceOutputWithContext(ctx context.Context) PoolPersistenceOutput
func (PoolPersistenceArgs) ToPoolPersistencePtrOutput ¶
func (i PoolPersistenceArgs) ToPoolPersistencePtrOutput() PoolPersistencePtrOutput
func (PoolPersistenceArgs) ToPoolPersistencePtrOutputWithContext ¶
func (i PoolPersistenceArgs) ToPoolPersistencePtrOutputWithContext(ctx context.Context) PoolPersistencePtrOutput
type PoolPersistenceInput ¶
type PoolPersistenceInput interface { pulumi.Input ToPoolPersistenceOutput() PoolPersistenceOutput ToPoolPersistenceOutputWithContext(context.Context) PoolPersistenceOutput }
PoolPersistenceInput is an input type that accepts PoolPersistenceArgs and PoolPersistenceOutput values. You can construct a concrete instance of `PoolPersistenceInput` via:
PoolPersistenceArgs{...}
type PoolPersistenceOutput ¶
type PoolPersistenceOutput struct{ *pulumi.OutputState }
func (PoolPersistenceOutput) CookieName ¶
func (o PoolPersistenceOutput) CookieName() pulumi.StringPtrOutput
The name of the cookie if persistence mode is set appropriately. Required if `type = APP_COOKIE`.
func (PoolPersistenceOutput) ElementType ¶
func (PoolPersistenceOutput) ElementType() reflect.Type
func (PoolPersistenceOutput) ToPoolPersistenceOutput ¶
func (o PoolPersistenceOutput) ToPoolPersistenceOutput() PoolPersistenceOutput
func (PoolPersistenceOutput) ToPoolPersistenceOutputWithContext ¶
func (o PoolPersistenceOutput) ToPoolPersistenceOutputWithContext(ctx context.Context) PoolPersistenceOutput
func (PoolPersistenceOutput) ToPoolPersistencePtrOutput ¶
func (o PoolPersistenceOutput) ToPoolPersistencePtrOutput() PoolPersistencePtrOutput
func (PoolPersistenceOutput) ToPoolPersistencePtrOutputWithContext ¶
func (o PoolPersistenceOutput) ToPoolPersistencePtrOutputWithContext(ctx context.Context) PoolPersistencePtrOutput
func (PoolPersistenceOutput) Type ¶
func (o PoolPersistenceOutput) Type() pulumi.StringOutput
The type of persistence mode. The current specification supports SOURCE_IP, HTTP_COOKIE, and APP_COOKIE.
type PoolPersistencePtrInput ¶
type PoolPersistencePtrInput interface { pulumi.Input ToPoolPersistencePtrOutput() PoolPersistencePtrOutput ToPoolPersistencePtrOutputWithContext(context.Context) PoolPersistencePtrOutput }
PoolPersistencePtrInput is an input type that accepts PoolPersistenceArgs, PoolPersistencePtr and PoolPersistencePtrOutput values. You can construct a concrete instance of `PoolPersistencePtrInput` via:
PoolPersistenceArgs{...} or: nil
func PoolPersistencePtr ¶
func PoolPersistencePtr(v *PoolPersistenceArgs) PoolPersistencePtrInput
type PoolPersistencePtrOutput ¶
type PoolPersistencePtrOutput struct{ *pulumi.OutputState }
func (PoolPersistencePtrOutput) CookieName ¶
func (o PoolPersistencePtrOutput) CookieName() pulumi.StringPtrOutput
The name of the cookie if persistence mode is set appropriately. Required if `type = APP_COOKIE`.
func (PoolPersistencePtrOutput) Elem ¶
func (o PoolPersistencePtrOutput) Elem() PoolPersistenceOutput
func (PoolPersistencePtrOutput) ElementType ¶
func (PoolPersistencePtrOutput) ElementType() reflect.Type
func (PoolPersistencePtrOutput) ToPoolPersistencePtrOutput ¶
func (o PoolPersistencePtrOutput) ToPoolPersistencePtrOutput() PoolPersistencePtrOutput
func (PoolPersistencePtrOutput) ToPoolPersistencePtrOutputWithContext ¶
func (o PoolPersistencePtrOutput) ToPoolPersistencePtrOutputWithContext(ctx context.Context) PoolPersistencePtrOutput
func (PoolPersistencePtrOutput) Type ¶
func (o PoolPersistencePtrOutput) Type() pulumi.StringPtrOutput
The type of persistence mode. The current specification supports SOURCE_IP, HTTP_COOKIE, and APP_COOKIE.
type PoolPtrInput ¶ added in v2.14.1
type PoolPtrInput interface { pulumi.Input ToPoolPtrOutput() PoolPtrOutput ToPoolPtrOutputWithContext(ctx context.Context) PoolPtrOutput }
type PoolPtrOutput ¶ added in v2.14.1
type PoolPtrOutput struct {
*pulumi.OutputState
}
func (PoolPtrOutput) ElementType ¶ added in v2.14.1
func (PoolPtrOutput) ElementType() reflect.Type
func (PoolPtrOutput) ToPoolPtrOutput ¶ added in v2.14.1
func (o PoolPtrOutput) ToPoolPtrOutput() PoolPtrOutput
func (PoolPtrOutput) ToPoolPtrOutputWithContext ¶ added in v2.14.1
func (o PoolPtrOutput) ToPoolPtrOutputWithContext(ctx context.Context) PoolPtrOutput
type PoolState ¶
type PoolState struct { // The administrative state of the pool. // A valid value is true (UP) or false (DOWN). AdminStateUp pulumi.BoolPtrInput // Human-readable description for the pool. Description pulumi.StringPtrInput // The load balancing algorithm to // distribute traffic to the pool's members. Must be one of // ROUND_ROBIN, LEAST_CONNECTIONS, SOURCE_IP, or SOURCE_IP_PORT (supported only // in Octavia). LbMethod pulumi.StringPtrInput // The Listener on which the members of the pool // will be associated with. Changing this creates a new pool. // Note: One of LoadbalancerID or ListenerID must be provided. ListenerId pulumi.StringPtrInput // The load balancer on which to provision this // pool. Changing this creates a new pool. // Note: One of LoadbalancerID or ListenerID must be provided. LoadbalancerId pulumi.StringPtrInput // Human-readable name for the pool. Name pulumi.StringPtrInput // Omit this field to prevent session persistence. Indicates // whether connections in the same session will be processed by the same Pool // member or not. Changing this creates a new pool. Persistence PoolPersistencePtrInput // The protocol - can either be TCP, HTTP, HTTPS, PROXY // or UDP (supported only in Octavia). Changing this creates a new pool. Protocol pulumi.StringPtrInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an . If omitted, the // `region` argument of the provider is used. Changing this creates a new // pool. Region pulumi.StringPtrInput // Required for admins. The UUID of the tenant who owns // the pool. Only administrative users can specify a tenant UUID // other than their own. Changing this creates a new pool. TenantId pulumi.StringPtrInput }
func (PoolState) ElementType ¶
type PoolV1 ¶
type PoolV1 struct { pulumi.CustomResourceState // The algorithm used to distribute load between the // members of the pool. The current specification supports 'ROUND_ROBIN' and // 'LEAST_CONNECTIONS' as valid values for this attribute. LbMethod pulumi.StringOutput `pulumi:"lbMethod"` // The backend load balancing provider. For example: // `haproxy`, `F5`, etc. LbProvider pulumi.StringOutput `pulumi:"lbProvider"` // A list of IDs of monitors to associate with the // pool. MonitorIds pulumi.StringArrayOutput `pulumi:"monitorIds"` // The name of the pool. Changing this updates the name of // the existing pool. Name pulumi.StringOutput `pulumi:"name"` // The protocol used by the pool members, you can use // either 'TCP, 'HTTP', or 'HTTPS'. Changing this creates a new pool. Protocol pulumi.StringOutput `pulumi:"protocol"` // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an LB pool. If omitted, the // `region` argument of the provider is used. Changing this creates a new // LB pool. Region pulumi.StringOutput `pulumi:"region"` // The network on which the members of the pool will be // located. Only members that are on this network can be added to the pool. // Changing this creates a new pool. SubnetId pulumi.StringOutput `pulumi:"subnetId"` // The owner of the member. Required if admin wants to // create a pool member for another tenant. Changing this creates a new member. TenantId pulumi.StringOutput `pulumi:"tenantId"` }
Manages a V1 load balancer pool resource within OpenStack.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/loadbalancer" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := loadbalancer.NewPoolV1(ctx, "pool1", &loadbalancer.PoolV1Args{ LbMethod: pulumi.String("ROUND_ROBIN"), LbProvider: pulumi.String("haproxy"), MonitorIds: pulumi.StringArray{ pulumi.String("67890"), }, Protocol: pulumi.String("HTTP"), SubnetId: pulumi.String("12345"), }) if err != nil { return err } return nil }) }
``` ## Complete Load Balancing Stack Example
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/compute" "github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/loadbalancer" "github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/networking" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { network1, err := networking.NewNetwork(ctx, "network1", &networking.NetworkArgs{ AdminStateUp: pulumi.Bool(true), }) if err != nil { return err } subnet1, err := networking.NewSubnet(ctx, "subnet1", &networking.SubnetArgs{ Cidr: pulumi.String("192.168.199.0/24"), IpVersion: pulumi.Int(4), NetworkId: network1.ID(), }) if err != nil { return err } secgroup1, err := compute.NewSecGroup(ctx, "secgroup1", &compute.SecGroupArgs{ Description: pulumi.String("Rules for secgroup_1"), Rules: compute.SecGroupRuleArray{ &compute.SecGroupRuleArgs{ Cidr: pulumi.String("0.0.0.0/0"), FromPort: pulumi.Int(-1), IpProtocol: pulumi.String("icmp"), ToPort: pulumi.Int(-1), }, &compute.SecGroupRuleArgs{ Cidr: pulumi.String("0.0.0.0/0"), FromPort: pulumi.Int(80), IpProtocol: pulumi.String("tcp"), ToPort: pulumi.Int(80), }, }, }) if err != nil { return err } instance1, err := compute.NewInstance(ctx, "instance1", &compute.InstanceArgs{ Networks: compute.InstanceNetworkArray{ &compute.InstanceNetworkArgs{ Uuid: network1.ID(), }, }, SecurityGroups: pulumi.Array{ pulumi.String("default"), secgroup1.Name, }, }) if err != nil { return err } instance2, err := compute.NewInstance(ctx, "instance2", &compute.InstanceArgs{ Networks: compute.InstanceNetworkArray{ &compute.InstanceNetworkArgs{ Uuid: network1.ID(), }, }, SecurityGroups: pulumi.Array{ pulumi.String("default"), secgroup1.Name, }, }) if err != nil { return err } monitor1, err := loadbalancer.NewMonitorV1(ctx, "monitor1", &loadbalancer.MonitorV1Args{ AdminStateUp: pulumi.String("true"), Delay: pulumi.Int(30), MaxRetries: pulumi.Int(3), Timeout: pulumi.Int(5), Type: pulumi.String("TCP"), }) if err != nil { return err } pool1, err := loadbalancer.NewPoolV1(ctx, "pool1", &loadbalancer.PoolV1Args{ LbMethod: pulumi.String("ROUND_ROBIN"), MonitorIds: pulumi.StringArray{ monitor1.ID(), }, Protocol: pulumi.String("TCP"), SubnetId: subnet1.ID(), }) if err != nil { return err } _, err = loadbalancer.NewMemberV1(ctx, "member1", &loadbalancer.MemberV1Args{ Address: instance1.AccessIpV4, PoolId: pool1.ID(), Port: pulumi.Int(80), }) if err != nil { return err } _, err = loadbalancer.NewMemberV1(ctx, "member2", &loadbalancer.MemberV1Args{ Address: instance2.AccessIpV4, PoolId: pool1.ID(), Port: pulumi.Int(80), }) if err != nil { return err } _, err = loadbalancer.NewVip(ctx, "vip1", &loadbalancer.VipArgs{ PoolId: pool1.ID(), Port: pulumi.Int(80), Protocol: pulumi.String("TCP"), SubnetId: subnet1.ID(), }) if err != nil { return err } return nil }) }
```
## Notes
The `member` block is deprecated in favor of the `loadbalancer.MemberV1` resource.
## Import
Load Balancer Pools can be imported using the `id`, e.g.
```sh
$ pulumi import openstack:loadbalancer/poolV1:PoolV1 pool_1 b255e6ba-02ad-43e6-8951-3428ca26b713
```
func GetPoolV1 ¶
func GetPoolV1(ctx *pulumi.Context, name string, id pulumi.IDInput, state *PoolV1State, opts ...pulumi.ResourceOption) (*PoolV1, error)
GetPoolV1 gets an existing PoolV1 resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewPoolV1 ¶
func NewPoolV1(ctx *pulumi.Context, name string, args *PoolV1Args, opts ...pulumi.ResourceOption) (*PoolV1, error)
NewPoolV1 registers a new resource with the given unique name, arguments, and options.
func (*PoolV1) ElementType ¶ added in v2.10.0
func (*PoolV1) ToPoolV1Output ¶ added in v2.10.0
func (i *PoolV1) ToPoolV1Output() PoolV1Output
func (*PoolV1) ToPoolV1OutputWithContext ¶ added in v2.10.0
func (i *PoolV1) ToPoolV1OutputWithContext(ctx context.Context) PoolV1Output
func (*PoolV1) ToPoolV1PtrOutput ¶ added in v2.14.1
func (i *PoolV1) ToPoolV1PtrOutput() PoolV1PtrOutput
func (*PoolV1) ToPoolV1PtrOutputWithContext ¶ added in v2.14.1
func (i *PoolV1) ToPoolV1PtrOutputWithContext(ctx context.Context) PoolV1PtrOutput
type PoolV1Args ¶
type PoolV1Args struct { // The algorithm used to distribute load between the // members of the pool. The current specification supports 'ROUND_ROBIN' and // 'LEAST_CONNECTIONS' as valid values for this attribute. LbMethod pulumi.StringInput // The backend load balancing provider. For example: // `haproxy`, `F5`, etc. LbProvider pulumi.StringPtrInput // A list of IDs of monitors to associate with the // pool. MonitorIds pulumi.StringArrayInput // The name of the pool. Changing this updates the name of // the existing pool. Name pulumi.StringPtrInput // The protocol used by the pool members, you can use // either 'TCP, 'HTTP', or 'HTTPS'. Changing this creates a new pool. Protocol pulumi.StringInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an LB pool. If omitted, the // `region` argument of the provider is used. Changing this creates a new // LB pool. Region pulumi.StringPtrInput // The network on which the members of the pool will be // located. Only members that are on this network can be added to the pool. // Changing this creates a new pool. SubnetId pulumi.StringInput // The owner of the member. Required if admin wants to // create a pool member for another tenant. Changing this creates a new member. TenantId pulumi.StringPtrInput }
The set of arguments for constructing a PoolV1 resource.
func (PoolV1Args) ElementType ¶
func (PoolV1Args) ElementType() reflect.Type
type PoolV1Array ¶ added in v2.14.1
type PoolV1Array []PoolV1Input
func (PoolV1Array) ElementType ¶ added in v2.14.1
func (PoolV1Array) ElementType() reflect.Type
func (PoolV1Array) ToPoolV1ArrayOutput ¶ added in v2.14.1
func (i PoolV1Array) ToPoolV1ArrayOutput() PoolV1ArrayOutput
func (PoolV1Array) ToPoolV1ArrayOutputWithContext ¶ added in v2.14.1
func (i PoolV1Array) ToPoolV1ArrayOutputWithContext(ctx context.Context) PoolV1ArrayOutput
type PoolV1ArrayInput ¶ added in v2.14.1
type PoolV1ArrayInput interface { pulumi.Input ToPoolV1ArrayOutput() PoolV1ArrayOutput ToPoolV1ArrayOutputWithContext(context.Context) PoolV1ArrayOutput }
PoolV1ArrayInput is an input type that accepts PoolV1Array and PoolV1ArrayOutput values. You can construct a concrete instance of `PoolV1ArrayInput` via:
PoolV1Array{ PoolV1Args{...} }
type PoolV1ArrayOutput ¶ added in v2.14.1
type PoolV1ArrayOutput struct{ *pulumi.OutputState }
func (PoolV1ArrayOutput) ElementType ¶ added in v2.14.1
func (PoolV1ArrayOutput) ElementType() reflect.Type
func (PoolV1ArrayOutput) Index ¶ added in v2.14.1
func (o PoolV1ArrayOutput) Index(i pulumi.IntInput) PoolV1Output
func (PoolV1ArrayOutput) ToPoolV1ArrayOutput ¶ added in v2.14.1
func (o PoolV1ArrayOutput) ToPoolV1ArrayOutput() PoolV1ArrayOutput
func (PoolV1ArrayOutput) ToPoolV1ArrayOutputWithContext ¶ added in v2.14.1
func (o PoolV1ArrayOutput) ToPoolV1ArrayOutputWithContext(ctx context.Context) PoolV1ArrayOutput
type PoolV1Input ¶ added in v2.10.0
type PoolV1Input interface { pulumi.Input ToPoolV1Output() PoolV1Output ToPoolV1OutputWithContext(ctx context.Context) PoolV1Output }
type PoolV1Map ¶ added in v2.14.1
type PoolV1Map map[string]PoolV1Input
func (PoolV1Map) ElementType ¶ added in v2.14.1
func (PoolV1Map) ToPoolV1MapOutput ¶ added in v2.14.1
func (i PoolV1Map) ToPoolV1MapOutput() PoolV1MapOutput
func (PoolV1Map) ToPoolV1MapOutputWithContext ¶ added in v2.14.1
func (i PoolV1Map) ToPoolV1MapOutputWithContext(ctx context.Context) PoolV1MapOutput
type PoolV1MapInput ¶ added in v2.14.1
type PoolV1MapInput interface { pulumi.Input ToPoolV1MapOutput() PoolV1MapOutput ToPoolV1MapOutputWithContext(context.Context) PoolV1MapOutput }
PoolV1MapInput is an input type that accepts PoolV1Map and PoolV1MapOutput values. You can construct a concrete instance of `PoolV1MapInput` via:
PoolV1Map{ "key": PoolV1Args{...} }
type PoolV1MapOutput ¶ added in v2.14.1
type PoolV1MapOutput struct{ *pulumi.OutputState }
func (PoolV1MapOutput) ElementType ¶ added in v2.14.1
func (PoolV1MapOutput) ElementType() reflect.Type
func (PoolV1MapOutput) MapIndex ¶ added in v2.14.1
func (o PoolV1MapOutput) MapIndex(k pulumi.StringInput) PoolV1Output
func (PoolV1MapOutput) ToPoolV1MapOutput ¶ added in v2.14.1
func (o PoolV1MapOutput) ToPoolV1MapOutput() PoolV1MapOutput
func (PoolV1MapOutput) ToPoolV1MapOutputWithContext ¶ added in v2.14.1
func (o PoolV1MapOutput) ToPoolV1MapOutputWithContext(ctx context.Context) PoolV1MapOutput
type PoolV1Output ¶ added in v2.10.0
type PoolV1Output struct {
*pulumi.OutputState
}
func (PoolV1Output) ElementType ¶ added in v2.10.0
func (PoolV1Output) ElementType() reflect.Type
func (PoolV1Output) ToPoolV1Output ¶ added in v2.10.0
func (o PoolV1Output) ToPoolV1Output() PoolV1Output
func (PoolV1Output) ToPoolV1OutputWithContext ¶ added in v2.10.0
func (o PoolV1Output) ToPoolV1OutputWithContext(ctx context.Context) PoolV1Output
func (PoolV1Output) ToPoolV1PtrOutput ¶ added in v2.14.1
func (o PoolV1Output) ToPoolV1PtrOutput() PoolV1PtrOutput
func (PoolV1Output) ToPoolV1PtrOutputWithContext ¶ added in v2.14.1
func (o PoolV1Output) ToPoolV1PtrOutputWithContext(ctx context.Context) PoolV1PtrOutput
type PoolV1PtrInput ¶ added in v2.14.1
type PoolV1PtrInput interface { pulumi.Input ToPoolV1PtrOutput() PoolV1PtrOutput ToPoolV1PtrOutputWithContext(ctx context.Context) PoolV1PtrOutput }
type PoolV1PtrOutput ¶ added in v2.14.1
type PoolV1PtrOutput struct {
*pulumi.OutputState
}
func (PoolV1PtrOutput) ElementType ¶ added in v2.14.1
func (PoolV1PtrOutput) ElementType() reflect.Type
func (PoolV1PtrOutput) ToPoolV1PtrOutput ¶ added in v2.14.1
func (o PoolV1PtrOutput) ToPoolV1PtrOutput() PoolV1PtrOutput
func (PoolV1PtrOutput) ToPoolV1PtrOutputWithContext ¶ added in v2.14.1
func (o PoolV1PtrOutput) ToPoolV1PtrOutputWithContext(ctx context.Context) PoolV1PtrOutput
type PoolV1State ¶
type PoolV1State struct { // The algorithm used to distribute load between the // members of the pool. The current specification supports 'ROUND_ROBIN' and // 'LEAST_CONNECTIONS' as valid values for this attribute. LbMethod pulumi.StringPtrInput // The backend load balancing provider. For example: // `haproxy`, `F5`, etc. LbProvider pulumi.StringPtrInput // A list of IDs of monitors to associate with the // pool. MonitorIds pulumi.StringArrayInput // The name of the pool. Changing this updates the name of // the existing pool. Name pulumi.StringPtrInput // The protocol used by the pool members, you can use // either 'TCP, 'HTTP', or 'HTTPS'. Changing this creates a new pool. Protocol pulumi.StringPtrInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create an LB pool. If omitted, the // `region` argument of the provider is used. Changing this creates a new // LB pool. Region pulumi.StringPtrInput // The network on which the members of the pool will be // located. Only members that are on this network can be added to the pool. // Changing this creates a new pool. SubnetId pulumi.StringPtrInput // The owner of the member. Required if admin wants to // create a pool member for another tenant. Changing this creates a new member. TenantId pulumi.StringPtrInput }
func (PoolV1State) ElementType ¶
func (PoolV1State) ElementType() reflect.Type
type Quota ¶ added in v2.15.0
type Quota struct { pulumi.CustomResourceState // Quota value for health_monitors. Changing // this updates the existing quota. Omitting it sets it to 0. HealthMonitor pulumi.IntOutput `pulumi:"healthMonitor"` // Quota value for l7_policies. Changing this // updates the existing quota. Omitting it sets it to 0. Available in // Octavia 2.19. L7Policy pulumi.IntOutput `pulumi:"l7Policy"` // Quota value for l7_rules. Changing this // updates the existing quota. Omitting it sets it to 0. Available in // Octavia 2.19. L7Rule pulumi.IntOutput `pulumi:"l7Rule"` // Quota value for listeners. Changing this updates // the existing quota. Omitting it sets it to 0. Listener pulumi.IntOutput `pulumi:"listener"` // Quota value for loadbalancers. Changing this // updates the existing quota. Omitting it sets it to 0. Loadbalancer pulumi.IntOutput `pulumi:"loadbalancer"` // Quota value for members. Changing this updates // the existing quota. Omitting it sets it to 0. Member pulumi.IntOutput `pulumi:"member"` // Quota value for pools. Changing this updates the // the existing quota. Omitting it sets it to 0. Pool pulumi.IntOutput `pulumi:"pool"` // ID of the project to manage quotas. Changing this // creates a new quota. ProjectId pulumi.StringOutput `pulumi:"projectId"` // Region in which to manage quotas. Changing this // creates a new quota. If ommited, the region of the credentials is used. Region pulumi.StringOutput `pulumi:"region"` }
Manages a V2 load balancer quota resource within OpenStack.
> **Note:** This usually requires admin privileges.
> **Note:** This resource is only available for Octavia.
> **Note:** This resource has a no-op deletion so no actual actions will be done against the OpenStack
API in case of delete call.
> **Note:** This resource has all-in creation so all optional quota arguments that were not specified are
created with zero value.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/identity" "github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/loadbalancer" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { project1, err := identity.NewProject(ctx, "project1", nil) if err != nil { return err } _, err = loadbalancer.NewQuota(ctx, "quota1", &loadbalancer.QuotaArgs{ HealthMonitor: pulumi.Int(10), L7Policy: pulumi.Int(11), L7Rule: pulumi.Int(12), Listener: pulumi.Int(7), Loadbalancer: pulumi.Int(6), Member: pulumi.Int(8), Pool: pulumi.Int(9), ProjectId: project1.ID(), }) if err != nil { return err } return nil }) }
```
## Import
Quotas can be imported using the `project_id/region_name`, where region_name is the one defined is the Openstack credentials that are in use. E.g.
```sh
$ pulumi import openstack:loadbalancer/quota:Quota quota_1 2a0f2240-c5e6-41de-896d-e80d97428d6b/region_1
```
func GetQuota ¶ added in v2.15.0
func GetQuota(ctx *pulumi.Context, name string, id pulumi.IDInput, state *QuotaState, opts ...pulumi.ResourceOption) (*Quota, error)
GetQuota gets an existing Quota resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewQuota ¶ added in v2.15.0
func NewQuota(ctx *pulumi.Context, name string, args *QuotaArgs, opts ...pulumi.ResourceOption) (*Quota, error)
NewQuota registers a new resource with the given unique name, arguments, and options.
func (*Quota) ElementType ¶ added in v2.15.0
func (*Quota) ToQuotaOutput ¶ added in v2.15.0
func (i *Quota) ToQuotaOutput() QuotaOutput
func (*Quota) ToQuotaOutputWithContext ¶ added in v2.15.0
func (i *Quota) ToQuotaOutputWithContext(ctx context.Context) QuotaOutput
func (*Quota) ToQuotaPtrOutput ¶ added in v2.15.0
func (i *Quota) ToQuotaPtrOutput() QuotaPtrOutput
func (*Quota) ToQuotaPtrOutputWithContext ¶ added in v2.15.0
func (i *Quota) ToQuotaPtrOutputWithContext(ctx context.Context) QuotaPtrOutput
type QuotaArgs ¶ added in v2.15.0
type QuotaArgs struct { // Quota value for health_monitors. Changing // this updates the existing quota. Omitting it sets it to 0. HealthMonitor pulumi.IntPtrInput // Quota value for l7_policies. Changing this // updates the existing quota. Omitting it sets it to 0. Available in // Octavia 2.19. L7Policy pulumi.IntPtrInput // Quota value for l7_rules. Changing this // updates the existing quota. Omitting it sets it to 0. Available in // Octavia 2.19. L7Rule pulumi.IntPtrInput // Quota value for listeners. Changing this updates // the existing quota. Omitting it sets it to 0. Listener pulumi.IntPtrInput // Quota value for loadbalancers. Changing this // updates the existing quota. Omitting it sets it to 0. Loadbalancer pulumi.IntPtrInput // Quota value for members. Changing this updates // the existing quota. Omitting it sets it to 0. Member pulumi.IntPtrInput // Quota value for pools. Changing this updates the // the existing quota. Omitting it sets it to 0. Pool pulumi.IntPtrInput // ID of the project to manage quotas. Changing this // creates a new quota. ProjectId pulumi.StringInput // Region in which to manage quotas. Changing this // creates a new quota. If ommited, the region of the credentials is used. Region pulumi.StringPtrInput }
The set of arguments for constructing a Quota resource.
func (QuotaArgs) ElementType ¶ added in v2.15.0
type QuotaArray ¶ added in v2.15.0
type QuotaArray []QuotaInput
func (QuotaArray) ElementType ¶ added in v2.15.0
func (QuotaArray) ElementType() reflect.Type
func (QuotaArray) ToQuotaArrayOutput ¶ added in v2.15.0
func (i QuotaArray) ToQuotaArrayOutput() QuotaArrayOutput
func (QuotaArray) ToQuotaArrayOutputWithContext ¶ added in v2.15.0
func (i QuotaArray) ToQuotaArrayOutputWithContext(ctx context.Context) QuotaArrayOutput
type QuotaArrayInput ¶ added in v2.15.0
type QuotaArrayInput interface { pulumi.Input ToQuotaArrayOutput() QuotaArrayOutput ToQuotaArrayOutputWithContext(context.Context) QuotaArrayOutput }
QuotaArrayInput is an input type that accepts QuotaArray and QuotaArrayOutput values. You can construct a concrete instance of `QuotaArrayInput` via:
QuotaArray{ QuotaArgs{...} }
type QuotaArrayOutput ¶ added in v2.15.0
type QuotaArrayOutput struct{ *pulumi.OutputState }
func (QuotaArrayOutput) ElementType ¶ added in v2.15.0
func (QuotaArrayOutput) ElementType() reflect.Type
func (QuotaArrayOutput) Index ¶ added in v2.15.0
func (o QuotaArrayOutput) Index(i pulumi.IntInput) QuotaOutput
func (QuotaArrayOutput) ToQuotaArrayOutput ¶ added in v2.15.0
func (o QuotaArrayOutput) ToQuotaArrayOutput() QuotaArrayOutput
func (QuotaArrayOutput) ToQuotaArrayOutputWithContext ¶ added in v2.15.0
func (o QuotaArrayOutput) ToQuotaArrayOutputWithContext(ctx context.Context) QuotaArrayOutput
type QuotaInput ¶ added in v2.15.0
type QuotaInput interface { pulumi.Input ToQuotaOutput() QuotaOutput ToQuotaOutputWithContext(ctx context.Context) QuotaOutput }
type QuotaMap ¶ added in v2.15.0
type QuotaMap map[string]QuotaInput
func (QuotaMap) ElementType ¶ added in v2.15.0
func (QuotaMap) ToQuotaMapOutput ¶ added in v2.15.0
func (i QuotaMap) ToQuotaMapOutput() QuotaMapOutput
func (QuotaMap) ToQuotaMapOutputWithContext ¶ added in v2.15.0
func (i QuotaMap) ToQuotaMapOutputWithContext(ctx context.Context) QuotaMapOutput
type QuotaMapInput ¶ added in v2.15.0
type QuotaMapInput interface { pulumi.Input ToQuotaMapOutput() QuotaMapOutput ToQuotaMapOutputWithContext(context.Context) QuotaMapOutput }
QuotaMapInput is an input type that accepts QuotaMap and QuotaMapOutput values. You can construct a concrete instance of `QuotaMapInput` via:
QuotaMap{ "key": QuotaArgs{...} }
type QuotaMapOutput ¶ added in v2.15.0
type QuotaMapOutput struct{ *pulumi.OutputState }
func (QuotaMapOutput) ElementType ¶ added in v2.15.0
func (QuotaMapOutput) ElementType() reflect.Type
func (QuotaMapOutput) MapIndex ¶ added in v2.15.0
func (o QuotaMapOutput) MapIndex(k pulumi.StringInput) QuotaOutput
func (QuotaMapOutput) ToQuotaMapOutput ¶ added in v2.15.0
func (o QuotaMapOutput) ToQuotaMapOutput() QuotaMapOutput
func (QuotaMapOutput) ToQuotaMapOutputWithContext ¶ added in v2.15.0
func (o QuotaMapOutput) ToQuotaMapOutputWithContext(ctx context.Context) QuotaMapOutput
type QuotaOutput ¶ added in v2.15.0
type QuotaOutput struct {
*pulumi.OutputState
}
func (QuotaOutput) ElementType ¶ added in v2.15.0
func (QuotaOutput) ElementType() reflect.Type
func (QuotaOutput) ToQuotaOutput ¶ added in v2.15.0
func (o QuotaOutput) ToQuotaOutput() QuotaOutput
func (QuotaOutput) ToQuotaOutputWithContext ¶ added in v2.15.0
func (o QuotaOutput) ToQuotaOutputWithContext(ctx context.Context) QuotaOutput
func (QuotaOutput) ToQuotaPtrOutput ¶ added in v2.15.0
func (o QuotaOutput) ToQuotaPtrOutput() QuotaPtrOutput
func (QuotaOutput) ToQuotaPtrOutputWithContext ¶ added in v2.15.0
func (o QuotaOutput) ToQuotaPtrOutputWithContext(ctx context.Context) QuotaPtrOutput
type QuotaPtrInput ¶ added in v2.15.0
type QuotaPtrInput interface { pulumi.Input ToQuotaPtrOutput() QuotaPtrOutput ToQuotaPtrOutputWithContext(ctx context.Context) QuotaPtrOutput }
type QuotaPtrOutput ¶ added in v2.15.0
type QuotaPtrOutput struct {
*pulumi.OutputState
}
func (QuotaPtrOutput) ElementType ¶ added in v2.15.0
func (QuotaPtrOutput) ElementType() reflect.Type
func (QuotaPtrOutput) ToQuotaPtrOutput ¶ added in v2.15.0
func (o QuotaPtrOutput) ToQuotaPtrOutput() QuotaPtrOutput
func (QuotaPtrOutput) ToQuotaPtrOutputWithContext ¶ added in v2.15.0
func (o QuotaPtrOutput) ToQuotaPtrOutputWithContext(ctx context.Context) QuotaPtrOutput
type QuotaState ¶ added in v2.15.0
type QuotaState struct { // Quota value for health_monitors. Changing // this updates the existing quota. Omitting it sets it to 0. HealthMonitor pulumi.IntPtrInput // Quota value for l7_policies. Changing this // updates the existing quota. Omitting it sets it to 0. Available in // Octavia 2.19. L7Policy pulumi.IntPtrInput // Quota value for l7_rules. Changing this // updates the existing quota. Omitting it sets it to 0. Available in // Octavia 2.19. L7Rule pulumi.IntPtrInput // Quota value for listeners. Changing this updates // the existing quota. Omitting it sets it to 0. Listener pulumi.IntPtrInput // Quota value for loadbalancers. Changing this // updates the existing quota. Omitting it sets it to 0. Loadbalancer pulumi.IntPtrInput // Quota value for members. Changing this updates // the existing quota. Omitting it sets it to 0. Member pulumi.IntPtrInput // Quota value for pools. Changing this updates the // the existing quota. Omitting it sets it to 0. Pool pulumi.IntPtrInput // ID of the project to manage quotas. Changing this // creates a new quota. ProjectId pulumi.StringPtrInput // Region in which to manage quotas. Changing this // creates a new quota. If ommited, the region of the credentials is used. Region pulumi.StringPtrInput }
func (QuotaState) ElementType ¶ added in v2.15.0
func (QuotaState) ElementType() reflect.Type
type Vip ¶
type Vip struct { pulumi.CustomResourceState // The IP address of the vip. Changing this creates a new // vip. Address pulumi.StringOutput `pulumi:"address"` // The administrative state of the vip. // Acceptable values are "true" and "false". Changing this value updates the // state of the existing vip. AdminStateUp pulumi.BoolOutput `pulumi:"adminStateUp"` // The maximum number of connections allowed for the // vip. Default is -1, meaning no limit. Changing this updates the connLimit // of the existing vip. ConnLimit pulumi.IntOutput `pulumi:"connLimit"` // Human-readable description for the vip. Changing // this updates the description of the existing vip. Description pulumi.StringOutput `pulumi:"description"` // A *Networking* Floating IP that will be associated // with the vip. The Floating IP must be provisioned already. FloatingIp pulumi.StringPtrOutput `pulumi:"floatingIp"` // The name of the vip. Changing this updates the name of // the existing vip. Name pulumi.StringOutput `pulumi:"name"` // Omit this field to prevent session persistence. // The persistence object structure is documented below. Changing this updates // the persistence of the existing vip. Persistence pulumi.MapOutput `pulumi:"persistence"` // The ID of the pool with which the vip is associated. // Changing this updates the poolId of the existing vip. PoolId pulumi.StringOutput `pulumi:"poolId"` // The port on which to listen for client traffic. Changing // this creates a new vip. Port pulumi.IntOutput `pulumi:"port"` // Port UUID for this VIP at associated floating IP (if any). PortId pulumi.StringOutput `pulumi:"portId"` // The protocol - can be either 'TCP, 'HTTP', or // HTTPS'. Changing this creates a new vip. Protocol pulumi.StringOutput `pulumi:"protocol"` // The region in which to obtain the V2 Networking client. // A Networking client is needed to create a VIP. If omitted, the // `region` argument of the provider is used. Changing this creates a new // VIP. Region pulumi.StringOutput `pulumi:"region"` // The network on which to allocate the vip's address. A // tenant can only create vips on networks authorized by policy (e.g. networks // that belong to them or networks that are shared). Changing this creates a // new vip. SubnetId pulumi.StringOutput `pulumi:"subnetId"` // The owner of the vip. Required if admin wants to // create a vip member for another tenant. Changing this creates a new vip. TenantId pulumi.StringOutput `pulumi:"tenantId"` }
Manages a V1 load balancer vip resource within OpenStack.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v2/go/openstack/loadbalancer" "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := loadbalancer.NewVip(ctx, "vip1", &loadbalancer.VipArgs{ PoolId: pulumi.String("67890"), Port: pulumi.Int(80), Protocol: pulumi.String("HTTP"), SubnetId: pulumi.String("12345"), }) if err != nil { return err } return nil }) }
```
## Import
Load Balancer VIPs can be imported using the `id`, e.g.
```sh
$ pulumi import openstack:loadbalancer/vip:Vip vip_1 50e16b26-89c1-475e-a492-76167182511e
```
func GetVip ¶
func GetVip(ctx *pulumi.Context, name string, id pulumi.IDInput, state *VipState, opts ...pulumi.ResourceOption) (*Vip, error)
GetVip gets an existing Vip resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewVip ¶
func NewVip(ctx *pulumi.Context, name string, args *VipArgs, opts ...pulumi.ResourceOption) (*Vip, error)
NewVip registers a new resource with the given unique name, arguments, and options.
func (*Vip) ElementType ¶ added in v2.10.0
func (*Vip) ToVipOutput ¶ added in v2.10.0
func (*Vip) ToVipOutputWithContext ¶ added in v2.10.0
func (*Vip) ToVipPtrOutput ¶ added in v2.14.1
func (i *Vip) ToVipPtrOutput() VipPtrOutput
func (*Vip) ToVipPtrOutputWithContext ¶ added in v2.14.1
func (i *Vip) ToVipPtrOutputWithContext(ctx context.Context) VipPtrOutput
type VipArgs ¶
type VipArgs struct { // The IP address of the vip. Changing this creates a new // vip. Address pulumi.StringPtrInput // The administrative state of the vip. // Acceptable values are "true" and "false". Changing this value updates the // state of the existing vip. AdminStateUp pulumi.BoolPtrInput // The maximum number of connections allowed for the // vip. Default is -1, meaning no limit. Changing this updates the connLimit // of the existing vip. ConnLimit pulumi.IntPtrInput // Human-readable description for the vip. Changing // this updates the description of the existing vip. Description pulumi.StringPtrInput // A *Networking* Floating IP that will be associated // with the vip. The Floating IP must be provisioned already. FloatingIp pulumi.StringPtrInput // The name of the vip. Changing this updates the name of // the existing vip. Name pulumi.StringPtrInput // Omit this field to prevent session persistence. // The persistence object structure is documented below. Changing this updates // the persistence of the existing vip. Persistence pulumi.MapInput // The ID of the pool with which the vip is associated. // Changing this updates the poolId of the existing vip. PoolId pulumi.StringInput // The port on which to listen for client traffic. Changing // this creates a new vip. Port pulumi.IntInput // The protocol - can be either 'TCP, 'HTTP', or // HTTPS'. Changing this creates a new vip. Protocol pulumi.StringInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create a VIP. If omitted, the // `region` argument of the provider is used. Changing this creates a new // VIP. Region pulumi.StringPtrInput // The network on which to allocate the vip's address. A // tenant can only create vips on networks authorized by policy (e.g. networks // that belong to them or networks that are shared). Changing this creates a // new vip. SubnetId pulumi.StringInput // The owner of the vip. Required if admin wants to // create a vip member for another tenant. Changing this creates a new vip. TenantId pulumi.StringPtrInput }
The set of arguments for constructing a Vip resource.
func (VipArgs) ElementType ¶
type VipArray ¶ added in v2.14.1
type VipArray []VipInput
func (VipArray) ElementType ¶ added in v2.14.1
func (VipArray) ToVipArrayOutput ¶ added in v2.14.1
func (i VipArray) ToVipArrayOutput() VipArrayOutput
func (VipArray) ToVipArrayOutputWithContext ¶ added in v2.14.1
func (i VipArray) ToVipArrayOutputWithContext(ctx context.Context) VipArrayOutput
type VipArrayInput ¶ added in v2.14.1
type VipArrayInput interface { pulumi.Input ToVipArrayOutput() VipArrayOutput ToVipArrayOutputWithContext(context.Context) VipArrayOutput }
VipArrayInput is an input type that accepts VipArray and VipArrayOutput values. You can construct a concrete instance of `VipArrayInput` via:
VipArray{ VipArgs{...} }
type VipArrayOutput ¶ added in v2.14.1
type VipArrayOutput struct{ *pulumi.OutputState }
func (VipArrayOutput) ElementType ¶ added in v2.14.1
func (VipArrayOutput) ElementType() reflect.Type
func (VipArrayOutput) Index ¶ added in v2.14.1
func (o VipArrayOutput) Index(i pulumi.IntInput) VipOutput
func (VipArrayOutput) ToVipArrayOutput ¶ added in v2.14.1
func (o VipArrayOutput) ToVipArrayOutput() VipArrayOutput
func (VipArrayOutput) ToVipArrayOutputWithContext ¶ added in v2.14.1
func (o VipArrayOutput) ToVipArrayOutputWithContext(ctx context.Context) VipArrayOutput
type VipMap ¶ added in v2.14.1
func (VipMap) ElementType ¶ added in v2.14.1
func (VipMap) ToVipMapOutput ¶ added in v2.14.1
func (i VipMap) ToVipMapOutput() VipMapOutput
func (VipMap) ToVipMapOutputWithContext ¶ added in v2.14.1
func (i VipMap) ToVipMapOutputWithContext(ctx context.Context) VipMapOutput
type VipMapInput ¶ added in v2.14.1
type VipMapInput interface { pulumi.Input ToVipMapOutput() VipMapOutput ToVipMapOutputWithContext(context.Context) VipMapOutput }
VipMapInput is an input type that accepts VipMap and VipMapOutput values. You can construct a concrete instance of `VipMapInput` via:
VipMap{ "key": VipArgs{...} }
type VipMapOutput ¶ added in v2.14.1
type VipMapOutput struct{ *pulumi.OutputState }
func (VipMapOutput) ElementType ¶ added in v2.14.1
func (VipMapOutput) ElementType() reflect.Type
func (VipMapOutput) MapIndex ¶ added in v2.14.1
func (o VipMapOutput) MapIndex(k pulumi.StringInput) VipOutput
func (VipMapOutput) ToVipMapOutput ¶ added in v2.14.1
func (o VipMapOutput) ToVipMapOutput() VipMapOutput
func (VipMapOutput) ToVipMapOutputWithContext ¶ added in v2.14.1
func (o VipMapOutput) ToVipMapOutputWithContext(ctx context.Context) VipMapOutput
type VipOutput ¶ added in v2.10.0
type VipOutput struct {
*pulumi.OutputState
}
func (VipOutput) ElementType ¶ added in v2.10.0
func (VipOutput) ToVipOutput ¶ added in v2.10.0
func (VipOutput) ToVipOutputWithContext ¶ added in v2.10.0
func (VipOutput) ToVipPtrOutput ¶ added in v2.14.1
func (o VipOutput) ToVipPtrOutput() VipPtrOutput
func (VipOutput) ToVipPtrOutputWithContext ¶ added in v2.14.1
func (o VipOutput) ToVipPtrOutputWithContext(ctx context.Context) VipPtrOutput
type VipPtrInput ¶ added in v2.14.1
type VipPtrInput interface { pulumi.Input ToVipPtrOutput() VipPtrOutput ToVipPtrOutputWithContext(ctx context.Context) VipPtrOutput }
type VipPtrOutput ¶ added in v2.14.1
type VipPtrOutput struct {
*pulumi.OutputState
}
func (VipPtrOutput) ElementType ¶ added in v2.14.1
func (VipPtrOutput) ElementType() reflect.Type
func (VipPtrOutput) ToVipPtrOutput ¶ added in v2.14.1
func (o VipPtrOutput) ToVipPtrOutput() VipPtrOutput
func (VipPtrOutput) ToVipPtrOutputWithContext ¶ added in v2.14.1
func (o VipPtrOutput) ToVipPtrOutputWithContext(ctx context.Context) VipPtrOutput
type VipState ¶
type VipState struct { // The IP address of the vip. Changing this creates a new // vip. Address pulumi.StringPtrInput // The administrative state of the vip. // Acceptable values are "true" and "false". Changing this value updates the // state of the existing vip. AdminStateUp pulumi.BoolPtrInput // The maximum number of connections allowed for the // vip. Default is -1, meaning no limit. Changing this updates the connLimit // of the existing vip. ConnLimit pulumi.IntPtrInput // Human-readable description for the vip. Changing // this updates the description of the existing vip. Description pulumi.StringPtrInput // A *Networking* Floating IP that will be associated // with the vip. The Floating IP must be provisioned already. FloatingIp pulumi.StringPtrInput // The name of the vip. Changing this updates the name of // the existing vip. Name pulumi.StringPtrInput // Omit this field to prevent session persistence. // The persistence object structure is documented below. Changing this updates // the persistence of the existing vip. Persistence pulumi.MapInput // The ID of the pool with which the vip is associated. // Changing this updates the poolId of the existing vip. PoolId pulumi.StringPtrInput // The port on which to listen for client traffic. Changing // this creates a new vip. Port pulumi.IntPtrInput // Port UUID for this VIP at associated floating IP (if any). PortId pulumi.StringPtrInput // The protocol - can be either 'TCP, 'HTTP', or // HTTPS'. Changing this creates a new vip. Protocol pulumi.StringPtrInput // The region in which to obtain the V2 Networking client. // A Networking client is needed to create a VIP. If omitted, the // `region` argument of the provider is used. Changing this creates a new // VIP. Region pulumi.StringPtrInput // The network on which to allocate the vip's address. A // tenant can only create vips on networks authorized by policy (e.g. networks // that belong to them or networks that are shared). Changing this creates a // new vip. SubnetId pulumi.StringPtrInput // The owner of the vip. Required if admin wants to // create a vip member for another tenant. Changing this creates a new vip. TenantId pulumi.StringPtrInput }