What’s New in Open Cluster Management 0.4.0? Addon Framework, Placement API, and clusteradm
The article outlines the latest OCM 0.4.0 release—including addon registration, a new Placement API with YAML examples, the alpha‑stage clusteradm CLI—while previewing the 0.5.0 roadmap, integrations with KubeVela, ArgoCD, Clusternet, and real‑world deployments on Alibaba Cloud.
Introduction
OCM (Open Cluster Management) 0.4.0 was released with new multi‑cluster management capabilities, including addon registration, a Placement API for cluster selection, and the alpha clusteradm command‑line tool.
0.4.0 Release Highlights
Addon Registration and Lifecycle Management
The ManagedClusterAddon API allows users to declare an addon to be installed on managed clusters. Creating a ManagedClusterAddon named submariner in the hub namespace triggers installation of Submariner for cross‑cluster networking.
Each addon runs a controller in the hub cluster that tells OCM how to install the addon, how to communicate with the managed cluster, and what permissions are required. OCM 0.4.0 introduces the addon‑framework Go library, which defines interfaces and helper functions for developers to implement custom operators as addons.
Placement API for Cluster and Resource Scheduling
The Placement API selects one or more target clusters for workloads or arbitrary custom resources. Selection criteria include ManagedClusterSet bindings, cluster labels, or ClusterClaims.
Example: select all clusters with label env=prod:
apiVersion: cluster.open-cluster-management.io/v1alpha1
kind: Placement
metadata:
name: placement1
namespace: ns1
spec:
predicates:
- requiredClusterSelector:
labelSelector:
matchLabels:
env: prodExample: select three clusters running Kubernetes 1.18.x:
apiVersion: cluster.open-cluster-management.io/v1alpha1
kind: Placement
metadata:
name: clusters-from-specific-version
namespace: ns1
spec:
numberOfClusters: 3
predicates:
- requiredClusterSelector:
claimSelector:
matchExpressions:
- key: kubeversion.open-cluster-management.io
operator: In
values:
- 1.18.0
- 1.18.1The Placement controller produces a PlacementDecision object that lists the chosen clusters. Placement itself does not distribute workloads; it must be combined with tools such as ArgoCD or KubeVela to actually deploy applications.
clusteradm Command‑Line Tool (Alpha)
clusteradmis inspired by kubeadm and simplifies OCM component installation and cluster registration.
Init: clusteradm init installs hub‑side OCM components.
Join: clusteradm join registers a managed cluster and deploys local agents.
Additional sub‑commands for management and monitoring are planned.
Roadmap – OCM 0.5.0
Targeted for October, 0.5.0 will extend the Placement API with richer scheduling strategies and improve the user experience.
Resource‑based scheduling: select clusters based on allocatable CPU/memory to achieve balanced resource distribution.
Affinity/anti‑affinity: schedule workloads across regions or zones according to custom affinity rules.
Taint/Toleration support: introduce node‑like taint/toleration semantics for clusters.
clusteradm enhancements: add commands for addon deployment and lifecycle management.
Proxy addon: a reverse‑tunnel addon that provides direct API and SSH access to managed clusters behind firewalls.
Collaboration with Other Projects
KubeVela
OCM serves as the core multi‑cluster engine for KubeVela, enabling one‑click cluster creation, registration, and cross‑cluster application delivery via Vela’s workflow.
ArgoCD
Integration with ArgoCD allows the Placement API to be used in an ApplicationSet for scheduling applications across clusters.
Clusternet
OCM’s addon framework can load Clusternet as a plugin, combining both projects’ capabilities.
Real‑World Deployments
Alibaba Cloud Container Platform (Hybrid Cloud)
The platform uses OCM’s micro‑kernel design to manage heterogeneous clusters (self‑managed, user‑provided, edge, public‑cloud). It leverages the registration and work addons for automated registration, service deployment, and policy propagation. A proxy addon built with the addon‑framework provides API access for clusters behind firewalls.
Alibaba Cloud ACK – Big Data & AI Workloads
ACK uses OCM for multi‑cluster registration and job queue control. Jobs submitted via native Kubernetes APIs are routed through OCM‑aware queue controllers, which select target clusters based on priority, resource capacity, taints, and region affinity. The OCM ManifestWorks API distributes jobs, and the proxy addon reports execution status.
Reference URLs
https://github.com/open-cluster-management-io/enhancements/tree/main/enhancements/sig-architecture/12-addon-manager
https://github.com/open-cluster-management-io/enhancements/tree/main/enhancements/sig-architecture/6-placements
https://github.com/open-cluster-management-io/clusteradm
https://github.com/skeeey/clusternet-addon
https://github.com/open-cluster-management-io/enhancements/pull/16
https://github.com/open-cluster-management-io/community/issues/49
https://github.com/open-cluster-management-io/community/issues/48
https://github.com/open-cluster-management-io/enhancements/pull/19
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
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.
