kyuubi-k8s

Kyuubi K8s

Channel Revision Published Runs on
latest/edge 112 01 Aug 2025
Ubuntu 22.04
3.5/stable 160 Today
Ubuntu 22.04
3.5/candidate 160 Today
Ubuntu 22.04
3.5/candidate 159 Today
Ubuntu 22.04
3.5/beta 159 21 Apr 2026
Ubuntu 22.04
3.5/beta 160 21 Apr 2026
Ubuntu 22.04
3.5/edge 160 20 Apr 2026
Ubuntu 22.04
3.5/edge 159 20 Apr 2026
Ubuntu 22.04
4.0/edge 164 21 Apr 2026
Ubuntu 22.04
4.0/edge 163 21 Apr 2026
Ubuntu 22.04
3.4/stable 162 Today
Ubuntu 22.04
3.4/candidate 162 Today
Ubuntu 22.04
3.4/candidate 161 Today
Ubuntu 22.04
3.4/beta 161 21 Apr 2026
Ubuntu 22.04
3.4/beta 162 21 Apr 2026
Ubuntu 22.04
3.4/edge 162 21 Apr 2026
Ubuntu 22.04
3.4/edge 161 21 Apr 2026
Ubuntu 22.04
juju deploy kyuubi-k8s --channel 3.5/candidate
Show information

Platform:

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.