Vpc Endpoint Service Resource
Provides a Private Link Vpc Endpoint Service Resource resource. For information about Private Link Vpc Endpoint Service Resource and how to use it, see What is Vpc Endpoint Service Resource.
NOTE: Available since v1.110.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.AlicloudFunctions;
import com.pulumi.alicloud.inputs.GetZonesArgs;
import com.pulumi.alicloud.privatelink.VpcEndpointService;
import com.pulumi.alicloud.privatelink.VpcEndpointServiceArgs;
import com.pulumi.alicloud.vpc.Network;
import com.pulumi.alicloud.vpc.NetworkArgs;
import com.pulumi.alicloud.vpc.Switch;
import com.pulumi.alicloud.vpc.SwitchArgs;
import com.pulumi.alicloud.ecs.SecurityGroup;
import com.pulumi.alicloud.ecs.SecurityGroupArgs;
import com.pulumi.alicloud.slb.ApplicationLoadBalancer;
import com.pulumi.alicloud.slb.ApplicationLoadBalancerArgs;
import com.pulumi.alicloud.privatelink.VpcEndpoint;
import com.pulumi.alicloud.privatelink.VpcEndpointArgs;
import com.pulumi.alicloud.privatelink.VpcEndpointServiceResource;
import com.pulumi.alicloud.privatelink.VpcEndpointServiceResourceArgs;
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 config = ctx.config();
final var name = config.get("name").orElse("tf_example");
final var exampleZones = AlicloudFunctions.getZones(GetZonesArgs.builder()
.availableResourceCreation("VSwitch")
.build());
var exampleVpcEndpointService = new VpcEndpointService("exampleVpcEndpointService", VpcEndpointServiceArgs.builder()
.serviceDescription(name)
.connectBandwidth(103)
.autoAcceptConnection(false)
.build());
var exampleNetwork = new Network("exampleNetwork", NetworkArgs.builder()
.vpcName(name)
.cidrBlock("10.0.0.0/8")
.build());
var exampleSwitch = new Switch("exampleSwitch", SwitchArgs.builder()
.vswitchName(name)
.cidrBlock("10.1.0.0/16")
.vpcId(exampleNetwork.id())
.zoneId(exampleZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
.build());
var exampleSecurityGroup = new SecurityGroup("exampleSecurityGroup", SecurityGroupArgs.builder()
.vpcId(exampleNetwork.id())
.build());
var exampleApplicationLoadBalancer = new ApplicationLoadBalancer("exampleApplicationLoadBalancer", ApplicationLoadBalancerArgs.builder()
.loadBalancerName(name)
.vswitchId(exampleSwitch.id())
.loadBalancerSpec("slb.s2.small")
.addressType("intranet")
.build());
var exampleVpcEndpoint = new VpcEndpoint("exampleVpcEndpoint", VpcEndpointArgs.builder()
.serviceId(exampleVpcEndpointService.id())
.securityGroupIds(exampleSecurityGroup.id())
.vpcId(exampleNetwork.id())
.vpcEndpointName(name)
.build());
var exampleVpcEndpointServiceResource = new VpcEndpointServiceResource("exampleVpcEndpointServiceResource", VpcEndpointServiceResourceArgs.builder()
.serviceId(exampleVpcEndpointService.id())
.resourceId(exampleApplicationLoadBalancer.id())
.resourceType("slb")
.build());
}
}
Content copied to clipboard
Import
Private Link Vpc Endpoint Service Resource can be imported using the id, e.g.
$ pulumi import alicloud:privatelink/vpcEndpointServiceResource:VpcEndpointServiceResource example <service_id>:<resource_id>
Content copied to clipboard