Open Application Model(OAM)是一套由阿里云和微软共同发起、由云原生社区共同维护的应用描述规范(spec)。
OAM的核心理念是:“以应用为中心”,它强调研发和运维围绕着一组声明式的、灵活可扩展的上层抽象进行协作(按照oam规范编写的yaml文件),而不是直接去使用复杂晦涩的基础设施层 API。
按照OAM规范编写的YAML 文件被提交给 K8s 之后,就会由 OAM 插件自动翻译成完整的 Deployment 和 HPA 对象真正运行起来。可以看到,在 OAM 规范下,研发和运维的关注点是完全分离开的,研发只需要编写非常少量的、跟自己相关的一些字段,而不需要去学习 K8s 的完整 API,就可以轻松的定义和发布应用。
HPA:在Kubernetes中,HPA(Horizontal Pod Autoscaling)是用来抽象容器水平弹性伸缩的概念。开发者可以通过定义HPA的yaml配置,快速实现容器水平伸缩。