「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:[email protected]: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】

TheMoeLove