Customization

If you’re working for a large company, chances are that there are multiple teams using the Stackable Data Platform. A single team can also operate multiple Stackable Data Platforms. stackablectl is build in a way customers or developers can define their own releases, stacks and demos! This way it is possible to cover the following use-cases.

Any additional demos/stacks/releases you specify, will be added to the already existing ones provided by Stackable.

Add a new demo

Benefits

When you have developed a new data pipeline or data product you often want to show it in action to other colleagues or potential clients. To easily achieve this you can create your own demo so that it can easily be reproduced and/or shared with other people.

Adding a new demo

First you must create a mycorp-demos.yaml containing demos according to the format defined by the Stackable provided demos.

After creating the mycorp-demos.yaml file it can be added to the available demos in stackablectl via the CLI argument --additional-demos-file mycorp-demos.yaml. The argument to --additional-demos-file can be either a path to a file on the local filesystem or an URL. By using an URL the demos file can be put into a central Git repository and referenced by all teams or clients. Multiple --additional-demos-file flags can be specified to include multiple demo files. Every additional demo will we added to the already existing demos in stackablectl, so all the available demo files will be merged.

Add a new stack

Benefits

If your company or clients have multiple similar setups or reference architectures, it could make sense to make them easily available to all employees or clients. In the custom defined stack all product versions are pinned as well, so you can easily spin up a stack containing the exact same versions as your production setup. You can use your defined stack to give it to colleagues or potential customers to show the overall architecture of the Data Platform you’re going to build.

Adding a new stack

For the overall procedure have a look at Adding a new demo on how to add a new stack. For a custom stack you need to create a mycorp-stacks.yaml containing stacks according to the format defined by the Stackable provided stacks. You can then add it to stackablectl with the flag --additional-stacks-file.

Add a new release

Benefits

If advanced users of the Stackable Platform want to define their own internal release within their company, they can easily add their own release. This has the following benefits:

  • Same operator versions across the whole company. This produces more uniform environments and makes debugging and helping other teams easier.

  • If the company is only interested in a subset of the available operators you can only add your relevant operators into your release and not install all the other operators.

Adding a new release

For the overall procedure have a look at Adding a new demo on how to add a new release. For a custom release you need to create a mycorp-releases.yaml containing releases according to the format defined by the Stackable provided releases. You can then add it to stackablectl with the flag --additional-releases-file.