“K8S Ecology Weekly” mainly contains some recommended weekly information related to K8S ecology that I have come into contact with. Welcome to subscribe zhihu column “K8S Ecology”.

Runc V1.0 is released

It has been five years since the release of V1.0-RC1 in June 2016, and runC has gone through multiple RC releases to finally release V1.0. Please refer to my previous article, runC V1.0 is Finally Released after 5 years of Open Source projects! . Here’s a look at some of the notable changes introduced in the new version of V1.0.

Disruptive change

  • # 2999Delete thelibcontainer/configs.Device*Identifier, please uselibcontainer/devices.*To replace (deprecated since V1.0-RC94);
  • # 2999Delete thelibcontainer/system.RunningInUserNSFunction, please uselibcontainer/userns.RunningInUserNSFunction replacement (also deprecated since V1.0-RC94);

To improve the

  • # 2994 在 runc update“Is setSkipDevices, so we won’t update cGroups in the meantime;
  • #3010 Cgroup1-related blkio supports BFQ weight. Note that CFQ has been removed from Linux in 2018. Releases such as RHEL 8.0 and Ubuntu 19.01 released in 2019 also use BFQ instead of CFQ. Linux kernel BFQ and CFQ have lower latency and throughput than CFQ.

See ReleaseNote for more information about the changes in this release, now that the Docker/ Containerd and other projects have upgraded runc dependencies to V1.0, the K8S project has not been merged.

Prometheus V2.28 was released

Prometheus V2.28 has seen a significant improvement in the user experience, so here’s what to look for:

  • The PromQL editor will be enabled by default. I introduced the PromQL editor earlier in K8S Ecology. Here is an image to see its auto-complete, highlighting and linting capabilities.

  • And the metrics browsing window, why mention it again? Because I think it’s very practical. In previous releases, I either had to remember what metrics were available in advance, or I went directly to the Metrics interface under curl request to see what metrics were available. For now, just browse.

  • This demonstrates the Trace exemplar, which looks like this:

    This function is quite convenient, I can introduce it in detail when I have time. (flag + 1)

  • An HTTP-based service Discovery was added, which is useful in that it is no longer required to be component-specific, but to register content returned by the HTTP interface in the format required by Prometheus.

  • Kubernetes SD added a new ingress class name field, such as Apache APISIX Ingress Controller, from Prometheus. {__meta_kubernetes_ingress_class_name: apisix};

For more information about changes to this release, see its ReleaseNote

Kubernetes v1.22.0 – beta. 0release

As Kubernetes V1.22 continues to be iterated and released, let’s take a look at some of the notable changes in V1.22.0-beta. 0.

abandoned

  • --hard-pod-affinity-symmetric-weight--scheduler-nameRemoved from Kube-Scheduler (deprecated since v1.18);

API changes

  • #99597 Kube-Component Config now uses the V1beta2 API, which means three plug-ins are deprecated. NodeLabel, ServiceAffinity, and NodePreferAvoidPods;
  • Network Policy EndPort has reached beta level and will be enabled by default.

features

  • #101316 added a minReadySeconds parameter to StatefulSet, which allows you to set the minimum ready time for STS so that traffic is not prematurely diverted before Pod is ready.
  • # 102722For the kubeadmkubeadm initincreased--dry-runThe options;
  • # 102466CoreDNS for kubeadm deployment was upgraded to V1.8.4 and grantedEndpointSliceList and Watch permissions of

bugfix

  • 102840 Modified Reason and Message of Graceful Node Shutdown Pod as follows:

    - nodeShutdownReason = "Shutdown"
    - nodeShutdownMessage = "Node is shutting, evicting pods"
    - nodeShutdownNotAdmitMessage = "Node is in progress of shutting down, not admitting any new pods"
    + nodeShutdownReason = "Terminated"
    + nodeShutdownMessage = "Pod was terminated in response to imminent node shutdown."
    + nodeShutdownNotAdmittedReason = "NodeShutdown"
    + nodeShutdownNotAdmittedMessage = "Pod was rejected as the node is shutting down."
    Copy the code

See its ReleaseNote for more information on changes to this release


Please feel free to subscribe to my official account [MoeLove]