vcluster

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

Stars
5.4K
Committers
139

Bot releases are hidden (Show)

vcluster - v0.15.2

Published by matskiv over 1 year ago

What's Changed

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.15.1...v0.15.2

vcluster - v0.15.1

Published by FabianKramm over 1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.15.0...v0.15.1

vcluster - v0.15.1-beta.1

Published by FabianKramm over 1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.15.0...v0.15.1-beta.1

vcluster - v0.15.1-beta.0

Published by FabianKramm over 1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.15.0...v0.15.1-beta.0

vcluster - v0.15.0

Published by FabianKramm over 1 year ago

New features

Fallback to Host DNS

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.

Built-in metrics server

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

Other improvements and changes

Moved to GitHub container registry

New releases are now getting pushed to GitHub registry. In the Helm charts we replaced docker.io references with ghcr.io.

Bring back NodeInternalIP addresses for Nodes

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 improvements

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

Basic telemetry gathering

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

Full changelog

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.2...v0.15.0

vcluster - v0.15.0-beta.2

Published by FabianKramm over 1 year ago

Fallback to Host DNS

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.

What's Changed

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.2...v0.15.0-beta.1

vcluster - v0.15.0-beta.1

Published by matskiv over 1 year ago

Fallback to Host DNS

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.

What's Changed

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.2...v0.15.0-beta.1

vcluster - v0.15.0-beta.0

Published by matskiv over 1 year ago

Fallback to Host DNS

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.

What's Changed

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.2...v0.15.0-beta.0

vcluster - v0.15.0-alpha.2

Published by matskiv over 1 year ago

Fallback to Host DNS

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.

What's Changed

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.15.0-alpha.1...v0.15.0-alpha.2

vcluster - v0.15.0-alpha.1

Published by matskiv over 1 year ago

Fallback to Host DNS

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.

What's Changed

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.15.0-alpha.0...v0.15.0-alpha.1

vcluster - v0.15.0-alpha.0

Published by FabianKramm over 1 year ago

Fallback to Host DNS

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.

What's Changed

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.2...v0.15.0-alpha.0

vcluster - v0.14.2

Published by matskiv over 1 year ago

What's Changed

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.1...v0.14.2

vcluster - v0.14.1

Published by matskiv over 1 year ago

What's Changed

Improvements and bug fixes

Other changes

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.0...v0.14.1

vcluster - v0.14.0

Published by matskiv over 1 year ago

New features

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.

Important changes

Other Changes

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.13.0...v0.14.0

vcluster - v0.14.0-beta.0

Published by matskiv over 1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.13.0...v0.14.0-beta.0

vcluster - v0.14.0-alpha.2

Published by FabianKramm almost 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.13.0...v0.14.0-alpha.2

vcluster - v0.14.0-alpha.1

Published by matskiv almost 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.14.0-alpha.0...v0.14.0-alpha.1

vcluster - v0.14.0-alpha.0

Published by FabianKramm almost 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.13.0...v0.14.0-alpha.0

vcluster - v0.13.0

Published by matskiv almost 2 years ago

New features

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.

Important changes

  • The "legacy-storageclasses" syncer was renamed to "hoststorageclasses". If you have enabled the "legacy-storageclasses" syncer, we highly recommend to update your helm values to reference the new name:
sync:
  hoststorageclasses:
    enabled: true

What's Changed

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.12.3...v0.13.0

vcluster - v0.13.0-beta.2

Published by matskiv almost 2 years ago

New features

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.

Important changes

  • The "legacy-storageclasses" syncer was renamed to "hoststorageclasses". If you have enabled the "legacy-storageclasses" syncer, we highly recommend to update your helm values to reference the new name:
sync:
  hoststorageclasses:
    enabled: true

What's Changed

New Contributors

Full Changelog: https://github.com/loft-sh/vcluster/compare/v0.12.3...v0.13.0-beta.1

Package Rankings
Top 1.89% on Proxy.golang.org
Badges
Extracted from project README
Join us on Slack! Open in DevPod!
Related Projects