全球首个开放应用模型 OAM 开源
业界要闻
全球首个开放应用模型 OAM 开源
2019 年 10 月 17 日,阿里巴巴合伙人、阿里云智能基础产品事业部总经理蒋江伟(花名:小邪)在 Qcon 上海重磅宣布,阿里云与微软联合推出开放应用模型 Open Application Model (OAM)开源项目。OAM 的愿景是以标准化的方式沟通和连接应用开发者、运维人员、应用基础设施,让云原生应用管理与交付变得更加简洁,高效,并且可控。
KubeVirt 进入 CNCF Sandbox
KubeVirt 尽管容器技术提供了各种便利,但是在特定情况下使用 VM 仍然是不可避免的(编者按:VM 只是选择之一,不同的安全容器解决方案都可以在不同方面代替单纯的 VM)。来自 Redhat 的 KubeVirt 项目可以提供在 K8s 集群内部准备、部署、运行和管理 VM 的能力,让用户可以使用 Pod 一样来使用一个 VM。现在,这个项目已经正式进入了 CNCF 的 Sandbox 了。
Megalix 发布 KubeAdvisor 1.0 版本
KubeAdvisor 日前发布了 1.0 版本。KubeAdvisor 一款辅助 K8s 运维的工具,能够扫描 K8s 集群的资源、状态、配置等,通过提供恰当的“可观测性”(编者按:眼花缭乱的监控数据和曲线图不等于可观测性),为集群使用者提供最有价值的信息,来辅助保障基础设施和上层应用的可靠性和稳定性。
上游重要进展
1.允许动态调整 kube-scheduler 的 log level。kube-scheduler 作为 K8s 重要的默认调度组件,在一些情况下它们的日志可以反映出不少信息,这个 PR 允许 kube-scheduler 的日志打印级别可以动态被调整。
2.调度器方面最近的一个举动是将一些 Prioritizing 的逻辑插件化(Score Plugin)。最近几个相关的PR如下,感兴趣的同学可以关注。
3.为 scheduler 添加一个跟踪 Binding 和 Prioritizing 的 goroutine 数目的 metric。
在大规模应用部署等一些特殊场景中,调度器可能成为整体性能的瓶颈。
4.这里有两个优化 kubeadm 使用体验的 PR:
- kubeadm 的 structured output:结构化输出 kubeadm 的一些输出信息(yaml、json 等),方便被继续处理;
- kubeadm 添加 --with-ca flag 来显示 ca 的过期信息:ca 过期是常见的造成组件不可用的愿意之一,有了这个 flag 可以更方便的指导 ca 的过期信息。
5.下面是几个比较重要 / 有意思的 KEP,感兴趣的朋友可以关注一下:
- 为 Kube API Server 的 network proxy 添加了 beta 版毕业条件。KAS 允许配置 Kube API Server 的网络流量到(或者不到)指定的 proxy;
- insecure kubelet log:通过一个开关,使得在 kubelet 的 serving cert 过期(kube apiserver 不认识 kubelet)但kube-apiserver 的 client cert 没有过期(kubelet 认识 kube apiserver)的条件下,允许 kubelet 通过跳过 tls 验证返回一些 log。这个功能在测试和debug的场景是有用的。
- 规范化 conformanece test 的内容的实施(文档、API schema、代码检验、专家知识等)
- 扩展 NodeRestriction Controller 来限制更多 Node 可以 Pod 进行的操作(主要是来自安全上的考虑);
- HPA 的状态达到 implementable
两个计划中的 GA,对于想要参与到 K8s 社区的新手贡献者来说,这两个 KEP 是不错的切入点(目标、方法很明确的需求)
- 根据 Node condition 给 Node 打上 taint 标记,自动化帮助调度器识别出不适合的调度节点;
- 之前 DaemonSet 的调度逻辑是在 DaemonSet controller 中的,这个 KEP希望把调度逻辑移动到调度器中实现。
开源项目推荐
VMware-Tanzu
VMware 已经开始全面支持 K8s,最近该公司在开源方面的一个举措是将几个自己拥有的云原生开源项目迁移到了新的 Organization:VMware-Tanzu。这个项目中目前包括下面几个项目:
- velero:应用迁移工具
- octant:一个集群状态展示的 dashboard
- sonobuoy:一个 K8s 分析工具
- ······
k8s-transmogrifier
K8s 1.16 中废弃了大量的 API,影响到很多的已经用于生产的集群配置和 Helm chart 等。这里有一个自动转换 K8s 1.16 中的 depreciated 的 API 的工具,有需要的人可以了解一下。
本周阅读推荐
1.《阿里巴巴的研发模式是如何演进的?》
随着云计算的不断发展,很多开发者都对这一技术将为开发方式带来的变化充满兴趣,云计算解决的是从 CAPEX 到 OPEX 的转变问题。云可以带来哪些切实的好处?在云环境下应该怎么做应用架构?基于从传统架构到云架构的亲身经历,阿里巴巴合伙人、阿里云智能基础产品事业部总经理蒋江伟(小邪)阐述了企业由新架构和新研发模式带来的价值点。本文整理自正在召开的 QCon 上海 2019蒋江伟(小邪)的演讲内容。
2.《How Zalando manages 140+ Kubernetes Cluster》
本文介绍了 Zalando 的团队在(公有云上)管理数量棒庞大的 K8s 集群中得到的一些实践经验,例如每个 domain 或者 production community 总是部署双集群(prod & non-prod)、使用 Github 托管配置文件、通过 CLM(Cluster Lifecycle Manager)管理升级等等。
3.《Liveness Probes are Dangerous》
Liveness Probe 和 Readiness Probe 是 K8s 中判断应用是否可用的重要工具,然而不正确的使用 Liveness Probe 或者 Readiness Probe 会带来的风险(例如不小心使用了外部依赖、Liveness Probe 有时候反而会阻止 Pod 正确的进入失败状态从而无法彻底恢复健康等),这篇文章总结了使用这两者的最佳实践。
4.《A Practical Guide to Setting Kubernetes Requests and Limits》
Kubernetes 资源定义中的 request 和 limit 是老生常谈的问题了,本文除了更好的解释这些概念意外,还从 SLA 的角度提供了如何配置它们的建议。
5.《Protecting Kubernetes API Against CVE-2019-11253 (Billion Laughs Attack) and Other Vulnerabilities》
本文通过介绍 K8s 中的一个可能导致 billions laughs attacks 漏洞的例子,讲解了在生产环境中使用 K8s 的常规安全操作,包括正确配置 RBAC、定期检查 Role 和 RoleBinding、永远不要暴露 Master host 的地址等等。
6.《基于 Knative Serverless 技术实现天气服务-下篇》
上一期我们介绍了如何基于 Knative Serverless 技术实现天气服务-上篇,本篇文章我们介绍如何通过表格存储提供的通道服务,实现 Knative 对接表格存储事件源,订阅并通过钉钉发送天气提醒通知。关于 Knative 更多精彩文章请看 《Knative 系列文章》。
本文作者:临石、元毅、冬岛、衷源、天元
本文为云栖社区原创内容,未经允许不得转载。
全球首个开放应用模型 OAM 开源的更多相关文章
- 全球首个开放应用模型 OAM 开源 | 云原生生态周报 Vol. 23
作者 | 临石.元毅.冬岛.衷源.天元 业界要闻 全球首个开放应用模型 OAM 开源 2019 年 10 月 17 日,阿里巴巴合伙人.阿里云智能基础产品事业部总经理蒋江伟(花名:小邪)在 Qcon ...
- 微软与阿里云合作推出“开放应用模型(OAM)”
英文原文:Announcing the Open Application Model (OAM) 原文标题:微软与阿里云合作推出“开放应用模型(OAM)” 用于 Kubernetes 及更多平台的应用 ...
- KubeEdge v0.2发布,全球首个K8S原生的边缘计算平台开放云端代码
KubeEdge开源背景 KubeEdge在18年11月24日的上海KubeCon上宣布开源,技术圈曾掀起一阵讨论边缘计算的风潮,从此翻开了边缘计算和云计算联动的新篇章. KubeEdge即Kube+ ...
- 重磅发布 | 全球首个云原生应用标准定义与架构模型 OAM 正式开源
作者: OAM 项目负责人 导读:2019 年 10 月 17 日,阿里巴巴合伙人.阿里云智能基础产品事业部总经理蒋江伟(花名:小邪)在 Qcon 上海重磅宣布,阿里云与微软联合推出开放应用模型 Op ...
- 开放应用模型(OAM):全球首个云原生应用标准定义与架构模型
Kubernetes 项目作为容器编排领域的事实标准, 成功推动了诸如阿里云 Kubernetes (ACK)等云原生服务的迅速增长.但同时我们也关注到,Kubernetes 的核心 API 资源比如 ...
- 像智能手机一样管理云端应用:阿里云联合微软全球首发开放应用模型(OAM)
2019 年 10 月 17 日上午 9 点 15 分,阿里巴巴合伙人.阿里云智能基础产品事业部总经理蒋江伟在 QCon 上海<基于云架构的研发模式演进>主题演讲中,正式宣布: " ...
- 阿里重磅开源全球首个批流一体机器学习平台Alink,Blink功能已全部贡献至Flink
11月28日,Flink Forward Asia 2019 在北京国家会议中心召开,阿里在会上发布Flink 1.10版本功能前瞻,同时宣布基于Flink的机器学习算法平台Alink正式开源,这也是 ...
- 开放应用模型操作指南(一)| 云服务一键接入 OAM 体系
作者 | 邓洪超 阿里云容器平台软件工程师 导读:Open Application Model(OAM)是阿里云联合微软等国际顶级技术团队联合发布的开放应用模型技术.旨在通过全新的应用定义.运维.分 ...
- 全球首款完全开源的堡垒机,符合 4A 的专业运维审计系统Jumpserver
Jumpserver是全球首款完全开源的堡垒机,是符合 4A 的专业运维审计系统. http://www.jumpserver.org https://github.com/jumpserver/ju ...
随机推荐
- BZOJ 1576: [Usaco2009 Jan]安全路经Travel
日常自闭半小时后看题解,太弱了qwq. 感觉这道题还是比较难的,解法十分巧妙,不容易想到. 首先题目说了起点到每个点的最短路都是唯一的,那么对这个图求最短路图必定是一棵树,而且这棵树是唯一的. 那么我 ...
- StringUtils的Join函数
有一天看到同事用了这么个函数,然而我并没有见过,所以查了查,以后说不定用得到. 包路径:org.apache.commons.lang3.StringUtils; 函数名:StringUtils.jo ...
- Java中实现线程通信的三个方法的作用是什么?
Java提供了3个方法解决线程之间的通信问题,均是java.lang.Object类的方法,都只能在同步方法或者同步代码块中使用,否则会抛出异常. 方法名 作 用 final void wait() ...
- delphi TTcpClient TTcpServer分析(转)
delphi TTcpClient TTcpServer分析(转) 只描述windows socket部分. sockets.pas中各个类得继承关系: TBaseSocket | --------- ...
- springMVC配置文件 的约束
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.spr ...
- Android中如何做到自定义的广播只能有指定的app接收
今天没吊事,又去面试了,具体哪家公司就不说了,因为我在之前的blog中注明了那些家公司的名字,结果人家给我私信说我泄露他们的题目,好吧,我错了...其实当我们已经在工作的时候,我们可以在空闲的时间去面 ...
- 解决SQLite中的 database is locked
前些时候,同事在站点服务端使用SQlite存储一些临时数据,但是在多人并发的时候Sqlite会抛出异常:The database file is locked , database is locked ...
- 前缀和+排序——cf1043E
先不考虑第二个条件 要求i和所有其他人的分数和最小,选择x还是y,可以推出一个公式,即差xi-yi小的j都选y,反之都选x 那么按照xi-yi排序即可 然后再考虑第二个条件,做减法就行 /* xi+y ...
- (转)rand函数和srand函数
转:http://www.cnblogs.com/lenient/articles/1565376.html 首先我们要对rand&srand有个总体的看法:srand初始化随机种子,rand ...
- Python 中练习题涉及到的无穷大和无穷小问题。
首先来看一下所见的python联系题. inf = infinite 无限制的 float("inf")-1执行后的结果是:() A 1 B inf C -inf D 0 该考点考 ...