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

Kubernetes 两个重要漏洞修复

最近 Kubernetes 发布了 1.13.9, 1.14.5, 和 1.15.2 版本,旨在修复两个重要漏洞对 Kubernetes 带来的影响, 强烈建议将集群及 kubectl 进行升级

CVE-2019-11247 简单来说其影响就是可以访问单个命名空间中的自定义资源的用户可以访问具有集群范围的自定义资源。当然,这里的修正主要是 针对 CRD 。核心的修正代码如下:

    var possiblyAcrossAllNamespacesVerbs = sets.NewString("list", "watch")
	namespacedCRD, namespacedReq := crd.Spec.Scope == apiextensions.NamespaceScoped, len(requestInfo.Namespace) > 0
	if !namespacedCRD && namespacedReq {
		r.delegate.ServeHTTP(w, req)
		return
	}
	if namespacedCRD && !namespacedReq && !possiblyAcrossAllNamespacesVerbs.Has(requestInfo.Verb) {
		r.delegate.ServeHTTP(w, req)
		return
	}

当未通过检查时,delegate 将会触发一个 404 。对此问题感兴趣的朋友可以查看 #80983

CVE-2019-11249 则是对于之前暴出来的使用 kubectl cp 可进行恶意目录浏览的漏洞 CVE-2019-1002101 和 CVE-2019-11246 的不完整修复。有兴趣可以参考 #80436

CoreDNS v1.6.1 发布

主要是修复了 host 插件的错误处理;reload 插件也可以检测 Corefile 中导入的文件的变化了。

更多关于此版本的信息请参考 ReleaseNote

NGINX Ingress Controller 1.5.3 发布

这个版本其实没啥说的,把 NGINX Plus 版本更新到了 R18p1. 升级的话,直接修改镜像的 tag 到 1.5.3 或者 Helm chart 使用 0.3.3 版本即可。

Kubernetes 上游开发进展

1.16 将会有 39 项特性增强,看现在的发布进度也还算是按照预期的,期待后续顺利。

最近合并的 PR 中我认为值得注意的是 #80231 AdmissionReview 版本至 v1 这里没有 schema 的变化,但是所有的系统都将接收 v1 版本的对象和数据,当发送回 v1 响应的时候,响应验证比 beta 时候更加严格。

注意,现在要使用的 API 版本是 apiVersion: "admission.k8s.io/v1" 如果升级的话,请注意检查对应代码的变化。


可以通过下面二维码订阅我的文章公众号【MoeLove】,在公众号后台回复 k8s 可加入技术圈交流。

TheMoeLove