refine readme, update download url to 2.1.1

Signed-off-by: FeynmanZhou <pengfeizhou@yunify.com>
This commit is contained in:
FeynmanZhou
2020-03-01 15:36:50 +08:00
parent 0bc5529ea1
commit 4e07963e42
3 changed files with 99 additions and 108 deletions

105
README.md
View File

@@ -1,8 +1,8 @@
# KubeSphere
# KubeSphere Container Platform
[![License](http://img.shields.io/badge/license-apache%20v2-blue.svg)](https://github.com/KubeSphere/KubeSphere/blob/master/LICENSE)
[![Build Status](https://travis-ci.org/kubesphere/kubesphere.svg?branch=master)](https://travis-ci.org/kubesphere/kubesphere)
[![Go Report Card](https://goreportcard.com/badge/github.com/kubesphere/kubesphere)](https://goreportcard.com/report/github.com/kubesphere/kubesphere)
[![KubeSphere release](https://img.shields.io/github/release/kubesphere/kubesphere.svg?color=release&label=release&logo=release&logoColor=release)](https://github.com/kubesphere/kubesphere/releases/tag/v2.1.0)
[![KubeSphere release](https://img.shields.io/github/release/kubesphere/kubesphere.svg?color=release&label=release&logo=release&logoColor=release)](https://github.com/kubesphere/kubesphere/releases/tag/v2.1.1)
![logo](docs/images/kubesphere-logo.png)
@@ -12,9 +12,9 @@
> English | [中文](README_zh.md)
[KubeSphere](https://kubesphere.io/) is a multi-tenant enterprise-grade container platform built on [Kubernetes](http://kubernetes.io), with full-stack automated IT operation and streamlined DevOps workflows. KubeSphere provides developer-friendly wizard web UI, helps enterprises to build out a more robust and feature-rich platform, includes most common functionalities needed for enterprise Kubernetes strategy, such as the **Kubernetes resource management, DevOps (CI/CD), application lifecycle management, monitoring, logging, Service Mesh (Istio-based), multi-tenancy, alerting and notification, storage and networking, autoscaling, access control, GPU support, etc.**, as well as **multi-cluster management, Network Policy, registry management, security** in upcoming releases. KubeSphere is going to be a **distributed operating system with cloud native stack** based on Kubernetes, will be very well architected for **plug-and-play integration with its ecosystem** as well.
[KubeSphere](https://kubesphere.io/) is a multi-tenant enterprise-grade container platform built on [Kubernetes](http://kubernetes.io), with full-stack automated IT operation and streamlined DevOps workflows. KubeSphere provides developer-friendly wizard web UI, helping enterprises to build out a more robust and feature-rich platform, which includes most common functionalities needed for enterprise Kubernetes strategy, such as the **Kubernetes resource management, DevOps (CI/CD), application lifecycle management, monitoring, logging, Service Mesh (Istio-based), multi-tenancy, alerting and notification, storage and networking, autoscaling, access control, GPU support, etc.**, as well as **multi-cluster management, Network Policy, registry management, more security enhancements** in upcoming releases. KubeSphere is a **distributed operating system with cloud native stack** with Kubernetes as its kernel, and will be very well architected for **plug-and-play integration for third-party applications to boost its ecosystem**.
KubeSphere provides a complete user experience around Kubernetes that incorporates a rich set of cloud native ecosystem tools, allows developers and DevOps teams use their favorite tools in a single front-end interface. KubeSphere delivers **consolidated views while integrating a wide breadth of ecosystem tools** upon Kubernetes and offer **consistent user experience** to reduce complexity. Most importantly, these functionalities are loosely coupled with the platform since they are pluggable and optional based on your demands, will not impact the flexibilty of Kubernetes.
KubeSphere provides a complete user experience around Kubernetes that incorporates a set of cloud native ecosystem tools, allowing developers and DevOps teams use their favorite tools in a unified console. KubeSphere delivers **consolidated views while integrating a wide breadth of ecosystem tools** around Kubernetes and offers consistent user experience to reduce complexity. Most importantly, these functionalities are loosely coupled with the platform since they are pluggable and optional at your will. Last but not least, it does not change Kubernetes itself anything. In another word, KubeSphere can be deployed on any existing version-compatible Kubernetes cluster.
![](docs/images/kubesphere-platform-overview.png)
@@ -41,36 +41,29 @@ KubeSphere provides a complete user experience around Kubernetes that incorporat
</tr>
</table>
## Video on Youtube
[![KubeSphere](https://pek3b.qingstor.com/kubesphere-docs/png/20191112093503.png)](https://youtu.be/u5lQvhi_Xlc)
## Demo Environment
Using the account `demo1 / Demo123` to log in the [demo environment](https://demo.kubesphere.io/). Please note the account is granted viewer access.
Using the account `demo1 / Demo123` to log in the [demo environment](https://demo.kubesphere.io/). Please note the account is granted viewer access. You can also have a quick view of [KubeSphere Demo Video](https://youtu.be/u5lQvhi_Xlc).
## Features
KubeSphere provides an easy-to-use console with awesome user experience that allows you to quickly get started with a container management platform. KubeSphere provides and supports the following major features:
|Feature|Description|
|---|---|
| Provisioning Kubernetes Cluster|Support deploy Kubernetes on your infrastructure out of box, including online and air gapped installation|
| Kubernetes Resource Management | Provide web console for creating and managing Kubernetes resources, with powerful observability including monitoring, logging, events, alerting and notification |
| DevOps System | Provide out-of-box CI/CD based on Jenkins, and offers automated workflow tools including binary-to-image (B2I) and source-to-image (S2I) |
| Application Store | Provide application store for Helm-based applications, and offers application lifecycle management |
| Service Mesh (Istio-based) | Provide fine-grained traffic management, observability and tracing for distributed microservice applications, provides visualization for traffic topology |
| Rich Observability | Provide multi-dimensional monitoring metrics, and provides multi-tenant log query and collection, support alerting and notification for both application and infrastructure |
| Multi-tenant Management | Provide unified authentication with fine-grained roles and three-tier authorization system, supports AD/LDAP authentication |
| Infrastructure Management | Support node management and monitoring, and supports adding new nodes for Kubernetes cluster |
| Storage Support | Support GlusterFS, CephRBD, NFS, Local (default) etc. open source storage solutions, provide CSI plugins to consume storage from cloud providers |
| Network Support | Support Calico, Flannel, etc. open source network solutions, provides load balancer plug-in [Porter](https://github.com/kubesphere/porter) for Kubernetes installed on physical machines |
| GPU Support | Support add GPU node, support vGPU, enables running ML applications on Kubernetes, e.g. TensorFlow |
- Workload management
- Service mesh (Istio-based)
- DevOps (CI/CD Pipeline)
- Source to Image, Binary to Image
- Multi-tenant management
- Multi-dimensional and multi-tenant monitoring, logging, alerting, notification
- Service and network management
- Application store and application lifecycle management
- Node and storage class management, image registry management
- Integrated Harbor, GitLab, SonarQube
- LB controller for Kubernetes on bare metal ([Porter](https://github.com/kubesphere/porter)), [cloud LB plugin](https://github.com/yunify/qingcloud-cloud-controller-manager)
- Support GPU node, support [vGPU](https://github.com/virtaitech/orion)
It also supports a variety of open source storage solutions and cloud storage products as the persistent storage services, as well as supports multiple open source network plugins.
> Note: See this [document](https://kubesphere.io/docs/v2.1/en/introduction/features/) which elaborates on the KubeSphere features and services.
> Note: See this [Feature and Benefits](https://kubesphere.io/docs/v2.1/en/introduction/features/) for further information.
----
@@ -81,35 +74,42 @@ KubeSphere uses a loosely-coupled architecture that separates the [frontend](htt
## Latest Release
KubeSphere 2.1.0 was released on **November 12nd, 2019**. Check the [Release Notes For 2.1.0](https://kubesphere.io/docs/v2.1/zh-CN/release/release-v210/) for the updates.
KubeSphere 2.1.1 was released on **February 23th, 2019**. See the [Release Notes For 2.1.1](https://kubesphere.io/docs/v2.1/en/release/release-v211/) for the updates.
## Installation
KubeSphere can run anywhere from on-premise datacenter to any cloud to edge. In addition, it can be deployed on any Kubernetes distribution.
> Attention: The following section is only used for minimal installation by default, see [Complete Installation Guide](https://kubesphere.io/docs/v2.1/en/installation/intro/) for details.
### Deploy on Existing Kubernetes
**Prerequisites**
> - `Kubernetes version`: `1.13.0 ≤ K8s version < 1.16`;
> - `Helm version`: `2.10.0 ≤ Helm 3.0.0`(will support Helm v3 in KubeSphere v3.0) see [Install and Configure Helm in Kubernetes](https://devopscube.com/install-configure-helm-kubernetes/);
> - CPU > 1 CoreMemory > 2 G;
> - An existing Storage Class in your Kubernetes clusters, use `kubectl get sc` to verify it.
> - `Kubernetes version` `1.15.x, 1.16.x, 1.17.x`
> - `Helm version` >= `2.10.0`see [Install and Configure Helm in Kubernetes](https://devopscube.com/install-configure-helm-kubernetes/), (Helm v3 will be supported in KubeSphere 3.0.0)
> - An existing Storage Class in your Kubernetes cluster, use `kubectl get sc` to verify it
> - The CSR signing feature is activated in kube-apiserver, see [RKE installation issue](https://github.com/kubesphere/kubesphere/issues/1925#issuecomment-591698309).
Run the following command. When all Pods of KubeSphere are running, it means the installation is successsful. Then you can use `http://<IP>:30880` to access the dashboard with default account `admin/P@88w0rd`.
Install KubeSphere using kubectl.
```yaml
$ kubectl apply -f https://raw.githubusercontent.com/kubesphere/ks-installer/master/kubesphere-minimal.yaml
- If there are 1 Core and 2 GB RAM available in your cluster, use the command below to set up a default minimal installation only:
```bash
kubectl apply -f https://raw.githubusercontent.com/kubesphere/ks-installer/master/kubesphere-minimal.yaml
```
You can enable other components after installation, see [Pluggable components Installation](https://kubesphere.io/docs/v2.1/en/installation/pluggable-components/).
- If there are 8 Cores and 16 GB RAM available in your cluster, use the command below to install a complete KubeSphere, i.e. with all components enabled:
```bash
kubectl apply -f https://raw.githubusercontent.com/kubesphere/ks-installer/master/kubesphere-complete-setup.yaml
```
### Deploy on Linux
KubeSphere Installer can help you to install KubeSphere and Kubernetes on your linux machines. It provides [All-in-One](https://kubesphere.com.cn/docs/v2.1/en/installation/all-in-one/) and [Multi-Node](https://kubesphere.com.cn/docs/v2.1/en/installation/multi-node/) installation options.
KubeSphere Installer can help you to install KubeSphere and Kubernetes on your linux machines. It provides [All-in-One](https://kubesphere.io/docs/v2.1/en/installation/all-in-one/) and [Multi-Node](https://kubesphere.io/docs/v2.1/en/installation/multi-node/) installation options.
**Prerequisites**
**Minimum Requirements**
- Operating Systems
- CentOS 7.5 (64 bit)
@@ -119,44 +119,33 @@ KubeSphere Installer can help you to install KubeSphere and Kubernetes on your l
- Hardware
- CPU2 Core, Memory4 G, Disk Space100 G
##### All-in-One
For those who are new to KubeSphere and looking for the easiest way to install and experience the dashboard. Execute the following commands to download and install KubeSphere in a single node.
##### All-in-One (QuickStart)
```bash
$ curl -L https://kubesphere.io/download/stable/v2.1.0 > installer.tar.gz \
&& tar -zxf installer.tar.gz && cd kubesphere-all-v2.1.0/scripts
curl -L https://kubesphere.io/download/stable/latest > installer.tar.gz \
&& tar -zxf installer.tar.gz && cd kubesphere-all-v2.1.1/scripts
$ ./install.sh
```
Choose `"1) All-in-one"` to start the installation without changing any configuration.
Choose `"1) All-in-one"` to start the default minimal installation.
> Note: In a development or production environment, it's highly recommended to install Multi-Node KubeSphere.
> Note: It's highly recommended to install [multi-node](https://kubesphere.io/docs/v2.1/en/installation/multi-node/) in production environment.
You can enable other components after installation, see [Pluggable Components Installation](https://kubesphere.io/docs/v2.1/en/installation/pluggable-components/).
## To start using KubeSphere
### Quick Start
KubeSphere provides 12 quick-start tutorials to walk you through the platform.
- [Get Started - En](https://kubesphere.io/docs/v2.1/en/quick-start/admin-quick-start/)
- [Get Started - 中](https://kubesphere.io/docs/v2.1/zh-CN/quick-start/admin-quick-start/)
### Documentation
- KubeSphere Documentation ([En](https://kubesphere.io/docs/en/)/[](https://kubesphere.io/docs/zh-CN/)
- [API Documentation](https://kubesphere.io/docs/v2.1/en/api-reference/api-docs/)
## To start developing KubeSphere
The [development guide](CONTRIBUTING.md) hosts all information about building KubeSphere from source, git workflow, how to contribute code and how to test.
## RoadMap
Currently, KubeSphere has released the following 4 major editions. The future releases will include Multicluster, Big data, AI, SDN, etc. See [Plans for 2.1.1 and 3.0.0](https://github.com/kubesphere/kubesphere/issues/1368) for more details.
Currently, KubeSphere has released the following 5 major editions. The future releases include multicluster, big data, AI, SDN, etc. See [Plans for 2.1.1 and 3.0.0](https://github.com/kubesphere/kubesphere/issues/1368) for more details.
**Express Edition** => **v1.0.x** => **v2.0.x** => **v2.1.0** => **v2.1.1** => **v3.0.0**