kubevela.github.io/docs/getting-started/core-concept.md

2.5 KiB
Raw Blame History

title
Core Concept

KubeVela revolves around cloud-native application delivery and management scenarios. The application delivery model behind it is Open Application Model, or OAM for short. It describes various components and operational traits required for application as a unified, and infrastructure-independent "deployment plan". As a result, we can achieve standardized and efficient application delivery in a multi-cloud/hybrid-cloud environment. KubeVela includes the following core concepts:

alt

Application

An application defines the delivery and management requirements of an artifact (binary, Docker image, Helm Chart...) or cloud service included in a microservice business unit. It consists of four parts: Component, Trait, Workflow and Policy.

Component

Component defines the artifact of applicationThe best practice is to having one core component and subordinate components around it. Its type decided by Component Definition .

Trait

Traits are plugable operations that can attach to Component, for example: scaler for replicas(manual and auto), PVC, gateway, DNS and so on. You can draw out-of-box Trait from the ecosystem or simply customize by Trait Definition.

Workflow

Workflow allows you to define critical step in the process of application delivery, typical steps will be manual approve, data passing, release across multi-cluster, notification and etc. Its type can be defined and customized by Workflow Step Definition.

Policy

Policy defines a strategy of certain aspect for application as to quality assurance, security, firewall rules, SLO and etc. Its type can be defined and customized by Policy Definition.

Cluster

Import and manage your Kubernetes cluster in KubeVela。Kubernetes cluster is one of the main way for KubeVela application delivery.

Addon

Addon is where you can freely pull in third-party capability that fulfills your need. This relies on the highly scalable design pattern of KubeVela. Each Addon will have its own X-Definition.

Next Step

  • View Architecture to learn the overall architecture of KubeVela.