Release Notes for 3.2.0

Multi-tenancy & Multi-cluster

New Features

  • Add support for setting the host cluster name in multi-cluster scenarios, which defaults to host. (#4211, @yuswift)
  • Add support for setting the cluster name in single-cluster scenarios. (#4220, @yuswift)
  • Add support for initializing the default cluster name by using globals.config. (#2283, @harrisonliu5)
  • Add support for scheduling Pod replicas across multiple clusters when creating a Deployment. (#2191, @weili520)
  • Add support for changing cluster weights on the project details page. (#2192, @weili520)

Bug Fixes

  • Fix an issue in the Create Deployment dialog box in Cluster Management, where a multiple-cluster project can be selected by directly entering the project name. (#2125, @fuchunlan)
  • Fix an error that occurs when workspace or cluster basic information is edited. (#2188, @xuliwenwenwen)
  • Remove information about deleted clusters on the Basic Information page of the host cluster. (#2211, @fuchunlan)
  • Add support for sorting Services and editing Service settings in multi-cluster projects. (#2167, @harrisonliu5)
  • Refactor the gateway feature of multi-cluster projects. (#2275, @harrisonliu5)
  • Fix an issue where multi-cluster projects cannot be deleted after the workspace is deleted. (#4365, @wansir)

Observability

New Features

  • Add support for HTTPS communication with Elasticsearch. (#4176, @wanjunlei)
  • Add support for setting GPU types when scheduling GPU workloads. (#4225, @zhu733756)
  • Add support for validating notification settings. (#4216, @wenchajun)
  • Add support for importing Grafana dashboards by specifying a dashboard URL or by uploading a Grafana dashboard JSON file. KubeSphere automatically converts Grafana dashboards into KubeSphere cluster dashboards. (#4194, @zhu733756)
  • Add support for creating Grafana dashboards in Custom Monitoring. (#2214, @harrisonliu5)
  • Optimize the Notification Configuration feature. (#2261, @xuliwenwenwen)
  • Add support for setting a GPU limit in the Edit Default Container Quotas dialog box. (#2253, @weili520)
  • Add a default GPU monitoring dashboard.(#2580, @harrisonliu5
  • Add the Leader tag to the etcd leader on the etcd monitoring page. (#2445, @xuliwenwenwen)

Bug Fixes

  • Fix the incorrect Pod information displayed on the Alerting Messages page and alerting policy details page. (#2215, @harrisonliu5)

Authentication & Authorization

New Features

  • Add a built-in OAuth 2.0 server that supports OpenID Connect. (#3525, @wansir)
  • Remove information confirmation required when an external identity provider is used. (#4238, @wansir)

Bug Fixes

  • Fix incorrect source IP addresses in the login history. (#4331, @wansir)

Storage

New Features

  • Change the parameters that determine whether volume clone, volume snapshot, and volume expansion are allowed. (#2199, @weili520)
  • Add support for setting the volume binding mode during storage class creation. (#2220, @weili520)
  • Add the volume instance management feature. (#2226, @weili520)
  • Add support for multiple snapshot classes. Users are allowed to select a snapshot type when creating a snapshot. (#2218, @weili520)

Bug Fixes

  • Change the volume access mode options on the Storage Settings tab page. (#2348, @live77)

Network

New Features

  • Add the Route sorting, routing rule editing, and annotation editing features on the Route list page. (#2165, @harrisonliu5)
  • Refactor the cluster gateway and project gateway features. (#2262, @harrisonliu5)
  • Add the service name auto-completion feature in routing rule creation. (#2196, @wengzhisong-hz)
  • DNS optimizations for ks-console:
    • Use the name of the ks-apiserver Service directly instead of ks-apiserver.kubesphere-system.svc as the API URL.
    • Add a DNS cache plugin (dnscache) for caching DNS results. (#2435, @live77)

Bug Fixes

  • Add a Cancel button in the Enable Gateway dialog box. (#2245, @weili520)

Apps & App Store

New Features

  • Add support for setting a synchronization interval during app repository creation and editing. (#2311, @xuliwenwenwen)
  • Add a disclaimer in the App Store. (#2173, @xuliwenwenwen)
  • Add support for dynamically loading community-developed Helm charts into the App Store. (#4250, @xyz-li)

Bug Fixes

  • Fix an issue where the value of kubesphere_app_template_count is always 0 when GetKubeSphereStats is called. (#4130, @Hanamichi)

DevOps

New Features

  • Set the system to hide the Branch column on the Run Records tab page when the current pipeline is not a multi-branch pipeline. (#2379, @live77)
  • Add the feature of automatically loading Jenkins configurations from ConfigMaps. (#75, @JohnNiang)
  • Add support for triggering pipelines by manipulating CRDs instead of calling Jenkins APIs. (#41, @rick)
  • Add support for containerd-based pipelines. (#171, @rick)
  • Add Jenkins job metadata into pipeline annotations. (#254, @JohnNiang)

Bug Fixes

  • Fix an issue where credential creation and update fails when the value length of a parameter is too long. (#123, @shihh)
  • Fix an issue where ks-apiserver crashes when the Run Records tab page of a parallel pipeline is opened. (#93, @JohnNiang)

Dependency Upgrades

  • Upgrade the version of Configuration as Code to 1.53. (#42, @rick)

Installation

New Features

  • Add support for Kubernetes v1.21.5 and v1.22.1. (#634, @pixiake)
  • Add support for automatically setting the container runtime. (#738, @pixiake)
  • Add support for automatically updating Kubernetes certificates. (#705, @pixiake)
  • Add support for installing Docker and conatinerd using a binary file. (#657, @pixiake)
  • Add support for Flannel VxLAN and direct routing. (#606, @kinglong08)
  • Add support for deploying etcd using a binary file. (#634, @pixiake)
  • Add an internal load balancer for deploying a high availability system. (#567, @24sama)

Bug Fixes

  • Fix a runtime.RawExtension serialization error. (#731, @pixiake)
  • Fix the nil pointer error during cluster upgrade. (#684, @24sama)
  • Add support for updating certificates of Kubernetes v1.20.0 and later. (#690, @24sama)
  • Fix a DNS address configuration error. (#637, @pixiake)
  • Fix a cluster creation error that occurs when no default gateway address exists. (#661, @liulangwa)

User Experience

  • Fix language mistakes and optimize wording. (@Patrick-LuoYu, @Felixnoo, @serenashe)
  • Fix incorrect function descriptions. (@Patrick-LuoYu, @Felixnoo, @serenashe)
  • Remove hard-coded and concatenated UI strings to better support UI localization and internationalization. (@Patrick-LuoYu, @Felixnoo, @serenashe)
  • Add conditional statements to display correct English singular and plural forms. (@Patrick-LuoYu, @Felixnoo, @serenashe)
  • Optimize the Pod Scheduling Rules area in the Create Deployment dialog box. (#2170, @qinyueshang)
  • Fix an issue in the Edit Project Quotas dialog box, where the quota value changes to 0 when it is set to infinity. (#2118, @fuchunlan)
  • Fix an issue in the Create ConfigMap dialog box, where the position of the hammer icon is incorrect when the data entry is empty. (#2206, @fuchunlan)
  • Fix the incorrect default value of the time range drop-down list on the Overview page of projects. (#2340, @fuchunlan)
  • Fix an error that occurs during login redirection, where redirection fails if the referer URL contains an ampersand (&). (#2194, @harrisonliu5)
  • Change 1 hours to 1 hour on the custom monitoring dashboard creation page. (#2276, @live77)
  • Fix the incorrect Service types on the Service list page. (#2178, @xuliwenwenwen)
  • Fix the incorrect traffic data displayed in grayscale release job details. (#2422, @harrisonliu5)
  • Fix an issue in the Edit Project Quotas dialog box, where values with two decimal places and values greater than 8 cannot be set. (#2127, @weili520)
  • Allow the About dialog box to be closed by clicking other areas of the window. (#2114, @fuchunlan)
  • Optimize the project title so that the cursor is changed into a hand when hovering over the project title. (#2128, @fuchunlan)
  • Add support for creating ConfigMaps and Secrets in the Environment Variables area of the Create Deployment dialog box. (#2227, @harrisonliu5)
  • Add support for setting Pod annotations in the Create Deployment dialog box. (#2129, @harrisonliu5)
  • Allow domain names to start with an asterisk (*). (#2432, @wengzhisong-hz)
  • Add support for searching for Harbor images in the Create Deployment dialog box. (#2132, @wengzhisong-hz)
  • Add support for mounting volumes to init containers. (#2166, @Sigboom)
  • Remove the workload auto-restart feature in volume expansion. (#4121, @wenhuwang)

APIs

Component Changes

  • kubefed: v0.7.0 -> v0.8.1
  • prometheus-operator: v0.42.1 -> v0.43.2
  • notification-manager: v1.0.0 -> v1.4.0
  • fluent-bit: v1.6.9 -> v1.8.3
  • kube-events: v0.1.0 -> v0.3.0
  • kube-auditing: v0.1.2 -> v0.2.0
  • istio: 1.6.10 -> 1.11.1
  • jaeger: 1.17 -> 1.27
  • kiali: v1.26.1 -> v1.38
  • KubeEdge: v1.6.2 -> 1.7.2