「K8S 生态周报」内容主要包含我所接触到的 K8S 生态相关的每周值得推荐的一些信息。欢迎订阅知乎专栏「k8s生态」。
Helm v2.16.5 发布
鉴于还有不少人尚未升级至 Helm v3,虽然 Helm v2 目前在维护期,但仍然在频繁在发布版本。
本周 Helm v2 相继发布了 v2.16.5 和 v2.16.4, 如果打算升级的话,建议直接升级至 v2.16.5 。
因为 v2.16.4 版本中在 Validate()
中误添加了一个 Latest()
,会导致在安装或升级 Release 时,出现资源找不到的错误。
例如:
Release "moelove-release" does not exist. Installing it now.
Error: namespaces "moelove-namespace" not found
更多详情请参考其 ReleaseNote 。
Kubernetes v1.18 正式发布
这是 Kubernetes 今年第一个正式发布的版本,v1.18 包含了 38 个增强功能,其中包含 15 个 stable 状态的,11 个在 beta ,最后剩余 12 个还是 alpha 阶段。
这个版本在改善用户体验,以及稳定性方面做了大量的工作。 至于具体的变化,请参考我上周发布的文章 《Kubernetes v1.18 正式发布!抢先一览》 。
对此版本感兴趣的小伙伴,可以直接使用 Kind 进行安装体验。示例如下:
(MoeLove) ➜ ~ wget -q -O kind https://github.com/kubernetes-sigs/kind/releases/download/v0.7.0/kind-linux-amd64
(MoeLove) ➜ ~ chmod +x kind
(MoeLove) ➜ /tmp ./kind create cluster --image=kindest/node:v1.18.0@sha256:0e20578828edd939d25eb98496a685c76c98d54084932f76069f886ec315d694 --name=v1.18
Creating cluster "v1.18" ...
✓ Ensuring node image (kindest/node:v1.18.0) 🖼
✓ Preparing nodes 📦
✓ Writing configuration 📜
✓ Starting control-plane 🕹️
✓ Installing CNI 🔌
✓ Installing StorageClass 💾
Set kubectl context to "kind-v1.18"
You can now use your cluster with:
kubectl cluster-info --context kind-v1.18
Not sure what to do next? 😅 Check out https://kind.sigs.k8s.io/docs/user/quick-start/
(MoeLove) ➜ ~ kubectl get nodes
NAME STATUS ROLES AGE VERSION
v1.18-control-plane Ready master 109s v1.18.0
更详细内容请参考其 ReleaseNote
CoreDNS v1.6.9 发布
CoreDNS 发布了 v1.6.9 版本,这个版本的发布主要是由于在发布 v1.6.8 时,自动化发布工具遇到了点问题。如果你仔细去看 ReleaseNote 你会发现两个版本的 ReleaseNote 基本是一样的内容。本次发布其实就是为了修正自动化发布工具。
所以,我们一起看看 CoreDNS v1.6.9 (或者说 v1.6.8) 中,有哪些值得注意的内容吧:
- #3640 plugins/forward: 增加了一个
max_concurrent
的配置项,可通过这个配置项做并发控制。同时也在 metrics 中增加了max_concurrent_reject_count_total{}
用于统计由于达到最大并发限制而被拒绝的请求; - #3687 plugin/kubernetes:在 PTR 类型的请求中,返回查找到的所有的 IP 而不是只返回第一个;
- #3643 plugin/forward:通过添加健康检查来避免创建新的 TLS 连接。当 forward 检查到错误的时候,健康检查将会在一个循环中运行,初始间隔是 0.5s,之后会持续增长至 60s,报告上游不健康。当上游恢复健康时,健康检查将会停止。
上游进展
#89069 终止对 basic authentication 的支持,
--basic-auth-file
被彻底移除,这个特性其实在 v1.16 中就已经被弃用了,如果有用到该特性的朋友,请尽快更换其他方式。另外,对 basic authentication 的支持,大概是从 2015 年加入的,至今将近 5 年左右的时间,也算是很辉煌了。#89377 CVE-2020-8551: Kubelet DoS via API 和 #89378 CVE-2020-8552: apiserver DoS (oom) 是近期的两个非常值得关注的漏洞。几乎是所有版本均会收到漏洞的影响,请及时将小版本更新至 v1.17.3 ,v1.16.7 和 v1.15.10 。
欢迎订阅我的文章公众号【MoeLove】