v2.0
v1.0
  1. Release Notes
    1. Release Notes - 2.0.2Latest
    1. Release Notes - 2.0.1
    1. Release Notes - 2.0.0
  1. Introduction
    1. Introduction
    1. Features
    1. Architecture
    1. Advantages
    1. Glossary
  1. Installation
    1. Intruction
      1. Intro
      2. Port Requirements
    1. Install on Linux
      1. All-in-One Installation
      2. Multi-Node Installation
      3. Installing HA Master and Etcd Cluster
      4. Storage Configuration Instruction
    1. Install on Kubernetes
      1. Prerequisites
      2. Online Installation
      3. Offline Installation
    1. Related Tools
      1. Integrating Harbor Registry
    1. Cluster Operation
      1. Adding New Nodes
      2. High Risk Operation
      3. Uninstalling KubeSphere
  1. Quick Start
    1. Getting Started with Multitenancy
    1. Exposing your APP using Ingress
    1. Deploying a MySQL Application
    1. Deploying a Wordpress Website
    1. Job to compute π to 2000 places
    1. Deploying Grafana using APP Template
    1. Creating Horizontal Pod Autoscaler
    1. S2i: Publish your app without Dockerfile
    1. Canary Release of Microservice APP
    1. CI/CD based on Spring Boot Project
    1. Building a Pipeline in a Graphical Panel
    1. CI/CD based on GitLab and Harbor
    1. Ingress-Nginx for Grayscale Release
  1. Cluster Admin Guide
    1. Multi-tenant Management
      1. Overview of Multi-tenant Management
      2. Overview of Role Management
    1. Platform Management
      1. Account Management
      2. Platform Roles Management
    1. Infrastructure
      1. Service Components
      2. Nodes
      3. Storage Classes
    1. Monitoring Center
      1. Physical Resources
      2. Application Resources
    1. Application Repository
    1. Jenkins System Settings
  1. User Guide
    1. Application Template
    1. Workloads
      1. Deployments
      2. StatefulSets
      3. DaemonSets
      4. Jobs
      5. CronJobs
    1. Storage
      1. Volumes
    1. Network & Services
      1. Services
      2. Routes
    1. Configuration Center
      1. Secret
      2. ConfigMap
      3. Image Registry
    1. Project Settings
      1. Basic Information
      2. Member Roles
      3. Project Members
      4. Internet Access
    1. DevOps Project
      1. DevOps Project Management
      2. DevOps Project Management
      3. DevOps Project Management
      4. DevOps Project Management
      5. DevOps Project Management
  1. Development Guide
    1. Preparing the Development Environment
    1. Development Workflow
  1. API Documentation
    1. API Guide
    1. How to invoke KubeSphere API
KubeSphere®️ 2020 All Rights Reserved.

Deploying a Grafana to Kubernetes using Application Template

Objective

This tutorial shows you how to quickly deploy a Grafana application in KubeSphere via App Template, demonstrating the basic functionality of the application repository, application templates, and application management.

Prerequisites

You've completed all steps in Getting Started with Multi-tenant Management.

Hands-on Lab

Step 1: Add a Application Repository

Note: The application repository can be either the Object Storage, e.g. QingStor Object Storage, AWS S3, or GitHub Repository. The packages are composed of Helm Chart template files of the applications. Therefore, before adding an application repository to KubeSphere, you need to create an object storage and upload  Helm packages in advance. This tutorial prepares a demo repository based on QingStor Object Storage.

1.1. Sign in with admin account and navigate to Platform → Platform Settings → App Repositories, then Click Add App Repository.

1.2. Fill in the basic information, name it as demo-repo and input the URL with https://helm-chart-repo.pek3a.qingstor.com/kubernetes-charts/, you can validate if this URL is available, choose OK when you've done.

1.3. Click App Templates on the top of this page, it will automatically import all of the applications from the demo repository.

Step 2: Deploy the Grafana Application

2.1. When you've already added the repository, you can logout and sign in with project-regular account. Then select App Templates on the top of this page, input "grafana" in the search box to find the application.

2.2. Click into grafana, Deploy App and fill in the basic information.

2.3. Name can be customized by yourself, choose the corresponding Workspace (e.g. demo-workspace) and Project (e.g. demo-project) as the environment. Then choose Deploy to deploy Grafana to KubeSphere.

2.4. Back to the demo-project and choose Applications, then you can see the application grafana showing active from the application list.

Step 3: View App Details

3.1. Click into grafana application, you will be able to see its Services and Workloads in Resource Status page, as well as Environmental Variables and App Template information.

3.2. Next we are going to expose this service outside of the cluster via NodePort. Enter into its service e.g. grafana-l47bmc, then click More → Edit Internet Access.

3.3. Select NodePort from the drop down list.

3.4. Therefore it will generate a Node Port, for example, here is 31126 that we can access this service using <$NodeIP>:<$NodePort>.

Step 4: Access the Grafana Service

At this point, you will be able to access the Nginx service via ${Node IP}:${NODEPORT}, e.g. http://192.168.0.88:31126, or click the button Click to visit to access the Grafana dashboard.

4.1. Note that you have to obtain the account and password from the grafana secret in advance. Navigate to Configuration Center → Secrets, click into grafana-l47bmc (Type: Default).

4.2. Click the button to display the secret information, then copy and paste the value of admin-user and admin-password.

4.3. Open the Grafana log in page, sign in with the admin account.