Kubernetes v1.16 发布 | 云原生生态周报 Vol. 20
作者:心贵、进超、元毅、心水、衷源、洗兵
业界要闻
Kubernetes v1.16 发布
在这次发布中值得关注的一些特性和 Feature:
- CRD 正式进入 GA 阶段;
- Admission Webhook 正式进入 GA 阶段;
- CSI 和 Volume 的一系列增强和修复。
蚂蚁金服开源 ElasticDL 项目
9 月 11 日,蚂蚁金服在 2019 谷歌开发者大会上海站上开源了 ElasticDL 项目,这是业界首个基于 TensorFlow 实现弹性深度学习的开源系统。ElasticDL 实现了容错和弹性调度的分布式深度学习,可以极大提升集群的总体利用率,同时显著减少用户提交作业之后等待作业启动的时间(pending time)。
Oracle 宣布永久免费一部分云计算服务
Oracle CEO Larry Ellison 在 OpenWorld 大会上宣布推出了 Oracle Cloud Free Tier ,大小型公司和组织、开发人员、学生和教育工作者都可以构建、学习和探索 Oracle 自治数据库和 Oracle 云基础架构的全部功能。
这次推出的 Oracle Cloud Free Tier(免费套餐计划)共有两个组成部分,分别是免费试用计划和永久性免费云服务。
上游重要进展
Kubernetes项目
- 修复 API Server 访问 Webhook 流量不均衡问题。
在集群规模或者 QPS 比较高的集群内,建议 Port 这个修复以避免 Webhook 单点工作引起性能瓶颈:https://github.com/kubernetes/kubernetes/pull/82090
- 修复 Pod toleration 引起的 Bug。
修复 Pod toleration 有多个的情况下,引起 comparison & merging 的 Bug。建议 Port 这个修复,以提高调度 Pod 语义的健壮性: https://github.com/kubernetes/kubernetes/pull/81732/files
- KEP:降低 API Server 对于 Watch 事件序列化的开销。
目前在一个大规模集群下的 API Server,有太多的 CPU 时间片和资源被用于序列化和反序列化,为了进一步提高集群性能和吞吐,我们应该想办法优化序列化和反序列化的问题。 https://github.com/kubernetes/enhancements/blob/master/keps/sig-api-machinery/20190329-less-object-serializations.md
Knative项目
- 设定最小 K8s 支持版本;
- 只支持最近4个 Knative 版本;
- 在宣布过时后,knative beta api 版本最少支持 9 个月,GA 版本最少支持 12 个月。对于 v1alpha1 当做 beta 版本;
- Runtime 和 API 需要通过最近四个版本的兼容性测试。
针对死信队列的设计,预计在 Eventing v0.10.0 版本中发布。
Eventing 性能测试,进行了吞吐量的基线测试,即不使用 broker 或者 channel 下的数据指标。下一步会进行基于broker 或者 channel 的吞吐量测试。
开源项目推荐
eng-practices
Google 关于 codeview 的指导文档。很早就对 Google 良好的 codeview 文化有所耳闻,作为工程师,我们都应该学习 codeview 文化以达到更好的和同事协作。(中文版参考:https://jimmysong.io/eng-practices/)
argo-cd
用户体验非常棒的基于 Kuberntetes 的 gitops CI/CD 系统 -- argo-cd。
ElasticDL
蚂蚁金服开源基于 TensorFlow 的弹性分布式深度学习系统 ElasticDL。
本周阅读推荐
《进击的 Java - 云原生的蜕变》
云原生时代的来临,与 Java 开发者到底有什么联系?有人说,云原生压根不是为了 Java 存在的。然而,本文的作者却认为云原生时代,Java 依然可以胜任“巨人”的角色。作者希望通过一系列实验,开拓同学视野,提供有益思考。
《PaaS 和 KaaS 有什么区别?什么时候重要?》
PaaS 和 KaaS 提供了许多类似的功能,所以很容易将平台作为服务与 Kubernetes 作为服务系统混淆,但是它们本质上是不同的,如果你选择了错误的选项,这可能会产生严重的影响。在这个网络研讨会上,Mirantis 的 Nick Chase 解释了两者之间的区别,以及如何为你的特定用例选择更好的方法。
《Kubernetes 身份认证和授权操作全攻略:访问控制之 Service Account》
深入探讨访问控制中的 service account。
《Kubernetes 持续崛起的背后:安全问题仍在,生命周期存疑》
为了更好地理解容器与 Kubernetes 的安全与采用趋势,文章整合了来自安全、DevOps 以及产品团队的近 400 位成员调查结果,希望了解各类组织如何采用容器技术、目前面临的安全问题以及进一步发展的具体见解。
《使用 Django,Prometheus,和 Kubernetes 定制应用指标》
文章强调了应用程序定制指标的重要性,用代码实例演示了如何设计指标并整合 Prometheus 到 Django 项目中,为使用 Django 构建应用的开发者提供了参考。
《构建 Kubernetes 集群 —— 选择工作节点数量和大小》
文章从多个维度阐述了使用更少的大节点与更多的小节点来组建 Kubernetes 集群各自的优势与劣势,并结合实践经验给出了选择工作节点数量和大小的一般方法。
阿里巴巴云原生微信公众号(ID:Alicloudnative)关注微服务、Serverless、容器、Service Mesh 等技术领域、聚焦云原生流行技术趋势、云原生大规模的落地实践,做最懂云原生开发者的技术公众号。
相关文章
- Kubernetes 系列(六):kubectl 命令
- 系统架构面临的三大挑战,看 Kubernetes 监控如何解决?
- Serverless Kubernetes:理想,现实与未来
- OpenYurt 深度解读:如何构建 Kubernetes 原生云边高效协同网络?
- SpringCloud 应用在 Kubernetes 上的最佳实践 — 线上发布(可灰度)
- Kubernetes 入门必备云原生发展简史
- Kubernetes 灰度/滚动发布 滚动更新速率控制解读 maxUnavailable,maxSurge
- Kubernetes 工作负载控制器Controller Deployment
- 【云原生 | Kubernetes 系列】DaemonSet
- Kubernetes里的ConfigMap的用途
- 【云原生 | Kubernetes 系列】探针
- 【云原生之kubernetes实战】kubernetes集群的Service资源对象
- 【云原生 • Kubernetes】kubernetes 核心技术 - Service
- 【云原生 • Kubernetes】kubernetes 核心技术 - RC、Replica Set 和 Deployment
- 云原生|kubernetes|部署MySQL一主多从复制集群(基于GTID的复制)
- Kubernetes 安全策略:保护您的数据仓库并阻止黑客
- 【ML on Kubernetes】第 5 章:数据工程
- Kubernetes 深入理解kubernetes(一)
- 【云原生 | Kubernetes 系列】---altermanager消息配置和pushgateway
- a28.ansible 生产实战案例 -- 基于kubeadm安装kubernetes v1.20 -- 集群升级(二)
- Kubernetes部署_使用kubernetes部署Mysql主从结构(Kubernetes工作实践类)
- Kubernetes部署_使用kubernetes部署prometheus+grafana监控系统(Kubernetes工作实践类)
- 【Zabbix实战之部署篇】kubernetes集群搭建Zabbix监控平台
- 在 Kubernetes 上运行高可用的 Kafka 集群