Giter Club home page Giter Club logo

kubevela's Introduction

Build status Go Report Card Docker Pulls codecov LICENSE Releases TODOs Twitter Artifact HUB

alt

Make shipping applications more enjoyable.

KubeVela

KubeVela is a modern application engine that adapts to your application's needs, not the other way around.

Community

Introduction

Developers simply want to deploy.

Traditional Platform-as-a-Service (PaaS) systems enable easy application deployments, but this happiness disappears when your application outgrows the capabilities of your platform. This is inevitable regardless of your PaaS is built on Kubernetes or not - the root cause is its inflexibility.

KubeVela is a modern application deployment system that adapts to your needs. Essentially, KubeVela enables you to define platform capabilities (such as workloads, operational behaviors, and cloud services) as reusable CUE or Helm components, per needs of your application deployment. And when your needs grow, your platform capabilities expand naturally in a programmable approach.

Perfect in flexibility though, X-as-Code tends to lead to configuration drift. That's why KubeVela is fully built as a Kubernetes Controller instead of a client-side tool, i.e. all its capabilities are modeled as code but enforced with battle tested reconciling loops which will never leave inconsistency in your clusters. Think about Platform-as-Code enabled by Kubernetes, CUE and Helm.

With developer experience in mind, KubeVela exposes those programmable platform capabilities as application-centric API shown as below:

  • Components - deployable/provisionable entities that composed your application deployment
    • e.g. a Kubernetes workload, a MySQL database, or a AWS OSS bucket
  • Traits - attachable operational features per your needs
    • e.g. autoscaling rules, rollout strategies, ingress rules, sidecars, security policies etc
  • Application - full description of your application deployment assembled with components and traits.

Getting Started

Features

  • Zero-restriction application deployment system - design and express platform capabilities with CUE and Helm per needs of your application, and let Kubernetes controller guarantee the determinism in the application deployment. GUI forms are automatically generated for capabilities so even your dashboard are fully extensible.
  • Generic progressive rollout framework - built-in rollout framework and strategies to upgrade your microservice regardless of its workload type (e.g. stateless, stateful, or even custom operators etc).
  • Multi-cluster multi-revision application deployment - built-in model to deploy or rollout your apps across hybrid infrastructures, with Service Mesh for traffic shifting.
  • Simple and native - KubeVela is a just simple Kubernetes custom controller, all its capabilities are defined as Custom Resources so they naturally work with any CI/CD or GitOps tools which work with Kubernetes.

Documentation

Visit the KubeVela documentation site to find Installation Instruction, Platform Builder Guide and Developer Experience Guide.

Talks and Conferences

Engagement Link
๐ŸŽค Talks - KubeVela - The Modern App Delivery System in Alibaba
- Cloud-Native Apps With Open Application Model (OAM) And KubeVela
๐ŸŒŽ KubeCon - [NA 2020] Standardizing Cloud Native Application Delivery Across Different Clouds
- [EU 2021] Zero Pain Microservice Development and Deployment with Dapr and KubeVela
๐Ÿ“บ Conferences - Dapr, Rudr, OAM: Mark Russinovich presents next gen app development & deployment
- Mark Russinovich presents "The Future of Cloud Native Applications with OAM and Dapr"

Contributing

Check out CONTRIBUTING to see how to develop with KubeVela.

Code of Conduct

KubeVela adopts CNCF Code of Conduct.

kubevela's People

Contributors

wonderflow avatar zzxwill avatar hongchaodeng avatar ryanzhang-oss avatar resouer avatar captainroy-hy avatar yangsoon avatar sunny0826 avatar leejanee avatar szihai avatar hanxie-crypto avatar wangyikewxgm avatar majian159 avatar aichovy avatar erdun avatar chengshiwen avatar ghostbaby avatar dylandee avatar mengjiao-liu avatar silenceper avatar wenxinnnnn avatar horis233 avatar leoliuyan avatar linjiemiao avatar cbl315 avatar rain18 avatar vnzongzna avatar unknwon avatar xiqiu618 avatar laojianzi avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.