Management Overview
The Core API is the main API for Cluster management. The Core API includes resources such as Services, Namespaces, Users, Groups, Policies, Devices, ClusterConfig among other resource types.
Applying Changes
The Cluster is designed to be managed, using the octeliumctl CLI, in a centralized and declarative way that is very similar to Kubernetes via the octeliumctl apply command, through which you can apply all changes of your resources and (re)produce the state of your Cluster with a single command.
You can define one or more resources in a single yaml file and then apply all changes as follows:
As your Cluster's resources grow, you might want to define your resources in multiple yaml files and even organize them into further subdirectories. In a fairly complex system with at least tens or hundreds of resources, it's much better to organize your configuration into multiple files and subdirectories. Here is an example:
In such case, you similarly use the octeliumctl apply command as follows:
You can also apply changes to only a certain subdirectory or even a certain file. Here are some examples:
By default, the octeliumctl apply command only applies changes to create or update exiting resources but does not delete nonexistent resources. If you want to completely synchronize the state described in your file/directory and prune all additional resources in the Cluster that no longer exist in the current configuration, you can add the --prune flag as follows:
By default changes to all Resource types, except for Secret resources which are meant to be mainly managed in an imperative way (read more here), are applied. You can also choose to apply changes for certain Resource types instead of applying changes to all types. For example, you can apply changes for User and IdentityProvider resources only as follows:
Now, only changes to User and IdentityProvider resources are applied.
You can also exclude one or more types as follows:
You can also include Secret resources via the --include-secret flag as follows:
Listing Resources
You can list the different Cluster resources via the octeliumctl get command. For example, you can list the Cluster's Services as follows:
You can also set the page and number of items per page for the list as follows:
By default, the list is ordered by the creation date. You can, however, set order the list by name as follows:
You can also reverse the order of the list as follows:
By default, the output of a octeliumctl get command is formatted as a table. You can force the output to be formatted as YAML as follows:
You can also force the output to be formatted as JSON as follows:
Deleting Resources
You can delete a certain resource via the octeliumctl delete command. Here are some examples: