「K8S 生态周报」内容主要包含我所接触到的 K8S 生态相关的每周值得推荐的一些信息。欢迎订阅知乎专栏「k8s生态」

Docker v19.03.9 发布

Docker 在本周发布了 v19.03.9 版本,如果有在使用 Docker v19.03.x 版本的小伙伴,我个人强烈建议你更新到此版本。

在之前的「K8S 生态周报」中,我曾介绍过,自 Docker v19.03.7 开始,其 Backing Filesystem 的检查逻辑存在问题。

这会导致在执行 docker info 的时候,得到如下输出:

(MoeLove) ➜  ~ docker info --format '{{ index .DriverStatus 0 }}'  
[Backing Filesystem ]

另外,由于不能正确识别 Backing Filesystem 也会导致设置 storage quota 时报错。这个问题我早已在上游进行了修复,原计划是在 v19.03.8 中发布,不过由于 v19.03.8 是为安全修复版本发布的, 所以延迟到本次 v19.03.9 中了。

除了上面提到的这个 bug 以外,本次版本中还有些重要的修复:

  • #40780 修正了 BuildKit 中并发构建多个镜像时,可能引发的 panic;
  • #2471 修正了 Docker CLI 使用单个数字作为卷时,可能引发的 panic, 举例而言就是:
# 修正前
(MoeLove) ➜  ~ docker run -it --rm -v 1:/1 alpine
panic: runtime error: index out of range
...
# 修正后
docker run -it --rm -v 1:/1 alpine
docker: Error response from daemon: create 1: volume name is too short, names should be at least two alphanumeric characters.
  • 修复了为 Docker 通过 --bip 设置 bridge network 时, IP 地址池计算不一致的问题。

以上便是 Docker v19.03.9 中比较值得注意的变更,对此版本感兴趣的小伙伴可查看其完整的 ReleaseNote

containerd 1.4.0-beta.0 发布

这是 containerd 的第 5 个大版本(预发布版本),此版本中包含了大量的新特性和漏洞修复,我们一起来看看吧。

  • 增加了对 CGroups v2 的支持;
  • 改善了对 SELinux 的支持;
  • 增加 FUSE 挂载支持;
  • 代理快照插件支持清理行为;
  • 为快照 API 增加筛选条件;
  • 添加在 Windows 系统上 CRI 插件的支持;

在 CRI 方面,同样也做了不少的变更:

  • 添加 Windows 容器进程的隔离;
  • 更新默认的运行时为 io.containerd.runc.v2
  • 修正创建特权容器的支持;
  • 当监听到文件变化事件发生时,重启 CNI 网络配置;
  • 添加 CGroups v2 的支持;

对此版本感兴趣的小伙伴,可以查看其完整的 ReleaseNote

Istio 1.6 正式发布

Istio 也发布了 v1.6 版本,此版本中继续进行简化, Istiod 变得更加重要,与此同时,Citadel, Sidecar Injector 和 Galley 等在 v1.5 中已经被默认禁用的组件也被移除了。也移除了旧的 istio-pilot 配置等。

当然,除了移除一些不再需要的内容外,本次版本也提供了不少新的特性支持,比如增加了 istioctl install 等命令, 也添加对 Istio 自身的金丝雀更新支持(我个人认为这个特性非常好,能为大家提供更多的保障)。

对此版本感兴趣的小伙伴,可以查看其完整的 ReleaseNote

上游进展

  • #91046 Kubelet 不再注册 beta.kubernetes.io/osbeta.kubernetes.io/arch 节点标签到 api-server 中了。 这俩标签其实从 v1.14 开始就标记废弃了, 本次进行移除罢了;
  • #90061 为 CRI ImageSpec 对象添加 annotation 支持,主要是处于对 Windows 平台的考虑;

题外话

上周我儿子出生了,我一直在医院陪护来着,所以「K8S 生态周报」停更了一期,感谢大家的理解和支持~本周恢复正常更新。

(新手奶爸练级中~


欢迎订阅我的文章公众号【MoeLove】

TheMoeLove