Releases: clusterpedia-io/clusterpedia
Clusterpedia v0.5.1
Notable Changes since v0.5.0
InternalStorage
Bug Fix
Helm Charts
helm install clusterpedia . --set "apiserver.enableSHA1Cert=true"
- Support create database to external storage (#400, @RuliXu)
--set externalStorage.createDatabase=true
will render an init container for creating the database into the core component deployments.
# external-storage-values.yaml
installCRDs: true
storageInstallMode: "external"
persistenceMatchNode: "None"
postgresql:
enabled: false
externalStorage:
type: "postgres"
host: "10.6.173.102"
port: "32556"
user: "postgres"
password: "dangerous0"
database: "test"
createDatabase: true
Contributor
Thanks everyone who contributed to this release!
The following users (sort alphabetically) are those who committed much in this release. Thank you!
Clusterpedia v0.5.0
Notable Changes since v0.4.1
ClusterSynchro Manager
- Add apiserver to status for display (#328, @wuyingjun-lucky)
- Retry failed resource sync due to storage component exceptions (#336, @Iceber)
Bug Fix
Controller Manager
apiVersion: policy.clusterpedia.io/v1alpha1
kind: ClusterImportPolicy
spec:
source:
group: ""
resource: secrets
selectorTemplate: |
{{ if eq .source.metadata.namespace "default" }} true {{ end }}
Others
- Update golang version to v1.18 (#302, @tanryberdi)
- Friendly printing pediaclusterlifecycle and clusterimportlifecycle (#310, @qiuming520)
- Add chart lint workflow (#327, @calvin0327)
- Add chart to Artifact Hub (#318, #322, @RuliXu)
- Optimize e2e test failure and exit (#320, @wzshiming)
Contributor
Thanks everyone who contributed to this release!
The following users (sort alphabetically) are those who committed much in this release. Thank you!
Clusterpedia v0.5.0-beta.0
Notable Changes since v0.4.1
ClusterSynchro Manager
- Add apiserver to status for display (#328, @wuyingjun-lucky)
- Retry failed resource sync due to storage component exceptions (#336, @Iceber)
Bug Fix
Controller Manager
apiVersion: policy.clusterpedia.io/v1alpha1
kind: ClusterImportPolicy
spec:
source:
group: ""
resource: secrets
selectorTemplate: |
{{ if eq .source.metadata.namespace "default" }} true {{ end }}
Others
- Update golang version to v1.18 (#302, @tanryberdi)
- Friendly printing pediaclusterlifecycle and clusterimportlifecycle (#310, @qiuming520)
- Add chart lint workflow (#327, @calvin0327)
- Add chart to Artifact Hub (#318, #322, @RuliXu)
- Optimize e2e test failure and exit (#320, @wzshiming)
Contributor
Thanks everyone who contributed to this release!
The following users (sort alphabetically) are those who committed much in this release. Thank you!
v0.4.1
Changes since v0.4.0
Primarily fixed pediaclusterlifecycle controller bugs and made some optimizations to clustersynchro manager
ClusterSynchro Manager
The printer columns of the pediacluster is updated, please update the PediaCluster CRD
$ kubectl get pediacluster
NAME READY VERSION APISERVER
cluster-example True v1.22.2 https://10.6.100.10:6443
$ kubectl get pediacluster -o wide
NAME READY VERSION APISERVER VALIDATED SYNCHRORUNNING CLUSTERHEALTHY
cluster-example True v1.22.2 https://10.6.100.10:6443 Validated Running Healthy
Controller Manager
Bug Fix
Contributor
Thanks everyone who contributed to this release!
The following users (sort alphabetically) are those who committed much in this release. Thank you!
v0.4.0
Notable Changes since v0.3.0
- Added checking of database status for APIServer and ClusterSynchro Manager in helm (#199, @RuliXu)
- Removed unnecessary tolerance when deploying deployments (#201, @RuliXu)
- Bump kubernetes dependence to 1.24 (#204, @cleverhu)
- Added Karmada ClusterImportPolicy (#263, #271, @calvin0327)
APIServer
- Optimized the response message when getting a specific resource using the resource name without setting the cluster name in url path (#208, @wuyingjun-lucky)
- The Any CollectionResource has been added, which supports users to combine resource types at will to retrieve, Lean More (#266, @Iceber)
- The Collection Resource supports
withRemainingCount
andwithContinue
, Lean More (#267, @Iceber)
Bug Fix
- Fix the order of collection resources returned by
kubectl get collectionresources
(#203, @cleverhu) - Fix apiserver can't set logging flags (#249, #250, @ONE7live, @Iceber)
ClusterSynchro Manager
- Added custom resource
ClusterSyncResources
to provide public configuration of cluster sync resources, Lean More (#184, @RuliXu, @cleverhu)
Bug Fix
Controller Manager
The Controller Manager component has been added, include ClusterImportPolicy Controller and PediaClusterLifecycle Controller
- New custom resources
ClusterImportPolicy
andPediaClusterLifecycle
to support automatic conversion of other resources to PediaCluster, Lean More (#259, @Iceber)
Default Storage Layer
- When only fetching the resource metadata, only the metadata will be selected from the database (#227, @Iceber)
Contributor
Thanks everyone who contributed to this release!
The following users (sort alphabetically) are those who committed much in this release. Thank you!
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.
v0.2.0
What's New
- Support of using Helm Charts for installation (#53, #125, @calvin0327, @wzshiming)
PediaCluster
supports for importing a cluster using the kubeconfig (#115, @wzshiming)
APIServer
- Support for filtering resources by a period of creation (#113, @cleverhu)
- Support for searching for resources by an Owner name. Now, the feature of
Search by Owner
is officially released. (#91, @Iceber)
Default Storage Layer
- Support for fuzzy search by a resource name (#117, @cleverhu)
RemainingItemCount
can be a negative number. We can still useoffset + len(items) + remainingItemCount
to calculate the total amount of resources if theOffset
is too large. (#123, @cleverhu)
Bug Fixes
Deprecation
Search by Owner
has been released as an official feature.internalstorage.clusterpedia.io/owner-name
andinternalstorage.clusterpedia.io/owner-seniority
will be removed in the next release. (#91, @Iceber)
Other
golangci-lint
is used as a static checking tool (#86, #88, @Iceber)- Added CI Workloads such as static checking and unit testing for code #87, @Iceber)
Contributors
Thanks everyone who contributed to this release!
The following users (sort alphabetically) are those who committed much in this release. Thank you!
v0.1.0
This is the first release of Clusterpedia π₯³π₯³π₯³, and it also means that it is officially in the iteration phase.
Compared to the initial v0.0.8 and v0.0.9-alpha, v0.1.0 add a lot of features and makes some incompatible updates.
If upgrading from v0.0.9-alpha or v0.0.8, you can refer to Upgrade to Clusterpedia 0.1.0
What's New
pedia.clusterpedia.io/v1alpha1
for resource search changed toclusterpedia.io/v1beta1
(#73, @Iceber)- Optimized the
PediaCluster
schema, and moveclusters.clusterpedia.io/v1alpha1
tocluster.clusterpedia.io
(#27 #67 #76 #74 #78, @Iceber @wzshiming) - Support for synchronization and search of Custom Resources (#10, @Iceber)
- Move the cluster information inserted into the resource from the
metadata.labels
tometadata.annotations
(#37, @calvin0327) - Added manifests for deploying the storage component -
postgres
(#52, @Iceber)
APIServer
- Support for the List object with RemainintItemCount and Continue (#33, @Iceber)
- Enhanced support for Field Selector, which is compatible with the native Field Selector an supports the same complex operators as LabelSelector (#36, @Iceber)
- Added warning alerts when searching for resources in clusters with exception status (#35, @scydas)
- Consistent with the url query used for paging Limit, change the search label from
search.clusterpedia.io/size
tosearch.clusterpedia.io/limit
(#42, @calvin0327)
Bug Fixes
- Fix requestInfo to set requestInfo.Namespace field when resolving namespace resources (#17, @Iceber)
- Fix the abnormality of resource synchronization status display due to specified version of build-in resources during synchronization (#58, @Iceber)
ClusterSynchro Manager
Bug Fixes
- Fix bugs related to PediaCluster.Status updates (#11 #24 #23 #22 @Iceber)
- Fix clustersynchro manager's leader election (#15, @Iceber)
Default Storage Layer
- The default storage layer no longer provides the user with a default sort order, and the user is left to actively set the sort (#44, @Iceber)
- Added some indexes and fixed an issue with gorm ignoring empty fields (#41, @Iceber)
- Support search by parent or ancestor owner (#50, @Iceber)
Bug Fixes
- Fix JSON SQL generation (#60 #62 #78, @Iceber)
- Fix the bug that the resources obtained when filtering CollectionResource are not accurate (#61, @Iceber)
Contributors
Thank you to everyone who contributed to this release!
Users whose commits are in this release (alphabetically by user name)