AICon全球人工智能与机器学习技术大会周四开幕,点击查看完整日程>> 了解详情
写点什么

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

  • 2019 年 5 月 22 日
  • 本文字数:2675 字

    阅读完需:约 9 分钟

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

前言

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


业界要闻

  1. Azure Red Hat OpenShift 已经 GA。在刚刚结束的 Red Hat Summit 2019 上,Azure Red Hat OpenShift正式宣布GA,这是一个微软和红帽共同打造的 Managed Kubernetes 服务:原本的红帽的 OpenShift 本身就存在 on-premise 和公有云两个选项,Azure Red Hat OpenShift 的出现宣告了一个新的方向,即为公有云厂商提供只在其云平台上运行的 Managed Kubernetes 服务。RHEL 8 同样在 Red Hat Summit 2019 上进行了发布。

  2. DOCKER IMAGE VULNERABILITY (CVE-2019-5021):新发现的 Docker Image 安全漏洞

  3. 问题:如果你的 Container 镜像中包括 shadow 或者 linux-pam package 并且有以 non-root 身份运行的 service,攻击者只要可以通过任何不安全手段连接系统(who compromised your system via an unrelated security vulnerabillity),或者可以使用 shell,那么攻击者就可以获取容器内容的 root 权限。

  4. 被影响对象包括 Docker image releases (7 March 2019):edge (20190228 snapshot)、v3.9.2、v3.8.4、v3.7.3、v3.6.5 和已经停止维护的 v3.5、v3.4 和 v3.3

  5. 如果你的在被影响范围内,请尽快进行修复,参见详情

  6. 红帽发布Universal Base Image(UBI)。随着 RHEL 7,红帽发布了 RHEL 标准镜像,为客户提供企业级别的容器能力。然而这个标准镜像只能运行在 Red Hat 的平台之上,意味着你必须是他们的客户。而本次发布的 UBI 可以叠加在任何 OCI 兼容的容器之上,无论你是否是付费客户。UBI 提供了一些列基础能力,例如基础镜像、集中内置的语言(nodejs, ruby, python, php, perl, etc)、常用的 RPM 包等等。


上游重要进展

Kubenetes 项目


  • Control Plane 的 metrics 设计趋于稳定,开始考虑添加设计稳定性标注。目前 K8s control plane 提供的 metrics 是缺乏稳定性保障的,这个 KEP 的目的是为 metrics 中的字段(name、type、label 等)提供一种表达机制,来表明这些字段是否可以被可靠的修改。随着目前 control plane 层的 metrics 趋于稳定,未来的修改应该谨慎并引入管控机制。具体可以看 Kubernetes Control-Plane Metrics Stability


Knative 项目


  • knative-eventing 0.6.0 发布,主要特性是:增强易用性,新增 Registy,便于事件消费;增强可用性:新增事件跟踪机制以及 Metrics;简化依赖,去掉 Istio 依赖,减少了对 Eventing-Sources 组件的依赖,数据源处理迁移到 Eventing 中。详细说明请见 knative-eventing 0.6.0解读文章

  • knative-serving 0.6.0 发布,主要特性是:新 api 模型,移植 v1beta1 API 到 v1alpha1 API,不兼容的部分预计会在 0.7.0+实施;优化 scale0 实现方式,增加 ServerlessService(SKS);集成 Auto-TLS;控制器解耦,以便容易替换默认实现。详细说明请见 knative-serving 0.6.0解读文章。 ServerlessService(SKS)的详细介绍请见 SKS解读文章


更多可参见《Knative Eventing 中如何排查Event事件处理异常


开源项目推荐

  1. KubeOne: A New Lifecycle Management Tool for HA Kubernetes Clusters。KubeOne 是一个帮助你部署、配置、升级高可用 K8s 集群的工具。以 Kubeadm 作为底层,KubeOne 定义了 Kubermatic machine-controller 这个 Cluster API,方便用户可以以 K8s 的声明式 API 方式来管理集群中的 worker 节点。更多信息可以参考:KubeOne博文Github链接

  2. KEDA: a Kubernetes-based Event Driven Autoscaling component。微软推出的基于事件的自动弹性方案。区别于传统反应式的水平弹性方案(例如基于某个 metric 的变化),很多场景中用事件驱动的方式触发弹性动作是更加可靠的方案。相关博文介绍了 KEDA 接入的丰富的事件源,包括 Kafka, Azure Queues, Azure Service Bus, RabbitMQ, HTTP, and Azure Event Grid / Cloud Events 等等。具体可以看 Announcing KEDA博文Github链接


