Consul Versions Save

Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure.

v1.15.9

3 months ago

1.15.9 (January 23, 2024)

SECURITY:

  • Update RSA key generation to use a key size of at least 2048 bits. [GH-20112]
  • Upgrade OpenShift container images to use ubi9-minimal:9.3 as the base image. [GH-20014]

IMPROVEMENTS:

BUG FIXES:

  • ui: update token list on Role details page to show only linked tokens [GH-19912]

v1.17.2

3 months ago

1.17.2 (January 23, 2024)

KNOWN ISSUES:

  • connect: Consul versions 1.17.2 and 1.16.5 perform excessively strict TLS SAN verification on terminating gateways, which prevents connections outside of the mesh to upstream services. Terminating gateway users are advised to avoid deploying these Consul versions. A fix will be present in a future release of Consul 1.17.3 and 1.16.6. [GH-20360]

SECURITY:

  • Upgrade OpenShift container images to use ubi9-minimal:9.3 as the base image. [GH-20014]

IMPROVEMENTS:

  • connect: Remove usage of deprecated Envoy field match_subject_alt_names in favor of match_typed_subject_alt_names. [GH-19954]
  • connect: replace usage of deprecated Envoy field envoy.config.router.v3.WeightedCluster.total_weight. [GH-20011]
  • xds: Replace usage of deprecated Envoy field envoy.config.cluster.v3.Cluster.http_protocol_options [GH-20010]
  • xds: remove usages of deprecated Envoy fields: envoy.config.cluster.v3.Cluster.http2_protocol_options, envoy.config.bootstrap.v3.Admin.access_log_path [GH-19940]
  • xds: replace usage of deprecated Envoy field envoy.extensions.filters.http.lua.v3.Lua.inline_code [GH-20012]

DEPRECATIONS:

  • cli: Deprecate the -admin-access-log-path flag from consul connect envoy command in favor of: -admin-access-log-config. [GH-19943]

BUG FIXES:

  • prepared-query: (Enterprise-only) Fix issue where sameness-group failover targets to peers would attempt to query data from the default partition, rather than the sameness-group's partition always.
  • ui: update token list on Role details page to show only linked tokens [GH-19912]

v1.15.8

4 months ago

1.15.8 (December 12, 2023)

SECURITY:

  • Update github.com/golang-jwt/jwt/v4 to v4.5.0 to address PRISMA-2022-0270. [GH-19705]
  • Upgrade to use Go 1.20.12. This resolves CVEs CVE-2023-45283: (path/filepath) recognize ??\ as a Root Local Device path prefix (Windows) CVE-2023-45284: recognize device names with trailing spaces and superscripts (Windows) CVE-2023-39326: (net/http) limit chunked data overhead CVE-2023-45285: (cmd/go) go get may unexpectedly fallback to insecure git [GH-19840]

IMPROVEMENTS:

  • mesh: parse the proxy-defaults protocol when write the config-entry to avoid parsing it when compiling the discovery chain. [GH-19829]
  • wan-federation: use a hash to diff config entries when replicating in the secondary DC to avoid unnecessary writes.. [GH-19795]
  • cli: Adds cli support for checking TCP connection for ports. If -ports flag is not given, it will check for default ports of consul listed here - https://developer.hashicorp.com/consul/docs/install/ports [GH-18329]
  • connect: Default stats_flush_interval to 60 seconds when using the Consul Telemetry Collector, unless custom stats sink are present or an explicit flush interval is configured. [GH-19663]
  • metrics: increment consul.client.rpc.failed if RPC fails because no servers are accessible [GH-19721]
  • metrics: modify consul.client.rpc metric to exclude internal retries for consistency with consul.client.rpc.exceeded and consul.client.rpc.failed [GH-19721]

BUG FIXES:

  • CLI: fix a panic when deleting a non existing policy by name. [GH-19679]
  • connect: Solves an issue where two upstream services with the same name in different namespaces were not getting routed to correctly by API Gateways. [GH-19860]
  • federation: (Enterprise Only) Fixed an issue where namespace reconciliation could result into the secondary having dangling instances of namespaces marked for deletion
  • ui: only show back-to-hcp link when url is present [GH-19444]
  • wan-federation: Fix a bug where servers wan-federated through mesh-gateways could crash due to overlapping LAN IP addresses. [GH-19503]
  • xds: Add configurable xds_fetch_timeout_ms option to proxy registrations that allows users to prevent endpoints from dropping when they have proxies with a large number of upstreams. [GH-19871]
  • xds: ensure child resources are re-sent to Envoy when the parent is updated even if the child already has pending updates. [GH-19866]

