Skip to content

KubeStellar User Guide#

This document is an overview of the User Guide. See the KubeStellar overview for architecture and other information.

This user guide is an ongoing project. If you find errors, please point them out in our Slack channel or open an issue in our github repository!

Installing and using KubeStellar progresses through the following stages.

  1. Install software prerequisites. See prerequisites.
  2. Acquire the ability to use a Kubernetes cluster to serve as the KubeFlex hosting cluster. See Acquire cluster for KubeFlex hosting.
  3. Initialize that cluster as a KubeFlex hosting cluster.
  4. Create an Inventory and Transport Space (ITS).
  5. Create a Workload Description Space (WDS).
  6. Create a Workload Execution Cluster (WEC).
  7. Register the WEC in the ITS.
  8. Maintain workload desired state in the WDS.
  9. Maintain control objects in the WDS to bind workload with WEC and modulate the state propagation back and forth. The API reference documents all of them. There are control objects for the following topics.
    1. Binding workload with WEC(s).
    2. Transforming desired state as it travels from WDS to WEC.
    3. Summarizing reported state from WECs into WDS.
  10. Enjoy the effects of workloads being propagated to the WEC.
  11. Consume reported state from WDS.

By "maintain" we mean create, read, update, delete, list, and watch as you like, over time. KubeStellar is eventually consistent: you can change your inputs as you like over time, and KubeStellar continually strives to achieve what you are currently asking it to do.

There is some flexibility in the ordering of those stage. The following flowchart shows the dependencies.

Ordering among installation and usage actions

You can have multiple ITSes, WDSes, and WECs, created and deleted over time as you like.

Besides "Start", the other green items in that graph are entry points for extending usage at any later time. You could also see them as distinct user roles or authorities.

KubeStellar's Core Helm chart combines initializing the KubeFlex hosting cluster, creating some ITSes, and creating some WDSes.

You can find an example run through of steps 2--7 in the quickstart. This dovetails with the example scenarios document, which shows examples of the later steps.

There is a Best Practices document that documents some usage limitations; others are documented in the Release Notes. (TODO: clean up this mess.)