「K8S 生态周报」内容主要包含我所接触到的 K8S 生态相关的每周值得推荐的一些信息。欢迎订阅知乎专栏「k8s 生态」 ( https://zhuanlan.zhihu.com/container )。
1
CoreDNS v1.7.0 发布
CoreDNS 本周发布了 v1.7.0 版本, 这是一个向后不兼容的版本。主要包含了以下几个方面:
#3776 ( https://github.com/coredns/coredns/pull/3776 )更好的 metrics 名称,其修改了大量的 metrics 名称,Dashborad 之类的都需要修改了。例如:coredns_request_block_count_total -> coredns_dns_blocked_requests_total
#3794 ( https://github.com/coredns/coredns/pull/3794 ) federation 插件已经被移除 (v1 Kubernetes federation);
从 kubernetes 插件中删除了一些代码, 所以它不会作为外部插件构建;
#3534 ( https://github.com/coredns/coredns/pull/3534 ) 新的 dns64 插件,由外部转为内置插件,该插件提供了 DNS64 IPv6 地址转换机制;
#3737 ( https://github.com/coredns/coredns/pull/3737 ) plugin/kubernetes: 移除了已经过期的 resyncperiod 和 upstream 选项;
以上便是此版本中值得注意的变更,更多详细内容请参看其 ReleaseNote ( https://coredns.io/2020/06/15/coredns-1.7.0-release/ )
2
Helm v3.2.4 发布
这是一个安全更新版本,主要是为了修正一个漏洞,该漏洞影响了 v3.2.4 之前所有 Helm v3 版本。漏洞号为 CVE-2020-4053 ( https://github.com/helm/helm/security/advisories/GHSA-qq3j-xp49-j73f )
此漏洞的具体影响范围是,当通过 HTTP 的方式从远程来安装一个 Plugin 的时候,可能会发生文件目录的遍历攻击。攻击者可能会在恶意插件中包含相对路径,以此来将攻击文件复制到预期的文件目录之外。
这是一种很常见的攻击方法,在之前的「K8S 生态周报」文章中,我也介绍过类似的利用这种文件目录遍历的漏洞。
修正方式也很简单,对于文件的解压操作,判断是否包含相对路径,如果有,则抛出异常(这里主要是为了警示用户,其安装的内容中可能有恶意行为)。
对此版本感兴趣的朋友,可以直接下载 ( https://github.com/helm/helm/releases/tag/v3.2.4 ) 使用。
3
Istio v1.6.3 发布
本周 Istio 发布了 v1.6.3 ,此版本的主要变更如下:
#24264 ( https://github.com/istio/istio/issues/24264 ) 修复了 istio 崩溃信息为 proto.Message is *client.QuotaSpecBinding, not *client.QuotaSpecBinding 的问题;
#24365) ( https://github.com/istio/istio/pull/24365 ) 修正了 SidecarInjectionSpec CRD, 从 .Values.global 阅读 imagePullSecret;
#24469) ( https://github.com/istio/istio/issues/24469 ) 当 gateway.runAsRoot 开启时,从 PodSecurityContext 移除了无效的配置;
更多关于此版本的信息,请参考其 ReleaseNote ( https://istio.io/latest/news/releases/1.6.x/announcing-1.6.3/ ) 。
4
Rook v1.3.6 发布
Rook 已经提交了从 CNCF 托管项目中毕业的申请,可能还需要一段时间才能毕业吧。
我们来看看本次 Rook v1.3.6 版本的更新内容:
#5603 ( https://github.com/rook/rook/pull/5603 ) 将 CSI 驱动升级到了 v2.1.2;
#5309 ( https://github.com/rook/rook/issues/5309 ) 修复了 template size 增加时,OSD PVC size 不增加的问题;
#5595 ( https://github.com/rook/rook/pull/5595 ) 修改了 svc port 的名称,需求主要来自想要将 rook 与 Istio 集成,其中 kiali 要求 port 名称必须有个协议前缀,具体信息请参考 https://kiali.io/documentation/validations/#_kia0601_port_name_must_follow_protocol_suffix_form ( https://kiali.io/documentation/validations/#_kia0601_port_name_must_follow_protocol_suffix_form ) ;
#5606 ( https://github.com/rook/rook/pull/5606 ) 修正了小集群(比如 OSD 为 3) 当 OSD 更新时,获取的 OSD 数量不准确的情况;
更多关于此版本的详细信息,请参考其 ReleaseNote ( https://github.com/rook/rook/releases/tag/v1.3.6 )
5
上游进展
#90569 ( https://github.com/kubernetes/kubernetes/pull/90569 ) kubectl run 增加了一个 --privileged 的参数;
#91952 ( https://github.com/kubernetes/kubernetes/pull/91952 ) 为 kubeadm join 增加了一个重试的循环, 默认写超时是 40 s, 读超时是 15s ;
欢迎订阅我的文章公众号【MoeLove】