Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

The Kupe Cloud article proposes a single configurable plugin process for synchronizing declared Kubernetes resource kinds across the vCluster tenant/control-plane boundary. Its search-result description says the plugin supports per-kind direction and mode, reference translation, label and namespace selectors, and status sync. Those are the article’s claims, not independently verified capabilities. In many deployments, vCluster’s built-in fromHost.customResources and toHost.customResources settings may already cover the need; the deciding factors are ownership, API type, and required transformations.

What does “one plugin for every kind” mean?

The proposal is to configure multiple Kubernetes resource kinds in one plugin process rather than build or deploy a separate synchronizer for each kind. The Kupe Cloud article’s search-result description says administrators can set direction and mode per kind and use features such as reference translation, label and namespace selectors, and status synchronization. It also describes the plugin as open source under Apache-2.0.

The article page and linked repository were not available for independent inspection, so the plugin’s actual behavior, supported vCluster versions, release state, and runtime requirements are not established here. Treat its feature list as a description of the author’s proposal, not as a verified compatibility or production-readiness claim.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Can built-in vCluster custom-resource sync do the job?

Often, yes. The vCluster v0.37 Stable custom-resource guide documents built-in fromHost.customResources and toHost.customResources configuration. These settings are not interchangeable: direction determines which cluster owns the resource.

Configuration Ownership and behavior Typical fit
fromHost.customResources The control-plane cluster owns the source object; vCluster exposes a synchronized copy to tenant workloads. A tenant edit remains local until the control-plane value for that field changes, at which point the control-plane value overwrites it. Control-plane-managed resources that tenant workloads should consume as copies.
toHost.customResources The tenant cluster owns the object; vCluster mirrors it to the control-plane cluster. Tenant-created resources that a control-plane controller or extension API server must act on.

Do not configure the same resource type in both directions. The v0.37 guide says from-host sync skips a type already configured for to-host sync. See the to-host custom-resource guide and the from-host custom-resource guide for the configuration details.

Why the resource’s API type matters

At startup, vCluster resolves each configured kind against the control-plane cluster. How it is served affects what appears in the tenant cluster and how writes are validated.

CRD-backed custom resources

If a CustomResourceDefinition (CRD) serves the type, vCluster copies that CRD into the tenant cluster. Tenant API requests are validated against the copied schema, and unknown fields are pruned unless the schema permits them. For to-host synchronization, writes apply to the tenant object first and are synchronized to the control plane asynchronously.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Resources served by API aggregation

If an extension API server serves the type through API aggregation, vCluster creates a schemaless CRD in the tenant cluster. Because that tenant-side CRD has no copied schema, unknown fields are preserved without schema validation. For to-host create, update, and patch requests, vCluster writes through to the extension API server before returning the tenant request; this provides synchronous validation on that path.

That write-through behavior has important boundaries: dry-run and subresource requests bypass it, deletion remains asynchronous, and rollback is best-effort. Only the resource and status subresources are available for aggregated types; other subresources, such as scale, logs, or exec, are unavailable in the tenant cluster. The v0.37 custom-resource guide describes the behavior and rollback-failure metric. If rollback fails, inspect logs and confirm object identity before taking corrective action.

When might a custom plugin be useful?

A plugin may be worth evaluating when built-in synchronization does not provide a required transformation or per-kind behavior. In particular, the Kupe article claims its plugin can translate references, filter by labels or namespaces, and synchronize status. Those features could matter when resources need adaptation as they cross the tenant/control-plane boundary, but the article’s claims should be checked against the plugin’s source, configuration examples, and tests before relying on them.

vCluster’s plugin framework is broader than a resource copier: official documentation describes plugins as operators that can implement syncers, hooks, and controllers, and a plugin can define multiple resource syncers. The SDK abstracts much of the syncer complexity and uses controller-runtime internally. See the custom plugin guide. A custom plugin is therefore an implementation choice with operational and trust implications, not automatically a simpler or safer replacement for built-in settings.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What to verify before installing a plugin

vCluster warns that plugins run with the same permissions as vCluster and may define additional permissions. Its configuration documentation says, “Don’t install untrusted plugins.” Review the plugin as an operator with access to both tenant and control-plane clusters, rather than as a narrow configuration file.

Best Value
Kubernetes Software - Powerful Container Orchestration Tools T-Shirt
  • Kubernetes is an open platform that automates container orchestration, enabling seamless deployment, automatic scaling, self-healing, and efficient management of applications across servers or clouds with high availability and optimal resource use
  • Kubernetes is perfect for development operations engineers, cloud architects, site reliability engineers, platform engineering teams and infrastructure specialists who build, operate and maintain modern containerized applications in production environments
  • Lightweight, Classic fit, Double-needle sleeve and bottom hem
  • Inspect the source and release provenance; establish what code and artifacts you would run.
  • Review the resources and verbs it requests in both clusters, and compare them with the job it needs to perform.
  • Check supported vCluster versions and configuration semantics against the version you deploy.
  • Confirm that claimed transformations and status behavior are covered by usable examples and tests.

These are due-diligence checks prompted by vCluster’s permissions warning; they do not imply a specific vulnerability in the Kupe plugin. See the plugin configuration guide for vCluster’s warning and configuration context.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Lifecycle details that affect operations

Custom-resource discovery and resolution happen when vCluster starts. If the control-plane cluster does not serve a configured resource at that point, tenant-cluster startup fails; vCluster retries after a later control-plane pod restart. Enabling or disabling a configured resource takes effect after a restart or rollout.

Disabling synchronization stops the syncer, but does not itself delete the CRD, synchronized objects, or objects created on the control plane. Plan cleanup separately if those objects should be removed. Version changes can also behave differently for copied CRDs and generated CRDs for aggregated resources; consult the custom-resource guide for the relevant lifecycle behavior.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

How the proposal fits with earlier plugin approaches

The older Loft generic CRD sync plugin repository is archived; GitHub records its archive date as February 5, 2025. Its README says the functionality moved into vCluster’s built-in fromHost.customResources and toHost.customResources settings. It is useful historical context, not a current maintained recommendation: archived repository.

The practical decision is to start with the built-in settings when their ownership and API semantics fit. Consider a custom plugin when a required transformation or control is missing, and verify that the specific plugin supports your deployed version and permissions model. The Kupe article’s search result was published in 2025, but its exact publication date and the plugin’s independent implementation details are not established here.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.