Supergiant Control ships with a built-in App Store that dramatically simplifies deployment of applications in your Kubernetes clusters and managing Helm repositories. Under the hood, SG App Store 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 App Store, manage them, and add/remove new repositories to/from the App Store.
To complete examples in this tutorial you’ll need the following prerequisites.
Users can access the SG App Store in two different ways.
(1) When the cluster provisioning is over, Supergiant takes the user to the Cluster Details Page. To access the App Store, 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 Apps link in the top navigation menu on your Home Page.
Both actions discussed above will lead you to the Supergiant App Store. 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 App Store: 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:
* Name of the app — Elasticsearch
* Installation instructions
* Chart info
* Actions (Configure and Deploy)
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 App Store is easy as well. To delete the app, select the app you want to delete and click on the trash can icon you can see in the image above. Then, confirm the deletion:
You can add as many Helm repositories to the App Store as you want. To add a new repo, click a “plus” icon in the repository list at the top right corner of the App Store. Clicking on the icon will open a New Repo dialogue 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 /stable repo.
Enter the name of the repo (e.g., Test), its URL (use the URL above), and click “Confirm.” This will add a new “Test” repository to the repos list.
Once you have a repo selected, you can easily delete it by clicking Remove Repo icon at the bottom of the page.
That’s it! You’ve learned how to deploy and manage apps and repositories using Supergiant’s App Store. App Store is designed as a central hub for apps and repositories that can be easily managed using the SG Control UI. Our team is constantly working to increase the scope of the Supergiant-approved apps that require zero configuration.