github hashicorp/consul v1.10.0

1.10.0 (June 22, 2021)

BREAKING CHANGES:

  • connect: Disallow wildcard as name for service-defaults. [GH-10069]
  • connect: avoid encoding listener info in ingress and terminating gateway listener stats names. [GH-10404]
  • licensing: (Enterprise Only) Consul Enterprise 1.10 has removed API driven licensing of servers in favor of license loading via configuration. The PUT and DELETE methods on the /v1/operator/license endpoint will now return 405s, the consul license put and consul license reset CLI commands have been removed and the LicensePut and LicenseReset methods in the API client have been altered to always return an error. [GH-10211]
  • licensing: (Enterprise Only) Consul Enterprise client agents now require a valid non-anonymous ACL token for retrieving their license from the servers. Additionally client agents rely on the value of the start_join and retry_join configurations for determining the servers to query for the license. Therefore one must be set to use license auto-retrieval. [GH-10248]
  • licensing: (Enterprise Only) Consul Enterprise has removed support for temporary licensing. All server agents must have a valid license at startup and client agents must have a license at startup or be able to retrieve one from the servers. [GH-10248]

FEATURES:

  • checks: add H2 ping health checks. [GH-8431]
  • cli: Add additional flags to the consul connect redirect-traffic command to allow excluding inbound and outbound ports,
    outbound CIDRs, and additional user IDs from traffic redirection. [GH-10134]
  • cli: Add new consul connect redirect-traffic command for applying traffic redirection rules when Transparent Proxy is enabled. [GH-9910]
  • cli: Add prefix option to kv import command [GH-9792]
  • cli: Automatically exclude ports from envoy_prometheus_bind_addr, envoy_stats_bind_addr, and ListenerPort from Expose config
    from inbound traffic redirection rules if proxy-id flag is provided to the consul connect redirect-traffic command. [GH-10134]
  • cli: snapshot inspect command provides KV usage breakdown [GH-9098]
  • cli: snapshot inspect command supports JSON output [GH-9006]
  • connect: Add local_request_timeout_ms to allow configuring the Envoy request timeout on local_app [GH-9554]
  • connect: add support for unix domain sockets addresses for service upstreams and downstreams [GH-9981]
  • connect: add toggle to globally disable wildcard outbound network access when transparent proxy is enabled [GH-9973]
  • connect: generate upstream service labels for terminating gateway listener stats. [GH-10404]
  • sdk: Add new iptables package for applying traffic redirection rules with iptables. [GH-9910]
  • sdk: Allow excluding inbound and outbound ports, outbound CIDRs, and additional user IDs from traffic redirection in the iptables package. [GH-10134]
  • ui: Add Unix Domain Socket support [GH-10287]
  • ui: Create a collapsible notices component for the Topology tab [GH-10270]
  • ui: Read-only ACL Auth Methods view [GH-9617]
  • ui: Transparent Proxy - Service mesh visualization updates [GH-10002]
  • xds: emit a labeled gauge of connected xDS streams by version [GH-10243]
  • xds: exclusively support the Incremental xDS protocol when using xDS v3 [GH-9855]

