写点什么

云原生生态周报 Vol. 17 :Helm 3 发布首个 beta 版本

  • 2019-09-03
  • 本文字数:3537 字

    阅读完需:约 12 分钟

云原生生态周报 Vol. 17 :Helm 3 发布首个 beta 版本

前言

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

业界要闻

  1. Helm 3 第一个 beta 版本 v3.0.0-beta.1 发布,该版本的重点是完成最后的修改和重构,以及移植其他 Helm 2 特性。

  2. https://github.com/helm/helm/releases

  3. cilium 1.6 版本发布,完成了最后的两个核心需求,宣布已经可以 100% 替换 kube-proxy。

  4. https://cilium.io/blog/2019/08/20/cilium-16/

  5. cilium 是一个基于 eBPF 实现的可用于提供容器网络连接和负载均衡的组件,不依赖 K-V store,以下是 cilium 的性能测试结果。



3 pivotal 开源了镜像构建和更新的 controller - kpack。


https://github.com/pivotal/kpack

上游重要进展

Kubernetes 项目

1 apiserver 对 observed requests 进行更细致的分类, 对 requests 增加优先级。目前 apiserver 有比较简单的机制去防止过载,例如用 max-in-flight 去限制 mutating 和 readonly 的请求,但是除了这两类请求外,还有一些其他类型的请求可以去做不同的限制。这个 KEP 希望把 apiserver 收到的 request 按优先级等级进行分类,每个 request 分配到它对应的 concurrency pool,这样不同优先级的请求就可以做到不同的请求上限限制。作者在 KEP 里列举了一些目前在 1.16 中观察到的 requests


2 为 HA master 增加 StorageVersion API。HA master 在 roling upgrade 时,每一个 apiserver 可能会用不同的 storage version 去 encode resource。如果集群中有 storage version migrator,则会错误导致 storage migrator 升级 resource storage version 到不同的版本。增加了一个 StorageVersion API 在这种场景下会告诉 migrator,当前 HA 集群对 storage version 未达成一致,migrator 会阻塞 migrate 的进行。


3 scheduling framework:为 kubernetes scheduler 设计的插件式的架构,让调度特性以插件的形式加入 scheduler(将在 1.17 进行 beta)。https://github.com/kubernetes/enhancements/issues/624 (KEP 比较早)。随着调度特性越来越多,scheduler 的代码越来越庞大,维护日益复杂,同时定制 scheduler 的开销也比较大。于是社区希望将 scheduler 做成一个 scheduling framework 的架构,让其他的调度特性以插件形式注册到 scheduler,对调度器的拓展也更加灵活。



4 其他更新


etcd 项目

  1. mvcc: 调整默认的 compact batch 为 1000,compact batch interval 为 10ms。compact batch 影响 compact 的速度,过大的 compact batch 会导致 put/range 的性能下降,过小的 compact batch 又 compact 不了太多的 key。在集团内部,我们把这两个参数设置为可变,不同的集群根据 qps 进行压测调节到最优参数。

  2. raft:允许 learner 在特殊情况下进行投票。存在这样的场景:集群 id=1 是 learner,id=2 是 voter,id=3 是 voter,然后通过客户端将 learner promote 成 voter,但是因为网络分区等原因,消息还没传到 learner,但是此时 id=2 的 voter 挂了,那么 id=3 voter 则直接获得了选举胜利。实际上此时 learner 已经 promote 成 voter 了,还需要 id=1 的 voter 进行投票。该 PR 修复了这个场景,允许 learner 收到投票,当 learner 收到投票时,表明其他 quorum 将自己视为一个 voter 了。

knative 项目

  1. serving 和 eventing 在功能和稳定性相对平稳后,开始进入性能优化阶段,开始进行 benchmark,包括

  2. deployment benchmark

  3. activator + throttler 的 开启Throttler关闭Throttler

  4. eventing 开始制定测试方案,包括收集响应延迟结果和标准的集群跑测试用例

  5. eventing 将 channel和subscriptions 转移到 messaging.knative.dev API Group。表明 Channel 和 Subscription 的概念是消息的路由而不是事件的转发,涉及到如何迁移现存业务,改动较大。

