Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

278
Views
¿Las zonas de disponibilidad del servicio de VPC deben coincidir con las zonas de punto de enlace de la VPC?

Estoy configurando un punto de enlace de VPC para un punto de enlace de servicio de VPC correspondiente.

  • Nuestra aplicación llama al servicio descendente utilizando un nombre que no es específico de una región o zona (enrutado al VPCe).

  • Tenemos 3 subredes de aplicaciones configuradas en el VPCe (correspondientes a 3 zonas de disponibilidad us-west-2a, -2b, -2c).

  • El servicio al que llamamos solo admite 2 zonas de disponibilidad (us-west-2a, -2b).

  • Al crear el punto final (a través de CloudFormation), aparece el siguiente error:

    The VPC endpoint service com.amazonaws.vpce.us-west-2.vpce-svc-01234567890123456 does not support the availability zone of the subnet: subnet-0abcdef0123456789. (Service: AmazonEC2; Status Code: 400; Error Code: InvalidParameter; Request ID: ...)

(Donde está esa subred en AZ us-west-2c)

¿Cuál es la solución aquí?

No puedo dejar de lado esa subred sin evitar que nuestra aplicación en esa AZ use el VPCe, ¿verdad?

¿Parece que AWS espera que las zonas de disponibilidad del cliente y del servicio coincidan? Aunque debo estar malinterpretando algo. No esperaría que fuera tan rígido. (Por ejemplo, si service us-west-2c falla, las solicitudes del client us-west-2c deben ir al service us-west-2a o -2b . Ese es el objetivo de las AZ, ¿verdad?)

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Investigué un poco más y encontré:

  • Las subredes correctas no se pueden determinar automáticamente.
  • Las zonas de productor/consumidor deben coincidir.
  • La pantalla Crear punto de enlace de la VPC de la consola de AWS se puede utilizar para comprobar las zonas de disponibilidad del servicio disponibles.
  • No debería haber problemas para comunicarse desde client us-west-2c a un client VPCe in us-west-2a siempre que el grupo de seguridad del VPCe lo permita .

La solución deberá implicar la comprobación manual de las zonas de disponibilidad admitidas en el servicio.

over 4 years ago · Santiago Trujillo Report

0

Esto es posible. Aquí hay un ejemplo usando Terraform:

 locals { subnet_count = length(data.aws_availability_zones.non_local.names) cidr_block = "10.0.0.0/16" region = "us-east-1" } resource "aws_vpc" "demo" { cidr_block = local.cidr_block enable_dns_hostnames = true ... } resource "aws_subnet" "demo" { count = local.subnet_count vpc_id = aws_vpc.demo.id cidr_block = cidrsubnet(local.cidr_block, ceil(log(local.subnet_count, 2)), count.index) availability_zone = data.aws_availability_zones.non_local.names[count.index] } data "aws_availability_zones" "non_local" { # No Local Zones # https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/availability_zones#by-filter filter { name = "opt-in-status" values = ["opt-in-not-required"] } } resource "aws_vpc_endpoint" "ses" { vpc_id = aws_vpc.demo.id service_name = "com.amazonaws.${local.region}.email-smtp" vpc_endpoint_type = "Interface" subnet_ids = data.aws_subnet_ids.ses.ids } data "aws_vpc_endpoint_service" "ses" { service = "email-smtp" } data "aws_subnets" "ses" { filter { name = "vpc-id" values = [aws_vpc.demo.id] } filter { name = "subnet-id" values = aws_subnet.demo.*.id } filter { name = "availability-zone" values = data.aws_vpc_endpoint_service.ses.availability_zones } }
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!