Releases: amalgam8/amalgam8
Releases · amalgam8/amalgam8
v1.1.0
v1.0.0
-
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:
v0.4.2
v0.4.1
- 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)
v0.4.0
- 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/
v0.3.1
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
PR#279).
v0.3.0
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