# cpu: 500m (What?)

# Introduction

In the context of a Helm chart for Kubernetes deployments, "cpu: 500m" refers to the CPU request for a container within a Pod.

# Explanation:

-   **CPU requests and limits:**

    Kubernetes allows you to specify resource requests and limits for containers. Requests define the minimum amount of resources a container needs to run, while limits define the maximum resources it can consume.

-   **CPU measurement:**

    CPU resources in Kubernetes are measured in "millicores" or "millicpu" (m). 1000m equals 1 CPU core. Therefore, "500m" represents 0.5 CPU cores, or half a CPU core.

-   **Helm chart configuration:**

    Within a Helm chart, these resource requests and limits are typically defined in the `values.yaml` file or directly within the Kubernetes manifest templates. You would find this setting under the `resources.requests.cpu` key for a specific container.

Example within a Helm values.yaml file:
```
# values.yaml
replicaCount: 1

image:
  repository: my-app
  tag: latest

resources:
  requests:
    cpu: "500m"
    memory: "256Mi"
  limits:
    cpu: "1"
    memory: "512Mi"
```

# Conclusion

This configuration tells Kubernetes that the container running `my-app` requires at least 0.5 CPU cores to be scheduled on a node and is allowed to consume up to 1 full CPU core.
