v0.3.0
What's New
APIServer
- Added a new feature gate of
RemainingItemCount
to set whether the number of remained resources will be included in the response by default (#197, #166, @cleverhu, @feeltimeQ)
The feature gate of
RemainingItemCount
defaults to false, and the number of remained resources can be included by default with--feature-gates RemainingItemCount=true
.
Collection Resources
-
Added
kuberesources
to support for search and paging of all kube's build-in types of resources through a single api (#186, @cleverhu) -
Added support for getting only the metadata of resources (#193, @cleverhu)
$ kubectl get collectionresources
NAME RESOURCES
workloads deployments.apps,daemonsets.apps,statefulsets.apps
kuberesources *,*.admission.k8s.io,*.admissionregistration.k8s.io,*.apiextensions.k8s.io,*.apps,*.authentication.k8s.io,*.authorization.k8s.io,*.autoscaling,*.batch,*.certificates.k8s.io,*.coordination.k8s.io,*.discovery.k8s.io,*.events.k8s.io,*.extensions,*.flowcontrol.apiserver.k8s.io,*.imagepolicy.k8s.io,*.internal.apiserver.k8s.io,*.networking.k8s.io,*.node.k8s.io,*.policy,*.rbac.authorization.k8s.io,*.scheduling.k8s.io,*.storage.k8s.io
# path is /apis/clusterpedia.io/v1beta1/collectionresources/kuberesources
$ kubectl get collectionresources kuberesources
ClusterSynchro Manager
- Added support for using wildcards to set syncResources, and you can sync all resources in a cluster (#188, @Iceber)
# PediaCluster
spec:
syncResources:
- group: "*"
resources:
- "*"
or
# PediaCluster
spec:
syncResources:
- group: "apps"
resources:
- "*"
-
Optimized support for custom resources and aggregated resources, with the capability of updating resource-sync versions in real time based on changes to CRDs and API (#180, #136, @Iceber)
-
Optimized the sync status of resources, and added exception messages due to permission or other problems (#161, @ycsk02)
-
Added the
ClusterSynchroInitialized
condition toPediaCluster
(#142, @ycsk02) -
Added support for using the singular and plural of resources when setting up
sync resources
, and the capability of using any upper- or lower-case format (#152, @Iceber)
# PediaCluster
spec:
syncResources:
- group: "apps"
resources:
- "deployment"
- "DaemonSet"
# need to set feature gate AllowSyncAllCustomResources to true, eg. `./apiserver --feature-gates=AllowSyncAllCustomResources=true`
# PediaCluster
spec:
syncAllCustomResources: true
Default Storage Layer
# storage-config.yaml
connPool:
maxIdleConns: 10
maxOpenConns: 100
connMaxLifetim: 1h
# storage-config.yaml
log:
logger:
filename: "/var/log/clusterpedia/apiserver.log"
maxSize: 100
maxBackups: 1
For details see Lubmerjack configuration.
- Added support for some advanced search, allowing users to customize SQL statements for more complex searches (#160, @cleverhu)
# need to set feature gate AllowRawSQLQuery to true, eg. `./apiserver --feature-gates=AllowRawSQLQuery=true`
URL="/apis/clusterpedia.io/v1beta1/resources/apis/apps/v1/deployments"
kubectl get --raw="$URL?whereSQL=(namespace='default') or (name like '%25b%25')"
Bug Fix
Others
-
Moved api to staging/api, and added a clusterpedia-io/api repo (#119, @27149chen)
-
Added support for setting feature gates in helm charts (#181, @calvin0327)
-
Upgraded the feature gate
PruneManagedFields
andPruneLastAppliedConfiguration
to beta (#176, @calvin0327) -
Charts: Fixed password problem when using external storage components (#172, @gambol99)
-
Charts: Fixed mismatch between storage component name and svc address in clusterpedia config (#138 ,@ycsk02)
Contributors
Thanks everyone who contributed to this release!
The following users (sort alphabetically) are those who committed much in this release. Thank you!
- @27149chen
- @calvin0327
- @cleverhu
- @feeltimeQ
- @gambol99
- @huoyinghao
- @Iceber
- @liangyongzhenya
- @RuliXu
- @wzshiming
- @ycsk02
- @yyzxw
And thanks to @windsonsea for proofreading the release notes.