VPC Peering
Connect your AWS or GCP VPC privately to a Managed deployment
VPC Peering connects your private cloud network to a LaserData Managed deployment. Traffic uses private IP addresses within the cloud provider's network. It does not cross the public internet.
VPC Peering supports Managed deployments on AWS and GCP. It requires Performance or Enterprise and private networking enabled in the account plan. BYOC already runs in your VPC and does not need peering. Standard does not include private connectivity.
Why VPC Peering
Public Managed endpoints use access rules. Peering provides a private path with these properties:
- Traffic stays on the provider's network and does not use the public internet.
- Applications do not need public IP addresses to use the connection.
- Access rules can restrict traffic to the peered VPC's CIDR, its IP address range.
Use a VPC CIDR that does not overlap the deployment subnet or another active peering on the deployment. If ranges overlap, the platform rejects the request and identifies the conflicting CIDRs.
AWS VPC Peering
Prerequisites
Prepare these before you create the connection:
- A running Managed deployment on AWS.
- An AWS VPC in the same region or another region.
- Your 12-digit AWS Account ID, shown in the AWS Console's top-right area.
- Your VPC ID, which starts with
vpc-and appears in the AWS VPC Console. - Your VPC CIDR block.
Setup
- Open your deployment's Networking tab.
- Click Add VPC Peering.
- Enter a connection name.
- Enter the VPC ID, AWS Account ID, and VPC CIDR.
- If the VPC is in another region, enter that region.
- Click Create.
LaserData makes sure that the inputs are valid and creates the AWS peering request. It configures routes and security groups on the deployment side. The connection starts in Pending Acceptance.
Accept the Peering Request
In the AWS account that owns your VPC:
- Open the AWS VPC Console in the VPC's region.
- Open Peering Connections.
- Select the pending request from LaserData.
- Open Actions and select Accept Request.
Configure Your VPC
After you accept the request, configure your side of the connection:
- Open Route Tables in the AWS VPC Console.
- Select the route table for your VPC subnets.
- Open Edit routes and select Add route.
- Set Destination to the deployment subnet CIDR shown in LaserData Console.
- Set Target to the peering connection ID,
pcx-.... - Save the route.
- Permit traffic to and from the deployment CIDR in your security groups.
Connection Status
| Status | API Value | Meaning | Action |
|---|---|---|---|
| Initiating Request | initiating_request | LaserData is creating the peering request | Wait for it to proceed |
| Pending Acceptance | pending_acceptance | Waiting for you to accept in AWS | Accept in the AWS VPC Console |
| Provisioning | provisioning | AWS is setting up the connection | Wait for it to complete |
| Active | active | Peering established, traffic can flow | No action needed |
| Rejected | rejected | You rejected the request | Delete and recreate if needed |
| Expired | expired | Request was not accepted in time | Delete and recreate |
| Failed | failed | Peering failed | Make sure that VPC ID and Account ID are correct. Recreate the peering |
| Deleting | deleting | Peering is being removed | Wait for deletion to complete |
| Deleted | deleted | Peering has been removed | No action needed |
GCP VPC Peering
Prerequisites
Prepare these resources and identifiers:
- A running Managed deployment on GCP.
- A GCP VPC network.
- Your Project ID, with 6-30 lowercase letters, digits, or hyphens.
- Your VPC network name, with at most 63 lowercase letters, digits, or hyphens.
- Your VPC CIDR block.
Setup
- Open your deployment's Networking tab.
- Click Add VPC Peering.
- Enter a connection name.
- Enter your Project ID, VPC network name, and VPC CIDR.
- Click Create.
LaserData creates its side of the connection. The peering remains Inactive until you create the matching connection in your project.
Create the Reciprocal Peering
GCP requires peering configuration on both sides. After LaserData creates its connection:
- In GCP Console, open VPC network, then VPC network peering.
- Click Create peering connection.
- Enter a peering name.
- Select your VPC network.
- Enter the LaserData project ID and network name from the LaserData Console instructions.
- Click Create.
The peering detail page in LaserData Console provides instructions for its current status. Use those instructions for your connection.
Configure Firewall Rules
After both sides are connected, configure your GCP project:
- Open VPC network, then Firewall.
- Create an ingress rule that permits traffic from the deployment CIDR.
- Create an egress rule that permits traffic to the deployment CIDR.
Connection Status
| Status | API Value | Meaning | Action |
|---|---|---|---|
| Inactive | inactive | Waiting for reciprocal peering from your side | Create the peering in GCP Console |
| Active | active | Peering established, traffic can flow | No action needed |
| Deleted | deleted | Peering has been removed | Recreate if needed |
LaserData periodically reads the peering status from GCP. The displayed status changes after GCP recognizes the reciprocal connection.
Deleting a Peering Connection
Delete a peering from the Networking tab. LaserData removes its connection and routing configuration. Remove the corresponding peering, routes, and firewall or security-group entries from your own VPC.
Plan Limits
| Resource | Basic | Pro | Enterprise |
|---|---|---|---|
| VPC peering connections per deployment | - | 3 | 5 |
| Private networking | - | Available | Available |
Audit
The audit log records peering creation and deletion. Creation records include the requester, VPC, and CIDR. Deletion records include the requester and time.
API Reference
Use API keys with the endpoints for the deployment's cloud provider. Creation and deletion require deployment:network:manage. Listing connections and reading instructions require deployment:network:read.
AWS
Create a Peering Connection
curl -X POST {supervisor_url}/deployments/{deployment_id}/network/aws/vpc_peering \
-H "ld-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "app-to-iggy",
"peer_vpc_id": "vpc-0abc123def456789a",
"peer_owner_id": "123456789012",
"peer_vpc_cidr": "172.16.0.0/16",
"peer_region": "us-west-2",
"remarks": "Application VPC to deployment"
}'A successful request returns 204 No Content.
List Peering Connections
curl {supervisor_url}/deployments/{deployment_id}/network/aws/vpc_peering \
-H "ld-api-key: YOUR_API_KEY"[
{
"id": 1,
"name": "app-to-iggy",
"peering_connection_id": "pcx-0abc123def456789a",
"requester_vpc_id": "vpc-deployment",
"requester_cidr": "10.0.0.0/16",
"accepter_vpc_id": "vpc-0abc123def456789a",
"accepter_cidr": "172.16.0.0/16",
"requester_region": "us-west-1",
"accepter_region": "us-west-2",
"requester_owner_id": "987654321098",
"accepter_owner_id": "123456789012",
"route_table_ids": ["rtb-0abc123def456789a"],
"status": "active",
"expiry_at": null,
"remarks": "Application VPC to deployment",
"created_at": "2025-01-15T10:30:00Z",
"updated_at": "2025-01-15T10:35:00Z"
}
]Get Setup Instructions
The response provides instructions for the current peering status:
curl {supervisor_url}/deployments/{deployment_id}/network/aws/vpc_peering/{peering_id}/instructions \
-H "ld-api-key: YOUR_API_KEY"Delete a Peering Connection
curl -X DELETE {supervisor_url}/deployments/{deployment_id}/network/aws/vpc_peering/{peering_id} \
-H "ld-api-key: YOUR_API_KEY"A successful request returns 204 No Content.
GCP
Create a Peering Connection
curl -X POST {supervisor_url}/deployments/{deployment_id}/network/gcp/vpc_peering \
-H "ld-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "app-to-iggy",
"peer_vpc_name": "my-vpc-network",
"peer_project_id": "my-gcp-project",
"peer_vpc_cidr": "172.16.0.0/16",
"remarks": "Application VPC to deployment"
}'A successful request returns 204 No Content.
| Field | Required | Description |
|---|---|---|
name | Yes | Name for the peering connection |
peer_vpc_name | Yes | Your GCP VPC network name (lowercase, digits, hyphens, max 63 chars) |
peer_project_id | Yes | Your GCP project ID (6-30 chars, lowercase, digits, hyphens) |
peer_vpc_cidr | Yes | Your VPC CIDR block (must not overlap with deployment subnet) |
remarks | No | Optional description |
List Peering Connections
curl {supervisor_url}/deployments/{deployment_id}/network/gcp/vpc_peering \
-H "ld-api-key: YOUR_API_KEY"[
{
"id": 1,
"name": "app-to-iggy",
"peering_name": "laser-peering-12345",
"local_vpc_name": "ld-vpc-deployment-611298765432109056",
"peer_vpc_name": "my-vpc-network",
"peer_project_id": "my-gcp-project",
"peer_vpc_cidr": "172.16.0.0/16",
"state": "active",
"state_details": null,
"remarks": "Application VPC to deployment",
"created_at": "2026-03-20T10:30:00Z",
"updated_at": "2026-03-20T10:35:00Z"
}
]Get Setup Instructions
For an inactive peering, the response explains how to create its reciprocal connection in GCP Console. Instructions follow the current peering status.
curl {supervisor_url}/deployments/{deployment_id}/network/gcp/vpc_peering/{peering_id}/instructions \
-H "ld-api-key: YOUR_API_KEY"{
"peering_name": "laser-peering-12345",
"state": "inactive",
"local_vpc_name": "ld-vpc-deployment-611298765432109056",
"peer_vpc_name": "my-vpc-network",
"peer_project_id": "my-gcp-project",
"steps": [
"Open the Google Cloud Console...",
"Navigate to VPC network peering...",
"..."
]
}Delete a Peering Connection
curl -X DELETE {supervisor_url}/deployments/{deployment_id}/network/gcp/vpc_peering/{peering_id} \
-H "ld-api-key: YOUR_API_KEY"A successful request returns 204 No Content.