AWS CDK (. net)无法创建瞬态网关附件



我有一个现有的VPC,有私有/公共子网(用CDK创建)和一个现有的瞬态网关(手动创建),它不是处于挂起状态。我现在试图修改我的堆栈来创建一个VPC传输网关附件,但我的代码没有找到传输网关。下面是代码:

// create a VPC attachment to the transit gateway
var transitGatewayAttachment = new CfnTransitGatewayAttachment(this, "TransitGatewayAttachment", new CfnTransitGatewayAttachmentProps 
{ 
VpcId = Vpc.VpcId,
TransitGatewayId = "tgw-xxxxxx",     
SubnetIds = Vpc.PrivateSubnets.Select(s => s.SubnetId).ToArray()
});

CDK返回传输网关不存在的错误。CloudFormation也是如此。我已经两次和三次检查了tgw id,所以我对问题可能是什么感到困惑。

实际上,问题是在创建附件和我的路由表修改可以使用附件之间的延迟。因此,我能够创建附件OK(上面的代码是好的),但失败路由到它从私有子网与以下代码。

var index = 0;    
Vpc.PrivateSubnets.ToList().ForEach(s =>
{
var route = new CfnRoute(this, $"TgwRoute{index}", new CfnRouteProps
{
DestinationCidrBlock = "xxx.xxx.xxx.xxx/xx", 
RouteTableId = s.RouteTable.RouteTableId,
TransitGatewayId = "tgw-xxxxxx"  
});
route.AddDependsOn(transitGatewayAttachment); // *** <--- *** This adds a dependency on TGW
index++;
});

最新更新