v1.16.4

4 months ago

1.16.4 (December 12, 2023)

SECURITY:

  • Update github.com/golang-jwt/jwt/v4 to v4.5.0 to address PRISMA-2022-0270. [GH-19705]
  • Upgrade to use Go 1.20.12. This resolves CVEs CVE-2023-45283: (path/filepath) recognize ??\ as a Root Local Device path prefix (Windows) CVE-2023-45284: recognize device names with trailing spaces and superscripts (Windows) CVE-2023-39326: (net/http) limit chunked data overhead CVE-2023-45285: (cmd/go) go get may unexpectedly fallback to insecure git [GH-19840]

IMPROVEMENTS:

  • mesh: parse the proxy-defaults protocol when write the config-entry to avoid parsing it when compiling the discovery chain. [GH-19829]
  • wan-federation: use a hash to diff config entries when replicating in the secondary DC to avoid unnecessary writes.. [GH-19795]
  • cli: Adds cli support for checking TCP connection for ports. If -ports flag is not given, it will check for default ports of consul listed here - https://developer.hashicorp.com/consul/docs/install/ports [GH-18329]
  • cloud: push additional server TLS metadata to HCP [GH-19682]
  • connect: Default stats_flush_interval to 60 seconds when using the Consul Telemetry Collector, unless custom stats sink are present or an explicit flush interval is configured. [GH-19663]
  • metrics: increment consul.client.rpc.failed if RPC fails because no servers are accessible [GH-19721]
  • metrics: modify consul.client.rpc metric to exclude internal retries for consistency with consul.client.rpc.exceeded and consul.client.rpc.failed [GH-19721]

BUG FIXES:

  • CLI: fix a panic when deleting a non existing policy by name. [GH-19679]
  • connect: Solves an issue where two upstream services with the same name in different namespaces were not getting routed to correctly by API Gateways. [GH-19860]
  • federation: (Enterprise Only) Fixed an issue where namespace reconciliation could result into the secondary having dangling instances of namespaces marked for deletion
  • ui: only show hcp link if url is present [GH-19443]
  • wan-federation: Fix a bug where servers wan-federated through mesh-gateways could crash due to overlapping LAN IP addresses. [GH-19503]
  • xds: Add configurable xds_fetch_timeout_ms option to proxy registrations that allows users to prevent endpoints from dropping when they have proxies with a large number of upstreams. [GH-19871]
  • xds: ensure child resources are re-sent to Envoy when the parent is updated even if the child already has pending updates. [GH-19866]

v1.17.1

4 months ago

1.17.1 (December 12, 2023)

SECURITY:

  • Update github.com/golang-jwt/jwt/v4 to v4.5.0 to address PRISMA-2022-0270. [GH-19705]
  • Upgrade to use Go 1.20.12. This resolves CVEs CVE-2023-45283: (path/filepath) recognize ??\ as a Root Local Device path prefix (Windows) CVE-2023-45284: recognize device names with trailing spaces and superscripts (Windows) CVE-2023-39326: (net/http) limit chunked data overhead CVE-2023-45285: (cmd/go) go get may unexpectedly fallback to insecure git [GH-19840]
  • connect: update supported envoy versions to 1.24.12, 1.25.11, 1.26.6, 1.27.2 to address CVE-2023-44487 [GH-19274]

FEATURES:

  • acl: Adds nomad client templated policy [GH-19827]
  • cli: Adds new subcommand peering exported-services to list services exported to a peer . Refer to the CLI docs for more information. [GH-19821]

