云原生生态周报 Vol. 29:Kubernetes 拟支持 Cgroup v2

阅读数:1366 2019 年 11 月 29 日 14:13

云原生生态周报 Vol. 29:Kubernetes 拟支持 Cgroup v2

前言

《云原生生态周报》由阿里云容器平台联合蚂蚁金服共同发布,每周一期。众多一线社区专家与您一起“跟踪动态,读懂社区”,分享云原生社区项目进展、活动发布、精选博客等信息。以下是第二十九期云原生生态周报的内容。

业界要闻

KubeCon 2019 北美会议召开

业界最隆重的盛会 KubeCon+CloudNativeCon 今年在圣地亚哥举办,超过 12000 名参会者以及 100 多个云原生供应商出席了这次大会。

上游重要进展

1. Kubernetes 拟加入对 Cgroup v2 的支持

Kubernetes 的 Kubelet 和 Scheduler 拟加入对 Cgroup v2 的支持。 Cgroup v2 的一个大的特性是可以用非 root 用户操作做资源限制。该 KEP 的实现和下文的 《使用非 root 权限模式运行 Kubernetes 组件》KEP 息息相关。

2.使用非 root 权限模式运行 Kubernetes 组件

目前有众多的厂商尝试使用非 root 的模式去运行 kubelet 组件和 CRI/OCI/CNI,但是因为一些接口需要使用 root 的权限不能实现。此 KEP 着重去改善 kubelet、kube-proxy 对于这方面的限制,同时 CRI/OCI/CNI 也有相关的工作去推进可以使用非 root 模式运行。

3.提供 Immutable 模式的 ConfigMap/Secret(s)

建议使用 Immutable 的 ConfigMap/Secret 有两个原因:

  • 一是 Pod 使用 ConfigMap/Secret 的模式一般是通过 Volume Mounts 的方式,而 Kubelet 会通过 Watch/Poll 的方式去获取 ConfigMap/Secret 更新,同时同步更新到 Pod 的挂载文件,这种 Pod 能够快速、无感地获取到 ConfigMap/Secret 更新。但这种更新是一把双刃剑,一次错误的更新 ConfigMap/Secret 可能会导致 Pod 加载错误配置从而导致所有 Pod 异常。我们更推荐使用 Rolling Update 的方式,创建一个新的 ConfigMap/Secret 同时创建新的 Pod 去引用新的 ConfigMap/Secret。

  • 第二个是在大规模集群内,Kubelet 过多的 Watch/Poll 大量的 ConfigMap/Secret 会给 API Server 造成巨大的压力(尽管我们在这个 PR 中为每个 Watch 请求降低了一个 Goruntine 的消耗)。 而使用了 Immutable 的 ConfigMap/Secret,Kubelet 就不会为他们建立 Watch/Poll 请求。

开源项目推荐

1. cert-manager

使用 CRD 的模式在 Kubernetes 集群内管理证书的签发和 CA Issuer。cert-manager 的一个较大的优势是支持 Kubernetes 集群内多 Issuer 的存在。

2. extended-daemonset

相比 Kubernetes 的 Daemonset,它提供了金丝雀发布以及更加丰富的升级策略。

3. watermarkpodautoscaler(WPA)

基于水位线算法的 Pod AutoScaler,相比 HPA,它提供更加丰富的算法、同时能控制 Scale 的速率和策略。

本周阅读推荐

1.《混合云关键技术能力和发展趋势》

单一的公有云、私有云提供了很强的计算能力,计算所需要的数据则由边缘云搜集并传输到公有云、私有云。将边缘云、公有云、私有云,无论是管理面还是数据层面打通,是未来混合云发展的趋势。

2.《K8s v1.17 新特性:拓扑感知服务路由》

拓扑感知服务路由可以实现 Service 就近转发,减少网络延时,进一步提升 K8s 的网络性能,此特性将于 K8s v1.17 发布 Alpha,时间是 12 月上旬,让我们一起期待吧!

3.《Debugging network stalls on Kubernetes》

Kubernetes 已经成为 Github 管理资源和应用的平台,而 Github 的 Kubernetes 随着集群规模的增大,也遇到了头疼的 Service 的网络问题。该文 Github 为我们很好的提供了当集群内的 Service “网络不可用”时,我们该如何调试和找到问题根源。

4.《4 个概念,1 个动作,让应用管理变得更简单》

随着以 K8s 为主的云原生基础架构遍地生根,越来越多的团队开始基于 K8s 搭建持续部署、自助式发布体验的应用管理平台。然而,在 K8s 交付和管理应用方面,目前还缺乏一个统一的标准,这最终促使我们与微软联合推出了首个云原生应用标准定义与架构模型 - OAM 。本文作者将从基本概念以及各个模块的封装设计与用法等角度出发来详细解读 OAM。

5.《从微服务跨越到中台,架构领域年度盘点!》

2019 年,整个 IT 领域发生了许多深刻而又复杂的变化,本文作者希望能够根据本篇文章给读者清晰地梳理出架构领域技术这一年的发展变化,回顾过去,继续前行。

相关阅读

云原生生态周报 Vol. 28:Mirantis 收购 Docker 企业业务
云原生生态周报 Vol. 27:Helm 3 发布
云原生生态周报 Vol. 26:2019 年容器生态统计报告发布
云原生生态周报 Vol. 25:Canonical 开源 MicroK8
云原生生态周报 Vol. 24:Ubuntu 19.10 发布
云原生生态周报 Vol. 23:全球首个开放应用模型 OAM 开源
云原生生态周报 Vol. 22:Knative 暂时不会捐给任何基金会
云原生生态周报 Vol. 21:Traefik 2.0 正式发布
云原生生态周报 Vol. 20:Kubernetes v1.16 发布
云原生生态周报 Vol. 19:Helm 推荐用户转向 V3
云原生生态周报 Vol. 18:独家解读 etcd 3.4 新特性
云原生生态周报 Vol. 17 :Helm 3 发布首个 beta 版本
云原生生态周报 Vol. 16:CNCF 归档 rkt,容器运行时“上古”之战老兵凋零
云原生生态周报 Vol. 15:K8s 安全审计报告发布
云原生生态周报 Vol. 14:K8s CVE 修复指南
云原生生态周报 Vol. 13 | Forrester 发布企业级容器平台报告
云原生生态周报 Vol. 12 |K8s 1.16 API 重大变更
云原生生态周报 Vol. 11 | K8s 1.16 早知道
云原生生态周报 Vol. 10 | 数据库能否运行在 K8s 当中?
云原生生态周报 Vol. 9 | K8s 1.15 后的性能提升
云原生生态周报 Vol. 8 | Gartner 发布云原生趋势
云原生生态周报 Vol. 7 | Docker 再爆 CVE
云原生生态周报 Vol. 6 | KubeCon EU 亮点汇总
云原生生态周报 Vol. 5 | etcd 性能知多少
云原生生态周报 Vol.4 | Twitter 从 Mesos 全面转向 Kubernetes
云原生生态周报 Vol. 3 | Docker Hub 遭入侵,Java 8 开始提供良好的容器支持
云原生生态周报 Vol. 2 | Godaddy 开源 KES、CNCF 提供免费云原生课程
云原生生态周报 Vol. 1 | Google 发布 Cloud Run,开源项目 Kubecost 让 K8s 花费一目了然

本文转载自阿里巴巴云原生微信公众号(ID:Alicloudnative)。

评论

发布