作者 | 陈洁、高相林、陈有坤、敖小剑

业界要闻

  1. Argo 项目加入 CNCF 孵化器

Argo 项目是一组 Kubernetes 原生工具,用于运行和管理 Kubernetes 上的作业和应用程序。目前由 Argo Workflows,Argo Events,Argo CD 和 Argo Rollouts 四个子项目组成。4 月 8 日,CNCF 技术监督委员会(Technical Oversight Committee,TOC)投票决定接受 Argo 作为孵化级别的托管项目。

  1. Argo CD v1.5 release

Argo CD 发布 v1.5 版本,v1.5 在性能上进行了大幅度的优化,同时降低了对 APIServer 的压力;此外,v1.5 还对 Helm 3 charts 进行了支持。

  1. CloudNativeSummit 召开

4 月 7 日,CloudNative 峰会在 youtube 上通过直播形式召开,峰会主要介绍了 CNCF 毕业项目(包括 Kubernetes,Prometheus,Envoy,Jaeger 等)的最新进展以及讨论未来在云原生技术上的一些新的动向。

  1. CNCF 发布疫情期间健康工作指导

受 COVID-19 疫情影响,大多数人开启了居家办公模式,社交关系拉远,不管是对身体健康还是心理健康都有所影响。CNCF Well-Being Working Group 提供了一份疫情期间工作指导,包括一些常见问题的解答以及建议。

  1. COVID-19 : 延长对 Helm v2 的错误修复

因 COVID-19,Helm 维护人员决定延长 Helm v2 的 Bug 修复服务时间。

上游重要进展

  1. Even with build error, kubectl apply should apply all valid resources

优化了 kubectl apply 的逻辑,尽可能多的 apply YAML 中的有效资源。

  1. kubelet add initial support for cgroupv2

支持在 cgroup v2 unified mode 的机器上跑 kubelet。同时做了 cpu.shares(阈值为 2-262144 )到 cpu.weight(阈值为 1-10000)的转换。

  1. apiserver: add a metric exposing etcd database size 

在 apiserver 端暴露了一个 etcd db size 使用量的 metric。

  1. Fix SelectorFromSet: add a ValidatedSelectorFromSet

解决了一个没有对 Selector 结果进行校验的 Bug。目前使用 labels.SelectorFromSet,如果解析失败(例如 label value 误填了一个很长的值),会返回一个空的 Selector,从而导致所有的资源被筛选出。

  1. Reduce locking when calculating affinity scores

调度器优化了计算亲和性分数时的性能,将循环内部的一个读写锁移到了 goroutine 最外层(优化了锁粒度)。

  1. apiextensions: wait for complete discovery endpoint

使用 discovery endpoint 时会等待 CRD 同步状态完毕后再上报 readiness,解决了 discovery enxpoint 启动后会短暂不可用的问题。

  1. Add pod-level process stats to the summary API for out-of-pid eviction

Kubelet 进行 out-of-pid eviction 时,目前仅利用 PodPriority 来进行排序,这个 KEP 计划加入更多进程级别数据(例如 Pod 内进程数)来进行 eviction。

  1. HPA scaling based on container resources

支持基于容器级别资源来进行 autoscaling,原因是目前单个 Pod 中可能存在以下特殊场景:

  • 多个容器有不同的资源阈值;
  • 有多个容器,但是 autoscaling 只基于单个容器的资源阈值。
  1. knative 暴露 Downward API

这个设计文档主要是考虑如何实现,列出了四种方法以及他们的优缺点,四种方法分别是直接使用 K8s 的定义,直接放到环境变量,使用 annotation描述,使用 Knative 自定义的描述。

  1. 移除 Galley 和 MCP Source

Istio Networking 工作组的最新讨论结果,决定从 Istio1.6 之后移除 Galley:Galley 原有的职责验证(validation)和状态控制器(status controllers)已经合并到 Istiod,而 Galley 剩余的职责 MCP Source 将被直接删除。备注:MCP 功能还存在,Istiod 保留有 MCP sync 的角色。

开源项目推荐

  1. BotKube

BotKube 是一个监控 Kubernetes 集群并提供告警服务的应用,支持推送消息至 Slack,Mattermost 以及ElasticSearch。它通过规则过滤 Kubernetes 事件并进行定向报警。另外还提供对当前集群中的资源做一些固定的 YAML 检查。

  1. PrometheusAlert

PrometheusAlert 是一个运维告警中心消息转发系统,支持主流的监控系统 Prometheus , Zabbix , 日志系统 Graylog 和数据可视化系统 Grafana 发出的预警消息,支持钉钉等各种主流告警方式。

  1. YugabyteDB

一个高性能、云原生的分布式 SQL 数据库,适用于云原生 OLTP 应用,具有较高的拓展性、容错性以及支持异地容灾。

本周阅读推荐

  1. 《How to detect outdated Kubernetes APIs》

随着 Kubernetes 版本迭代,有一部分 API 被逐渐 deprecate 。这篇文章介绍了如何用 Deprek8 ,一个基于 Open Policy Agent 规则的工具,对你仓库中的 YAML 是否引用 deprecated API 进行检测。

  1. 《quality of service and oom in Kubernetes》

文章详细介绍了 Kubernetes 中的 QoS 机制,并介绍了 OOM 发生后,Linux Kill 进程的过程以及 Kubernetes 如何 evict Pod。

  1. 《A primer: Continuous Integration and Continuous Delivery (CI/CD) 》

