@olix0r olix0r released this Apr 16, 2018 · 631 commits to master since this release

Assets 5

Conduit 0.4.0 overhauls Conduit's telemetry system and improves service discovery
reliability.

  • Web UI
    • New automatically-configured Grafana dashboards for all Deployments.
  • Command-line interface
    • conduit stat has been completely rewritten to accept arguments like kubectl get.
      The --to and --from filters can be used to filter traffic by destination and
      source, respectively. conduit stat currently can operate on Namespace and
      Deployment Kubernetes resources. More resource types will be added in the next
      release!
  • Proxy (data plane)
    • New Prometheus-formatted metrics are now exposed on :4191/metrics, including
      rich destination labeling for outbound HTTP requests. The proxy no longer pushes
      metrics to the control plane.
    • The proxy now handles SIGINT or SIGTERM, gracefully draining requests until all
      are complete or SIGQUIT is received.
    • SMTP and MySQL (ports 25 and 3306) are now treated as opaque TCP by default. You
      should no longer have to specify --skip-outbound-ports to communicate with such
      services.
    • When the proxy reconnected to the controller, it could continue to send requests to
      old endpoints. Now, when the proxy reconnects to the controller, it properly removes
      invalid endpoints.
    • A bug impacting some HTTP/2 reset scenarios has been fixed.
  • Service Discovery
    • Previously, the proxy failed to resolve some domain names that could be misinterpreted
      as a Kubernetes Service name. This has been fixed by extending the Destination API
      with a negative acknowledgement response.
  • Control Plane
    • The Telemetry service and associated APIs have been removed.
  • Documentation
    • Updated Roadmap
    • Added prometheus metrics guide

Special thanks to @ahume, @alenkacz, & @xiaods for contributing to this release!

Upgrading from v0.3.1

When upgrading from v0.3.1, it's important to upgrade proxies before upgrading the
controller. As you upgrade proxies, the controller will lose visibility into some data
plane stats. Once all proxies are updated, conduit install |kubectl apply -f - can be
run to upgrade the controller without causing any data plane disruptions. Once the
controller has been restarted, traffic stats should become available.