LoadBalancerSecurityGroupAttachment

class LoadBalancerSecurityGroupAttachment : KotlinCustomResource

Provides a Nlb Load Balancer Security Group Attachment resource. For information about Nlb Load Balancer Security Group Attachment and how to use it, see What is Load Balancer Security Group Attachment.

NOTE: Available in v1.198.0+.

Example Usage

Basic Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.nlb.NlbFunctions;
import com.pulumi.alicloud.nlb.inputs.GetZonesArgs;
import com.pulumi.alicloud.vpc.VpcFunctions;
import com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;
import com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;
import com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;
import com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;
import com.pulumi.alicloud.ecs.SecurityGroup;
import com.pulumi.alicloud.ecs.SecurityGroupArgs;
import com.pulumi.alicloud.nlb.LoadBalancer;
import com.pulumi.alicloud.nlb.LoadBalancerArgs;
import com.pulumi.alicloud.nlb.inputs.LoadBalancerZoneMappingArgs;
import com.pulumi.alicloud.nlb.LoadBalancerSecurityGroupAttachment;
import com.pulumi.alicloud.nlb.LoadBalancerSecurityGroupAttachmentArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var defaultZones = NlbFunctions.getZones();
final var defaultNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()
.nameRegex("^default-NODELETING$")
.build());
final var defaultResourceGroups = ResourcemanagerFunctions.getResourceGroups();
final var default1 = VpcFunctions.getSwitches(GetSwitchesArgs.builder()
.vpcId(defaultNetworks.applyValue(getNetworksResult -> getNetworksResult.ids()[0]))
.zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
.build());
final var default2 = VpcFunctions.getSwitches(GetSwitchesArgs.builder()
.vpcId(defaultNetworks.applyValue(getNetworksResult -> getNetworksResult.ids()[0]))
.zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[1].id()))
.build());
var defaultSecurityGroup = new SecurityGroup("defaultSecurityGroup", SecurityGroupArgs.builder()
.vpcId(defaultNetworks.applyValue(getNetworksResult -> getNetworksResult.ids()[0]))
.build());
final var zoneId1 = defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id());
final var vswitchId1 = default1.applyValue(getSwitchesResult -> getSwitchesResult.ids()[0]);
final var zoneId2 = defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[1].id());
final var vswitchId2 = default2.applyValue(getSwitchesResult -> getSwitchesResult.ids()[0]);
var defaultLoadBalancer = new LoadBalancer("defaultLoadBalancer", LoadBalancerArgs.builder()
.loadBalancerName(var_.name())
.resourceGroupId(defaultResourceGroups.applyValue(getResourceGroupsResult -> getResourceGroupsResult.ids()[0]))
.loadBalancerType("Network")
.addressType("Internet")
.addressIpVersion("Ipv4")
.vpcId(defaultNetworks.applyValue(getNetworksResult -> getNetworksResult.ids()[0]))
.zoneMappings(
LoadBalancerZoneMappingArgs.builder()
.vswitchId(vswitchId1)
.zoneId(zoneId1)
.build(),
LoadBalancerZoneMappingArgs.builder()
.vswitchId(vswitchId2)
.zoneId(zoneId2)
.build())
.build());
var defaultLoadBalancerSecurityGroupAttachment = new LoadBalancerSecurityGroupAttachment("defaultLoadBalancerSecurityGroupAttachment", LoadBalancerSecurityGroupAttachmentArgs.builder()
.securityGroupId(defaultSecurityGroup.id())
.loadBalancerId(defaultLoadBalancer.id())
.build());
}
}

Import

Nlb Load Balancer Security Group Attachment can be imported using the id, e.g.

$ pulumi import alicloud:nlb/loadBalancerSecurityGroupAttachment:LoadBalancerSecurityGroupAttachment example <LoadBalancerId>:<SecurityGroupId>

Properties

Link copied to clipboard
val dryRun: Output<Boolean>?

Whether to PreCheck this request only. Value:-true: sends a check request and does not bind a security group to the instance. Check items include whether required parameters, request format, and business restrictions have been filled in. If the check fails, the corresponding error is returned. If the check passes, the error code 'DryRunOperation' is returned '.-false (default): Sends a normal request, returns the HTTP 2xx status code after the check, and directly performs the operation.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val loadBalancerId: Output<String>

The ID of the network-based server load balancer instance to be bound to the security group.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val securityGroupId: Output<String>

The ID of security groups.

Link copied to clipboard
val urn: Output<String>