Cloud Native 15 min read

How AppManager Enables Scalable Multi‑Cloud Application Deployment

This article explains how AppManager, built on OAM and Groovy plug‑ins, provides extensible multi‑cloud management by supporting dynamic component, trait, and workflow integration, automated build‑packaging, resource add‑ons, multi‑environment isolation, and built‑in state monitoring for reliable application delivery.

Alibaba Cloud Big Data AI Platform
Alibaba Cloud Big Data AI Platform
Alibaba Cloud Big Data AI Platform
How AppManager Enables Scalable Multi‑Cloud Application Deployment

What is AppManager?

AppManager is a service based on OAM that separates several roles to achieve application management and delivery, originally created to meet big‑data business needs with a focus on extensibility, network isolation, resource management, and version control.

Extensibility

All components, add‑ons, traits, policies, and workflows are implemented as plug‑in Groovy scripts that can be dynamically loaded. The green areas in the architecture diagram represent points where business‑specific Groovy scripts can be inserted, replaced, or removed.

Three roles collaborate: infrastructure developers write component, workflow, and resource scripts; SRE engineers write trait and policy scripts; users provide application code and follow predefined CI/CD processes.

Plugin Packages

To simplify distribution, multiple Groovy scripts can be bundled into a plugin package, allowing users to install capabilities with a single click.

Build and Packaging

The delivery pipeline has evolved from RPMs to Docker images and now to Helm Charts/Kustomize. AppManager parses user‑defined build configurations into application and component package tasks, supports various build back‑ends (Docker Daemon, Kaniko), pushes images to registries, and stores artifacts in OSS or MinIO with versioning and labeling.

Application Deployment

The deployment process starts with an Application YAML that defines components, add‑ons, and traits. Deployment proceeds from Workflow to Application to Component, with each step executing its Groovy script. Components can be micro‑services, jobs, or Helm releases, and custom components can be added.

Traits modify component workloads, produce data for downstream components, or continuously watch cluster events using a Trait Operator that extends the typical Kubernetes Operator model.

Dependency Graph

Components and traits declare dataInputs and dataOutputs. AppManager builds a DAG linking these dependencies, ensuring that a component runs only after its required data is available, while independent components can run in parallel.

Workflow

Workflows consist of multiple Groovy‑based steps, each capable of invoking policies to modify the global Application before submitting deployment tasks. Workflows support sequential or concurrent execution, pausing, resuming, and nesting for complex scenarios.

Resource Management (Add‑on)

Add‑ons are also Groovy scripts that implement apply and release interfaces for resource provisioning and cleanup. A Terraform‑based Groovy script demonstrates how internal resources are managed and shared across namespaces.

Multi‑Environment Support

AppManager defines four environment layers: Unit (network‑isolated group of clusters), Cluster (individual Kubernetes cluster), Namespace (Kubernetes namespace), and Stage (multiple stages within a namespace sharing resources).

Application State Sensing

AppManager provides two built‑in state‑sensing mechanisms: a high‑frequency Watch‑based approach for a few hundred clusters, and a Pull‑based approach that scales to 100,000 clusters with adaptive polling intervals.

These mechanisms aggregate component instance states into an overall application instance status.

For more details, see the open‑source repository at https://github.com/alibaba/sreworks .

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

Cloud NativeKubernetesDevOpsOAMAppManager
Alibaba Cloud Big Data AI Platform
Written by

Alibaba Cloud Big Data AI Platform

The Alibaba Cloud Big Data AI Platform builds on Alibaba’s leading cloud infrastructure, big‑data and AI engineering capabilities, scenario algorithms, and extensive industry experience to offer enterprises and developers a one‑stop, cloud‑native big‑data and AI capability suite. It boosts AI development efficiency, enables large‑scale AI deployment across industries, and drives business value.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.