Compare commits
2 commits
7a97e5ea4a
...
43c6179993
| Author | SHA1 | Date | |
|---|---|---|---|
| 43c6179993 | |||
| 52127d2266 |
3 changed files with 53 additions and 26 deletions
2
go.mod
2
go.mod
|
|
@ -3,7 +3,7 @@ module infra-happyDomain
|
||||||
go 1.25.8
|
go 1.25.8
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/pulumi/pulumi-oci/sdk v1.41.0
|
github.com/pulumi/pulumi-oci/sdk v1.38.0
|
||||||
github.com/pulumi/pulumi/sdk/v3 v3.237.0
|
github.com/pulumi/pulumi/sdk/v3 v3.237.0
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
2
go.sum
2
go.sum
|
|
@ -183,6 +183,8 @@ github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435
|
||||||
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE=
|
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE=
|
||||||
github.com/pulumi/esc v0.23.0 h1:5lOXO+5vvXOEQxXw7cTuYhjg9lVng23f9XNLWDR9EP4=
|
github.com/pulumi/esc v0.23.0 h1:5lOXO+5vvXOEQxXw7cTuYhjg9lVng23f9XNLWDR9EP4=
|
||||||
github.com/pulumi/esc v0.23.0/go.mod h1:mkghIFn/TvN3XnP4jmCB4U5BG1I4UjGluARi39ckrCE=
|
github.com/pulumi/esc v0.23.0/go.mod h1:mkghIFn/TvN3XnP4jmCB4U5BG1I4UjGluARi39ckrCE=
|
||||||
|
github.com/pulumi/pulumi-oci/sdk v1.38.0 h1:3bR5a+17J7e+eKtHthd0zpt7HCi/6EnLXWfo5Gytr/s=
|
||||||
|
github.com/pulumi/pulumi-oci/sdk v1.38.0/go.mod h1:YKLdF2MGO4rT6q5QHdifQDS4fUCSmVdiaOCSYC8xYh0=
|
||||||
github.com/pulumi/pulumi-oci/sdk v1.41.0 h1:U+xgB/CQCLMyGWgzRGcJi9ackOifdyXTQ151rTuQRLQ=
|
github.com/pulumi/pulumi-oci/sdk v1.41.0 h1:U+xgB/CQCLMyGWgzRGcJi9ackOifdyXTQ151rTuQRLQ=
|
||||||
github.com/pulumi/pulumi-oci/sdk v1.41.0/go.mod h1:oR8cLtd+GJngLsGFvVWIPL/TLcf8MfSUvGqSD9aZEXs=
|
github.com/pulumi/pulumi-oci/sdk v1.41.0/go.mod h1:oR8cLtd+GJngLsGFvVWIPL/TLcf8MfSUvGqSD9aZEXs=
|
||||||
github.com/pulumi/pulumi/sdk/v3 v3.237.0 h1:D0kx4fkUkiZWfreQg1ekeAifLJEC2+VRYzgboQClg9Q=
|
github.com/pulumi/pulumi/sdk/v3 v3.237.0 h1:D0kx4fkUkiZWfreQg1ekeAifLJEC2+VRYzgboQClg9Q=
|
||||||
|
|
|
||||||
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