@a8bot a8bot released this Mar 8, 2017 · 34 commits to master since this release

Assets 11
  • Switched Amalgam8 sidecar to use Envoy proxy from Lyft. (https://github.com/lyft/envoy)

  • Support for HTTP/2, gRPC proxying (downstream and upstream).

  • Support for gRPC bridging over HTTP/1.1.

  • Support for configuring circuit breakers, bulkheads, timeouts, retries.

  • Support for different load balancing algorithms (round robin, least conn, random). (PR#494)

  • Deeper integration with Kubernetes: rules are now stored as third party resources. (PR#534)

  • A fully revamped Go based cross platform CLI (a8ctl). (PR#396)

  • Assorted bug fixes.

  • NOTE: breaking changes:

    • Removed the bulk set API. (PR#537)
    • Removed a8ctl service-list command. (PR#536)
    • Removed a8ctl traffic-set, traffic-step, and traffic-abort commands. (PR#535)

@ijsnellf ijsnellf released this Nov 4, 2016 · 453 commits to master since this release

Assets 8
  • Sidecar now supports TCP and command health checks. (PR#350)
  • Sidecar now supports DNS queries for a specified domain. DNS queries for other domains will be forwarded to upstream DNS servers. (PR#328)
  • Sidecar --supervise flag has been deprecated.
  • Sidecar now supports supervision of multiple processes. (PR#349)
  • Sidecar now logs the source IP address in the NGINX access logs. (PR#362)
  • Fixed an issue in the controller that resulted in IDs not being returned on rule creation via the API. (PR#352)
  • Updated to Go 1.7.1. (PR#345)

@a8bot a8bot released this Oct 14, 2016 · 592 commits to master since this release

Assets 6
  • Sidecars now support HTTP health checks. The health check endpoint can be provided as part of the sidecar configuration file. When the application fails to respond to a health check, it is unregistered from the service registry, causing the instance to be removed from the load balancing pool of other sidecars upon the next refresh.
  • A special CLI mode for the a8sidecar binary that allows users to view the state inside the sidecar. (PR#335)
  • Filebeat is no longer installed/configured/managed by the sidecar. It is the user's responsibility to aggregate the sidecar's nginx access logs through a log management system of their choice.
  • Minor performance optimizations to the Lua code in the sidecar and bug fixes. Timeout support is currently disabled. Specifying timeouts in the rules will not have any effect. (PR#334)
  • Registry now supports Eureka remote catalog, similar to Kubernetes catalog. Service registration info in Eureka will now be synced with the Amalgam8 service registry automatically. (PR#247)
  • Eureka metadata tags are automatically translated into Amalgam8 instance tags in the service registry.
  • Optimizations to the redis operations used in registry code
  • The bookinfo example application is now a polyglot application, composed of services written in Java, Ruby, and Python.
  • Simplification of the demo scripts: consolidate into fewer files and eliminate unnecessary scripts.
  • All documentation has been moved to https://amalgam8.io/docs/

@a8bot a8bot released this Sep 21, 2016 · 709 commits to master since this release

Assets 8

0.3.1 (September 20, 2016)

  • Amalgam8 nginx configuration files in the sidecar is now split into
    multiple files. Amalgam8 specific code has been abstracted away into
    separate files, and user-customizable part is now confined to location
    blocks in amalgam8-services.conf (PR#278)
  • Fixed invalid DNS config in kubernetes config that caused code compiled
    with Go 1.7.1 to fail (PR#280).
  • Fixed bug in sidecar that caused HTTP 500 when version cookie did not
    match any backend in the route list (PR#271).
  • Fixed bugs in bluemix deployment scripts and updated READMEs to point to
    the correct version of Bluemix CLI
    (PR#275 and

@a8bot a8bot released this Sep 13, 2016 · 774 commits to master since this release

Assets 6

0.3.0 (September 12, 2016)

  • The controller API has been overhauled to support a wider range of routing and fault injection rules.
  • The dependency on Kafka has been removed from controller and sidecar.
  • Sidecar now polls controller for rule changes and registry for service instance changes.
  • Controller and Registry now have support for Redis persistent storage.
  • NGINX Lua code has been overhauled to support the new rules API format from controller.
  • Options for sidecar to proxy, register, and log now default to false.
  • The default controller port is now 8080 instead of 6379.
  • A8_SERVICE is now in the form of <service_name>:<tag1>,<tag2>,...,<tagN>
    where <tagN> can be a version number or any other tag. Sidecar will register
    with registry using these tags and rules can be defined to target services