本周阅读推荐

  1. etcd 在超大规模数据场景下的性能优化,作者:陈星宇(宇慕)来自阿里巴巴。etcd 是一个开源的分布式的 kv 存储系统, 最近刚被 cncf 列为沙箱孵化项目。etcd 的应用场景很广,很多地方都用到了它,例如 kubernetes 就用它作为集群内部存储元信息的账本。本篇文章简单介绍了阿里巴巴超大规模集群中对 etcd 使用的场景也就是优化的背景和优化的必要性。在干活部分,本文从 etcd 内部存储系统的工作方式开始,详细描述了阿里巴巴超大规模容器调度场景下对 etcd 进行优化的具体的实现方式,优化后性能提高 24 倍。总之这是一篇相当硬核的博文,从场景到代码级别的诊断分析应有尽有。更加值得一提的是,本文得到 CNCF 官方网站的转载。中文版链接英文版链接

  2. To Multicluster, or Not to Multicluster: Inter-Cluster Communication Using a Service Mesh, by Andrew Jenkins. K8s 已经成为容器编排的事实标准。在使用 K8s 解决了集群内通讯的问题后,我们发现解决集群间通讯似乎需要更多的设计以及难以避免的开销。很多用户的确有多集群的需求,但是在你开始设计多集群方案的时候,你真的了解你对多集群的核心诉求吗?你对多集群的诉求和别人的理解真的一致吗?这篇文章介绍了几种典型的多集群需求(统一管控的多集群 vs 以高可用为目的的多集群 vs 组成复杂业务 &集群间密集通讯的多集群),并指出适配这些需求需要的是不同的设计思路。如果你也在考虑多集群的需求,不妨看一看。原文链接

  3. Kubernetes Operating Systems, by Steven Acreman. 从最早的 CoreOS 开始,随着 K8s 的蓬勃发展,最近出现了 k3os、Talos 等与 K8s 息息相关的操作系统纷纷出现,那么这些操作系统和在基础 Linux 环境上安装 K8s 有什么不同?阅读这篇文章可以帮助你梳理一下思路。原文链接

  4. Google Cloud Run详细介绍: 在 Cloud Next 2019 大会上,Google 宣布了 Cloud Run,这是一个新的基于容器运行 Serverless 应用的解决方案。Cloud Run 基于开源的 knative 项目,宣称要将 serverless 带入容器世界。


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


本周作者:临石,敖小剑,陈有坤,元毅,冬岛


责任编辑:木环




前期周报回顾


云原生生态周报 Vol.4:Twitter 从 Mesos 全面转向 Kubernetes


云原生生态周报 Vol. 3:Docker Hub 遭入侵,Java 8 开始提供良好的容器支持


云原生生态周报 Vol. 2:Godaddy 开源 KES、CNCF 提供免费云原生课程


云原生生态周报 Vol. 1:Google 发布 Cloud Run,开源项目 Kubecost 让 K8s 花费一目了然




2019 年 5 月 22 日 11:375911
用户头像

发布了 38 篇内容, 共 17.7 次阅读, 收获喜欢 161 次。

关注

评论

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

WLAN网络规划和优化的必备知识点

10张图带你入门分布式链路追踪系统原理

爱笑的架构师

七日更

设计模式【1.1】-- 你想如何破坏单例模式?

秦怀杂货店

设计模式 单例 23种设计模式

花火交易所软件开发|花火交易所系统APP开发

系统开发

生产环境全链路压测建设历程 21:某快递 A 股上市公司的生产压测案例之彩蛋2前言

数列科技杨德华

全链路压测 七日更

shark defi鲨鱼智能合约系统软件APP开发

系统开发

设计模式【1.2】-- 枚举式单例有那么好用么?

秦怀杂货店

设计模式

第五周总结

胡益

设计模式【1.3】-- 为什么饿汉式单例是线程安全的?

秦怀杂货店

单例模式

作业-第10周

arcyao

设计模式【2】-- 简单工厂模式了解一下?

秦怀杂货店

设计模式 工厂模式 工厂方法模式

架构师训练营第十周作业二

韩儿

北漂码农的我,把在大城市过成了屯子一样舒服,哈哈哈哈哈!

小傅哥

小傅哥 技术人 打工人 七日更 落户

JDK、JRE、JVM,是什么关系?

小傅哥

jdk JVM 小傅哥 七日更 jre

dubbo服务框架图&时序图

Mars

设计模式【1】-- 单例模式到底几种写法?

秦怀杂货店

设计模式

架构师训练营第 10 周学习总结

菜青虫

极客大学架构师训练营

Mybatis【11】-- Mybatis Mapper动态代理怎么写?

秦怀杂货店

mybatis mybatis源码

工具词典:PARA方法论

lidaobing

PKM Tiago Forte PARA 28天写作

Mybatis【9】-- Mybatis占位符#{}和拼接符${}有什么区别?

秦怀杂货店

mybatis 预编译

Mybatis【10】-- Mybatis属性名和查询字段名不同怎么做?

秦怀杂货店

mybatis

架构师训练营第十周作业一

韩儿

MGR集群相关简介

Simon

MySQL 七日更

讨论话题 进程通信方式和锁关系

程序员老王

高并发

架构2期 - 第十周作业(1)

浮生一梦

极客大学架构师训练营 第十周 2组

Lambda【1】-- List相关Lambda表达式使用(上篇)

秦怀杂货店

Java Lambda

模块分解总结

Mars

架构师训练营:通达同城快递架构设计文档

9527

LeetCode题解:42. 接雨水,栈,JavaScript,详细注释

Lee Chen

算法 LeetCode 前端进阶训练营

架构师训练营第 10 周课后练习

菜青虫

极客大学架构师训练营

JVM笔记【1】-- 运行时数据区

秦怀杂货店

JVM JVM笔记

数据cool谈(第2期)寻找下一代企业级数据库

数据cool谈(第2期)寻找下一代企业级数据库

云原生生态周报 Vol. 5: etcd性能知多少-InfoQ