报名参加CloudWeGo黑客松,奖金直推双丰收! 了解详情
写点什么

云原生生态周报 Vol. 10:数据库能否运行在 K8s 当中?

  • 2019-07-17
  • 本文字数:2432 字

    阅读完需:约 8 分钟

云原生生态周报 Vol. 10:数据库能否运行在 K8s 当中?

前言

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

业界要闻

  1. IBM 以总价 340 亿美元完成里程碑意义的红帽收购:这是这家拥有 107 年历史的公司史上规模最大的一笔收购,该收购金额在整个科技行业的并购史上也能排到前三。在当天公布的声明中,IBM 与 Red Hat 联合表示,双方合作将重点推进“混合云”业务,即让公司客户自身服务器上的数据与云服务进行对接,这一方案兼顾了传统企业 IT 服务解决方案以及新兴的基于云服务的解决方案,是最现实可行的一种路径选择。

  2. Garnter 发布 2018 年全球云计算市场数据:据 Gartner 统计,2018 年全球云计算市场向头部进一步集中,3A(亚马逊 AWS、微软 Azure、阿里云)占据七成市场份额。亚马逊依旧领跑,但市场份额已经见顶回撤。微软和阿里云均有市场份额增长,其中阿里云保持 3A 军团中最快增长,市场份额增长近一倍。而在另外 Gartner 一份《数据库的未来就是云》报告中,3A 同样位列前三。阿里云的市场份额在 DBMS 供应商中排名第三,同比增长 116%。目前阿里云云原生产品家族已经纳入了数据库核心产品,阿里云 Kubernetes 服务 (ACK)通过与阿里云旗舰数据库产品 PolarDB 深度结合,正在帮助用户同时实现应用层面的快速弹性和数据层面无限扩容。

上游重要进展

Kubernetes 项目

1 Kubernetes 设计增强(KEP):


(a) 如何开发 K8s 自定义调度器插件?上周,上游 Scheduler Framework 插件开发的第一个指导性文档发布, 其中列出了几种开发调度插件方式的利弊:


  • 直接 Vendor 上游 Scheduler 代码库,然后基于其中的 Framework 库开发插件 (推荐)

  • 通过 Golang Plugin 机制: 这个方法对 Golang 版本依赖严重,跨版本无法使用;对启动和部署也带来很多挑战;

  • 通过 hashicorp/go-plugin 机制: 使用方式不友好,复杂;性能较前两种方案差


(b) Sidecar KEP(Pod 中允许声明某些容器为 Sidecar,从而更精细化的管理这些容器的生命周期)详细解读:


  • Pod 内容器启动顺序: Init containers start -> Init containers finish -> Sidecars start -> Sidecars become ready -> Containers start

  • Pod 内容器删除顺序:Containers sent SIGTERM -> Once all Containers have exited: Sidecars sent SIGTERM


2 Kubernetes 重要变更:


(a) Initializer 被废弃:Completely remove initializers


  • Initializer 机制在 1.13 deprecate, 将在 1.16 中正式移除。以后在 Pod 注入容器,都推荐使用 Admission Hook 方式

Knative 项目

  1. 异步请求demo :演示中使用 header 来标明是异步请求,在 queue-proxy 里面去把请求状态和结果写入数据库。查询状态通过 queue-proxy 查询。初步看社区对于该功能还是各有看法,例如是否可以通过 eventing 来实现。

  2. Knative Eventing CLI支持: 通过 Kevent 命令支持 importer, channel, broker, 和 sequence 命令组。每个命令组支持 CURD 例如:


 Updating: kevent [resource] update [name] [same flags as create],  Deletion: kevent [resource] delete [name]  List all resources: kevent [resource] get Describe details of a resource: kevent [resource] describe [name]
复制代码


  1. 在 Eventing 中定义 High Level 的对象:这些组合对象包括事件处理 Pipeline 的 Sequence 对象, 并行处理对象 Parallel 以及内置函数处理 CELFilter 等

  2. 集成事件指标到 dashboard 仪表盘:参考 Knative Sering 可以通过在 Broker 服务上设置注释 prometheus.io/scrape: "true",实现通过 Prometheus 收集指标信息。

