Files
kubesphere/docs/roadmap.md
2021-03-01 11:16:45 +08:00

14 KiB

KubeSphere Roadmap demonstrates a list of open source product development plans and features being split by the edition and modules, as well as KubeSphere community's anticipation. Obviously, it details the future's direction of KubeSphere, but may change over time. We hope that can help you to get familiar with the project plans and vision through the Roadmap. Of course, if you have any better ideas, welcome to filing Issues.

Release Goals

Edition Schedule
Release Express Jul, 2018
Release v1.0.0 Dec, 2018
Release v1.0.1 Jan, 2019
Release v2.0.0 May, 2019
Release v2.0.1 June, 2019
Release v2.0.2 Jul, 2019
Release v2.1.0 Nov, 2019
Release v2.1.1 Feb, 2020
Release v3.0.0 June, 2020

v3.1

Feature:

IAM:

  • Add account confirmation process, solve problems caused by special characters in username.#2953
  • Support CAS identity provider.#3047
  • Support OIDC identity provider.#2941
  • Support IDaaS(Alibaba Cloud Identity as a Service) identity provider.#2997
  • Improve LDAP identity provider, support LDAPS and search filter.#2970
  • Improve identity provider plugin, simplify identity provider configuration.#2970
  • Limit login record maximum entries.#3191
  • Service account management, allows to assign role to Service Account #3211

Multitenancy:

  • Support transfer namespace to another workspace.#3028
  • Add user group, now users can be assigned to a group and invite a group to a workspace or a project.#2940
  • Add resource quota to a workspace. The resource quota is the same with KubernetesResourceQuota, providesconstraints that limit aggregate resource consumption by all namespaces within. #2939
  • Add choose of whether to cascade delete related resources when deleting workspace.#3192

DevOps:

  • Support Gitlab with Kubesphere multi-branch pipeline. #3100
  • Run multiple DevOps pipelines at the same time instead of just one.#1811
  • Clone pipeline. Users now can create exactly same pipeline from an existing one.#3053
  • Add approval control for pipelines. #2483 #3006
  • Add and display the status of the pipeline on the front page. #3007
  • Support tag trigger pipeline. #3051
  • Interactive creation pipeline. #1283
  • Add S2I webhook support. #6

microservice

  • Support graph traffic direction. It will show outbound/inbound traffic direction in composed application traffic graph. #3153
  • Support Kiali addon. Users can manage istio by kiali directly. #3106
  • Support Nginx Ingress Gateway monitor. Add prometheus metrics for nginx ingress controller. #1205
  • Support add router component. #1426

KubeEdge Integration #3070

  • KubeEdge cloud components setup.
  • KubeEdge edge nodes setup.
  • Edge nodes logging and metrics support.
  • Automatic network configuration on edge node joining/leaving.
  • Automatic taint edge node on joining.
  • Cloud workloads (such as daemonset) with wide tolerations should not be scheduled to edge node by adding a node selector.
  • Scheduling workloads to edge nodes.

Observability

Custom monitoring #3067

  • Configure ServiceMonitor via UI. #1031
  • PromQL auto-completion and syntax highlighting. #1307
  • Support cluster-level custom monitoring. #3193
  • Tools to convert Grafana dashboard to KubeSphere Dashboard #9

Custom Alerting #3065

  • Prometheus alert rule management. #3181
  • Alert rule tenant control: global/namespace level alert rules. #3181
  • List alerts for a specific alert rule. #3181

Multi-tenant Notification support including Email/DingTalk/Slack/Wechat works/Webhook #3066

  • More notification channels including Email, DingTalk, Slack, WeChat works, Webhook
  • Multi-tenant control of notification

Logging

  • Support collecting kubelet/docker/containerd logs. 38
  • Support output logs to Loki. #39
  • Support containerd log format

Application Lifecycle Management (OpenPitrix)

Network

  • IPPool for Calico and VMs #3057
  • Support for deployment using static IPs #3058
  • Support network visualization #3061 #583

