vCluster - Create fully functional virtual Kubernetes clusters - Each vcluster runs inside a namespace of the underlying k8s cluster. It's cheaper than creating separate full-blown clusters and it offers better multi-tenancy and isolation than regular namespaces.
APACHE-2.0 License
Bot releases are hidden (Show)
Published by matskiv over 1 year ago
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.15.1...v0.15.2
Published by FabianKramm over 1 year ago
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.15.0...v0.15.1
Published by FabianKramm over 1 year ago
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.15.0...v0.15.1-beta.1
Published by FabianKramm over 1 year ago
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.15.0...v0.15.1-beta.0
Published by FabianKramm over 1 year ago
We added a new helm option fallbackHostDns
that allows users to access all (!) host cluster services as they would do in the host cluster itself from within the vcluster. This is very beneficial in scenarios where you want to share host cluster services inside the vcluster or use tools such as istio and dapr.
With the new options shown below, vcluster provides v1beta1.metrics.k8s.io
API. This API is widely used by different tools to get information about node or pod CPU and memory usage. While previously you had to install metrics-server inside the vcluster to get this API working, now it is available out of the box with these options to enable it:
proxy:
metricsServer:
nodes:
enabled: true
pods:
enabled: true
New releases are now getting pushed to GitHub registry. In the Helm charts we replaced docker.io references with ghcr.io.
In the previous release, we switched to using NodeHostName address type in the status fields of the Nodes. After some feedback from the users we decided to reintroduce the NodeInternalIP addresses which were used before v0.14.0. These will be enabled by default.
The NodeHostName addresses have seen a small change to the format - vcluster name and namespace are no longer part of the hostname. Previous format has backwards support in this release, but it will be removed in the future.
To match the behavior of vcluster v0.14.x, or to save IPs in the Service CIDR range of the host cluster, disable the use of NodeInternalIP with the values below. But be aware that some tools, such as Prometheus, rely on the Node addresses of the NodeInternalIP type, and thus might not work inside of the vcluster with this feature disabled.
sync:
nodes:
fakeKubeletIPs: false
Generic sync feature has received support for importing cluster scoped resources from the host cluster.
import:
- kind: IngressClass
apiVersion: networking.k8s.io/v1
A field named "optional" was added to the import and export rules for generic sync. If a rule is marked as optional, and the respective CRD is missing in the host cluster, vcluster will start without failing.
export:
- apiVersion: cert-manager.io/v1
kind: Certificate
optional: true
In order to better plan for the first major release of vcluster we are implementing some basic telemetry capability. In this first iteration, vcluster syncer component will report some basic anonymized information about the instance, such as syncer version, Kubernetes version, and which flags were set(but not the values). This will allow us to better prioritize areas for better test coverage, performance improvements, and find out which flags are not unused. This telemetry is opt-out. More details will be published in the dedicated docs page - https://www.vcluster.com/docs/telemetry
loft.sh/paused-date
annotation to paused clusters by @Piroddi in https://github.com/loft-sh/vcluster/pull/984
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.2...v0.15.0
Published by FabianKramm over 1 year ago
We added a new helm option fallbackHostDns
that allows users to access all (!) host cluster services as they would do in the host cluster itself from within the vcluster. This is very beneficial in scenarios where you want to share host cluster services inside the vcluster or use tools such as istio and dapr.
loft.sh/paused-date
annotation to paused clusters by @Piroddi in https://github.com/loft-sh/vcluster/pull/984
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.2...v0.15.0-beta.1
Published by matskiv over 1 year ago
We added a new helm option fallbackHostDns
that allows users to access all (!) host cluster services as they would do in the host cluster itself from within the vcluster. This is very beneficial in scenarios where you want to share host cluster services inside the vcluster or use tools such as istio and dapr.
loft.sh/paused-date
annotation to paused clusters by @Piroddi in https://github.com/loft-sh/vcluster/pull/984
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.2...v0.15.0-beta.1
Published by matskiv over 1 year ago
We added a new helm option fallbackHostDns
that allows users to access all (!) host cluster services as they would do in the host cluster itself from within the vcluster. This is very beneficial in scenarios where you want to share host cluster services inside the vcluster or use tools such as istio and dapr.
loft.sh/paused-date
annotation to paused clusters by @Piroddi in https://github.com/loft-sh/vcluster/pull/984
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.2...v0.15.0-beta.0
Published by matskiv over 1 year ago
We added a new helm option fallbackHostDns
that allows users to access all (!) host cluster services as they would do in the host cluster itself from within the vcluster. This is very beneficial in scenarios where you want to share host cluster services inside the vcluster or use tools such as istio and dapr.
loft.sh/paused-date
annotation to paused clusters by @Piroddi in https://github.com/loft-sh/vcluster/pull/984
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.15.0-alpha.1...v0.15.0-alpha.2
Published by matskiv over 1 year ago
We added a new helm option fallbackHostDns
that allows users to access all (!) host cluster services as they would do in the host cluster itself from within the vcluster. This is very beneficial in scenarios where you want to share host cluster services inside the vcluster or use tools such as istio and dapr.
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.15.0-alpha.0...v0.15.0-alpha.1
Published by FabianKramm over 1 year ago
We added a new helm option fallbackHostDns
that allows users to access all (!) host cluster services as they would do in the host cluster itself from within the vcluster. This is very beneficial in scenarios where you want to share host cluster services inside the vcluster or use tools such as istio and dapr.
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.2...v0.15.0-alpha.0
Published by matskiv over 1 year ago
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.1...v0.14.2
Published by matskiv over 1 year ago
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.0...v0.14.1
Published by matskiv over 1 year ago
Support for Kubernetes 1.26
With the new vcluster release we of course bring you the support of the latest stable Kubernetes release - 1.26. This version is supported for the vcluster k3s distro(default), k8s and k0s. Conformance test results for vcluster v0.14.0 and Kubernetes 1.26 will be made available shortly after this release is published.
Implemented by @neogopher in #857, #902.
Generic resource sync [Alpha]
Now, vcluster provides a built-in way to define additional Kubernetes resources that should be synced in a generic and declarative way with just a few lines of a YAML configuration. This allows users to change how Kubernetes native resources are synced, and also expand vcluster capabilities by syncing CRDs and leveraging Kubernetes controllers installed in the host cluster.
This feature is a successor to the vcluster-generic-crd-sync-plugin project. The full range of the generic sync features is available only in the vcluster created in the "multi-namespace mode" (see below). More information is available in the docs.
Over time we wish to expand the number of the example configurations in our GitHub repo - contributions are always welcomed!
Implemented by @ishankhare07 in #868; @matskiv in #899, #912; and @FabianKramm in #907.
Multi-namespace mode [Alpha]
This new feature diverges from the original vcluster architecture, where all namespaced resources were synced to the host namespace where vcluster was installed, and create a host namespace per virtual namespace and its respective namespaced resources. We see this feature being useful particularly in conjunction with the generic resource sync. More details are available in the documentation.
Implemented by @matskiv in #854, #889, #859, #879; @carlmontanari in #891, #892, #900, #904; @neogopher in #906; and @FabianKramm in #914.
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.13.0...v0.14.0
Published by matskiv over 1 year ago
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.13.0...v0.14.0-beta.0
Published by FabianKramm almost 2 years ago
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.13.0...v0.14.0-alpha.2
Published by matskiv almost 2 years ago
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.0-alpha.0...v0.14.0-alpha.1
Published by FabianKramm almost 2 years ago
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.13.0...v0.14.0-alpha.0
Published by matskiv almost 2 years ago
Greatly improved Support for logging and backup solutions
We have added an opt-in feature for vcluster which allows us to support logging solutions like ELK, fluentd, loki etc. deployed inside the vcluster. Along with these we also enable support for backup solutions like velero and VM solutions like kubevirt. These applications mount the host paths such as "/var/log" or "/var/lib/kubelet/pods" to retrieve information about workloads in the cluster. You can ensure that the expected data are made available to these applications by enabling the "Hostpath Mapper" feature of vcluster.
High availability support for k3s with external datastore
vcluster now supports HA for the default k3s distro. This is a new alternative to our existing HA support with the k8s distro of vcluster. However, it currently requires an external datastore to be configured. A new chapter of the HA documentation page describes how to install vcluster with HA k3s - https://www.vcluster.com/docs/operator/high-availability#k3s
Automatically sync CSI resources when the vcluster scheduler is enabled.
When vcluster scheduler is enabled, the vcluster will start syncing additional storage-related resources to make correct scheduling decisions. These resources are - CSIStorageCapacity, CSINode, and CSIDriver. You can disable this as described in the documentation.
sync:
hoststorageclasses:
enabled: true
vcluster list
CLI command by @mahendrabagul in https://github.com/loft-sh/vcluster/pull/787
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.12.3...v0.13.0
Published by matskiv almost 2 years ago
Greatly improved Support for logging and backup solutions
We have added an opt-in feature for vcluster which allows us to support logging solutions like ELK, fluentd, loki etc. deployed inside the vcluster. Along with these we also enable support for backup solutions like velero and VM solutions like kubevirt. These applications mount the host paths such as "/var/log" or "/var/lib/kubelet/pods" to retrieve information about workloads in the cluster. You can ensure that the expected data are made available to these applications by enabling the "Hostpath Mapper" feature of vcluster.
High availability support for k3s with external datastore
vcluster now supports HA for the default k3s distro. This is a new alternative to our existing HA support with the k8s distro of vcluster. However it currently requires an external datastore to be configured. New chapter of the HA documentation page describes how to install vcluster with HA k3s - https://www.vcluster.com/docs/operator/high-availability#k3s
Automatically sync CSI resources when scheduler is enabled.
When vcluster scheduler is enabled, the vcluster will start syncing additional storage-related resources to make correct scheduling decisions. These resources are - CSIStorageCapacity, CSINode, and CSIDriver. You can disable this as described in the documentation.
sync:
hoststorageclasses:
enabled: true
vcluster list
CLI command by @mahendrabagul in https://github.com/loft-sh/vcluster/pull/787
Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.12.3...v0.13.0-beta.1