--- title: kubectl ome quota description: Show the declared AcceleratorQuota tree, reported budgets and materialization, and validate the quota topology with a scriptable exit code. since: v1.3 --- `kubectl ome quota` shows the tree of [AcceleratorQuotas](../api/ome.v1beta1.md#ome-io-v1beta1-AcceleratorQuota) that divides a cluster's accelerators among teams, and what the quota manager reports for each node. It reads only AcceleratorQuotas, so usage is as the quota manager last reported it. [Set accelerator quotas](../../guides/operate-ome/accelerator-quota.md) builds the tree that the examples show, and [How quotas work](../../guides/operate-ome/accelerator-quota.md#how-quotas-work) explains its roles and budgets. ```text kubectl ome quota SUBCOMMAND [ACCELERATORQUOTA] [flags] ``` | Subcommand | What it does | | --- | --- | | [`status`](#status) | Shows the budgets, capacity, materialization and conditions that the quota manager reported. | | [`tree`](#tree) | Shows the declared tree, with each node's budgets. | | [`validate`](#validate) | Checks the declared tree, and exits `2` when it finds a problem. | Each subcommand takes at most one AcceleratorQuota name. AcceleratorQuotas are cluster-scoped, so `-n` has no effect. The report fits in 80 columns: a longer line is cut, and ends in `#` and 8 hex digits of a hash. `-o wide` prints each part of the report as a row of JSON, uncut, and `-o json` and `-o yaml` print the whole report, as [Output formats](overview.md#output-formats) describes. [Required RBAC](overview.md#required-rbac) lists the permissions the commands need. The reports mark how the CLI got each value with an evidence level: | Evidence | Meaning | | --- | --- | | `Declared` | Read from an AcceleratorQuota's spec. | | `Reported` | Read from the status that the quota manager wrote. | | `Observed` | Read from the API server by this command: the snapshot of AcceleratorQuotas. | | `Computed` | Worked out by the CLI, such as a node's place in the tree, or a problem. | | `Unavailable` | The status holds no value that the CLI can show. | ## `status` ```text kubectl ome quota status [ACCELERATORQUOTA] [flags] ``` `status` shows what the quota manager last reported for each node: budgets and what's charged against them, capacity on `root`, the materialization, and the Ready, Degraded and Materialized conditions. Name an AcceleratorQuota to see only that one. For one row per budget across the tree, run [`kubectl ome get acceleratorquotas`](get.md#acceleratorquotas-columns). To read the conditions' messages and what their reasons mean, see [A node isn't Ready or Materialized](../../guides/operate-ome/accelerator-quota.md#conditions). ### Flags {#status-flags} | Flag | Default | Description | | --- | --- | --- | | `-o`, `--output` | `table` | Output format: table, wide, json or yaml | Plus the standard kubeconfig flags, such as `-n` and `--context`. ### Output fields {#status-output-fields} Each AcceleratorQuota prints these lines, in order of name. A budget, capacity or condition line prints once for each entry in the status: | Line | What it shows | | --- | --- | | `: generation= observed= (Reported)` | The AcceleratorQuota, its `metadata.generation`, and the `status.observedGeneration` that the quota manager last wrote. | | `parent= (); sourceGeneration= ()` | The parent that the quota manager confirmed, `Unavailable` on `root`, and `status.sourceGeneration`. | | `budgets:`, `capacity:`, `projections:`, `materialization:`, `conditions:` | Whether the status holds each part, as `/`. | | `budget / nominal= admitted=`, then `reserved= borrowed=; clusters=/` | One budget from `status.budgets`. | | `capacity / allocatable= highWater=`, then `sampled=