IMPROVEMENTS:

  • acl: extend the auth-methods list endpoint to include MaxTokenTTL and TokenLocality fields. [GH-9741]
  • acl: use the presence of a management policy in the state store as a sign that we already migrated to v2 acls [GH-9505]
  • agent: Save exposed Envoy ports to the agent's state when Expose.Checks is true in proxy's configuration. [GH-10173]
  • api: Add ExposedPort to the health check API resource. [GH-10173]
  • api: Enable setting query options on agent endpoints. [GH-9903]
  • api: The Content-Type header is now always set when a body is present in a request. [GH-10204]
  • cli: snapshot inspect command can now inspect raw snapshots from a server's data
    dir. [GH-10089]
  • cli: the consul connect envoy --envoy_statsd_url flag will now resolve the $HOST_IP environment variable, as part of a full url. [GH-8564]
  • command: Exclude exposed Envoy ports from traffic redirection when providing -proxy-id and Expose.Checks is set. [GH-10173]
  • connect: Add support for transparently proxying traffic through Envoy. [experimental] [GH-9894]
  • connect: Allow per-upstream configuration to be set in service-defaults. [experimental] [GH-9872]
  • connect: Ensures passthrough tproxy cluster is created even when mesh config doesn't exist. [GH-10301]
  • connect: Support dialing individual service IP addresses through transparent proxies. [GH-10329]
  • connect: The builtin connect proxy no longer advertises support for h2 via ALPN. [GH-4466]. [GH-9920]
  • connect: Update the service mesh visualization to account for transparent proxies. [GH-10016]
  • connect: adds new flags prometheus-backend-port and prometheus-scrape-port to consul connect envoy to support envoy_prometheus_bind_addr pointing to the merged metrics port when using Consul Connect on K8s. [GH-9768]
  • connect: allow exposing duplicate HTTP paths through a proxy instance. [GH-10394]
  • connect: rename cluster config entry to mesh. [GH-10127]
  • connect: restrict transparent proxy mode to only match on the tagged virtual IP address. [GH-10162]
  • connect: update supported envoy versions to 1.18.2, 1.17.2, 1.16.3, 1.15.4 [GH-10101]
  • connect: update supported envoy versions to 1.18.3, 1.17.3, 1.16.4, and 1.15.5 [GH-10231]
  • debug: capture a single stream of logs, and single pprof profile and trace for the whole duration [GH-10279]
  • grpc: move gRPC INFO logs to be emitted as TRACE logs from Consul [GH-10395]
  • licensing: (Enterprise Only) Consul Enterprise has gained the consul license inspect CLI command for inspecting a license without applying it..
  • licensing: (Enterprise Only) Consul Enterprise has gained the ability to autoload a license via configuration. This can be specified with the license_path configuration, the CONSUL_LICENSE environment variable or the CONSUL_LICENSE_PATH environment variable [GH-10210]
  • licensing: (Enterprise Only) Consul Enterprise has gained the ability update its license via a configuration reload. The same environment variables and configurations will be used to determine the new license. [GH-10267]
  • monitoring: optimize the monitoring endpoint to avoid losing logs when under high load. [GH-10368]
  • raft: allow reloading of raft trailing logs and snapshot timing to allow recovery from some replication failure modes.
    telemetry: add metrics and documentation for monitoring for replication issues. [GH-10129]
  • streaming: change use_streaming_backend to default to true so that streaming is used by default when it is supported. [GH-10149]
  • ui: Add 'optional route segments' and move namespaces to use them [GH-10212]
  • ui: Adding a notice about how TransparentProxy mode affects the Upstreams list at the top of tab view [GH-10136]
  • ui: Improve loader centering with new side navigation [GH-10181]
  • ui: Move to a sidebar based main navigation [GH-9553]
  • ui: Show a message to explain that health checks may be out of date if the serf health check is in a critical state [GH-10194]
  • ui: Updating the wording for the banner and the popover for a service with an upstream that is not explicitly defined. [GH-10133]
  • ui: Use older (~2016) native ES6 features to reduce transpilation and UI JS payload [GH-9729]
  • ui: add permanently visible indicator when ACLs are disabled [GH-9864]
  • ui: improve accessibility of modal dialogs [GH-9819]
  • ui: restrict the viewing/editing of certain UI elements based on the users ACL token [GH-9687]
  • ui: updates the ui with the new consul brand assets [GH-10081]
  • xds: add support for envoy 1.17.0 [GH-9658]
  • xds: default to speaking xDS v3, but allow for v2 to be spoken upon request [GH-9658]
  • xds: ensure that all envoyproxy/go-control-plane protobuf symbols are linked into the final binary [GH-10131]
  • xds: remove deprecated usages of xDS and drop support for envoy 1.13.x [GH-9602]

BUG FIXES:

  • checks: add TLSServerName field to allow setting the TLS server name for HTTPS health checks. [GH-9475]
  • config: Fixed a bug where rpc_max_conns_per_client could not be changed by reloading the
    config. [GH-8696]
  • connect: Fix bug that prevented transparent proxies from working when mesh config restricted routing to catalog destinations. [GH-10365]
  • memberlist: fixes a couple bugs which allowed malformed input to cause a crash in a Consul
    client or server. [GH-10161]
  • monitor: fix monitor to produce json format logs when requested [GH-10358]
  • proxycfg: Ensure that endpoints for explicit upstreams in other datacenters are watched in transparent mode. [GH-10391]
  • proxycfg: avoid panic when transparent proxy upstream is added and then removed. [GH-10423]
  • streaming: fixes a bug that would cause context cancellation errors when a cache entry expired while requests were active. [GH-10112]
  • streaming: lookup in health properly handle case-sensitivity and perform filtering based on tags and node-meta [GH-9703]
  • telemetry: fixes a bug with Prometheus metrics where Gauges and Summaries were incorrectly
    being expired. [GH-10161]
  • ui: Adding conditional to prevent Service Mesh from breaking when there are no Upstreams [GH-10122]
  • ui: Fix text searching through upstream instances. [GH-10151]
  • ui: Update conditional for topology empty state [GH-10124]
  • ui: ensure proxy instance API requests perform blocking queries correctly [GH-10039]
  • xds: (beta-only) ensure that dependent xDS resources are reconfigured during primary type warming [GH-10381]

NOTES:

  • legal: (Enterprise only) Enterprise binary downloads will now include a copy of the EULA and Terms of Evaluation in the zip archive

Don't miss a new consul release

NewReleases is sending notifications on new releases.