Tt

Toxiproxy - TCP Chaos Testing Proxy for Resilience

AWS Developer Tools

deterministic resilience and chaos testing for your services

Base
Hardened build
minimal ports, security patches applied at build time
Access
Unique credentials
generated on first boot, readable only by root
Verified
Boots working
services pass a health gate before release
Support
24/7, 365 days
by email and live chat, 24 hour response SLA

Overview

Toxiproxy is a TCP proxy for deterministic resilience and chaos testing. It sits between an application and its upstream dependencies, databases, caches, queues and APIs, and injects controllable failures called toxics: latency, bandwidth limits, timeouts, connection resets and data slicing. Because the failures are deterministic and scriptable, a slow database or a flaky network can be reproduced exactly, on demand, in a test suite or a staging environment. This image runs Toxiproxy under systemd with a self-contained working demo live on first boot.

Why the cloudimg image

The cloudimg image installs the official Toxiproxy release binaries, pinned and checksum-verified, and runs them under systemd, so a working proxy is available within minutes of launch. The unauthenticated control API is bound to loopback only and fronted for remote use by an nginx TLS reverse proxy gated by an HTTP Basic credential that every instance generates uniquely at first boot and never bakes into the image. A self-contained demo proxy, upstream and sample latency toxic ship live on first boot, a paired step-by-step deployment guide is included, and every image is backed by 24/7 cloudimg support.

Common uses

  • Reproduce a slow or failing dependency, a database, cache, queue or API, on demand to test how your application degrades
  • Run deterministic chaos and resilience experiments in CI or staging by injecting latency, timeouts and connection drops
  • Simulate real-world network conditions between services to validate retries, timeouts and circuit breakers before production

Key features

  • Deterministic chaos testing on demand: Reproduce slow dependencies, flaky networks, timeouts, and connection drops between your application and its databases, caches, queues, and APIs. Inject and remove toxics via the toxiproxy CLI or a scriptable HTTP control API, making failure scenarios repeatable in CI/CD pipelines and staging environments rather than waiting for them to surface in production.
  • Running in minutes with a working demo on first boot: Toxiproxy is installed from official SHA256-verified release binaries and managed by systemd. The image ships a self-contained demo - a bundled upstream, a proxy on a public port, and a sample latency toxic already applied - so you can verify a real failure-injecting TCP proxy immediately after launch with no compilation or manual configuration required.
  • Secure by default with 24/7 cloudimg support: The unauthenticated control API is bound to loopback only and fronted by an nginx TLS reverse proxy gated by a unique HTTP Basic credential generated per instance at first boot. Only SSH, the demo data port, and the authenticated endpoint are exposed. Backed by 24/7 cloudimg technical support via email and live chat for deployment, toxic design, and security configuration.

See it running

Real screenshots taken while testing this image against its deployment guide.

Toxiproxy - TCP Chaos Testing Proxy for Resilience screenshot 1 Toxiproxy - TCP Chaos Testing Proxy for Resilience screenshot 2 Toxiproxy - TCP Chaos Testing Proxy for Resilience screenshot 3 Toxiproxy - TCP Chaos Testing Proxy for Resilience screenshot 4

Description

This is a repackaged open source software product wherein additional charges apply for cloudimg support services.

## Toxiproxy - Deterministic Resilience and Chaos Testing

Catch dependency failures before they reach production. Toxiproxy sits between your application and its upstream services - databases, caches, queues, and APIs - and injects controllable failures called toxics: latency, bandwidth limits, timeouts, connection resets, and data slicing. Because failures are deterministic and scriptable, you can reproduce a slow database or a flaky network in a test suite or staging environment exactly, on demand, instead of waiting for it to happen in production.

## Ready to Test in Minutes

This image delivers Toxiproxy fully installed and running under systemd, so a working proxy is available within minutes of launch with no manual compilation or configuration editing required.

Out-of-the-box demo included:

  • A small bundled upstream on the loopback interface
  • A demo proxy forwarding a public port to that upstream
  • A sample latency toxic already applied

List the proxies or curl through the demo port and you immediately see a real, failure-injecting TCP proxy on first boot.

## Secure by Default

The Toxiproxy control API is unauthenticated by design and can create proxies to arbitrary destinations. This image addresses that risk with multiple layers:

  • Control API bound to the loopback interface only - never exposed to the network
  • Remote access fronted by an nginx reverse proxy over TLS
  • HTTP Basic credential generated uniquely per instance at first boot - never baked into the image
  • Only SSH, the demo proxy data port, and the authenticated control-API endpoint are opened
  • Operating system ships fully patched with unattended security updates enabled
  • systemd manages all services for automatic restarts and clean logging

## Use Cases

  • Pre-production resilience validation: verify your application handles slow or failed dependencies gracefully before deploying to production
  • Automated test suites: script toxic injection via the HTTP control API to include failure scenarios in CI/CD pipelines
  • Staging environment chaos: reproduce exact production failure modes on demand for debugging and root-cause analysis
  • Dependency timeout tuning: validate that your connection pools, retries, and circuit breakers behave correctly under degraded conditions

## Deploying on AWS

Deploy directly from AWS Marketplace onto any supported EC2 instance, alongside your existing VPC and security groups. After launch, retrieve your unique per-instance HTTP Basic credential over SSH from the root-only credentials file at /root/toxiproxy-credentials.txt, then point your application at the proxy ports instead of directly at your dependencies. Open only the ports your test clients need in the instance security group.

## 24/7 cloudimg Support Included

This product includes 24/7 technical support from cloudimg via email and live chat. The support team assists with deployment, control-API usage, toxic design for your specific failure modes, and security configuration.

## Licensing and Attribution

This is a repackaged open source software product with additional charges for cloudimg support services. Toxiproxy is distributed under the MIT license. cloudimg is not affiliated with or endorsed by Shopify or the Toxiproxy project. All product and company names are trademarks or registered trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them.

Related technologies

resilience testingchaos engineeringfault injectiontcp proxylatency injectionnetwork simulationchaos testingdependency testingconnection timeoutfailure injection