v2.1
v2.0
v1.0
  1. Release Notes
    1. Release Notes - 2.1.1Latest
    1. Release Notes - 2.1.0
    1. Release Notes - 2.0.2
    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. Introduction
      1. Intro
      2. Port Requirements
      3. Kubernetes Cluster Configuration
    1. Install on Linux
      1. All-in-One Installation
      2. Multi-Node Installation
      3. High Availability Configuration
      4. Air Gapped Installation
      5. StorageClass Configuration
      6. Enable All Components
    1. Install on Kubernetes
      1. Prerequisites
      2. Install on K8s
      3. Air Gapped Installation
      4. Install on GKE
    1. Pluggable Components
      1. Pluggable Components
      2. Enable Application Store
      3. Enable DevOps System
      4. Enable Logging System
      5. Enable Service Mesh
      6. Enable Alerting and Notification
      7. Enable Metrics-server for HPA
      8. Verify Components Installation
    1. Upgrade
      1. Overview
      2. All-in-One
      3. Multi-node
    1. Third-Party Tools
      1. Configure Harbor
      2. Access Built-in SonarQube and Jenkins
      3. Enable built-in Grafana Installation
      4. Load Balancer plugin in Bare Metal - Porter
    1. Authentication Integration
      1. Configure LDAP/AD
    1. Cluster Operations
      1. Add or Cordon Nodes
      2. High Risk Operations
      3. Uninstall KubeSphere
  1. Quick Start
    1. 1. Getting Started with Multi-tenancy
    1. 2. Expose your App Using Ingress
    1. 3. Compose and Deploy Wordpress to K8s
    1. 4. Deploy Grafana Using App Template
    1. 5. Job to Compute π to 2000 Places
    1. 6. Create Horizontal Pod Autoscaler
    1. 7. S2I: Publish your App without Dockerfile
    1. 8. B2I: Publish Artifacts to Kubernete
    1. 9. CI/CD based on Spring Boot Project
    1. 10. Jenkinsfile-free Pipeline with Graphical Editing Panel
    1. 11. Canary Release of Bookinfo App
    1. 12. Canary Release based on Ingress-Nginx
    1. 13. Application Store
  1. DevOps
    1. Pipeline
    1. Create SonarQube Token
    1. Credentials
    1. Set CI Node for Dependency Cache
    1. Set Email Server for KubeSphere Pipeline
  1. User Guide
    1. Configration Center
      1. Secrets
      2. ConfigMap
      3. Configure Image Registry
  1. Logging
    1. Log Query
  1. Developer Guide
    1. Introduction to S2I
    1. Custom S2I Template
  1. API Documentation
    1. API Documentation
    1. How to Access KubeSphere API
  1. Troubleshooting
    1. Troubleshooting Guide for Installation
  1. FAQ
    1. Telemetry
KubeSphere®️ 2020 All Rights Reserved.

All-in-One Installation

Edit

For those who are new to KubeSphere and looking for a quick way to discover the platform, the all-in-one mode is your best choice to install it since it is one-click and hassle-free configuration installation with provisioning KubeSphere and Kubernetes on your machine.

  • The following instructions are for the default installation without enabling any optional components as we have made them pluggable since v2.1.0. If you want to enable any one, please see the section Enable Pluggable Components below.
  • If your machine has >= 8 cores and >= 16G memory, we recommend you to install the full package of KubeSphere by enabling optional components.

Prerequisites

If your machine is behind a firewall, you need to open the ports by following the document Ports Requirement for more information.

Step 1: Prepare Linux Machine

The following describes the requirements of hardware and operating system.

  • For Ubuntu 16.04 OS, it is recommended to select the latest 16.04.5.
  • If you are using Ubuntu 18.04, you need to use the root user to install.
  • If the Debian system does not have the sudo command installed, you need to execute the apt update && apt install sudo command using root before installation.

Hardware Recommendation

System Minimum Requirements
CentOS 7.4 ~ 7.7 (64 bit) CPU:2 Core, Memory:4 G, Disk Space:100 G
Ubuntu 16.04/18.04 LTS (64 bit) CPU:2 Core, Memory:4 G, Disk Space:100 G
Red Hat Enterprise Linux Server 7.4 (64 bit) CPU:2 Core, Memory:4 G, Disk Space:100 G
Debian Stretch 9.5 (64 bit) CPU:2 Core, Memory:4 G, Disk Space:100 G

Step 2: Download Installer Package

Execute the following commands to download Installer 2.1.1 and unpack it.

curl -L https://kubesphere.io/download/stable/latest > installer.tar.gz \
&& tar -zxf installer.tar.gz && cd kubesphere-all-v2.1.1/scripts

Step 3: Get Started with Installation

You should not do anything except executing one command as follows. The installer will complete all things for you automatically including installing/updating dependency packages, installing Kubernetes with default version 1.16.7, storage service and so on.

Note:

  • Generally speaking, do not modify any configuration.
  • KubeSphere installs calico by default. If you would like to use a different network plugin, you are allowed to change the configuration in conf/common.yaml. You are also allowed to modify other configurations such as storage class, pluggable components, etc.
  • The default storage class is OpenEBS which is a kind of Local Volume to provision persistence storage service. OpenEBS supports dynamic provisioning PV. It will be installed automatically for your testing purpose.
  • Please refer storage configurations for supported storage class.
  • Since the default subnet for Cluster IPs is 10.233.0.0/18, and the default subnet for Pod IPs is 10.233.64.0/18, the node IPs must not use the two IP range. You can modify the default subnets kube_service_addresses or kube_pods_subnet in the file conf/common.yaml to avoid conflicts.

1. Execute the following command:

./install.sh

2. Enter 1 to select All-in-one mode and type yes if your machine satisfies the requirements to start:

################################################
         KubeSphere Installer Menu
################################################
*   1) All-in-one
*   2) Multi-node
*   3) Quit
################################################
https://kubesphere.io/               2020-02-24
################################################
Please input an option: 1

3. Verify if KubeSphere is installed successfully or not:

(1). If you see "Successful" returned after completed, it means the installation is successful. The console service is exposed through nodeport 30880 by default. You may need to bind EIP and configure port forwarding in your environment for outside users to access. Make sure you disable the related firewall.

successsful!
#####################################################
###              Welcome to KubeSphere!           ###
#####################################################

Console: http://192.168.0.8:30880
Account: admin
Password: P@88w0rd

NOTE:Please modify the default password after login.
#####################################################

Note: The information above is saved in a log file that you can view by following the guide.

(2). You will be able to use default account and password to log in the console to take a tour of KubeSphere.

Note: After log in console, please verify the monitoring status of service components in the "Cluster Status". If any service is not ready, please wait patiently untill all components get running up.

Dashboard

Enable Pluggable Components

The guide above is only used for minimal installation by default. You can execute the following command to open the configure map and enable pluggable components. Make sure your cluster has enough CPU and memory in advance, see Enable Pluggable Components.

kubectl edit cm -n kubesphere-system ks-installer

FAQ

The installer has been tested on Aliyun, AWS, Huawei Cloud, QingCloud and Tencent Cloud. Please check the results for details. Also please read the FAQ of installation.

If you have any further questions please do not hesitate to file issues on GitHub.