98 lines
3.9 KiB
Markdown
98 lines
3.9 KiB
Markdown
|
---
|
||
|
layout: "kubernetes"
|
||
|
page_title: "Kubernetes: kubernetes_limit_range"
|
||
|
sidebar_current: "docs-kubernetes-resource-limit-range"
|
||
|
description: |-
|
||
|
Limit Range sets resource usage limits (e.g. memory, cpu, storage) for supported kinds of resources in a namespace.
|
||
|
---
|
||
|
|
||
|
# kubernetes_limit_range
|
||
|
|
||
|
Limit Range sets resource usage limits (e.g. memory, cpu, storage) for supported kinds of resources in a namespace.
|
||
|
|
||
|
Read more in [the official docs](https://kubernetes.io/docs/tasks/configure-pod-container/apply-resource-quota-limit/#applying-default-resource-requests-and-limits).
|
||
|
|
||
|
|
||
|
## Example Usage
|
||
|
|
||
|
```hcl
|
||
|
resource "kubernetes_limit_range" "example" {
|
||
|
metadata {
|
||
|
name = "terraform-example"
|
||
|
}
|
||
|
spec {
|
||
|
limit {
|
||
|
type = "Pod"
|
||
|
max {
|
||
|
cpu = "200m"
|
||
|
memory = "1024M"
|
||
|
}
|
||
|
}
|
||
|
limit {
|
||
|
type = "PersistentVolumeClaim"
|
||
|
min {
|
||
|
storage = "24M"
|
||
|
}
|
||
|
}
|
||
|
limit {
|
||
|
type = "Container"
|
||
|
default {
|
||
|
cpu = "50m"
|
||
|
memory = "24M"
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
```
|
||
|
|
||
|
## Argument Reference
|
||
|
|
||
|
The following arguments are supported:
|
||
|
|
||
|
* `metadata` - (Required) Standard limit range's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata
|
||
|
* `spec` - (Optional) Spec defines the limits enforced. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status
|
||
|
|
||
|
## Nested Blocks
|
||
|
|
||
|
### `spec`
|
||
|
|
||
|
#### Arguments
|
||
|
|
||
|
* `limit` - (Optional) The list of limits that are enforced.
|
||
|
|
||
|
### `limit`
|
||
|
|
||
|
#### Arguments
|
||
|
|
||
|
* `default` - (Optional) Default resource requirement limit value by resource name if resource limit is omitted.
|
||
|
* `default_request` - (Optional) The default resource requirement request value by resource name if resource request is omitted.
|
||
|
* `max` - (Optional) Max usage constraints on this kind by resource name.
|
||
|
* `max_limit_request_ratio` - (Optional) The named resource must have a request and limit that are both non-zero where limit divided by request is less than or equal to the enumerated value; this represents the max burst for the named resource.
|
||
|
* `min` - (Optional) Min usage constraints on this kind by resource name.
|
||
|
* `type` - (Optional) Type of resource that this limit applies to. e.g. `Pod`, `Container` or `PersistentVolumeClaim`
|
||
|
|
||
|
### `metadata`
|
||
|
|
||
|
#### Arguments
|
||
|
|
||
|
* `annotations` - (Optional) An unstructured key value map stored with the limit range that may be used to store arbitrary metadata. More info: http://kubernetes.io/docs/user-guide/annotations
|
||
|
* `generate_name` - (Optional) Prefix, used by the server, to generate a unique name ONLY IF the `name` field has not been provided. This value will also be combined with a unique suffix. Read more: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#idempotency
|
||
|
* `labels` - (Optional) Map of string keys and values that can be used to organize and categorize (scope and select) the limit range. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels
|
||
|
* `name` - (Optional) Name of the limit range, must be unique. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names
|
||
|
* `namespace` - (Optional) Namespace defines the space within which name of the limit range must be unique.
|
||
|
|
||
|
#### Attributes
|
||
|
|
||
|
* `generation` - A sequence number representing a specific generation of the desired state.
|
||
|
* `resource_version` - An opaque value that represents the internal version of this limit range that can be used by clients to determine when limit range has changed. Read more: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#concurrency-control-and-consistency
|
||
|
* `self_link` - A URL representing this limit range.
|
||
|
* `uid` - The unique in time and space value for this limit range. More info: http://kubernetes.io/docs/user-guide/identifiers#uids
|
||
|
|
||
|
## Import
|
||
|
|
||
|
Limit Range can be imported using its name, e.g.
|
||
|
|
||
|
```
|
||
|
$ terraform import kubernetes_limit_range.example terraform-example
|
||
|
```
|