# Updating PerfectScale Agent resources

PerfectScale installation consists of two components:&#x20;

* An agent&#x20;
* kube-state-metrics.&#x20;

Both components arrive with the defaults. However, one might want to update clusters that are either very small or extremely large (according to PerfectScale recommendations).

In order to update a cluster, a **`values.yaml`** customization file needs to be created, as shown in the example below.

{% hint style="info" %}
Make sure to replace the numbers from the example with your own.
{% endhint %}

**values.yaml:**

```yaml
resources:
  requests:
    cpu: 30m
    memory: 50M
  limits:
    memory: 200M

kube-state-metrics:
  resources:
    requests:
      cpu: 50m
      memory: 50M
    limits:
      memory: 200
```

**Apply changes:**

```bash
helm repo update perfectscale

helm upgrade --install -n perfectscale \
      -f values.yaml \
      --set settings.clusterName=CLUSTER_NAME \
      perfectscale perfectscale/exporter
```

{% hint style="info" %}
To view all the default helm values, visit the [values.yaml](https://github.com/perfectscale-io/perfectscale-io.github.io/blob/main/charts/perfectscale-agent/values.yaml) file.
{% endhint %}
