Use a classic loadbalancer instead of networklb
This commit is contained in:
parent
7a97e5ea4a
commit
52127d2266
1 changed files with 50 additions and 25 deletions
75
host.go
75
host.go
|
|
@ -7,7 +7,7 @@ import (
|
||||||
|
|
||||||
"github.com/pulumi/pulumi-oci/sdk/go/oci/core"
|
"github.com/pulumi/pulumi-oci/sdk/go/oci/core"
|
||||||
"github.com/pulumi/pulumi-oci/sdk/go/oci/identity"
|
"github.com/pulumi/pulumi-oci/sdk/go/oci/identity"
|
||||||
"github.com/pulumi/pulumi-oci/sdk/go/oci/networkloadbalancer"
|
"github.com/pulumi/pulumi-oci/sdk/go/oci/loadbalancer"
|
||||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
|
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
|
||||||
)
|
)
|
||||||
|
|
@ -16,13 +16,15 @@ func setupHostMain(ctx *pulumi.Context, ocicfg *config.Config, compartment *iden
|
||||||
cfg := config.New(ctx, "")
|
cfg := config.New(ctx, "")
|
||||||
|
|
||||||
// Setup load-balancer
|
// Setup load-balancer
|
||||||
nlb, err := networkloadbalancer.NewNetworkLoadBalancer(ctx, "happy-nlb", &networkloadbalancer.NetworkLoadBalancerArgs{
|
nlb, err := loadbalancer.NewLoadBalancer(ctx, "happy-nlb", &loadbalancer.LoadBalancerArgs{
|
||||||
DisplayName: pulumi.Sprintf("%s-happy-nlb", ctx.Stack()),
|
DisplayName: pulumi.Sprintf("%s-happy-nlb", ctx.Stack()),
|
||||||
SubnetId: subnet.ID(),
|
CompartmentId: compartment.ID(),
|
||||||
CompartmentId: compartment.ID(),
|
SubnetIds: pulumi.StringArray{subnet.ID()},
|
||||||
IsPreserveSourceDestination: pulumi.Bool(false),
|
Shape: pulumi.String("flexible"),
|
||||||
IsPrivate: pulumi.Bool(false),
|
ShapeDetails: &loadbalancer.LoadBalancerShapeDetailsArgs{
|
||||||
NlbIpVersion: pulumi.String("IPV4"),
|
MaximumBandwidthInMbps: pulumi.Int(10),
|
||||||
|
MinimumBandwidthInMbps: pulumi.Int(10),
|
||||||
|
},
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
|
@ -30,17 +32,41 @@ func setupHostMain(ctx *pulumi.Context, ocicfg *config.Config, compartment *iden
|
||||||
|
|
||||||
ctx.Export("nlb-ip", nlb.IpAddresses)
|
ctx.Export("nlb-ip", nlb.IpAddresses)
|
||||||
|
|
||||||
nlbset4, err := networkloadbalancer.NewBackendSet(ctx, "happydomain-nlbset4", &networkloadbalancer.BackendSetArgs{
|
nlbset4, err := loadbalancer.NewBackendSet(ctx, "happy-nlbset4", &loadbalancer.BackendSetArgs{
|
||||||
HealthChecker: &networkloadbalancer.BackendSetHealthCheckerArgs{
|
HealthChecker: &loadbalancer.BackendSetHealthCheckerArgs{
|
||||||
|
Protocol: pulumi.String("TCP"),
|
||||||
|
Port: pulumi.Int(443),
|
||||||
|
},
|
||||||
|
Name: pulumi.Sprintf("%s-happy-nlbset4", ctx.Stack()),
|
||||||
|
LoadBalancerId: nlb.ID(),
|
||||||
|
Policy: pulumi.String("LEAST_CONNECTIONS"),
|
||||||
|
})
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
_, err = loadbalancer.NewListener(ctx, "local-ia-listener4", &loadbalancer.ListenerArgs{
|
||||||
|
DefaultBackendSetName: nlbset4.Name,
|
||||||
|
Name: pulumi.Sprintf("%s-happy-nlb-listen4", ctx.Stack()),
|
||||||
|
LoadBalancerId: nlb.ID(),
|
||||||
|
Port: pulumi.Int(443),
|
||||||
|
Protocol: pulumi.String("TCP"),
|
||||||
|
})
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
/*nlbset6, err := loadbalancer.NewBackendSet(ctx, "happy-nlbset6", &loadbalancer.BackendSetArgs{
|
||||||
|
HealthChecker: &loadbalancer.BackendSetHealthCheckerArgs{
|
||||||
Protocol: pulumi.String("HTTPS"),
|
Protocol: pulumi.String("HTTPS"),
|
||||||
Port: pulumi.Int(443),
|
Port: pulumi.Int(443),
|
||||||
UrlPath: pulumi.String("/api/version"),
|
UrlPath: pulumi.String("/api/version"),
|
||||||
ReturnCode: pulumi.Int(200),
|
ReturnCode: pulumi.Int(200),
|
||||||
},
|
},
|
||||||
Name: pulumi.Sprintf("%s-happydomain-nlbset4", ctx.Stack()),
|
Name: pulumi.Sprintf("%s-happy-nlbset6", ctx.Stack()),
|
||||||
NetworkLoadBalancerId: nlb.ID(),
|
LoadBalancerId: nlb.ID(),
|
||||||
Policy: pulumi.String("FIVE_TUPLE"),
|
Policy: pulumi.String("FIVE_TUPLE"),
|
||||||
IpVersion: pulumi.String("IPV4"),
|
IpVersion: pulumi.String("IPV6"),
|
||||||
IsPreserveSource: pulumi.Bool(true),
|
IsPreserveSource: pulumi.Bool(true),
|
||||||
IsFailOpen: pulumi.Bool(true),
|
IsFailOpen: pulumi.Bool(true),
|
||||||
})
|
})
|
||||||
|
|
@ -48,17 +74,17 @@ func setupHostMain(ctx *pulumi.Context, ocicfg *config.Config, compartment *iden
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
_, err = networkloadbalancer.NewListener(ctx, "happydomain-listener4", &networkloadbalancer.ListenerArgs{
|
_, err = loadbalancer.NewListener(ctx, "local-ia-listener6", &loadbalancer.ListenerArgs{
|
||||||
DefaultBackendSetName: nlbset4.Name,
|
DefaultBackendSetName: nlbset6.Name,
|
||||||
Name: pulumi.Sprintf("%s-happydomain-nlb-listen4", ctx.Stack()),
|
Name: pulumi.Sprintf("%s-happy-nlb-listen6", ctx.Stack()),
|
||||||
NetworkLoadBalancerId: nlb.ID(),
|
LoadBalancerId: nlb.ID(),
|
||||||
Port: pulumi.Int(0),
|
Port: pulumi.Int(0),
|
||||||
Protocol: pulumi.String("TCP"),
|
Protocol: pulumi.String("TCP"),
|
||||||
IpVersion: pulumi.String("IPV4"),
|
IpVersion: pulumi.String("IPV6"),
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}*/
|
||||||
|
|
||||||
// Get boot image
|
// Get boot image
|
||||||
imageId := compartment.CompartmentId.ApplyT(func(id string) string {
|
imageId := compartment.CompartmentId.ApplyT(func(id string) string {
|
||||||
|
|
@ -152,12 +178,11 @@ func setupHostMain(ctx *pulumi.Context, ocicfg *config.Config, compartment *iden
|
||||||
ctx.Export("instance-ip", instance.PublicIp)
|
ctx.Export("instance-ip", instance.PublicIp)
|
||||||
|
|
||||||
// Add host to backend
|
// Add host to backend
|
||||||
_, err = networkloadbalancer.NewBackend(ctx, "happydomain-lb4", &networkloadbalancer.BackendArgs{
|
_, err = loadbalancer.NewBackend(ctx, "happydomain-lb4", &loadbalancer.BackendArgs{
|
||||||
BackendSetName: nlbset4.Name,
|
BackendsetName: nlbset4.Name,
|
||||||
NetworkLoadBalancerId: nlb.ID(),
|
LoadBalancerId: nlb.ID(),
|
||||||
Port: pulumi.Int(0),
|
Port: pulumi.Int(443),
|
||||||
IpAddress: instance.PrivateIp,
|
IpAddress: instance.PrivateIp,
|
||||||
TargetId: instance.ID(),
|
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue