elbv2 — Elastic Load Balancing v2

A zero-dependency, in-process emulator for AWS ELBv2 (Application / Network / Gateway load balancers).

PropertyValue
Port4710
ProtocolAWS Query / XML
API Version2015-12-01
HealthGET /_parlel/health
ResetPOST /_parlel/reset

Default connection

AWS_ENDPOINT_URL=http://127.0.0.1:4710
AWS_REGION=us-east-1
AWS_ACCESS_KEY_ID=parlel
AWS_SECRET_ACCESS_KEY=parlel

Any credentials are accepted — auth is never verified.

Supported operations

OperationNotes
CreateLoadBalancerGenerates ARN + DNSName
DescribeLoadBalancersFilter by ARNs or Names
DeleteLoadBalancerCascades to listeners
CreateTargetGroupGenerates ARN
DescribeTargetGroupsFilter by ARNs or Names
DeleteTargetGroup
RegisterTargetsTargets reported healthy
DeregisterTargets
DescribeTargetHealth
CreateListenerRequires existing load balancer
DescribeListenersFilter by LoadBalancerArn / ARNs
DeleteListenerCascades to rules
CreateRuleRequires existing listener
DescribeRulesFilter by ListenerArn / ARNs

SDK usage example

import {
  ElasticLoadBalancingV2Client,
  CreateLoadBalancerCommand,
} from "@aws-sdk/client-elastic-load-balancing-v2";

const elbv2 = new ElasticLoadBalancingV2Client({
  endpoint: "http://127.0.0.1:4710",
  region: "us-east-1",
  credentials: { accessKeyId: "parlel", secretAccessKey: "parlel" },
});

await elbv2.send(
  new CreateLoadBalancerCommand({
    Name: "my-alb",
    Subnets: ["subnet-aaa", "subnet-bbb"],
  }),
);

Access via MCP / preview URL

When launched through the parlel pool, the service is reachable at the allocated preview URL (e.g. http://<host>:4710). Point any AWS SDK or MCP tool at that endpoint via AWS_ENDPOINT_URL.

Surface coverage

This emulator faithfully replicates the API surface most application code and agents exercise. Anything below the supported lines is either an intentional design choice for a fast, zero-cost local emulator (✓ By design) or a candidate for a future release (⟳ Roadmap) — never a silent inaccuracy.

Legend: ✅ fully supported · ◐ accepted (stored, not strictly enforced) · ✓ by design · ⟳ on the roadmap.

AreaLimitation
Target healthAlways reported healthy (no real checks)
Listener rulesStored but not evaluated for routing
AttributesLB/TG attributes are not persisted
TagsAccepted on create but not queryable
StateIn-memory only; lost on restart
<!-- parlel:testenv:start -->

Configuration — test.env

Copy these into your test.env (used by the bridge sidecar flow). Tokens are Parlel's seeded test credentials — any non-empty value is accepted by the emulator, so you rarely need to change them. Swap in real credentials only when pointing at the live service in prod.env.

AWS_ACCESS_KEY_ID=parlel
AWS_SECRET_ACCESS_KEY=parlel
AWS_REGION=us-east-1
AWS_ENDPOINT_URL=http://parlel-bridge:4710
<!-- parlel:testenv:end -->