Metering

  • Support for viewing resource consumption at the cluster, workspace, and application template levels #3062

MultiCluster:

  • Validate member cluster configuration if the member cluster config(e.g. jwtSecret) is not same as host cluster, which can reduce the complexity of joining clusters. #3232
  • Support configuring cluster controller resync period, some users need to update the cluster component more quickly. #3213
  • Lightweight member cluster installation, support running kubepshere without redis and ldap and so on. #3056
  • Refactor cluster controller(it should updates the cluster.staus field instead of the tower server when using proxy connection). #3234
  • Support the tower server and agent running highly available(server with leader election option and running more than one agent). #31

Upgrade:

  • Upgrade isito version from 1.4.8 => 1.6.10#3326
  • Upgrade prometheus client_golang to v1.5.1, upgrade prometheus to v1.8.2 3097
  • Upgrade Kubectl version for the Toolbox, and the Kubectl Verion will be matched with the Kubernetes Server version. #3103
  • Upgrade dependencies of K8s version from v1.17 to V1.18. #3274

DevOps:

Observability

  • Upgrade to Prometheus v2.25.0
  • Upgrade Notification Manager to v0.7.0+ Releases
  • Upgrade FluentBit Operator to v0.3.0+ Releases
  • Upgrade FluentBit to v1.6.9+

BugFix:

  • Fix unable to get service mesh graph when in a namespace whose name starts with kube#3126
  • Fix deploy workloads to kubernetes encountered bad_certificate error. #3112
  • Fix DevOps project admin cannot download artifacts. #3088
  • Fix cannot create pipeline caused by user admin not found in directory. #3105
  • Fix the security risk caused by pod viewer can connect to the container terminal. #3041
  • Fix some resources cannot be deleted in cascade. #2912
  • Fix self-signed certificate for admission webhook relies on legacy Common Name field. #2928
  • Fix application monitor view #1394
  • Fix Grayscale Release when service app label is not the same with the servicename #3128
  • Fix application status which is always updating #3241
  • Fix workspaces on member cluster would be deleted when joining to host if there are workspaces with same name on the host. #3169
  • Fix cluster unjoin federation plane when using proxy connection. #3202
  • Fix multi-cluster-status-condition. #3135
  • Fix edge cluster can't join to the host cluster. #3198
  • Fix can not rollout restart tower agent. #29

DevOps:

  • Fix error webhook link under multicluster. forum #2626
  • Fix some data lost in jenkinsfile when users edit pipeline. #1270
  • Fix error when clicking "Docker Container Registry Credentials". console #1269
  • Fix chinese show in code quality under English language. consoel #1278
  • Fix get the error when it displays a bool parameter from InSCM Jenkinsfile. #3043

v3.0

Multi-cluster

DevOps

  • Create / Edit Pipeline Process Optimization.
  • S2I/B2I supports webhook.
  • Image registry optimization.
  • Pipeline support integration with JIRA.
  • Pipeline integrates the notification of KubeSphere.
  • Pipeline integrates KubeSphere custom monitoring.

Observability

  • Logging console enhancement
  • Monitoring stack upgrade including Prometheus, Prometheus Operator, Node exporter, kube-state-metrics etc.
  • Custom metrics support including application custom metrics dashboard, custom metrics HPA
  • Integration with Alertmanager
  • K8s Event management
  • K8s Audit Support
  • Notification Enhancement

Network

Storage

  • Snapshot management
  • Volume cloning
  • Volume monitoring and alerting
  • Identify storage system capabilities
  • Restore volume to available status
  • Unified integrate third-party storage plugin

Security & Multitenancy

  • Support the OAuth2 SSO plugin.
  • Workspace resource quota.
  • Refactor access management framework to adapt to multi-cluster design.

Application Lifecycle Management (OpenPitrix)

v2.1

  • Most of the work will be bugfix
  • Refactor RBAC in order to support future versions regarding third-party plugins with custom access control.
  • Refactor installer
  • FluentBit Operator upgrade