The Charm Store will undergo scheduled database maintenance on July 5, 2026 22:00 to July 6, 02:00 UTC. During this time, you may be unable to access charm and bundle metadata or publish updates. No user action is required and services will automatically resume once maintenance is complete.

Kyuubi K8s

Canonical Publisher

Platform:

Channel Revision Published Runs on
latest/edge 112 01 Aug 2025
Ubuntu 22.04
3.5/stable 160 22 Apr 2026
Ubuntu 22.04
3.5/candidate 167 19 Jun 2026
Ubuntu 22.04
3.5/candidate 168 19 Jun 2026
Ubuntu 22.04
3.5/beta 182 25 Jun 2026
Ubuntu 22.04
3.5/beta 183 25 Jun 2026
Ubuntu 22.04
3.5/edge 183 25 Jun 2026
Ubuntu 22.04
3.5/edge 182 25 Jun 2026
Ubuntu 22.04
4.0/candidate 171 15 Jun 2026
Ubuntu 22.04
4.0/candidate 169 15 Jun 2026
Ubuntu 22.04
4.0/beta 179 25 Jun 2026
Ubuntu 22.04
4.0/beta 181 25 Jun 2026
Ubuntu 22.04
4.0/edge 181 24 Jun 2026
Ubuntu 22.04
4.0/edge 179 24 Jun 2026
Ubuntu 22.04
3.4/stable 162 22 Apr 2026
Ubuntu 22.04
3.4/candidate 176 19 Jun 2026
Ubuntu 22.04
3.4/candidate 177 19 Jun 2026
Ubuntu 22.04
3.4/beta 178 25 Jun 2026
Ubuntu 22.04
3.4/beta 180 25 Jun 2026
Ubuntu 22.04
3.4/edge 180 24 Jun 2026
Ubuntu 22.04
3.4/edge 178 24 Jun 2026
Ubuntu 22.04
juju deploy kyuubi-k8s --channel 3.5/stable

Learn about configurations >

  • driver-pod-template | string

    Define K8s driver pod from a file accessible to the workload. Ex.: "s3a://bucket/template.yml". Is equivalent to the following Spark configuration:

    spark.kubernetes.driver.podTemplateFile=<driver-pod-template>

  • enable-dynamic-allocation | boolean

    Enable dynamic allocation of pods for Spark jobs.

  • executor-cores | int

    Set K8s executor pods cpu limit. Is equivalent to the following Spark configuration:

    spark.executor.cores=4

  • executor-memory | int

    Set K8s executor pods memory limit (in GB). Is equivalent to the following Spark configuration:

    spark.executor.memory=4G

  • executor-pod-template | string

    Define K8s executor pods from a file accessible to the workload. Ex.: "s3a://bucket/template.yml". Is equivalent to the following Spark configuration:

    spark.kubernetes.executor.podTemplateFile=<executor-pod-template>

  • expose-external | string

    Default: false

    The mode in which the service should be exposed externally. Valid values are false, nodeport and loadbalancer.

  • gpu-enable | boolean

    Enable GPU acceleration for the SparkSQLEngine. This option override 'enable-dynamic-allocation' toggling auto-scaling for executor pods. Is equivalent to the following Spark configuration:

    spark.plugins=com.nvidia.spark.SQLPlugin spark.executor.resource.gpu.amount=1 spark.executor.resource.gpu.vendor=nvidia.com spark.kubernetes.container.image=GPU_JOB_OCI_IMAGE spark.executor.resource.gpu.discoveryScript=/opt/getGpusResources.sh kyuubi.session.engine.idle.timeout=PT3M

  • gpu-engine-executors-limit | int

    Default: 1

    Limit the number of GPUs an engine can schedule executor pods on. If -1, use all GPUs available. The more tenants are expected, the less this value should be. This option should be set to either -1 or a positive integer. This option is ignored if 'gpu-enable' is set to false. Is equivalent to the following Spark configuration:

    spark.executor.instances=1

  • gpu-pinned-memory | int

    Default: 1

    Set the host memory (in GB) per executor reserved for fast data transfer on GPUs. This also sets the executor memory overhead to be 1GB larger. This option is ignored if 'gpu-enable' is set to false. Is equivalent to the following Spark configuration:

    spark.rapids.memory.pinnedPool.size=1G spark.executor.memoryOverhead=2G # 1 + 1

  • iceberg-catalog-name | string

    Default: iceberg

    The name of the catalog that has Iceberg capabilities.

  • k8s-node-selectors | string

    Comma separated label:value selectors for K8s pods Ex.: "<label1>:<value1>,<label2>:<value2>". Is equivalent to the following Spark configuration:

    spark.kubernetes.node.selector.<label1>=<value1> spark.kubernetes.node.selector.<label2>=<value2>

    The desired configuration will be applied for both driver and executor pods.

  • loadbalancer-extra-annotations | string

    Default: {}

    Optional extra annotations to be supplied to the load balancer service.

  • namespace | string

    The namespace to be used by driver to create executor pods. If not configured, the model namespace will be used.

  • pause-after-unit-refresh | string

    Default: first

    Wait for manual confirmation to resume refresh after these units refresh

    Allowed values: "all", "first", "none"

  • profile | string

    Default: production

    Profile representing the scope of the deployment, and used to enable high-level customization of system configurations, resource checks/allocation, warning levels, etc. Allowed values are: "production", "staging" and "testing"

  • service-account | string

    Default: kyuubi-spark-engine

    The service account to be used by driver to create executor pods.

  • system-users | secret

    Configure the system user 'admin' and it's password. This needs to be a Juju secret URI pointing to a secret that contains the following content: admin: <password>. If this config option is not provided, the charm will generate a random password for the admin user.

  • tls-client-private-key | secret

    A Juju secret URI of a secret containing the private key for client-to-server TLS certificates. This needs to be a Juju secret URI pointing to a secret that has the content { private-key: <key> }, where <key> is the key to be used by the charm to generate Certificate Signing Request (CSR). If this config option is not provided, the charm will generate a new private key and use it instead.