Skip to content

Latest commit

 

History

History
108 lines (63 loc) · 4.68 KB

README.md

File metadata and controls

108 lines (63 loc) · 4.68 KB

Rudr documentation

Rudr is the Kubernetes reference implementation of the Open Application Model (OAM) specification, a team-centric standard for building cloud-native apps, where:

Developer role Developers define application components,
Application operator role Application operators create instances of those components, assign them to application configurations, and designate their operational capabilities, and,
Infrastructure operator role Infrastructure operators declare, install, and maintain the underlying services available on the platform.

Components and applications are deployed in the Rudr runtime within your Kubernetes cluster.

To get started, check out the Install Rudr guide and the Tutorial. The Concepts guides will walk you through all the available options Rudr provides to run and manage applications, and the How-Tos cover more advanced scenarios.

Get started

Install the Rudr runtime and its dependencies.

Learn how to deploy, inspect, and update a Rudr application.

Concepts

As a implementation of OAM, Rudr provides application centric abstractions to different roles in application management workflow. Learn more about the main application model abstractions: components (and their workloads), traits, and application configurations.

The component schematic defines the parameters, workload type, and containers of a unit of code.

Learn how a developer can define the functional units that may be instantiated as part of a larger distributed application and their respective workloads.


The application configuration defines the parameters, components, and other runtime properties of the overall application.

Learn how an application operator can define how an overall application will be instantiated and configured.


Traits represent add-on runtime functionality assigned to component workloads from within the application configuration.

Learn how an application operator can attach operational features to component workloads of an application.




Scopes are used to logically group components within an application.

Learn how an application operator can define application boundaries by grouping components with common properties and dependencies.

How-To's

Build a component from source code to use for testing.

Learn how to use Helm/Kustomize tools to manage your OAM .yaml filese.

Here are tips and best practices for migrating exsiting Kubernetes applications to use Rudr.

Extended Workloads

Learn how to implement your own workload type, or import existing CRD Operator as OAM Extended Workload Types. The current tutorial includes:

  1. How to run OpenFaaS function as OAM Component.
  2. How to provision Prometheus as OAM Component.

Note: eventually extended workloads will be moved to a separate repo under oam-dev org.

Develop

Here's a walk through of the process for writing a new trait for Rudr.

These are some useful tips for troubleshooting your Rudr deployments.

Admission controller is used for mutating and validating OAM component, trait and application configuration spec.

Find answers to commonly asked questions about Rudr and the Open Application Model (OAM).