Ticketing & Bug Tracking — SaaS
Jira integration simplifies issue management within clusters and helps you ensure every issue gets properly addressed. With just a few clicks, tickets can be opened and assigned to the proper teams, with the details needed to streamline resolutions and configuration changes.
PerfectScale only supports the SaaS Jira integration.
Configuring Jira integration with the profile
:tools: How to create Jira 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 Integrations -> click the +Add Integration button and select Jira from the drop-down -> insert the required data.

Jira profile from settings
From the Overview tab
Go to the Overview tab on the left panel -> find the cluster to which you want to apply the Profile and click gear button -> go to Customizations -> find Integrations and click the Ticketing & Bug Tracking drop-down list -> click the Add New Profile button -> insert the required data.

Jira profile from overview
Jira Profile Configuration

Jira profile configuration
Step 1
Name your profile
Step 2
Configure the profile
jira_user: Email address of the user creating the profile. We recommend creating a separate JIRA user for PerfectScale.
jira_secret: API token to authenticate with an Atlassian cloud product.
The API token in the profile must have the Jira Administrator global permission.
-
Go to https://id.atlassian.com/manage-profile/security/api-tokens and click
Create API tokenbutton.
New API token
-
Insert the label and click
Createbutton.
Create an API token
-
Copy the created API token and put it in the
jira_secretfield.
To generate the API token, you need to use the Jira account that is associated with the Integration Profile(account specified in jira_user).
jira_url: Your Jira host name. For example: xxx.atlassian.net, where xxx - a corporate domain.
- Connections are always made over HTTPS, so self-hosted Jira instances must be reachable over HTTPS.
http://connections are refused. https://is optional and and does not need to be specified.- Do not add a path or query parameters.
Non-standard ports are supported. For example: jira.mycompany.com:8443.
jira_project: Jira project where tickets will be created.
jira_issue_type: The type of a Jira ticket.
jira_sumary : The summary of a Jira ticket.
jira_assignee : The default assignee (member ID) of a Jira ticket.

Member id
jira_resolution(optional): Set true to assign the resolution reason when closing a ticket in the specified jira_project.
jira_custom_fields(optional): Specify the ID of the required Jira ticket field that is not included in the default setup. Use the following format for the custom field ID:
jira_custom_fields:
customfield_XXXXX: 'DevOps Team'
Learn how to get a field ID here.
Step 3
Set as default
Optionally, you can set the profile as the default by selecting the Set as default checkbox. The default profile will be automatically assigned to clusters.
The manually assigned profile takes priority over the default one.
Step 4
Validate Jira profile configuration
Click on the Test Integration button to validate if Jira profile is configured properly. You will receive one of the following responses:
- Jira Configured Correctly
- Jira Configured Wrongly
Step 5
Save profile
Click the Save button to save the progress.
How to get Jira custom field ID
A simple method to obtain a Jira custom field ID without requiring extra permissions is to inspect the relevant Jira issue that includes this field. Follow the next simple steps:
- Open an issue (Jira ticket) with the custom field for which you want to find the ID.
- Right-click on the field name and select
Inspect. - On the Developer Tools panel, you will find the name and ID for your custom field.

Jira custom field idApplying resiliency alerts profile to a single cluster
You can easily set up multiple custom fields within one profile by listing them under jira_custom_fields. For example:
jira_custom_fields:
customfield_00000: 'DevOps Team'
customfield_00001: 'Resource anomaly fix'
customfield_00002: 'Under-provisioning'
:tools: How to apply Jira Profile
Apply to a single cluster
To apply the Profile to the cluster, go to the Overview tab on the left panel -> find the cluster to which you want to apply the Profile and click gear button -> go to Customizations -> find Integrations and click the Ticketing & Bug Tracking drop-down list -> select the needed profile.

Applying Jira profile to a single cluster
Apply to multiple clusters
To apply a profile to multiple clusters from a single view, use the Manage Assignments feature.
Go to the Settings tab on the left panel -> select Integrations -> click the Manage Assignments button -> apply the profile for the needed clusters in the Ticketing & Bug Tracking section -> click the Save Changes button.

Applying Jira profile to multiple clusters
Configuring Jira integration with CR
To enable Jira ticketing, you need to define and apply a Custom Resource (CR) with the required Jira parameters. This approach allows you to manage Jira ticketing directly through Kubernetes manifests.
The Custom Resource (CR) must be created in the perfectscale namespace.
Setup instructions
- Navigate to your Jira instance (e.g., https://mycompany.atlassian.net)
- Create a bot user or use an existing user account.
We recommend you create a separate JIRA user for PerfectScale.
- Generate an API token for the user.
- Copy the API token (you will need it for CR configuration).
- Apply the Jira API token secret.
- Configure a CR.
You may need to use custom fields for the integration. This configuration is optional, and you can learn more about it here.
Apply the Jira API token secret first:
Jira API Token Secret (apply this first)
apiVersion: v1
kind: Secret
metadata:
name: jira-credentials
namespace: perfectscale
type: Opaque
stringData:
api-token: "your-jira-api-token-here"
Ensure that the secret is created in the same namespace as the exporter - perfectscale.
Configure the CR:
apiVersion: perfectscale.io/v1
kind: ClusterSettings
metadata:
name: cluster-settings-main
namespace: perfectscale
spec:
profiles:
integrations:
- type: jira
name: infrastructure-tickets
assigned: true
value:
jira_url: "https://mycompany.atlassian.net"
jira_secret_from:
secretKeyRef:
name: jira-credentials
key: api-token
jira_project: "INFRA"
jira_issue_type: "Bug"
jira_summary: "PerfectScale discovered issue(s) with workload"
jira_assignee: ""
jira_resolution: false
# Optional: custom fields (not included in the default setup)
# jira_custom_fields:
# customfield_10001: "DevOps Team"
# customfield_10002: "Resource anomaly fix"
⚙️ CR parameters:
| Parameter | Description |
|---|---|
jira_url | Corporate Jira URL. Example: https://xxx.atlassian.net |
jira_user | Email address of the user creating the CR. |
jira_secret_from | API token to authenticate with an Atlassian cloud product. |
jira_project | Jira project where you want tickets to be created. |
jira_issue_type | The desired type of a Jira ticket. |
jira_summary | The desired summary of a Jira ticket. |
jira_assignee | The default assignee (member ID) of a Jira ticket. |
jira_resolution | (optional) Set true to assign the resolution reason when closing a ticket in the specified jira_project. |
jira_custom_fields | (optional) Specify additional Jira ticket field (field ID) that is not included in the default setup. |