Consul on Kubernetes 1.2.0

We are pleased to announce the following Consul updates.

Release highlights

  • Sameness groups (Enterprise): Sameness groups are a user-defined set of partitions that Consul uses to identify services in different administrative partitions with the same name as being the same services. You can use sameness groups to create a blanket failover policy for deployments with cluster peering connections. Refer to the Sameness groups overview for more information.

    v1.2.x - 图1

    Note

    Sameness groups is currently a beta feature in Consul Enterprise v1.16.0.

  • Permissive mTLS: You can enable the permissive mTLS mode to enable sidecar proxies to accept both mTLS and non-mTLS traffic. Using this mode enables you to onboard services without downtime and without reconfiguring or redeploying your application. Refer to the Onboard services while in transparent proxy mode for more information on how to use permissive mTLS to onboard services to Consul.

  • Transparent proxy enhancements for failover and virtual services: We have made several internal improvements, such as ensuring that virtual IPs are always available, to reduce the friction associated with operating Consul in transparent proxy mode. Onboarding services, configuring failover redirects, and other operations require less administrative effort and ensure a smoother experience. Refer to the following documentation for additional information:

  • Granular server-side rate limits (Enterprise): You can now set limits per source IP address. The following steps describe the general process for setting global read and write rate limits:

    1. Set arbitrary limits to begin understanding the upper boundary of RPC and gRPC loads in your network. Refer to Initialize rate limit settings for additional information.
    2. Monitor the metrics and logs and readjust the initial configurations as necessary. Refer to Monitor rate limit data
    3. Define your final operational limits based on your observations. If you are defining global rate limits, refer to Set global traffic rate limits for additional information. For information about setting limits based on source IP, refer to Limit traffic rates for a source IP.
  • Consul Envoy Extensions: Consul Envoy extension system enables you to modify Consul-generated Envoy resources. Refer to Envoy extension overview for more information on how to use these extensions for Consul service mesh.

    • Property Override: The property override Envoy extension lets you set, remove, or modify individual properties for the Envoy resources Consul generates. Refer to the Configure Envoy proxy properties for more information on how to use this extension.

    • Wasm: The Wasm Envoy extension lets you configure Wasm programs to be used as filters in the service’s sidecar proxy. Refer to the Run WebAssembly plug-ins in Envoy proxy for more information on how to use this extension.

    • External Authorization: The external authorization Envoy extension lets you delegate data plane authorization requests to external systems. Refer to the Delegate authorization to an external service for more information on how to use this extension.

  • Simplified API Gateway installation for Consul on Kubernetes: API Gateway is now built into Consul. This enables a simplified installation and configuration process for Consul on Kubernetes. Refer to the API Gateway installation for more information on the simplified native installation method.

  • FIPS compliance (Enterprise): HashiCorp now offers FIPS 140-2 compliant builds of Consul Enterprise that meet the security needs of federal agencies protecting sensitive, unclassified information with approved cryptographic measures. These builds use certified cryptographic modules and restrict configuration settings to comply with FIPS 140-2 Level 1 requirements, enabling compliant Consul deployments. Refer to the Consul Enterprise FIPS for more information on FIPS compliance.

  • JWT Authorization with service intentions: Consul can now authorize connections based on claims present in JSON Web Token (JWT). You can configure Consul to use one or more JWT providers, which lets you control access to services and specific HTTP paths based on the validity of JWT claims embedded in the service traffic. This ensures a uniform and low latency mechanism to validate and authorize communication based on JWT claims across all services in a diverse service-oriented architecture. Refer to the Use JWT authorization with service intentions for more information.

  • Automated license utilization reporting (Enterprise): Consul Enterprise now provides automated license utilization reporting, which sends minimal product-license metering data to HashiCorp. You can use these reports to understand how much more you can deploy under your current contract, which can help you protect against overutilization and budget for predicted consumption. Refer to the Automated license utilization reporting documentation for more information.

What’s deprecated

  • Ingress gateway: Starting with this release, ingress gateway is deprecated and will not be enhanced beyond its current capabilities. Ingress gateway is fully supported in this version but may be removed in a future release of Consul.

    Consul’s API gateway is the recommended alternative to ingress gateway. For ingress gateway features not currently supported by API gateway, equivalent functionality will be added to API gateway over the next several releases of Consul.

  • Legacy API Gateway: The Consul AP Gateway that was previously packaged (consul-api-gateway) and released separately from Consul K8s is now deprecated. This is referred to as the “legacy” API Gateway.

    The legacy API Gateway (v0.5.4) is supported with this version of Consul on Kubernetes in order to simplify the process of migrating from legacy to native API gateways.

What’s changed

  • The native API Gateway creates “API-gateway” configuration objects in Consul. This is a change from the legacy API Gateway, which creates “ingress-gateway” objects in Consul.

  • The native API Gateway in Consul on Kubernetes v1.2 does not create service intentions automatically.

Supported software

v1.2.x - 图2

Note

Consul 1.15.x and 1.14.x are not supported. Please refer to Supported Consul and Kubernetes versions for more detail on choosing the correct consul-k8s version.

  • Consul 1.16.x.
  • Consul Dataplane v1.2.x. Refer to Envoy and Consul Dataplane for details about Consul Dataplane versions and the available packaged Envoy version.
  • Kubernetes 1.24.x - 1.27.x
  • kubectl 1.24.x - 1.27.x
  • Helm 3.6+

Upgrading

For more detailed information, please refer to the upgrade details page and the changelogs.

Changelogs

The changelogs for this major release version and any maintenance versions are listed below.

v1.2.x - 图3

Note

These links take you to the changelogs on the GitHub website.