Why OAM Is the Next Step for Cloud‑Native Application Delivery on Kubernetes
The article explains how the Open Application Model (OAM) addresses the missing "application" concept in Kubernetes by providing a standardized, role‑based model for defining, configuring, and delivering cloud‑native applications, and describes the joint Alibaba‑Microsoft‑Crossplane implementation, its runtime library, and the growing community ecosystem.
Background
Kubernetes provides standardized infrastructure abstraction but does not define a native application concept. Developers and operators must work with low‑level workload resources such as Deployment or DaemonSet, which leads to fragmented tooling and a steep learning curve.
Purpose of the Open Application Model (OAM)
OAM introduces a higher‑level abstraction where an application is a collection of Component objects (e.g., a PHP container, a database instance) together with Trait objects that express operational requirements (e.g., Horizontal Pod Autoscaler, Cron‑based HPA). Developers author Component definitions, operators author Trait definitions, and the platform reconciles them into an ApplicationConfiguration resource. This separation of concerns reduces errors and makes cloud‑native application management more uniform.
Joint Standard Implementation
In May, Alibaba Cloud, Microsoft Azure, and the Crossplane community collaborated to deliver a reference implementation of OAM on Kubernetes. The three teams built a Go‑based core library named oam-kubernetes-runtime, which is intended to become the officially maintained runtime component for OAM.
Runtime Library Details
The oam-kubernetes-runtime library is a native Kubernetes plugin. It registers custom resource definitions (CRDs) for Component, Trait, and ApplicationConfiguration, and provides a controller that watches these resources and creates the underlying workload objects (e.g., Deployment, StatefulSet, Service, etc.). Because the library follows the standard Kubernetes controller pattern, it can be installed with a simple kubectl apply -f of the released manifests.
How OAM Works in a Project
Typical workflow:
Define one or more Component resources that describe the logical service units of the application.
Attach one or more Trait resources to each component to declare operational policies such as scaling, networking, or monitoring.
Create an ApplicationConfiguration that references the components and their traits. The OAM controller reconciles this configuration, generating the concrete Kubernetes objects required to run the application.
This design enables unlimited extensibility: infrastructure engineers can add new workload types (e.g., FaaS functions) or new traits (e.g., CronHPA) without breaking existing applications. Migration from traditional Kubernetes manifests can be performed gradually by introducing OAM resources alongside existing objects.
Projects That Benefit from OAM
Any platform that builds on Kubernetes—cloud, edge, or serverless—can adopt OAM to standardize its internal model, reduce cognitive load for developers, and hide underlying infrastructure differences. By treating the application as the primary resource, platforms can provide a portable experience across clusters and environments.
Community Status and Releases
The OAM project is a vendor‑agnostic open‑source community with contributions from Alibaba Cloud, Microsoft, Crossplane, AWS, Tencent, ByteDance, and many others. The community meets bi‑weekly, uses a maintainer voting system, and follows an international collaboration model. The current stable release is v1alpha2 ; a beta release is planned for later this year. The runtime library is available in the public repository and can be consumed directly via the source code.
Key Resources
OAM GitHub repository: https://github.com/oam-dev/kubevela
Crossplane project: https://github.com/crossplane/crossplane
OAM Kubernetes runtime library: https://github.com/oam-dev/oam-kubernetes-runtime
Alibaba Cloud Native
We publish cloud-native tech news, curate in-depth content, host regular events and live streams, and share Alibaba product and user case studies. Join us to explore and share the cloud-native insights you need.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
