Skip to content

v0.24.0

Compare
Choose a tag to compare
@hashicorp-ci hashicorp-ci released this 16 Feb 22:24
· 2704 commits to main since this release

0.24.0 (February 16, 2021)

BREAKING CHANGES

  • Connect: the lifecycle-sidecar command has been renamed to consul-sidecar. [GH-428]

  • Connect: the consul-connect-lifecycle-sidecar container name has been changed to consul-sidecar and the consul-connect-envoy-sidecar container name has been changed to envoy-sidecar.
    [GH-428]

  • Connect: the -default-protocol and -enable-central-config flags are no longer supported.
    The consul.hashicorp.com/connect-service-protocol annotation on Connect pods is also
    no longer supported. [GH-418]

    Current deployments that have the annotation should remove it, otherwise they
    will get an error if a pod from that deployment is rescheduled.

    Removing the annotation will not change their protocol
    since the config entry was already written to Consul. If you wish to change
    the protocol you must migrate the config entry to be managed by a
    ServiceDefaults resource.
    See Upgrade to CRDs for more
    information.

    To set the protocol for new services, you must use the
    ServiceDefaults resource,
    e.g.

    apiVersion: consul.hashicorp.com/v1alpha1
    kind: ServiceDefaults
    metadata:
      name: my-service-name
    spec:
      protocol: "http"
  • Connect: pods using an upstream that references a datacenter, e.g.
    consul.hashicorp.com/connect-service-upstreams: service:8080:dc2 will
    error during injection if Consul does not have a proxy-defaults config entry
    with a mesh gateway mode
    set to local or remote. [GH-421]

    In practice, this would have already been causing issues since without that
    config setting, traffic wouldn't have been routed through mesh gateways and
    so would not be actually making it to the other service.

FEATURES:

  • CRDs: support annotation consul.hashicorp.com/migrate-entry on custom resources
    that will allow an existing config entry to be migrated onto a Kubernetes custom resource. [GH-419]
  • Connect: add new cleanup controller that runs in the connect-inject deployment. This
    controller cleans up Consul service instances that remain registered despite their
    pods being deleted. This could happen if the pod's preStop hook failed to execute
    for some reason. [GH-433]

IMPROVEMENTS:

  • CRDs: give a more descriptive error when a config entry already exists in Consul. [GH-420]
  • Set User-Agent: consul-k8s/<version> header on calls to Consul where <version> is the current
    version of consul-k8s. [GH-434]