Skip to content

1.16.0-pre.3

Pre-release
Pre-release
Compare
Choose a tag to compare
@aanm aanm released this 03 Jun 23:18
· 944 commits to main since this release
v1.16.0-pre.3

Summary of Changes

Major Changes:

Minor Changes:

  • Add CiliumNodeConfig CRD on API v2 (#31721, @doniacld)
  • Added a new annotation ingress.cilium.io/loadbalancer-class to control the LoadBalancerClass of a dedicated LB via the ingress. (#31650, @Sh4d1)
  • cilium-envoy now uses upstream filter chains for L7 LB policy enforcement. (#32119, @jrajahalme)
  • CiliumEnvoyConfig CRDs now support an optional 'ports' field in services objects, limiting the redirected service frontends to the ones whose port is listed. (#32382, @jrajahalme)
  • CiliumNetworkPolicies are now validated by the operator and the result set in the object's Status field. (#32727, @squeed)
  • Do not include the unnecessary "localhost" SAN in autogenerated clustermesh admin certificates (#32662, @giorio94)
  • gateway-api: ALPN support (#32486, @rauanmayemir)
  • Generate SBOMs using Syft instead of bom (#32307, @ferozsalam)
  • Helm: Add new value `.Values.clustermesh.apiserver.tls.enableSecrets. Setting this value to false will disable the creation of TLS certificate secrets for clustermesh, enabling out-of-band TLS certificate secret management. (#32196, @soggiest)
  • Hubble peer's port number is inferred from the agent's configuration instead of assuming defaults (#32729, @AwesomePatrol)
  • hubble: add SNAT IP flow field and filter (#32130, @kaworu)
  • hubble: add support to filter Hubble flow by network interface. (#32286, @kaworu)
  • hubble: add the cluster name to a flow's source and destination endpoints (#32313, @rolinh)
  • Improved background resynchronization of nodes. Before all nodes were being updated at the same time, now we spread updates over time to average out CPU usage. (#32577, @marseel)
  • ingress: request timeout control via operator flag & annotation (#31693, @a5r0n)
  • Introduce CLI commands to troubleshoot connectivity issues to the etcd kvstore and clustermesh control plane (#32336, @giorio94)
  • ipsec: Improve CPU usage of cilum-agent in large clusters (#32588, @marseel)
  • KVStoreMesh: expose remote clusters information and introduce dedicated CLI command (#32156, @giorio94)
  • Make the overwriting behavior of install-plugins.sh configurable. (#32016, @jingyuanliang)
  • Operator: expose remote clusters information through dedicated CLI command, and introduce troubleshoot commands (#32436, @giorio94)
  • pkg/healthv2: reduce unecessary healthv2 debug log volume. (#32319, @tommyp1ckles)
  • Report estimated expiry timers for connection-based FQDN entries (#32013, @joestringer)
  • Runtime device detection and subsequent datapath reconfiguration is now the default and only mode of operation.
    The enableRuntimeDeviceDetection option is now a no-op and will be removed in v1.17. (#32153, @joamaki)
  • Service connections that use Direct-Server-Return and were established prior to Cilium v1.13.3 will be disrupted, and need to be re-established. (#32642, @julianwiedmann)
  • Simplify rate limit configuration options for the CiliumEndpointSlice controller. (#32523, @thorn3r)
  • Starting cilium-agent with large numbers of network policies should be much faster. (#32703, @squeed)
  • The StateDB in-memory database library was switched to github.com/cilium/statedb with a new much faster radix tree implementation. This is used internally in the cilium-agent for storing and accessing, among others, the network devices and local node IP addresses. This state can be inspected with the "cilium-dbg statedb" commands.
    cilium-dbg: Added "statedb ipsets" command
    cilium-dbg: "statedb sysctl-settings" is now "statedb sysctl" (#32125, @joamaki)
  • Unconditionally require the clustermesh cluster configuration to be always present (#32505, @giorio94)

Bugfixes:

  • Add missing kvstore-max-consecutive-quorum-errors option to clustermesh-apiserver/kvstoremesh binaries (#32117, @giorio94)
  • Avoids drops with "No mapping for NAT masquerade" for ICMP messages by local service backends. (#32155, @julianwiedmann)
  • bgp: service eTP=local, withdraw route when last backend on the node goes in terminating state (#32536, @harsimran-pabla)
  • Cilium BGPv1 Reconciler - Handle updated and deprecated Cidr fields for CiliumLoadBalancerIPPool (#32694, @dswaffordcw)
  • cilium-agent: Fix crash due to skipped resource cleanup when agent is stopping due to failed start. (#32673, @joamaki)
  • cilium-cni: Reserve ports that can conflict with transparent DNS proxy (#32128, @gandro)
  • cni: Reserve local ports for DNS proxy even if IPv6 is disabled (#32725, @gandro)
  • cni: Use correct route MTU when ENI, Azure or Alibaba Cloud IPAM is enabled (#32244, @learnitall)
  • egressgw: Let the EGW manager relax rp_filter on egress device (#32679, @ysksuzuki)
  • Fix bug where setting the k8sNetworkPolicy Helm value to false did not take effect (#32441, @hasan-alkama)
  • Fix DNS proxy regression from Cilium 1.15 on IPv4 only nodes (#31671, @foyerunix)
  • Fix indexing bug in the logic for picking NodePort addresses. In rare cases this may have caused wrong address to be selected for NodePort use, or an out-of-bounds access. (#32506, @joamaki)
  • Fix PromQL query in Cilium Metrics dashboard (#32017, @mikemykhaylov)
  • Fix rare race condition afflicting clustermesh when disconnecting from a remote cluster, possibly causing the agent to panic (#32513, @giorio94)
  • Fix selecting of endpoints by namespace labels in network policies (#30650, @Mugenor)
  • Fix various bugs related to restart of StatefulSet pods that may result in connectivity issues (#31605, @christarazi)
  • Fixed a bug where endpoint could become stuck due to outdated revision numbers during concurrent updates. (#32817, @ovidiutirla)
  • Fixes accidentally ignoring the preflight.nodeSelector Helm value. (#32548, @squeed)
  • helm: remove CriticalAddonsOnly toleration in preflight DaemonSet (#32682, @HongChenTW)
  • Introduce timeout when waiting for the initial synchronization from remote clusters, to avoid blocking forever necessary GC operations in case of clustermesh misconfigurations. (#32671, @giorio94)
  • ipsec: Safely delete Xfrm state (#32450, @jschwinger233)
  • proxy: Re-enable proxy rule installation in native-routing mode for CEC (#32367, @sayboras)
  • Remove deprecated hubble.ui.securityContext.enabled from hubble-ui deployment template (#32338, @stelucz)

CI Changes:

Misc Changes:

Docker Manifests

cilium

quay.io/cilium/cilium:v1.16.0-pre.3@sha256:9918241403727d99cdba7067134dc99024c8f367fc8dbeec7aa5a7c84260d8f6

clustermesh-apiserver

quay.io/cilium/clustermesh-apiserver:v1.16.0-pre.3@sha256:9348958f91942d81481878e57e6bda75463658240b51fedc9547c2024d848066

docker-plugin

quay.io/cilium/docker-plugin:v1.16.0-pre.3@sha256:446abb18b76590edb4ad35c8c410acae308030d611cb8809b58c53547afc0733

hubble-relay

quay.io/cilium/hubble-relay:v1.16.0-pre.3@sha256:41964978c06687d3db7afd29ed8205a3472c5de1d9c71a7a39b9640c651d4487

operator-alibabacloud

quay.io/cilium/operator-alibabacloud:v1.16.0-pre.3@sha256:0fbbf357ae5e62f1d0777ce34c1fb6d19e1f7b5a25c5100346d34f8cf6ad1730

operator-aws

quay.io/cilium/operator-aws:v1.16.0-pre.3@sha256:843d6c5094655448e8d1e81b46d334e00444f58bbb9e95575bd042af6871e1f0

operator-azure

quay.io/cilium/operator-azure:v1.16.0-pre.3@sha256:5682ca7ad8eea47abacad4dae2ff62d98f8f1938dcd7f17a403b673599b8b258

operator-generic

quay.io/cilium/operator-generic:v1.16.0-pre.3@sha256:565c92df436f801fa5ff3bbb8becac65114818c43e3bcaecf956c0d4c120b5a6

operator

quay.io/cilium/operator:v1.16.0-pre.3@sha256:2f114fc9627a43b435160d587e0128e0fe9256d5c0ff2dde4f703ddd807d9717