Transit Router Vpc Attachment
Provides a CEN transit router VPC attachment resource that associate the VPC with the CEN instance. What is Cen Transit Router VPC Attachment
NOTE: Available in 1.126.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.cen.CenFunctions;
import com.pulumi.alicloud.cen.inputs.GetTransitRouterAvailableResourcesArgs;
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.cen.Instance;
import com.pulumi.alicloud.cen.InstanceArgs;
import com.pulumi.alicloud.cen.TransitRouter;
import com.pulumi.alicloud.cen.TransitRouterArgs;
import com.pulumi.alicloud.cen.TransitRouterVpcAttachment;
import com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;
import com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;
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 transitRouterAttachmentName = config.get("transitRouterAttachmentName").orElse("sdk_rebot_cen_tr_yaochi");
final var transitRouterAttachmentDescription = config.get("transitRouterAttachmentDescription").orElse("sdk_rebot_cen_tr_yaochi");
final var defaultTransitRouterAvailableResources = CenFunctions.getTransitRouterAvailableResources();
var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()
.vpcName("sdk_rebot_cen_tr_yaochi")
.cidrBlock("192.168.0.0/16")
.build());
var defaultMaster = new Switch("defaultMaster", SwitchArgs.builder()
.vswitchName("sdk_rebot_cen_tr_yaochi")
.vpcId(defaultNetwork.id())
.cidrBlock("192.168.1.0/24")
.zoneId(defaultTransitRouterAvailableResources.applyValue(getTransitRouterAvailableResourcesResult -> getTransitRouterAvailableResourcesResult.resources()[0].masterZones()[0]))
.build());
var defaultSlave = new Switch("defaultSlave", SwitchArgs.builder()
.vswitchName("sdk_rebot_cen_tr_yaochi")
.vpcId(defaultNetwork.id())
.cidrBlock("192.168.2.0/24")
.zoneId(defaultTransitRouterAvailableResources.applyValue(getTransitRouterAvailableResourcesResult -> getTransitRouterAvailableResourcesResult.resources()[0].slaveZones()[0]))
.build());
var defaultInstance = new Instance("defaultInstance", InstanceArgs.builder()
.cenInstanceName("sdk_rebot_cen_tr_yaochi")
.protectionLevel("REDUCED")
.build());
var defaultTransitRouter = new TransitRouter("defaultTransitRouter", TransitRouterArgs.builder()
.cenId(defaultInstance.id())
.build());
var defaultTransitRouterVpcAttachment = new TransitRouterVpcAttachment("defaultTransitRouterVpcAttachment", TransitRouterVpcAttachmentArgs.builder()
.cenId(defaultInstance.id())
.transitRouterId(defaultTransitRouter.transitRouterId())
.vpcId(defaultNetwork.id())
.zoneMappings(
TransitRouterVpcAttachmentZoneMappingArgs.builder()
.zoneId(defaultTransitRouterAvailableResources.applyValue(getTransitRouterAvailableResourcesResult -> getTransitRouterAvailableResourcesResult.resources()[0].masterZones()[0]))
.vswitchId(defaultMaster.id())
.build(),
TransitRouterVpcAttachmentZoneMappingArgs.builder()
.zoneId(defaultTransitRouterAvailableResources.applyValue(getTransitRouterAvailableResourcesResult -> getTransitRouterAvailableResourcesResult.resources()[0].slaveZones()[1]))
.vswitchId(defaultSlave.id())
.build())
.transitRouterAttachmentName(transitRouterAttachmentName)
.transitRouterAttachmentDescription(transitRouterAttachmentDescription)
.build());
}
}
Content copied to clipboard
Import
CEN instance can be imported using the id, e.g.
$ pulumi import alicloud:cen/transitRouterVpcAttachment:TransitRouterVpcAttachment example tr-********:tr-attach-********
Content copied to clipboard
Properties
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard