!!! Breaking Changes !!!
New helm values.yaml format
We changed the vCluster values.yaml format in this release and most old helm values will no longer work. We will provide a migration script that automatically updates the old values to the new ones. You can check the new format at https://github.com/loft-sh/vcluster/blob/main/chart/values.yaml
Merged all vCluster charts into a single one
We merged all different vCluster charts (vcluster, vcluster-k8s, vcluster-k0s & vcluster-eks) into a single helm chart. This should simplify vCluster deployment in the future. We will provide a migration script that automatically updates the old values to the new ones and we added a values schema json to the helm chart that will let upgrading of the chart fail if the values format doesn't match. You can check the new format at https://github.com/loft-sh/vcluster/blob/main/chart/values.yaml
You can enable a specific distro now via the helm chart values:
controlPlane:
distro:
k8s:
enabled: true
K8s distro is now the default distribution
We changed the default distro from k3s to k8s as k8s is the least opinionated and you can now also use kine with k8s, which allows to use SQLite and other storage backends with the regular k8s distro to overcome the biggest problem using k8s so far for smaller vClusters.
K8s distro default backing store is now SQLite
Currently it was only possible to use external etcd deployed by vCluster or embedded etcd (as a pro feature) with the k8s distro. With v0.20 its also possible to use Kine with the k8s distro and SQLite is the new default for it. You can still use the external etcd deployed by vCluster with:
controlPlane:
distro:
k8s:
enabled: true
backingStore:
etcd:
deploy:
enabled: true
What's Changed
- fix: IPFamilyPolicy not synced for default vcluster service by @rohantmp in #1592
- merge vCluster charts & new values.yaml by @FabianKramm in #1583
- chore: bump values schema by @FabianKramm in #1597
- Schema comments: change vCluster to virtual cluster when not referring to the product itself by @aimeeu in #1598
- license(vCluster): Updated OSS licenses by @loft-bot in #1596
- fix: only apply deploy config once by @FabianKramm in #1600
- build: add sync config workflow by @FabianKramm in #1603
- build: update sync-config.yaml by @FabianKramm in #1604
- build: update sync-config.yaml by @FabianKramm in #1605
- build: update sync-config.yaml by @FabianKramm in #1606
- fix: delete unused nodes correctly by @FabianKramm in #1607
- print error on cli connection problems by @eumel8 in #1594
- fix: override endpoints if service selector is empty by @FabianKramm in #1608
- docs: fix helm install command by @pdbrito in #1614
- feat: allow external etcd for k3s & k0s by @FabianKramm in #1620
- Fix storage config docs that referenced old yaml structure by @heiko-braun in #1624
- refactor: disabled -> enabled: auto & telemetry refactor by @FabianKramm in #1625
- feat: allow embedded sqlite for k8s & default k8s by @FabianKramm in #1626
- refactor: make function replaceable by @FabianKramm in #1628
- refactor: improvements for plugins by @FabianKramm in #1629
- Regenerate CLI docs by @heiko-braun in #1630
- Files missing from CLI docs regen by @heiko-braun in #1631
- chore: move ipblock comment to field instead of type definition by @pascalbreuninger in #1639
- chore(deps): bump azure/setup-helm from 3 to 4 by @dependabot in #1637
- Added build target to generate schema by @heiko-braun in #1635
- refactor: rename embeddedSqlite to embedded by @FabianKramm in #1640
- docs: suggest required helm values for scraping kubelet targets in Isolated mode by @neogopher in #1642
- refactor: add concrete webhook types by @FabianKramm in #1643
- added draft for interceptor plugin by @facchettos in #1612
- fix: affinity label selector overriden by namespace selector by @rohantmp in #1609
New Contributors
Full Changelog: v0.19.5...v0.20.0-alpha.2