IMPROVEMENTS:

  • mesh: parse the proxy-defaults protocol when write the config-entry to avoid parsing it when compiling the discovery chain. [GH-19829]
  • wan-federation: use a hash to diff config entries when replicating in the secondary DC to avoid unnecessary writes.. [GH-19795]
  • Replaces UI Side Nav with Helios Design System Side Nav. Adds dc/partition/namespace searching in Side Nav. [GH-19342]
  • acl: add api-gateway templated policy [GH-19728]
  • acl: add templated policy descriptions [GH-19735]
  • api: Add support for listing ACL tokens by service name when using templated policies. [GH-19666]
  • cli: stop simultaneous usage of -templated-policy and -templated-policy-file when creating a role or token. [GH-19389]
  • cloud: push additional server TLS metadata to HCP [GH-19682]
  • connect: Default stats_flush_interval to 60 seconds when using the Consul Telemetry Collector, unless custom stats sink are present or an explicit flush interval is configured. [GH-19663]
  • metrics: increment consul.client.rpc.failed if RPC fails because no servers are accessible [GH-19721]
  • metrics: modify consul.client.rpc metric to exclude internal retries for consistency with consul.client.rpc.exceeded and consul.client.rpc.failed [GH-19721]
  • ui: move nspace and partitions requests into their selector menus [GH-19594]

BUG FIXES:

  • CLI: fix a panic when deleting a non existing policy by name. [GH-19679]
  • Mesh Gateways: Fix a bug where replicated and peered mesh gateways with hostname-based WAN addresses fail to initialize. [GH-19268]
  • ca: Fix bug with Vault CA provider where renewing a retracted token would cause retries in a tight loop, degrading performance. [GH-19285]
  • ca: Fix bug with Vault CA provider where token renewal goroutines could leak if CA failed to initialize. [GH-19285]
  • connect: Solves an issue where two upstream services with the same name in different namespaces were not getting routed to correctly by API Gateways. [GH-19860]
  • federation: (Enterprise Only) Fixed an issue where namespace reconciliation could result into the secondary having dangling instances of namespaces marked for deletion
  • ui: clear peer on home logo link [GH-19549]
  • ui: fix being able to view peered services from non-default namespaces [GH-19586]
  • ui: stop manually reconciling services if peering is enabled [GH-19907]
  • wan-federation: Fix a bug where servers wan-federated through mesh-gateways could crash due to overlapping LAN IP addresses. [GH-19503]
  • xds: Add configurable xds_fetch_timeout_ms option to proxy registrations that allows users to prevent endpoints from dropping when they have proxies with a large number of upstreams. [GH-19871]
  • xds: ensure child resources are re-sent to Envoy when the parent is updated even if the child already has pending updates. [GH-19866]

v1.17.0

6 months ago

1.17.0 (October 31, 2023)

BREAKING CHANGES:

  • api: RaftLeaderTransfer now requires an id string. An empty string can be specified to keep the old behavior. [GH-17107]
  • audit-logging: (Enterprise only) allowing timestamp based filename only on rotation. initially the filename will be just file.json [GH-18668]

DEPRECATIONS:

  • cli: Deprecate the -admin-access-log-path flag from consul connect envoy command in favor of: -admin-access-log-config. [GH-15946]

SECURITY:

FEATURE PREVIEW: Catalog v2

This release provides the ability to preview Consul's v2 Catalog and Resource API if enabled. The new model supports multi-port application deployments with only a single Envoy proxy. Note that the v1 and v2 catalogs are not cross compatible, and not all Consul features are available within this v2 feature preview. See the v2 Catalog and Resource API documentation for more information. The v2 Catalog and Resources API should be considered a feature preview within this release and should not be used in production environments.

Limitations

  • The v2 catalog API feature preview does not support connections with client agents. As a result, it is only available for Kubernetes deployments, which use Consul dataplanes instead of client agents.
  • The v1 and v2 catalog APIs cannot run concurrently.
  • The Consul UI does not support multi-port services or the v2 catalog API in this release.
  • HCP Consul does not support multi-port services or the v2 catalog API in this release.

Significant Pull Requests