开源项目推荐

  1. microk8s,体积小,运行速度快,single-package 的 k8s 版本,适合用于做 k8s 的离线开发,IOT 和边缘设备。

  2. https://github.com/ubuntu/microk8s

  3. microk8s 紧跟上游 k8s 的 feature,刚刚 release 了 1.16-beta,同时它包含了主流 k8s 生态的其他工具,包括 serverless(knative),service mesh(istio),monitoring(prometheus,grafana),machine learning(kubeflow)

  4. qlkube,Kubernetes 的 GraphQL API,允许你使用 graphql 与 Kubernetes api 进行交互。

  5. https://github.com/qlkube/qlkube?utm_sq=g5n76aa1mt

  6. GraphQL 是 Facebook2015 年开源的数据查询规范。对于现在大多数的 RESTful API,都存在以下场景,client 需要向 server 发若干个请求才能获得所需要查询的内容。GraphQL 则希望让 API 数据间以图的形式,有关联和层次结构进行组织。

  7. qlkube 是利用 kubernetes 的 openapi/swagger api specification 自动生成的 GranphQL 接口。

  8. kube-fzf,利用 kubectl 和 fzf 搭建的支持模糊搜索的命令行工具。

  9. https://github.com/thecasualcoder/kube-fzf

  10. fzf (fuzzy finder)是一个非常丰富的命令行模糊搜索器,而 kube-fzf 把两个命令行工具结合,减少了 kubernetes 日常运维时敲的大量 kubectl get po xxx -n xxxxx 的命令复杂度。目前支持搜索 pod,tail pod container,describe pod,exec into a pod,port forward pod。

本周阅读推荐

1.The State of State in Cloud Native Applications..在云原生应用中,有状态应用的状态处理和发展过程以及未来走向。


2.How Kubernetes Could Orchestrate Machine Learning Pipelines. 在过去几年,Apache YARN 和 Mesos 往往是 data science 类型的 job(尤其是 machine learning)首选的资源调度器,而随着 Kubernetes 在社区的火爆,在 Kubernetes 上允许 big data 或 analytics job 的用户越来越多。文章介绍了如何使用 kubeflow pipeline 进行 ML 训练,以及 MLOps 的设计。


3.Kubernetes Web UIs in 2019. 社区有非常多 kubernetes Web UI 的项目,作者提出他自己对 kubernetes UI 的期望,并对所有开源项目做了一个总结。


4.深度解读Helm 3: 犹抱琵琶半遮面。自去年年初开始放风 Helm v3 将要开始开发,就被一堆人追问到底啥时候发版本。Helm v3 在五月发布了第一个 alpha 版本,如今发布了 beta 版本,本文是一篇旧文解读 Helm v3 aplha,但是绝对是一篇有助于理解 Helm V3 的好文章。


5.Knative Eventing 之 Choice 介绍,从 Knative Eventing 0.8 开始,支持根据不同的过滤条件对事件进行选择处理。通过 Choice 提供了这样的能力。本文旨在介绍一下 Choice 特性。


6.Service Mesh发展趋势(续):棋到中盘路往何方: 继续探讨 ServiceMesh 发展趋势,以灵魂拷问的方式深度分析 Istio 的重大革新 Mixer v2,Envoy 支持 Web Assembly 的意义所在; 深入介绍 Google Traffic Director 对虚拟机模式的创新支持方式,以及最近围绕 SMI 发生的故事。


名词解释:KEP - Kubernetes Enhancement Proposal, 即 Kubernetes 上游设计文档


本周报由阿里巴巴容器平台联合蚂蚁金服共同发布


本周作者:墨封,衷源,敖小剑


