> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coreweave.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SUNK parameter reference

> Complete parameter reference for the SUNK operator Helm chart, including image, MySQL, and NVIDIA plugin settings

![Version: 0.1.0](https://img.shields.io/badge/Version-0.1.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square)

## Requirements

| Repository                                                             | Name                 | Version         |
| ---------------------------------------------------------------------- | -------------------- | --------------- |
| file://../library                                                      | library              | 0.1.0           |
| [https://cybozu-go.github.io/moco/](https://cybozu-go.github.io/moco/) | moco                 | 0.20.0          |
| oci://ghcr.io/coreweave/k8s-device-plugin/charts                       | nvidia-device-plugin | 0.17.0-5c8a50df |

## Parameters

<table>
  <thead>
    <th style={{ width: '45%', textAlign: 'left' }}>Key & Description</th>
    <th style={{ textAlign: 'left' }}>Type</th>
    <th style={{ textAlign: 'left' }}>Default</th>
  </thead>

  <tbody>
    <tr>
      <td id="imagePullSecrets">
        <b>imagePullSecrets</b><br />
        Image pull secrets to configure if using custom private images.
      </td>

      <td>list</td>

      <td>
        ```yaml wrap theme={"system"}
        []
        ```
      </td>
    </tr>

    <tr>
      <td id="moco">
        <b>moco</b><br />
        Options for the MOCO MySQL Operator.
      </td>

      <td>object</td>
      <td>See individual settings below.</td>
    </tr>

    <tr>
      <td id="moco--enabled">
        <b>moco.enabled</b><br />
        Enable the MOCO MySQL Operator.
      </td>

      <td>bool</td>

      <td>
        ```yaml wrap theme={"system"}
        true
        ```
      </td>
    </tr>

    <tr>
      <td id="moco--image--repository">
        <b>moco.image.repository</b><br />
        The repository for the MOCO image.
      </td>

      <td>string</td>

      <td>
        ```yaml wrap theme={"system"}
        "ghcr.io/cybozu-go/moco"
        ```
      </td>
    </tr>

    <tr>
      <td id="moco--image--tag">
        <b>moco.image.tag</b><br />
        The tag for the MOCO image.
      </td>

      <td>string</td>

      <td>
        ```yaml wrap theme={"system"}
        null
        ```
      </td>
    </tr>

    <tr>
      <td id="moco--imagePullSecrets">
        <b>moco.imagePullSecrets</b><br />
        Image pull secrets to configure if using custom private images.
      </td>

      <td>list</td>

      <td>
        ```yaml wrap theme={"system"}
        []
        ```
      </td>
    </tr>

    <tr>
      <td id="moco--monitoring--podMonitors--enabled">
        <b>moco.monitoring.podMonitors.enabled</b><br />
        Enable monitoring via the Prometheus operator <code>PodMonitor</code> CRD
      </td>

      <td>bool</td>

      <td>
        ```yaml wrap theme={"system"}
        false
        ```
      </td>
    </tr>

    <tr>
      <td id="moco--monitoring--vmPodScrapes--enabled">
        <b>moco.monitoring.vmPodScrapes.enabled</b><br />
        Enable monitoring via the VictoriaMetrics operator <code>VMPodScrape</code> CRD
      </td>

      <td>bool</td>

      <td>
        ```yaml wrap theme={"system"}
        true
        ```
      </td>
    </tr>

    <tr>
      <td id="moco--priorityClassName">
        <b>moco.priorityClassName</b><br />
        The priority class name for the MOCO pod.
      </td>

      <td>string</td>

      <td>
        ```yaml wrap theme={"system"}
        "sunk-control-plane"
        ```
      </td>
    </tr>

    <tr>
      <td id="moco--replicaCount">
        <b>moco.replicaCount</b><br />
        The number of replicas of the MOCO instance to run.
      </td>

      <td>int</td>

      <td>
        ```yaml wrap theme={"system"}
        1
        ```
      </td>
    </tr>

    <tr>
      <td id="moco--resources">
        <b>moco.resources</b><br />
        Resources for the MOCO container.
      </td>

      <td>object</td>

      <td>
        ```yaml wrap theme={"system"}
        limits:
            memory: 1Gi
        requests:
            cpu: 100m
            memory: 256Mi

        ```
      </td>
    </tr>

    <tr>
      <td id="nvidia-device-plugin">
        <b>nvidia-device-plugin</b><br />
        Options for <a href="https://github.com/coreweave/k8s-device-plugin/tree/coreweave/deployments/helm/nvidia-device-plugin"> the Coreweave fork of the Nvidia device plugin chart</a>. This chart builds on the default configuration provided by Nvidia, and uses these <a href="https://github.com/coreweave/k8s-device-plugin/tree/coreweave/deployments/helm/nvidia-device-plugin/values.yaml">default chart values</a>.
      </td>

      <td>object</td>
      <td>See default chart values.</td>
    </tr>

    <tr>
      <td id="operator--affinity">
        <b>operator.affinity</b><br />
        The affinity for the operator deployment.
      </td>

      <td>object</td>

      <td>
        ```yaml wrap theme={"system"}
        nodeAffinity:
            requiredDuringSchedulingIgnoredDuringExecution:
                nodeSelectorTerms:
                    - matchExpressions:
                        - key: node.coreweave.cloud/class
                          operator: In
                          values:
                            - cpu

        ```
      </td>
    </tr>

    <tr>
      <td id="operator--config--operator--nodeSet--failedPodsBackoffGCInterval">
        <b>operator.config.operator.nodeSet.failedPodsBackoffGCInterval</b><br />
        The time that has to pass before next iteration of backoff GC is run for checking failed pods.
      </td>

      <td>string</td>

      <td>
        ```yaml wrap theme={"system"}
        "1m"
        ```
      </td>
    </tr>

    <tr>
      <td id="operator--config--operator--nodeSet--forceScalingDeleteKnownConditionTimeout">
        <b>operator.config.operator.nodeSet.forceScalingDeleteKnownConditionTimeout</b><br />
        The delay to wait before deleting a pod during nodeset scaling with a known Slurm state. "0" disables this feature.
      </td>

      <td>string</td>

      <td>
        ```yaml wrap theme={"system"}
        0
        ```
      </td>
    </tr>

    <tr>
      <td id="operator--config--operator--nodeSet--forceScalingDeleteUnknownConditionTimeout">
        <b>operator.config.operator.nodeSet.forceScalingDeleteUnknownConditionTimeout</b><br />
        The delay to wait before deleting a pod during nodeset scaling with an unknown Slurm state. "0" disables this feature.
      </td>

      <td>string</td>

      <td>
        ```yaml wrap theme={"system"}
        0
        ```
      </td>
    </tr>

    <tr>
      <td id="operator--config--operator--nodeSet--maxBurstReplicas">
        <b>operator.config.operator.nodeSet.maxBurstReplicas</b><br />
        A rate limiter for booting pods when there are a lot of pods. A too high of a value can cause registry DoS issues.
      </td>

      <td>int</td>

      <td>
        ```yaml wrap theme={"system"}
        250
        ```
      </td>
    </tr>

    <tr>
      <td id="operator--config--operator--nodeSet--scaleDownPriorityOrdering">
        <b>operator.config.operator.nodeSet.scaleDownPriorityOrdering</b><br />
        Enable priority ordering for scale down. This ensures the following deletion order non-ready pods, drained pods without running workloads, idle pods, draining pods with running workloads, then running pods.
      </td>

      <td>bool</td>

      <td>
        ```yaml wrap theme={"system"}
        true
        ```
      </td>
    </tr>

    <tr>
      <td id="operator--config--operator--nodeSet--statusUpdateBackoffGCInterval">
        <b>operator.config.operator.nodeSet.statusUpdateBackoffGCInterval</b><br />
        The time that has to pass before next iteration of backoff GC is run for checking node status updates.
      </td>

      <td>string</td>

      <td>
        ```yaml wrap theme={"system"}
        "1m"
        ```
      </td>
    </tr>

    <tr>
      <td id="operator--config--operator--nodeSlice--maxNodesPerNodeSlice">
        <b>operator.config.operator.nodeSlice.maxNodesPerNodeSlice</b><br />
        The maximum number of nodes that can be in a single nodeSlice.
      </td>

      <td>int</td>

      <td>
        ```yaml wrap theme={"system"}
        100
        ```
      </td>
    </tr>

    <tr>
      <td id="operator--image">
        <b>operator.image</b><br />
        The image to use for the operator.
      </td>

      <td>object</td>

      <td>
        ```yaml wrap theme={"system"}
        repository: registry.gitlab.com/coreweave/sunk/operator
        tag:

        ```
      </td>
    </tr>

    <tr>
      <td id="operator--leaderElection--enabled">
        <b>operator.leaderElection.enabled</b><br />
        This forces the operator to use leader election even if the number of replicas is set to 1. <br /> Useful if planning to scale after deployment.
      </td>

      <td>bool</td>

      <td>
        ```yaml wrap theme={"system"}
        false
        ```
      </td>
    </tr>

    <tr>
      <td id="operator--leaderElection--leaderElectionID">
        <b>operator.leaderElection.leaderElectionID</b><br />
        The string value to use as the leader election id.
      </td>

      <td>string</td>

      <td>
        ```yaml wrap theme={"system"}
        null
        ```
      </td>
    </tr>

    <tr>
      <td id="operator--logLevel">
        <b>operator.logLevel</b><br />
        The log level. <br /> Uses integers or <a href="https://pkg.go.dev/go.uber.org/zap#pkg-constants">zap log level strings</a>: <ul> <li><code>debug</code></li> <li><code>info</code></li> <li><code>warn</code></li> <li><code>error</code></li> <li><code>dpanic</code></li> <li><code>panic</code></li> <li><code>fatal</code></li> </ul>
      </td>

      <td>string</td>

      <td>
        ```yaml wrap theme={"system"}
        "info"
        ```
      </td>
    </tr>

    <tr>
      <td id="operator--maxConcurrentReconciles">
        <b>operator.maxConcurrentReconciles</b><br />
      </td>

      <td>int</td>

      <td>
        ```yaml wrap theme={"system"}
        50
        ```
      </td>
    </tr>

    <tr>
      <td id="operator--podMonitor--enabled">
        <b>operator.podMonitor.enabled</b><br />
        Enable monitoring via the Prometheus operator <code>PodMonitor</code> CRD.
      </td>

      <td>bool</td>

      <td>
        ```yaml wrap theme={"system"}
        false
        ```
      </td>
    </tr>

    <tr>
      <td id="operator--priorityClassName">
        <b>operator.priorityClassName</b><br />
        The priority class name for the operator.
      </td>

      <td>string</td>

      <td>
        ```yaml wrap theme={"system"}
        "sunk-control-plane"
        ```
      </td>
    </tr>

    <tr>
      <td id="operator--replicas">
        <b>operator.replicas</b><br />
        The number of replicas of the operator pod to run. <br /> Leader election will be enabled if this is greater than 1 or leader election is explicitly enabled.
      </td>

      <td>int</td>

      <td>
        ```yaml wrap theme={"system"}
        1
        ```
      </td>
    </tr>

    <tr>
      <td id="operator--resources">
        <b>operator.resources</b><br />
        The resource to request for the operator.
      </td>

      <td>object</td>

      <td>
        ```yaml wrap theme={"system"}
        limits:
            memory: 32Gi
            cpu: 16
        requests:
            cpu: 8
            memory: 32Gi

        ```
      </td>
    </tr>

    <tr>
      <td id="operator--tolerations">
        <b>operator.tolerations</b><br />
        The tolerations for the operator deployment.
      </td>

      <td>list</td>

      <td>
        ```yaml wrap theme={"system"}
        []
        ```
      </td>
    </tr>

    <tr>
      <td id="operator--vmPodScrape--enabled">
        <b>operator.vmPodScrape.enabled</b><br />
        Enable monitoring via the VictoriaMetrics operator <code>VMPodScrape</code> CRD. Note: To enable this, <code>podMonitor</code> must be disabled in addition to setting <code>vmPodScrape.enabled</code> to <code>true</code>.
      </td>

      <td>bool</td>

      <td>
        ```yaml wrap theme={"system"}
        true
        ```
      </td>
    </tr>

    <tr>
      <td id="priorityClass--enabled">
        <b>priorityClass.enabled</b><br />
        Enable the priority class for the control plane components.
      </td>

      <td>bool</td>

      <td>
        ```yaml wrap theme={"system"}
        true
        ```
      </td>
    </tr>

    <tr>
      <td id="priorityClass--value">
        <b>priorityClass.value</b><br />
        The value of the priority class, generally should be high relative to other priority classes as these are critical components.
      </td>

      <td>int</td>

      <td>
        ```yaml wrap theme={"system"}
        1000000000
        ```
      </td>
    </tr>

    <tr>
      <td id="scheduler--podMonitor--enabled">
        <b>scheduler.podMonitor.enabled</b><br />
        Enable monitoring via the Prometheus operator <code>PodMonitor</code> CRD.
      </td>

      <td>bool</td>

      <td>
        ```yaml wrap theme={"system"}
        false
        ```
      </td>
    </tr>

    <tr>
      <td id="scheduler--vmPodScrape--enabled">
        <b>scheduler.vmPodScrape.enabled</b><br />
        Enable monitoring via the VictoriaMetrics operator <code>VMPodScrape</code> CRD. Note: To enable this, <code>podMonitor</code> must be disabled in addition to setting <code>vmPodScrape.enabled</code> to <code>true</code>.
      </td>

      <td>bool</td>

      <td>
        ```yaml wrap theme={"system"}
        true
        ```
      </td>
    </tr>

    <tr>
      <td id="syncer--podMonitor--enabled">
        <b>syncer.podMonitor.enabled</b><br />
        Enable monitoring via the Prometheus operator <code>PodMonitor</code> CRD.
      </td>

      <td>bool</td>

      <td>
        ```yaml wrap theme={"system"}
        false
        ```
      </td>
    </tr>

    <tr>
      <td id="syncer--vmPodScrape--enabled">
        <b>syncer.vmPodScrape.enabled</b><br />
        Enable monitoring via the VictoriaMetrics operator <code>VMPodScrape</code> CRD. Note: To enable this, <code>podMonitor</code> must be disabled in addition to setting <code>vmPodScrape.enabled</code> to <code>true</code>.
      </td>

      <td>bool</td>

      <td>
        ```yaml wrap theme={"system"}
        true
        ```
      </td>
    </tr>
  </tbody>
</table>
