作者 | 陈俊、张晓宇、徐迪

业界要闻

KubeCon 2019 北美会议召开

业界最隆重的盛会 KubeCon+CloudNativeCon 今年在圣地亚哥举办,超过 12000 名参会者以及 100 多个云原生供应商出席了这次大会。本次大会中阿里巴巴经济体共有 8 个 Topic 亮相。

上游重要进展

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

“阿里巴巴云原生微信公众号(ID:Alicloudnative)关注微服务、Serverless、容器、Service Mesh等技术领域、聚焦云原生流行技术趋势、云原生大规模的落地实践,做最懂云原生开发者的技术公众号。”

KubeCon 2019 北美会议完美落幕 | 云原生生态周报 Vol. 29的更多相关文章

  1. 云原生生态周报 Vol. 3 | Java 8 ❤️ Docker

    摘要: Docker Hub遭入侵,19万账号被泄露:Java 8 终于开始提供良好的容器支持:Snyk 年度安全报告出炉,容器安全问题形势空前严峻. 业界要闻 Docker Hub遭入侵,19万账号 ...

  2. 云原生生态周报 Vol. 5 | etcd性能知多少

    业界要闻 1 Azure Red Hat OpenShift已经GA.在刚刚结束的Red Hat Summit 2019上,Azure Red Hat OpenShift正式宣布GA,这是一个微软和红 ...

  3. [转帖]Kubernetes v1.17 版本解读 | 云原生生态周报 Vol. 31

    Kubernetes v1.17 版本解读 | 云原生生态周报 Vol. 31 https://www.kubernetes.org.cn/6252.html 2019-12-13 11:59 ali ...

  4. 云原生生态周报 Vol. 6 | KubeCon EU 特刊

    5 月 26日,2019 年第一个 KubeCon + CloudNativeCon 在巴塞罗那成功闭幕.本届 KubeCon 共吸引了超过 7700 名与会者,相较去年哥本哈根大会的 4300 余名 ...

  5. AWS re:Invent 2019 召开 | 云原生生态周报 Vol. 30

    作者 | 何淋波.宋净超.徐迪 业界要闻 1. AWS re:Invent 2019 AWS 年度云计算盛会于 12.2-12.6 在拉斯维加斯举行. 技术分享超过 2500 场,技术方向涵盖数据分析 ...

  6. 2019 年容器生态统计报告发布 | 云原生生态周报 Vol. 26

    作者 | 酒祝.天元.元毅.心水.衷源 业界要闻 1.2019 年容器生态统计报告发布  据报告显示,Kubernetes 占据 77% 的容器编排产品份额,Docker 占据 79% 的容器引擎产品 ...

  7. 云原生生态周报 Vol. 19 | Helm 推荐用户转向 V3

    作者| 禅鸣.忠源.天元.进超.元毅 业界要闻 Helm 官方推荐用户迁移到 V3 版本 Helm 官方发布博客,指导用户从 v2 迁移到 v3,这标志着官方开始正式推进 helm 从 v2 转向 v ...

  8. Helm 3 发布 | 云原生生态周报 Vol. 27

    作者 | 墨封.元毅.冬岛.敖小剑.衷源 业界要闻 1.Helm 3 发布 美国时间 11 月 13 日,Helm 团队发布 Helm 3 第一个稳定版本.Helm 3 以 Helm 2 的核心特性为 ...

  9. Mirantis 收购 Docker | 云原生生态周报 Vol. 28

    作者 | 禅鸣.进超.心水.心贵 业界要闻 Docker 将 Docker Enterprise 卖给 Mirantis Mirantis 是一家扎根于 OpenStack 的云公司,最近专注于 Ku ...

随机推荐

  1. vue 动态数据绑定

    动态数据绑定(一) 我的github iSAM2016 实现的步骤: 1.监听对象属性的读取与变化 Object.defineProperty() 方法会直接在对象上定义一个新的的属性,或者已经存在的 ...

  2. 搭建 webpack + react 框架爬坑之路

    由于工程实践需要搭一个 webpack + react 框架,本人刚开始学,就照b站上的react黑马视频做,爬过无数个坑...希望读者能引以为戒.我的是macos系统 https://www.bil ...

  3. 彻底理解Python多线程中的setDaemon与join【配有GIF示意】

    在进行Python多线程编程时, join() 和 setDaemon() 是最常用的方法,下面说说两者的用法和区别. 1.join () 例子:主线程A中,创建了子线程B,并且在主线程A中调用了B. ...

  4. 设计模式(二十二)Command模式

    一个类在进行工作时会调用自己或者是其他类的方法,虽然调用结果会反映在对象的状态中,但并不会留下工作的历史记录. 这时,如果我们有一个类,用来表示“请进行这项工作”的“命令”就会方便很多.每一项想做的工 ...

  5. 数据后台管理(五)AOP日志

    为了增加数据的安全性,在数据管理的过程中,我们需要将操作者访问时间,操作者的名称,访问的IP,访问资源的URL,执行时长,访问方法记录下来存储到数据库中,并可以通过页面查看. 1.将日志信息存储到数据 ...

  6. python argparse:命令行参数解析详解

    简介 本文介绍的是argparse模块的基本使用方法,尤其详细介绍add_argument内建方法各个参数的使用及其效果. 本文翻译自argparse的官方说明,并加上一些笔者的理解 import a ...

  7. ProvisionedAppxPackage VS AppxPackage

    正文 先来说说问题的由来. 在 Preinstall 的 component 中,有一支 component 叫做 MS_StartApp,这个 component 的行为是在预安装时为目标机器装入一 ...

  8. NLP预训练模型-百度ERNIE2.0的效果到底有多好【附用户点评】

    ERNIE是百度自研的持续学习语义理解框架,该框架支持增量引入词汇(lexical).语法 (syntactic) .语义(semantic)等3个层次的自定义预训练任务,能够全面捕捉训练语料中的词法 ...

  9. 如何实现一个MVVM

    说一说我对于mvvm模型的理解吧 我第一次接触mvvm也是在学习vue的时候,在我看来vue和react都是数据驱动视图,但是vue属于标准的mvvm模型,react是从组件化演变而来 不多废话,直接 ...

  10. jquery 路径动画贝塞尔动画

    jquery 路径动画贝塞尔动画 <pre><!DOCTYPE html><!DOCTYPE html><html> <head> < ...