Envoy 项目

  1. 新增cluster配置filter:这个 Feature 是用来给 Envoy 提供在 cluster 中配置 filter,这使得 Envoy 发起 upstream 的链接的时候,也可以走 filter,而不仅仅是在 downstream 上,这个 Feature 最初来自于filters: install network filters on upstream connections ,目的是为了支持 http 到 AMQP 协议的转换。这个 Feature 的实现很有特点,仅仅使用了非常少的代码却支持了这个比较重要的 feature,得到了 Envoy 作者 Matt 的大力赞赏。

  2. 自定义实现access log:这个 Feature 的目的是为了可以自定义实现 access log filter,在此之前 access log 的实现是没办法自定义的。

开源项目推荐

  1. Kiali (https://www.kiali.io): Istio 可视化工具 kiali v1.0 正式 release:这个项目可以可视化服务网格拓扑、断路器或请求率等功能,提供开箱即用的分布式跟踪功能。

本周阅读推荐

1 你到底应不应该把数据库运行在 Kubernetes 当中?这个多年悬而未决的话题,如今终于有了一个明确的结论。这不, Kubernetes 存储领域的工程师已经为你详细的画出了这个命题的决策树:



2 开源中国访谈 CNCF TOC 李响:云原生未来可期在 KubeCon SH 2019 上,开源中国记者采访了 CNCF TOC 成员、阿里云容器平台资深技术专家 Xiang Li,谈及 CNCF 的最新动态和发展动向,走进阿里巴巴规模的云原生,进一步探讨云原生的普及和发展问题。李响表示:“阿里云致力于大规模实践云原生;多场景落地,多维度推动技术及社区演进。我们相信:If cloud native works for Alibaba, Cloud native works for everyone”


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


本周作者:浔鸣、元毅、张磊、心水


责任编辑:木环

前期周报回顾

云原生生态周报 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-07-17 09:233325

评论

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

Apache Flink 误用之痛

Apache Flink

大数据 flink 流计算 实时计算 数据处理

Flink作业问题分析和调优实践

Apache Flink

大数据 flink 流计算 实时计算

《实现领域驱动设计》拆书稿 DDD入门 & 领域、子域和限界上下文

三界

架构 领域驱动设计 DDD

课程总结

GAC·DU

20年行业变革与技术演进,当下CDN如何为政企数字化转型加速?

阿里云Edge Plus

CDN 边缘计算 移动视频

【大厂面试06期】谈一谈你对Redis持久化的理解?

NotFound9

数据库 redis 后端

小师妹学JVM之:JDK14中JVM的性能优化

程序那些事

JVM 小师妹 JIT JDK14 签约计划第二季

第二周作业

Aldaron

第二周作业

晨光

设计模式的主要原则

编程这件事

dapaul

架构师训练营第二章 总结

尔东雨田

软件开发简史

Jeannette

依赖倒置架构

GAC·DU

第二周总结

qqq

极客大学架构师训练营

面向开发者的 WSL2 安装指南

simpleapples

Python Windows 10 wsl Go 语言

【Week02】框架设计

Aldaron

红警1游戏开源,代码非常规范。网友:秀色可餐

程序员生活志

开源 红警1

当你启动Redis的时候,Redis做了什么

老胡爱分享

redis 源码分析 面试

使用WebMaker快速预览Ionic页面效果

davidce

Ionic WebMaker 混合应用开发

第二周总结

晨光

第二周 作业

尔东雨田

如何构建低延时的直播体验,让互动更实时?

阿里云Edge Plus

CDN 短视频 直播 视频

免费下载 | 阿里云实时计算整体解决方案白皮书重磅发布!

Apache Flink

大数据 flink 流计算 实时计算

极客大学架构师训练营 框架设计、设计原则、设计模式 第四课 听课总结

John(易筋)

极客时间 极客大学 极客大学架构师训练营 设计原则 框架设计

架构师训练营 0 期第二周

Blink

依赖倒置原则

Jeannette

从字符串到常量池,一文看懂String类设计

程序员DMZ

JVM 常量池 intern

看清远处模糊的事,不如做好身边清楚的事

Neco.W

创业心态 未知

28岁程序员期权过亿,彪悍从字节退休,网友:酸了酸了!

程序员生活志

程序员 字节跳动 开发 退休

数仓系列 | 深入解读 Flink 资源管理机制

Apache Flink

大数据 flink 流计算 实时计算

云原生生态周报 Vol. 10:数据库能否运行在 K8s 当中?_云原生_浔鸣_InfoQ精选文章