文章深入探讨了 CI/CD 的关键点,包括版本控制、开发分支与模式、发布流水线以及自动化测试等。

  1. 《Kubernetes 1.18 Feature Server-side Apply Beta2》

介绍了 Kubernetes 1.18 中在 Server-side Apply 上新增的特性。1.18 中增加了 managedFields,所有 server-side apply 都被记录在 mangedFields 中,包括修改的字段、修改时间以及修改人。

云原生网络研讨会邀您参加

点击立即预约直播

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

Argo 项目加入 CNCF 孵化器 | 云原生生态周报 Vol. 45的更多相关文章

  1. 阿里巴巴 Kubernetes 能力再获 CNCF 认可 | 云原生生态周报 Vol. 32

    作者 | 丁海洋  陈有坤 李鹏  孙健波 业界要闻 阿里巴巴 Kubernetes 技术能力再获 CNCF 认可 CNCF 官网发布博文<Demystifying Kubernetes as ...

  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. 3 | Java 8 ❤️ Docker

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

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

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

  6. 云原生生态周报 Vol. 8 | Gartner 发布云原生趋势

    业界要闻 Gartner 发布云原生基础设施未来的八大趋势:权威分析机构 Gartner 在对 2020 年技术趋势的展望当中指出:“预计2020年所有领先的容器管理软件均内置服务融合技术,到2022 ...

  7. Falco 进入 CNCF Incubator 项目 | 云原生生态周报 Vol. 35

    作者 | 王思宇.陈洁.敖小剑 业界要闻 Falco 进入 CNCF Incubator 项目 原于 2018 年 8 月进入 sandbox,旨在 Kubernetes 运行时环境下支持配置规则来加 ...

  8. CNCF 宣布 TUF 毕业 | 云原生生态周报 Vol. 33

    作者 | 孙健波.汪萌海.陈有坤.李鹏 业界要闻 CNCF 宣布 TUF 毕业 CNCF 宣布 TUF(The update Framework)项目正式毕业,成为继 Kubernetes.Preme ...

  9. Knative 暂时不会捐给任何基金会 | 云原生生态周报 Vol. 22

    作者 | 新胜.心贵.进超.元毅.衷源 业界要闻 谷歌:不会向任何基金会捐赠 Knative 自 Knative 项目开始以来,一直存在关于是否将 Knative 捐赠给基金会(例如 CNCF)的疑问 ...

随机推荐

  1. Docker虚拟化管理:30分钟教你学会用Docker

    关于Docker的官方介绍网上太多了我就不贴了,就实际体验来说Docker可以极大的简化环境搭建及服务部署的操作流程,大大降低部署的时间成本,解放你的双手. 本文不会深入讲解Docker底层架构及运行 ...

  2. Hardware Introduction

    计算机硬件组成可以概括为下图: CPU CPU生产商主要是Intel和AMD. Intel的产品主要有四种: Celeron(赛扬):低端处理器 Pentium(奔腾):比赛扬强,比酷睿弱 Xeon( ...

  3. Python(Redis 中 Set/Zset 类型数据和其他操作)

    1.redis 基本操作命令 Set 操作 Set 集合就是不允许重复的列表 无序集合 sadd(name,values) 给 name 对应的集合中添加 1 个或多个元素 import redis ...

  4. Mysql 远程连接错误排查

    1. 测试本地与远程服务器端口能否连通 telnet  远程IP  端口号 telnet 192.168.1.1 3306 2.如果是在aliyun或者aws云服务器上自建数据库 2.1 在安全组里开 ...

  5. E - 梦幻岛宝珠 HYSBZ - 1190 变形01背包 难

    E - 梦幻岛宝珠 HYSBZ - 1190 这个题目我觉得很难,看题解都看了很久. 首先可以得到一个大概的思路就是分组,每一个数都可以分成 a*2^b  所以把b相同的数都分成一个组. 在每一组内部 ...

  6. Java基础-数据类型的拓展

    整数拓展:进制 二进制 0b开头 十进制 八进制 0开头 十六进制 0x开头 0~9 A~F 16 int i = 10; int i1 = 010;//八进制 0开头 int i2 = 0x10;/ ...

  7. .Net Core WPF之XAML概述

    原文链接,机器翻译,有误处参看原文. XAML overview in WPF 2019/08/08 What is XAML XAML syntax in brief Case and white ...

  8. 排序算法整理(Python实现)

    目录 1. 冒泡排序 2. 选择排序 3. 插入排序 4. 归并排序 5. 快速排序 1. 冒泡排序   冒泡排序(Bubble Sort)是稳定排序,其基本思想是:遍历待排序列,依次两两比较,如果顺 ...

  9. 手把手教你撸一套Redux(Redux源码解读)

    Redux 版本:3.7.2 Redux 是 JavaScript 状态容器,提供可预测化的状态管理. 说白了Redux就是一个数据存储工具,所以数据基础模型有get方法,set方法以及数据改变后通知 ...

  10. Spring IOC使用详解

    SpringIOC使用详解 一.IOC简介 IOC(Inversion of Control):控制反转,即对象创建的问题.通俗地讲就是把创建对象的代码交给了Spring的配置文件来进行的.这样做的优 ...