Auckland
Progress checklist
Overview
Section titled “Overview”There is no second apply. The stack under
ap-southeast-2/hub-peering already accepted peering on the Auckland TGW,
wrote the remote Syd spoke route, associated lab.demo to the Akl spoke, and
set DHCP.
Validate this Region after Sydney, then Hub peering → Validate.
Validate
Section titled “Validate”-
Load IDs from the shared stack (still under the Sydney path):
Terminal window export AWS_PROFILE=YOUR_HUB_PROFILEcd environment/sandbox/ap-southeast-2/hub-peeringPEER=$(terraform output -raw peering_attachment_id) -
Auckland attachment state and RT association (no_inspection while NFW off):
Terminal window AKL_NO=$(cd ../../ap-southeast-6/hub && terraform output -raw no_inspection_route_table_id)aws ec2 describe-transit-gateway-attachments \--region ap-southeast-6 \--transit-gateway-attachment-ids "$PEER" \--query 'TransitGatewayAttachments[0].{State:State,Assoc:Association.TransitGatewayRouteTableId}' \--output tableecho "expect Assoc == $AKL_NO (passthrough)"--------------------------------------------| DescribeTransitGatewayAttachments |+----------------------------+-------------+| Assoc | State |+----------------------------+-------------+| tgw-rtb-0de1397f3982b6434 | available |+----------------------------+-------------+expect Assoc == tgw-rtb-0de1397f3982b6434 (passthrough) -
Static routes to Sydney spokes via the peer (Akl no-inspection RT):
Terminal window AKL_NO=$(cd ../../ap-southeast-6/hub && terraform output -raw no_inspection_route_table_id)aws ec2 search-transit-gateway-routes \--region ap-southeast-6 \--transit-gateway-route-table-id "$AKL_NO" \--filters "Name=route-search.subnet-of-match,Values=10.255.0.0/16" \--query 'Routes[].{Dest:DestinationCidrBlock,Attach:TransitGatewayAttachments[0].TransitGatewayAttachmentId,State:State}' \--output table-------------------------------------------------------------| SearchTransitGatewayRoutes |+-------------------------------+-----------------+---------+| Attach | Dest | State |+-------------------------------+-----------------+---------+| tgw-attach-0ef352cc0c6405026 | 10.255.1.0/24 | active || tgw-attach-0ef352cc0c6405026 | 10.255.2.0/24 | active |+-------------------------------+-----------------+---------+ -
akl-dev.lab.demoA record matches the Auckland host IP:Terminal window AKL_IP=$(cd ../../ap-southeast-6/workload-dev && terraform output -raw test_host_private_ip)ZONE=$(aws route53 list-hosted-zones-by-name --dns-name lab.demo. \--query 'HostedZones[?Config.PrivateZone==`true`].Id' --output text | sed 's|/hostedzone/||' | head -1)aws route53 list-resource-record-sets \--hosted-zone-id "$ZONE" \--query "ResourceRecordSets[?Name=='akl-dev.lab.demo.'].[Name,ResourceRecords[0].Value]" \--output textecho "expect A == $AKL_IP"akl-dev.lab.demo. 10.254.1.31expect A == 10.254.1.31 -
Private zone associated to the Auckland spoke VPC:
Terminal window export AWS_PROFILE=YOUR_DEV_WORKLOAD_PROFILEAKL_VPC=$(cd ../../ap-southeast-6/workload-dev && terraform output -raw vpc_id)aws route53 list-hosted-zones-by-vpc \--vpc-id "$AKL_VPC" \--vpc-region ap-southeast-6 \--query 'HostedZoneSummaries[?Name==`lab.demo.`].Name' \--output textlab.demo. -
Auckland spoke DHCP search domain:
Terminal window DHCP=$(aws ec2 describe-vpcs --region ap-southeast-6 --vpc-ids "$AKL_VPC" \--query 'Vpcs[0].DhcpOptionsId' --output text)aws ec2 describe-dhcp-options --region ap-southeast-6 --dhcp-options-ids "$DHCP" \--query 'DhcpOptions[0].DhcpConfigurations[?Key==`domain-name` || Key==`domain-name-servers`]' \--output json[{"Key": "domain-name","Values": [{ "Value": "lab.demo" }]},{"Key": "domain-name-servers","Values": [{ "Value": "AmazonProvidedDNS" }]}]