Routing
Listener rules
Split requests by path, header, or HTTP method. Send traffic to multiple target groups with weights from 0–999 for canary deployments, or return 404 or 500 with a fixed-response action.
Amazon VPC Lattice · Application networking
Amazon VPC Lattice brings services and resources spread across multiple VPCs and accounts into a single service network. You define routing, authentication, and logging per service, without building network connectivity between VPCs yourself.
Services register with HTTP, HTTPS, or TLS listeners; TCP resources such as databases register as resource configurations.
Listener protocols (HTTP · HTTPS · TLS)
Target group types (Instance · IP · Lambda · ALB)
Auth policies based on IAM-signed requests
Share services, service networks, and resources across accounts
Why VPC Lattice
When you open service-to-service traffic with VPC peering or Transit Gateway, CIDR planning, route tables, and security group rules grow with every VPC. VPC Lattice makes the service the unit of communication, so network and application teams each manage only their own part.
VPC Lattice supports overlapping CIDRs. Call services across VPCs and accounts without redesigning your address plan.
Use IAM auth policies alongside security groups to decide who can call which service. Authenticated requests are signed with SigV4.
Network administrators manage service networks and policies; service owners manage listeners and target groups. Share across accounts with AWS RAM.
Object model
A request enters a service's listener through the service network, and listener rules select a target group. Containment flows from top to bottom.
The boundary that groups services and resource configurations. Client VPCs enter through a VPC association or a service network endpoint.
VPC associationSN endpointauth policyaccess logsAn application that provides a single function. It gets a domain name generated by VPC Lattice, and can also use a custom domain.
generated FQDNcustom domainauth policyA listener accepts requests on a port with one of HTTP, HTTPS, or TLS. Rules consist of a priority, conditions, and actions.
HTTPHTTPSTLSpath · header · methodfixed-responseRegister EC2 instances, IPs, Lambda functions, or ALBs. Amazon ECS tasks and Kubernetes Pods can also be targets, and ECS performs blue/green, linear, and canary deployments with Lattice target groups.
INSTANCEIPLAMBDAALBHTTP/1.1 · HTTP/2 · gRPCFeatures
Routing
Split requests by path, header, or HTTP method. Send traffic to multiple target groups with weights from 0–999 for canary deployments, or return 404 or 500 with a fixed-response action.
Authorization
Attach IAM policies to the service network and to each service. With the AWS_IAM auth type, both policies must explicitly allow a request for it to pass.
Multi-account
Share services, service networks, and resource configurations with specific accounts, OUs, or your entire organization. Shared services appear in the service directory.
TCP resources
Expose Amazon RDS databases (ARN), domain names, private IPs, and CIDR ranges over TCP to other VPCs and accounts. A resource gateway is the entry point into the resource VPC. When you add a custom domain, a private hosted zone is created automatically in the consumer VPC, and with DNS resolution set to IN_VPC you can also use private domain names as targets.
Hybrid access
Create a VPC endpoint of type service network in a VPC, and on-premises networks connected through Direct Connect or VPN can reach services and resources. A single VPC can also connect to multiple service networks.
Observability
Enable access logs per service network, service, or resource configuration, and deliver them to CloudWatch Logs, Amazon S3, or Amazon Data Firehose.
Services vs resources
Register HTTP-family applications as services, and resources accessed over TCP, such as databases, as resource configurations.
| Type | Protocol | Targets | Client access | Auth policy |
|---|---|---|---|---|
| Service VPC Lattice service |
HTTP · HTTPS · TLS listeners | Instance · IP · Lambda · ALB target groups | VPC association, service network endpoint | Service network and service policies apply |
| Resource configuration ARN · domain · IP |
TCP | RDS databases, domain names, private IPs | VPC association, service network endpoint, resource endpoint | Service network policy does not apply |
| Resource configuration CIDR |
TCP_UDP (UDP for DNS queries only) | List of CIDRs to share (e.g. 10.0.0.0/24) | Tunnel endpoint only; cannot be associated with a service network | Service network policy does not apply |
Auth policy
With the AWS_IAM auth type, the default is deny all. Without a policy, every request receives access denied.
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Principal": "*",
"Action": "vpc-lattice-svcs:Invoke",
"Resource": "*",
"Condition": {
"StringNotEquals": {
"aws:PrincipalType": "Anonymous"
},
"StringEquals": {
"vpc-lattice-svcs:SourceVpc": "vpc-1a2b3c4d"
}
}
}]
}
If an auth policy is enabled and there is no explicit allow, the request is denied.
If the service also has a policy, the request is evaluated again the same way. Put common rules on the service network and narrower rules on the service.
The calling role's identity-based policies must also allow the request. An explicit deny in any policy overrides an allow.
Reference architecture
Client VPCs associate with the service network, and on-premises networks come in through a service network endpoint. Services and databases stay in their owning accounts and are shared with AWS RAM.
On narrow screens, scroll the diagram horizontally.
Getting started
Choose the target type, protocol, and health checks, then register targets.
Create a service and configure the listener protocol, port, and default rule.
Choose the auth type (NONE or AWS_IAM) and the access log destination.
Associate the service with the service network. For services in other accounts, receive them through RAM sharing, then associate.
Associate the client VPC with security groups, attach an auth policy, and verify calls.
Pricing
Services are billed by running hours, data processed, and number of requests. Resource configurations are billed by hours associated with a service network and data processed.
| Dimension | Billing basis | Notes |
|---|---|---|
| Service hours | Per service per hour (partial hours billed as full hours) | Rates vary by Region |
| Service data processing | GB processed by the service | Requests received and responses returned are combined. Cross-AZ transfer is included in this charge |
| Requests · connections | Requests for HTTP · HTTPS listeners, TCP connections for TLS listeners (per million per hour) | The first 300,000 per hour per service are not charged |
| Resource configuration hours | Per resource per hour associated with a service network | Rates vary by Region |
| Resource data processing | GB processed to resources, tiered by monthly cumulative usage per Region | Tiers: first 1 PB, next 4 PB, over 5 PB |
| VPC association · service network endpoint | No charge | Resource endpoints and tunnel endpoints are billed at AWS PrivateLink rates |
| Related charges | Billed by other services | NAT gateways needed for domain-name resources pointing to IPs outside the VPC (Amazon VPC pricing), and access log destinations (CloudWatch Logs · S3 · Firehose pricing) |
Rates vary by Region and usage. For current rates, see the Amazon VPC Lattice pricing page.
Next step
Bring your call relationships, account structure, and authentication requirements, and we will review the service network boundaries and policy design together.