FEATURES:

  • Support custom watches on the Consul Controller framework. [GH-18439]
  • Windows: support consul connect envoy command on Windows [GH-17694]
  • acl: Add BindRule support for templated policies. Add new BindType: templated-policy and BindVar field for templated policy variables. [GH-18719]
  • acl: Add new acl.tokens.dns config field which specifies the token used implicitly during dns checks. [GH-17936]
  • acl: Added ACL Templated policies to simplify getting the right ACL token. [GH-18708]
  • acl: Adds a new ACL rule for workload identities [GH-18769]
  • acl: Adds workload identity templated policy [GH-19077]
  • api-gateway: Add support for response header modifiers on http-route configuration entry [GH-18646]
  • api-gateway: add retry and timeout filters [GH-18324]
  • cli: Add bind-var flag to consul acl binding-rule for templated policy variables. [GH-18719]
  • cli: Add consul acl templated-policy commands to read, list and preview templated policies. [GH-18816]
  • config-entry(api-gateway): (Enterprise only) Add GatewayPolicy to APIGateway Config Entry listeners
  • config-entry(api-gateway): (Enterprise only) Add JWTFilter to HTTPRoute Filters
  • dataplane: Allow getting bootstrap parameters when using V2 APIs [GH-18504]
  • gateway: (Enterprise only) Add JWT authentication and authorization to APIGateway Listeners and HTTPRoutes.
  • mesh: (Enterprise only) Adds rate limiting config to service-defaults [GH-18583]
  • xds: Add a built-in Envoy extension that appends OpenTelemetry Access Logging (otel-access-logging) to the HTTP Connection Manager filter. [GH-18336]
  • xds: Add support for patching outbound listeners to the built-in Envoy External Authorization extension. [GH-18336]

IMPROVEMENTS:

  • raft: upgrade raft-wal library version to 0.4.1. [GH-19314]
  • xds: Use downstream protocol when connecting to local app [GH-18573]
  • Windows: Integration tests for Consul Windows VMs [GH-18007]
  • acl: Use templated policy to generate synthetic policies for tokens/roles with node and/or service identities [GH-18813]
  • api: added CheckRegisterOpts to Agent API [GH-18943]
  • api: added Token field to ServiceRegisterOpts type in Agent API [GH-18983]
  • ca: Vault CA provider config no longer requires root_pki_path for secondary datacenters [GH-17831]
  • cli: Added -templated-policy, -templated-policy-file, -replace-templated-policy, -append-templated-policy, -replace-templated-policy-file, -append-templated-policy-file and -var flags for creating or updating tokens/roles. [GH-18708]
  • config: Add new tls.defaults.verify_server_hostname configuration option. This specifies the default value for any interfaces that support the verify_server_hostname option. [GH-17155]
  • connect: update supported envoy versions to 1.24.10, 1.25.9, 1.26.4, 1.27.0 [GH-18300]
  • ui: Use Community verbiage [GH-18560]

BUG FIXES:

  • api: add custom marshal/unmarshal for ServiceResolverConfigEntry.RequestTimeout so config entries that set this field can be read using the API. [GH-19031]
  • ca: ensure Vault CA provider respects Vault Enterprise namespace configuration. [GH-19095]
  • catalog api: fixes a bug with catalog api where filter query parameter was not working correctly for the /v1/catalog/services endpoint [GH-18322]
  • connect: (Enterprise only) Fix bug where incorrect service-defaults entries were fetched to determine an upstream's protocol whenever the upstream did not explicitly define the namespace / partition. When this bug occurs, upstreams would use the protocol from a service-default entry in the default namespace / partition, rather than their own namespace / partition.
  • connect: Fix bug where uncleanly closed xDS connections would influence connection balancing for too long and prevent envoy instances from starting. Two new configuration fields performance.grpc_keepalive_timeout and performance.grpc_keepalive_interval now exist to allow for configuration on how often these dead connections will be cleaned up. [GH-19339]
  • dev-mode: Fix dev mode has new line in responses. Now new line is added only when url has pretty query parameter. [GH-18367]
  • dns: (Enterprise only) Fix bug where sameness group queries did not correctly inherit the agent's partition.
  • docs: fix list of telemetry metrics [GH-17593]
  • gateways: Fix a bug where a service in a peered datacenter could not access an external node service through a terminating gateway [GH-18959]
  • server: (Enterprise Only) Fixed an issue where snake case keys were rejected when configuring the control-plane-request-limit config entry
  • telemetry: emit consul version metric on a regular interval. [GH-6876]
  • tlsutil: Default setting of ServerName field in outgoing TLS configuration for checks now handled by crypto/tls. [GH-17481]

v1.16.3

6 months ago

1.16.3 (October 31, 2023)

SECURITY:

