云原生生态周报 Vol.10 | 数据库能否运行在 K8s 当中?
业界要闻
- IBM 以总价 340 亿美元完成里程碑意义的红帽收购:这是这家拥有 107 年历史的公司史上规模最大的一笔收购,该收购金额在整个科技行业的并购史上也能排到前三。在当天公布的声明中,IBM 与 Red Hat 联合表示,双方合作将重点推进“混合云”业务,即让公司客户自身服务器上的数据与云服务进行对接,这一方案兼顾了传统企业IT服务解决方案以及新兴的基于云服务的解决方案,是最现实可行的一种路径选择。
- Garnter 发布 2018 年全球云计算市场数据:据 Gartner 统计,2018 年全球云计算市场向头部进一步集中, 3A (亚马逊 AWS、微软 Azure、阿里云)占据七成市场份额。亚马逊依旧领跑,但市场份额已经见顶回撤。微软和阿里云均有市场份额增长,其中阿里云保持 3A 军团中最快增长,市场份额增长近一倍。而在另外 Gartner 一份《数据库的未来就是云》报告中,3A 同样位列前三。阿里云的市场份额在 DBMS 供应商中排名第三,同比增长 116%。目前阿里云云原生产品家族已经纳入了数据库核心产品,阿里云 Kubernetes 服务 (ACK) 通过与阿里云旗舰数据库产品 PolarDB 深度结合,正在帮助用户同时实现应用层面的快速弹性和数据层面无限扩容。
上游重要进展
Kubernetes 项目
- 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
- Kubernetes 重要变更:
(a) Initializer 被废弃:Completely remove initializers
- Initializer 机制在 1.13 deprecate, 将在 1.16 中正式移除。以后在 Pod 注入容器,都推荐使用 Admission Hook 方式
Knative 项目
- 异步请求 demo :演示中使用 header 来标明是异步请求,在 queue-proxy 里面去把请求状态和结果写入数据库。查询状态通过 queue-proxy 查询。初步看社区对于该功能还是各有看法,例如是否可以通过 eventing 来实现。
- 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]
- 在 Eventing 中定义 High Level 的对象:这些组合对象包括事件处理 Pipeline 的 Sequence 对象, 并行处理对象 Parallel 以及内置函数处理CELFilter 等
- 集成事件指标到 dashboard 仪表盘:参考 Knative Sering 可以通过在 Broker 服务上设置注释
prometheus.io/scrape: "true"
,实现通过 Prometheus 收集指标信息。
开源项目推荐
Kiali: Istio 可视化工具 kiali v1.0正式 release
这个项目可以可视化服务网格拓扑、断路器或请求率等功能,提供开箱即用的分布式跟踪功能。
本周阅读推荐
你到底应不应该把数据库运行在 Kubernetes 当中?
这个多年悬而未决的话题,如今终于有了一个明确的结论。这不, Kubernetes 存储领域的工程师已经为你详细的画出了这个命题的决策树:
开源中国访谈 CNCF TOC 李响:云原生未来可期
在 KubeCon SH 2019 上,开源中国记者采访了 CNCF TOC 成员、阿里云容器平台资深技术专家 Xiang Li,谈及 CNCF 的最新动态和发展动向,走进阿里巴巴规模的云原生,进一步探讨云原生的普及和发展问题。李响表示:“阿里云致力于大规模实践云原生;多场景落地,多维度推动技术及社区演进。我们相信:If cloud native works for Alibaba, Cloud native works for everyone”
本周报由阿里巴巴容器平台联合蚂蚁金服共同发布
本周作者:浔鸣、元毅、张磊、心水
云原生生态周报 Vol.10 | 数据库能否运行在 K8s 当中?的更多相关文章
- 云原生生态周报 Vol. 3 | Java 8 ❤️ Docker
摘要: Docker Hub遭入侵,19万账号被泄露:Java 8 终于开始提供良好的容器支持:Snyk 年度安全报告出炉,容器安全问题形势空前严峻. 业界要闻 Docker Hub遭入侵,19万账号 ...
- [转帖]Kubernetes v1.17 版本解读 | 云原生生态周报 Vol. 31
Kubernetes v1.17 版本解读 | 云原生生态周报 Vol. 31 https://www.kubernetes.org.cn/6252.html 2019-12-13 11:59 ali ...
- 云原生生态周报 Vol. 5 | etcd性能知多少
业界要闻 1 Azure Red Hat OpenShift已经GA.在刚刚结束的Red Hat Summit 2019上,Azure Red Hat OpenShift正式宣布GA,这是一个微软和红 ...
- 云原生生态周报 Vol. 6 | KubeCon EU 特刊
5 月 26日,2019 年第一个 KubeCon + CloudNativeCon 在巴塞罗那成功闭幕.本届 KubeCon 共吸引了超过 7700 名与会者,相较去年哥本哈根大会的 4300 余名 ...
- Ubuntu 19.10 发布 | 云原生生态周报 Vol. 24
作者 | 木苏.进超.冬岛.元毅.心水.衷源 业界要闻 1.云原生编程语言 Pulumi 1.0 pulumi ,一款中立的开源云开发平台,Pulumi 支持多语言.混合云环境.完全可扩展.初期支持 ...
- 2019 年容器生态统计报告发布 | 云原生生态周报 Vol. 26
作者 | 酒祝.天元.元毅.心水.衷源 业界要闻 1.2019 年容器生态统计报告发布 据报告显示,Kubernetes 占据 77% 的容器编排产品份额,Docker 占据 79% 的容器引擎产品 ...
- 云原生生态周报 Vol. 14 | K8s CVE 修复指南
业界要闻 Mesosphere 公司正式更名为 D2IQ, 关注云原生. Mesosophere 公司日前发布官方声明正式更名为:D2iQ(Day-Two-I-Q),称关注点转向 Kubernetes ...
- 云原生生态周报 Vol. 7 | Docker 再爆 CVE
业界要闻 Docker 基础镜像 Alpine 爆出提权漏洞(CVE-2019-5021):该CVE影响自 Alpine Linux 3.3 版本开始的所有 Docker 镜像.该漏洞的机制在于 Al ...
- 云原生生态周报 Vol. 17 | Helm 3 发布首个 beta 版本
本周作者 | 墨封.衷源.元毅.有济.心水 业界要闻 1. Helm 3 首个 beta 版本 v3.0.0-beta.1 发布 该版本的重点是完成最后的修改和重构,以及移植其他 Helm 2 特性. ...
随机推荐
- OpenGL入门1.7:摄像机
每一个小步骤的源码都放在了Github 的内容为插入注释,可以先跳过 前言 我们已经知道了何为观察矩阵以及如何使用观察矩阵移动场景(我们向后移动了一点) OpenGL本身没有摄像机(Camera)的概 ...
- `protected` vs `private`
private 标识为 private 的属性为私有属性,不能在除自己外的地方进行访问. protected 标识为 protected 的属性为受保护的属性,与私有属性类似,但还可以在继承类中进行访 ...
- C# delegate multicast single delegate
using System; using System.Collections.Generic; using System.Linq; using System.Runtime.Serializatio ...
- linux下编译安装MariaDB 10.4.7,解决错误:cannot access ‘/auth_pam_tool_dir’: No such file or directory
编译安装MariaDB 10.4.7,前面的步骤我就不复述了,一切正常没什么问题. 当执行到:scripts/mysql_install_db --basedir=/usr/local/mysql - ...
- JS引擎和作用域、编译器之间对话
关于以下代码段: function foo(a) { console.log( a ); // 2 } foo( 2 ); JS引擎和作用域.编译器之间对话:
- MySQL报错注入总结
mysql暴错注入方法整理,通过floor,UpdateXml,ExtractValue,NAME_CONST,Error based Double Query Injection等方法. 报错注入: ...
- MES论坛
MES是智能制造的核心系统,是实现中国制造2025的关键应用系统.MES应用于车间执行层,中文为制造执行系统. 目前MES交流社区比较少,已有的都显得比较杂乱,所以新开了一个MES论坛地址为https ...
- Android中使用WebView实现全屏切换播放网页视频
首先写布局文件activity_main.xml: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/an ...
- 微信小程序踩坑日记4——真机端解析json数组和开发平台不一样
0. 引言 环境:访问服务器端php,获取json数组,并渲染在前台 问题描述:保证在开发平台上的正常运行,但是在真机端却出现了无法正确解析wx.request()返回的数据(特指无法解析res.da ...
- Android应用打开外部文件
我们有时候遇到要打开一个文件,我们可以选择用其他应用打开,这时弹出来的应用列表,那么我们如何让自己开发的应用也能出现在里面呢? 第一步:设置启动Activity的intent-filter,给data ...