Supergiant Control 2.0.0 Beta ships with a built-in “Catalog” that dramatically simplifies deployment of applications in your Kubernetes clusters and managing Helm repositories. Under the hood, SG Catalog pulls Helm charts from the repositories users have added and displays them in filterable lists. Each application contains human-readable installation and usage instructions, metadata and a set of actions. Users can configure a Helm chart using YAML configuration files directly from their browser. Or, they can do a one-click installation of Supergiant-approved charts that do not require any configuration at all. In this tutorial, we’ll demonstrate how to deploy applications from the Catalog, manage them, and add/remove new repositories to/from the Catalog.
To complete examples in this tutorial you’ll need the following prerequisites.
Users can access the SG Catalog in two different ways.
(1) When the cluster provisioning is over, Supergiant takes the user to the Cluster Details Page. To access the Catalog, you can Click the Add App plus icon at the bottom of the Apps table on this page (see the image below).
(2) Alternatively, you can use the Catalog link in the top navigation menu on your Home Page.
Both actions discussed above will lead you to the Supergiant Catalog. In there, you’ll see a list of apps and Helm chart repositories from which they originate. You can shift a current repository by clicking the repository name in at the top right menu on the page. As you see in the image below, we are currently inside the Supergiant repo.
Right now, we have two Helm repositories in the Catalog: Supergiant and Stable. Supergiant repo contains Supergiant-approved Helm charts, and the Stable repo includes Kubernetes-curated Helm charts.
The main difference between Supergiant and Stable repos is that Supergiant will be eventually populated with one-click deployable apps fully approved and managed by Supergiant. They won’t require configuration, and the installation will be super easy.
Let’s go to the Stable repo which contains a lot of apps/charts. There, you can filter apps by name. For example, if you type “elast” into the search bar, the filter will select all apps that match “elast” in their title.
Let’s deploy Elasticsearch. First, click “View” to go to the Elasticsearch Details page.
On this page, you’ll see the:
Let’s click “Configure” to modify the app’s settings. This action will open the dialogue with the editable YAML configuration for the app. Here, you can set configuration options provided by the app. Common ones include resource requests and limits, ports, storage, etc. You can modify these settings in the configuration file displayed in the Dashboard (see the image below).
Note: basic knowledge of YAML syntax and Kubernetes manifests are required to do configuration yourself. Soon, Supergiant will provide one-click installation charts that won’t require any configuration.
Once all edits are made, click “Save”, and, if you feel ready for the action, click “Deploy”. The deploy modal with a list of options will show up.
In this dialogue, you’ll need to select the cluster to which you want to deploy an app. You should also create a release name and choose the Kubernetes cluster namespace to deploy the app to (the “default” namespace is default).
After this is done, click “Confirm,” and the deployment process will start. In a moment, go back to the “Cluster Details” page and see the new app deployed.
Deleting apps in the Supergiant Control is easy as well. To delete the app, select the app you want to delete in the “Apps” table on the “Cluster Details” page and click on the trash can icon you can see in the image below. Then, confirm the deletion.
You can add as many Helm repositories to the Catalog as you want. To add a new repo, click the “Add” button in the “Add/Remove repo” section on the left of the apps list inside the repository. Clicking the button will open the “Add New Helm Repository” dialog where you should enter the name of the repo and its URL.
In this example, we are adding the Kubernetes incubator repository that contains test versions of the Helm charts not yet approved for the /stablerepo. Enter the name of the repo (e.g., “K8s-incubator), its URL (use the URL above), and click “Confirm.” This will add a new “K8s-incubator” repository to the repos list.
Removing repos is super easy as well. Select a repo you want to delete and click the “Remove” button in the “Add/Remove repo” section on the left of the Apps list inside that repository.
That’s it! You’ve learned how to deploy and manage apps and repositories using Supergiant’s Catalogue. It is a central hub for apps and repositories that can be easily managed using the SG Control UI. Our team is constantly working on increasing the scope of the Supergiant-approved charts with zero configuration. In Supergiant 2.0.0 Beta Control, we’ve already integrated such SG tools such as Analyze and Capacity into the Supergiant repo, so you can easily deploy them and access as Services inside your Kubernetes clusters.