---
title: Charmhub | Deploy Canonical Kubernetes using Charmhub - The Open Operator Collection
description: Deploy the latest version of Canonical Kubernetes on any cloud.
url: https://charmhub.io/canonical-kubernetes/configurations/k8s-worker
---

##### We've discontinued the registration of new Bundles

New Bundle registrations are no longer accepted. Existing bundles remain functional. We recommend using the Juju Terraform Provider for new deployments.

[Learn more](https://discourse.charmhub.io/t/discontinuing-new-charmhub-bundle-registrations/15344)

# Canonical Kubernetes

[Canonical Kubernetes](https://charmhub.io/publisher/containers "View all packages from Canonical Kubernetes")
| bundle

* [Canonical Kubernetes](https://charmhub.io/publisher/containers "View all packages from Canonical Kubernetes")
  | bundle

Platform:

edge 65

```
juju deploy canonical-kubernetes --channel edge
```

[Learn to deploy on juju >](https://juju.is/docs/juju/manage-applications)

* [K8S](https://charmhub.io/canonical-kubernetes/configurations/k8s)
* [K8S Worker](https://charmhub.io/canonical-kubernetes/configurations/k8s-worker)

[Learn about configurations >](https://juju.is/docs/juju/configuration#heading--application-configuration)

* bootstrap-node-taints | string

  Space-separated list of taints to apply to this node at registration time.
  This config is only used at bootstrap time when Kubelet first registers the
  node with Kubernetes. To change node taints after deploy time, use kubectl
  instead.
  For more information, see the upstream Kubernetes documentation about
  taints:
  https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/
* kube-proxy-extra-args | string

  Space separated list of flags and key=value pairs that will be passed as arguments to
  kube-proxy.
  For example a value like this:
  runtime-config=batch/v2alpha1=true profiling=true
  will result in kube-proxy being run with the following options:
  --runtime-config=batch/v2alpha1=true --profiling=true
* kubelet-extra-args | string

  Space separated list of flags and key=value pairs that will be passed as arguments to
  kubelet.
  For example a value like this:
  runtime-config=batch/v2alpha1=true profiling=true
  will result in kubelet being run with the following options:
  --runtime-config=batch/v2alpha1=true --profiling=true
* node-labels | string

  Labels can be used to organize and to select subsets of nodes in the
  cluster. Declare node labels in key=value format, separated by spaces.
  Note: Due to NodeRestriction, workers are limited to how they can label themselves
  https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#noderestriction