BUG FIXES:

  • Mesh Gateways: Fix a bug where replicated and peered mesh gateways with hostname-based WAN addresses fail to initialize. [GH-19268]
  • api-gateway: fix matching for different hostnames on the same listener [GH-19120]
  • api: add custom marshal/unmarshal for ServiceResolverConfigEntry.RequestTimeout so config entries that set this field can be read using the API. [GH-19031]
  • ca: Fix bug with Vault CA provider where renewing a retracted token would cause retries in a tight loop, degrading performance. [GH-19285]
  • ca: Fix bug with Vault CA provider where token renewal goroutines could leak if CA failed to initialize. [GH-19285]
  • ca: ensure Vault CA provider respects Vault Enterprise namespace configuration. [GH-19095]
  • catalog api: fixes a bug with catalog api where filter query parameter was not working correctly for the /v1/catalog/services endpoint [GH-18322]
  • connect: Fix bug where uncleanly closed xDS connections would influence connection balancing for too long and prevent envoy instances from starting. Two new configuration fields performance.grpc_keepalive_timeout and performance.grpc_keepalive_interval now exist to allow for configuration on how often these dead connections will be cleaned up. [GH-19339]
  • dns: (Enterprise only) Fix bug where sameness group queries did not correctly inherit the agent's partition.
  • gateways: Fix a bug where a service in a peered datacenter could not access an external node service through a terminating gateway [GH-18959]
  • server: (Enterprise Only) Fixed an issue where snake case keys were rejected when configuring the control-plane-request-limit config entry

v1.14.11

6 months ago

1.14.11 (October 31, 2023)

SECURITY:

BUG FIXES:

  • Mesh Gateways: Fix a bug where replicated and peered mesh gateways with hostname-based WAN addresses fail to initialize. [GH-19268]
  • api: add custom marshal/unmarshal for ServiceResolverConfigEntry.RequestTimeout so config entries that set this field can be read using the API. [GH-19031]
  • ca: ensure Vault CA provider respects Vault Enterprise namespace configuration. [GH-19095]
  • catalog api: fixes a bug with catalog api where filter query parameter was not working correctly for the /v1/catalog/services endpoint [GH-18322]
  • connect: Fix bug where uncleanly closed xDS connections would influence connection balancing for too long and prevent envoy instances from starting. Two new configuration fields performance.grpc_keepalive_timeout and performance.grpc_keepalive_interval now exist to allow for configuration on how often these dead connections will be cleaned up. [GH-19339]

v1.15.7

6 months ago

1.15.7 (October 31, 2023)

SECURITY:

BUG FIXES:

  • Mesh Gateways: Fix a bug where replicated and peered mesh gateways with hostname-based WAN addresses fail to initialize. [GH-19268]
  • api: add custom marshal/unmarshal for ServiceResolverConfigEntry.RequestTimeout so config entries that set this field can be read using the API. [GH-19031]
  • ca: Fix bug with Vault CA provider where renewing a retracted token would cause retries in a tight loop, degrading performance. [GH-19285]
  • ca: Fix bug with Vault CA provider where token renewal goroutines could leak if CA failed to initialize. [GH-19285]
  • ca: ensure Vault CA provider respects Vault Enterprise namespace configuration. [GH-19095]
  • catalog api: fixes a bug with catalog api where filter query parameter was not working correctly for the /v1/catalog/services endpoint [GH-18322]
  • connect: Fix bug where uncleanly closed xDS connections would influence connection balancing for too long and prevent envoy instances from starting. Two new configuration fields performance.grpc_keepalive_timeout and performance.grpc_keepalive_interval now exist to allow for configuration on how often these dead connections will be cleaned up. [GH-19339]
  • gateways: Fix a bug where a service in a peered datacenter could not access an external node service through a terminating gateway [GH-18959]

v1.17.0-rc1

6 months ago

1.17.0-rc1 (October 11, 2023)

BREAKING CHANGES:

  • api: RaftLeaderTransfer now requires an id string. An empty string can be specified to keep the old behavior. [GH-17107]
  • audit-logging: (Enterprise only) allowing timestamp based filename only on rotation. initially the filename will be just file.json [GH-18668]

FEATURE PREVIEW: Catalog v2

