Label customizations
Explore advanced label configuration
PerfectScale can recognize some labels automatically. However, it can be set up manually for advanced label configuration. This is particularly helpful when you are using custom labels to organize your K8s resources.
You can customize your labels for the workloads as well as for nodes. Currently, there are available the following options:
workload_labels
Defines labels that can be applied to Kubernetes resources (pods, deployments, or stateful sets) to identify and manage workloads within a cluster.
spot_labels
Identifies spot nodes.
node_group_labels
Identifies the nodes group in a cluster.
architecture_labels
Specifies the architecture of the node (x86_64, arm64, etc.)
os_labels
Specifies the operating system running on a node within the Kubernetes cluster.
instance_type_labels
Specifies the type or configuration of VMs (instances) within a cloud infrastructure.
region_labels
Specifies the geographical region where a particular resource is located.
availability_zone_labels
Specify the availability zone where a particular resource is located.
ignored_pod_labels
Defines labels that Kubernetes components should disregard when making pod decisions.
ignored_node_labels
Defines labels that Kubernetes components should disregard when making node decisions.
Label Formatting
Kube-state-metrics exposes labels following Prometheus conventions:
Add the
label_prefix to the labelReplace non-alphabetic characters with underscores
Convert camel case to snake case by using underscores to separate words
Configuring Custom Labels with the profile
🛠️ How to create Customization Profile
There are two options for creating a Profile: from the Settings tab or directly from the Overview.
From the Settings tab
Go to the Settings tab on the left panel -> select Customizations -> click the +Add Profile button -> name and configure the profile -> click Save button.

From the Overview tab
Go to the Overview tab on the left panel -> find the cluster to which you want to apply the Customization Profile and click gear button -> go to Customizations -> click on Add New Profile in the Customization Profile drop-down list -> name and configure your profile -> click the Save And Apply button -> click the Save Changes button.

🛠️ How to apply Customization Profile
Apply to a single cluster
To apply Customization Profile to the cluster, go to the Overview tab on the left panel -> find the cluster to which you want to apply the Customization Profile and click gear button -> go to Customizations -> select the needed profile in the Customization Profile drop-down list.

Apply to multiple clusters
To apply the profile to multiple clusters from a single view, use the Manage Assignments feature.
Go to the Settings tab on the left panel -> select the Customizations -> click the Manage Assignments button -> apply the profiles for the needed clusters -> click the Save Changes button.

Configuring Custom Labels with CRD
To enable custom labels and node identification using a Custom Resource Definition (CRD), you’ll need to define and apply a Custom Resource (CR) with the required parameters. This approach allows you to manage Custom Labels directly through Kubernetes manifests.
The Custom Resource (CR) must be created in the perfectscale namespace.
Setup instructions
Identify the labels used in your Kubernetes cluster to distinguish workloads.
Identify the labels used for node properties such as spot instances, node groups, architecture, etc.
Configure the fields below to match your cluster’s label structure.
Configure the CR.
⚙️ CR parameters:
workload_labels
Defines labels that can be applied to Kubernetes resources (pods, deployments, or stateful sets) to identify and manage workloads within a cluster.
spot_labels
Identifies spot nodes (key-value pairs).
node_group_labels
Identifies the node groups in a cluster.
architecture_labels
Specifies the architecture of the node (x86_64, arm64, etc.).
os_labels
Specifies the operating system running on a node within the Kubernetes cluster.
instance_type_labels
Specifies the type or configuration of VMs (instances) within a cloud infrastructure
region_labels
Specifies the geographical region where a particular resource is located.
availability_zone_labels
Specifies the availability zone where a particular resource is located.
ignored_pod_labels
Defines labels that Kubernetes components should disregard when making pod decisions.
ignored_node_labels
Defines labels that Kubernetes components should disregard when making node decisions.
Last updated
Was this helpful?