责任编辑:木环


相关阅读


云原生生态周报 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 花费一目了然


2019-09-03 11:575532

评论

发布
暂无评论
发现更多内容

Springboot使用 prometheus监控

琦彦

监控 Prometheus springboot 10月月更

对最近火热的“DevOps已死”的回应

Jianmu

DevOps 敏捷开发 软件危机 自动化运维

C#使用Spire.PDF依赖,PDF转Word,Excel,Html代码分析

IC00

C# 学习 程序员 上位机 10月月更

防窜货管理如何更智能? VoneTracer新功能给你答案!

旺链科技

区块链 溯源 产业区块链

MobTech短信验证常见问题

MobTech袤博科技

sdk 短信验证

数据结构学习,链式队列

IC00

学习 数据结构 算法 学习笔记 10月月更

已献出膝盖!GitHub上的宝藏级SpringBoot核心文档,讲得太清晰了

Geek_0c76c3

Java 数据库 开源 程序员 开发

特权账号管理系统是什么?是堡垒机吗?

行云管家

网络安全 堡垒机 账号安全 特权账号管理 特权账号

阿里新一代微服务,内部大佬手抄的笔记+脑图不容错过,全是精华

Geek_0c76c3

Java 数据库 开源 程序员 开发

Serverless架构演进与实践

得物技术

云计算 架构 DevOps 云原生 10月月更

参加前端培训学习还值得吗

小谷哥

大数据开发培训学习费用多少呢

小谷哥

Android技术分享| Bugly 应用升级自定义UI

anyRTC开发者

android 音视频 UI 移动开发 Bugly

给想转Go或者Go进阶同学的一些建议

王中阳Go

php Go web java 编程 #go 10月月更

字节算法大神手写的算法笔记,曾连续多次霸榜 GitHub Trending 首页

Geek_0c76c3

Java 数据库 开源 程序员 开发

STM32L051测试 (四、Flash和EEPROM的读写)

矜辰所致

EEPROM Flash STM32L051 10月月更

Vue是怎样监听数组的变化的?

bb_xiaxia1998

Vue

vue面试常见考察点总结

bb_xiaxia1998

Vue

互联网寒冬之际,凭借这份10w字大厂Java面试真题汇总,半月斩获7个Offer!

Java永远的神

spring 程序员 JVM 多线程 Java 面试

手把手教你入门Vue,猴子都能看懂的教程

知心宝贝

JavaScript 云原生 Vue 前端 可视化

扬帆出海,亚马逊云科技如何助力神策数据从0到1快速布局独立站出单?

Lily

DAM的神奇力量,看亚马逊云科技如何助力特赞以内容驱动增长?

Lily

告诉你个广告业务存储神器

华为云开发者联盟

数据库 广告 华为云 企业号十月PK榜

Github星标百万!终于有人将Spring技术精髓收录成册

Geek_0c76c3

Java 数据库 开源 程序员 开发

Vue.$nextTick的原理是什么-vue面试进阶

bb_xiaxia1998

Vue

厉害!年薪近百万架构师保姆式讲解的这份Spring源码笔记,绝绝子

Geek_0c76c3

Java 数据库 开源 程序员 开发

等保测评机构是什么意思?是什么性质的单位?

行云管家

公司 机构 等级保护 等保测评 等级测评

拿捏了!阿里2022最新JDK源码深度解析小册,Github全站热榜第二

Geek_0c76c3

Java 数据库 开源 程序员 开发

实例分析Scheduled Thread Pool Executor与Timer的区别

华为云开发者联盟

线程 开发 华为云 企业号十月PK榜

追求性能极致:Redis客户端缓存带来的革命

程序员小毕

Java 数据库 redis 面试 后端

最后一块石头的重量

掘金安东尼

算法 10月月更

云原生生态周报 Vol. 17 :Helm 3 发布首个 beta 版本_服务革新_衷源_InfoQ精选文章