This release provides the ability to preview Consul's v2 Catalog and Resource API if enabled. The new model supports multi-port application deployments with only a single Envoy proxy. Note that the v1 and v2 catalogs are not cross compatible, and not all Consul features are available within this v2 feature preview. See the v2 Catalog and Resource API documentation for more information. The v2 Catalog and Resources API should be considered a feature preview within this release and should not be used in production environments.

Limitations

  • The v2 catalog API feature preview does not support connections with client agents. As a result, it is only available for Kubernetes deployments, which use Consul dataplanes instead of client agents.
  • The v1 and v2 catalog APIs cannot run concurrently.
  • The Consul UI does not support multi-port services or the v2 catalog API in this release.
  • HCP Consul does not support multi-port services or the v2 catalog API in this release.
  • The v2 API only supports transparent proxy mode where services that have permissions to connect to each other can use Kube DNS to connect.

Known Issues

  • When using the v2 API with transparent proxy, Kubernetes pods cannot use L7 liveness, readiness, or startup probes.

Significant Pull Requests

FEATURES:

  • Support custom watches on the Consul Controller framework. [GH-18439]
  • Windows: support consul connect envoy command on Windows [GH-17694]
  • acl: Add BindRule support for templated policies. Add new BindType: templated-policy and BindVar field for templated policy variables. [GH-18719]
  • acl: Add new acl.tokens.dns config field which specifies the token used implicitly during dns checks. [GH-17936]
  • acl: Added ACL Templated policies to simplify getting the right ACL token. [GH-18708]
  • acl: Adds a new ACL rule for workload identities [GH-18769]
  • api-gateway: Add support for response header modifiers on http-route configuration entry [GH-18646]
  • api-gateway: add retry and timeout filters [GH-18324]
  • cli: Add bind-var flag to consul acl binding-rule for templated policy variables. [GH-18719]
  • cli: Add consul acl templated-policy commands to read, list and preview templated policies. [GH-18816]
  • config-entry(api-gateway): (Enterprise only) Add GatewayPolicy to APIGateway Config Entry listeners
  • config-entry(api-gateway): (Enterprise only) Add JWTFilter to HTTPRoute Filters
  • dataplane: Allow getting bootstrap parameters when using V2 APIs [GH-18504]
  • gateway: (Enterprise only) Add JWT authentication and authorization to APIGateway Listeners and HTTPRoutes.
  • mesh: (Enterprise only) Adds rate limiting config to service-defaults [GH-18583]
  • xds: Add a built-in Envoy extension that appends OpenTelemetry Access Logging (otel-access-logging) to the HTTP Connection Manager filter. [GH-18336]
  • xds: Add support for patching outbound listeners to the built-in Envoy External Authorization extension. [GH-18336]

IMPROVEMENTS:

  • xds: Use downstream protocol when connecting to local app [GH-18573]
  • Windows: Integration tests for Consul Windows VMs [GH-18007]
  • acl: Use templated policy to generate synthetic policies for tokens/roles with node and/or service identities [GH-18813]
  • api: added CheckRegisterOpts to Agent API [GH-18943]
  • api: added Token field to ServiceRegisterOpts type in Agent API [GH-18983]
  • ca: Vault CA provider config no longer requires root_pki_path for secondary datacenters [GH-17831]
  • cli: Added -templated-policy, -templated-policy-file, -replace-templated-policy, -append-templated-policy, -replace-templated-policy-file, -append-templated-policy-file and -var flags for creating or updating tokens/roles. [GH-18708]
  • config: Add new tls.defaults.verify_server_hostname configuration option. This specifies the default value for any interfaces that support the verify_server_hostname option. [GH-17155]
  • connect: update supported envoy versions to 1.24.10, 1.25.9, 1.26.4, 1.27.0 [GH-18300]
  • ui: Use Community verbiage [GH-18560]

BUG FIXES:

  • api: add custom marshal/unmarshal for ServiceResolverConfigEntry.RequestTimeout so config entries that set this field can be read using the API. [GH-19031]
  • dev-mode: Fix dev mode has new line in responses. Now new line is added only when url has pretty query parameter. [GH-18367]
  • docs: fix list of telemetry metrics [GH-17593]
  • telemetry: emit consul version metric on a regular interval. [GH-6876]
  • tlsutil: Default setting of ServerName field in outgoing TLS configuration for checks now handled by crypto/tls. [GH-17481]