Upgrading BMC Helix IT Service Management to 21.3.06
Patch update process
The following image describes the process to update your BMC Helix Innovation Suite platform and applications from 21.3.02, 21.3.04, or 21.3.05 to version 21.3.06.
Before you use BMC Helix Service Management 21.3.06 in your production environment, apply the BMC Helix Service Management 21.3.06 patch and test the update in your non-production environment.
Before you begin
BMC Helix Service Management 21.3.06 requires Ingress Controller 1.2.0.
Make sure that you either upgrade the Ingress Controller to version 1.2.0 or delete the previous version of Ingress Controller and then install Ingress Controller 1.2.0.- Verify that you have specified the Tenant parameter value while configuring the BMC Helix Single Sign-On realm.
- If you are updating from 21.3.02 version, review the following changes:
Review the following changes to Support Assistant tool:
Behavior in version earlier than 21.3.04
Behavior in version 21.3.04, 21.3.05, and 21.3.06
- Deployed in BMC Helix Logging namespace
- Required cluster administrator privileges for deployment
- Runs as a root user
- Deployed in BMC Helix Innovation Suite namespace
- Does not require cluster administrator privileges for deployment
- Runs as a non-root user
If you already have the Support Assistant tool installed in BMC Helix IT Service Management 21.3.02 or earlier version, you must delete the older version of Support Assistant tool by using the following command:
helm delete assisttool -n <BMC Helix Logging Namespace>If you already have Fluentbit installed in BMC Helix IT Service Management 21.3.02 or earlier version, you must delete the older version of Fluentbit by using the following command:
helm delete fluentbit -n <BMC Helix Logging Namespace>
- Configure the DNS for Support Assistant tool in your server domain so that you can access the tool by using the following URL format:
<CUSTOMER_SERVICE>-<ENVIRONMENT>-supportassisttool.<CLUSTER_DOMAIN>
For example: For example, if CUSTOMER_SERVICE=itsm, ENVIRONMENT=poc, and CLUSTER_DOMAIN=dsmlab.bmc.com, the Support Assistant tool URL will be itsm-poc-supportassisttool.dsmlab.bmc.com
Use the customer service and environment values based on your BMC Helix Innovation Suite namespace.
- Configure the DNS for Support Assistant tool in your server domain so that you can access the tool by using the following URL format:
Task 1: To download the patch installation artifacts
- Download the patch installation artifacts; see Downloading-the-installation-files.
- Confirm access to the container images; see Setting-up-a-Harbor-repository.
Task 2: To upgrade BMC Helix Platform
Upgrade BMC Helix Platform services to 23.2.02, 23.1.02, 22.4.00, or 22.2.01 version.
Base version | Target version | Steps to upgrade |
---|---|---|
23.1.02 | 23.2.02 | |
22.4 | ||
22.2.01 | ||
21.3.03.001 | ||
22.4 | 23.1.02 | |
22.2.01 | ||
22.2.01 | 22.4 | |
21.3.03.001 | 22.2.01 |
Task 3: To update the Git repositories
- Log in to BMC Deployment Engine that is the Jenkins server.
In your local Git repository, create a backup of the existing repositories.
If you are updating BMC Helix Service Management from 21.3.02 version, create a backup of the following existing repositories:- ITSM_REPO
- PLAYBOOKS_REPO
- HELM_REPO
- SMARTAPPS_HELM_REPO
- CUSTOMER_CONFIGS
If you are updating BMC Helix Service Management from 21.3.04 or 21.3.05 version, create a backup of the following existing repositories:
- CUSTOMER_CONFIGS
- HELM_REPO
- ITSM_REPO
- PLAYBOOKS_REPO
- SMARTAPPS_HELM_REPO
- SMARTREPORTING_PLAYBOOKS_REPO
- SMARTREPORTING_HELM_REPO
For example, create a backup of the ITSM_REPO, PLAYBOOKS_REPO, HELM_REPO, SMARTAPPS_HELM_REPO, and CUSTOMER_CONFIGS repositories located at ssh://<Jenkins server host name>/home/git/Git_Repo.
- Copy the BMC_Remedy_Deployment_Manager_Configuration_Release_21306007.zip file that you downloaded from EPD to your existing local Git repository.
For example, copy the BMC_Remedy_Deployment_Manager_Configuration_Release_21306007.zip file to the local Git repository located at ssh://<Jenkins server host name>/home/git/Git_Repo.
In the file system where the Git repository is located, unzip the BMC_Remedy_Deployment_Manager_Configuration_Release_21306007.zip file.
For example, in the Git_Repo repository located at ssh://<Jenkins server host name>/home/git/Git_Repo, unzip the BMC_Remedy_Deployment_Manager_Configuration_Release_21306007.zip file.The BMC_Remedy_Deployment_Manager_Configuration_Release_21306007.zip file contains the following artifacts:
- CUSTOMER_CONFIGS
- HELM_REPO
- ITSM_REPO
- PLAYBOOKS_REPO
- SMARTREPORTING_PLAYBOOKS_REPO
- SMARTREPORTING_HELM_REPO
- SMARTAPPS_HELM_REPO
- Update the sizing templates for the Compact, Small, Medium, and Large deployment sizes.
- Copy the ITSM_REPO.zip file that you downloaded from EPD.
Rename the existing ITSM_REPO by using the following command:
mv ITSM_REPO ITSM_REPO_oldExtract the ITSM_REPO.zip file by using the following command:
unzip ITSM_REPO.zipAfter you unzip the file, the Git repository is replaced with the deployment size templates.
Apply owner user permissions to the ITSM_REPO repository by using the following command:
chown -R git:git ITSM_REPO
Task 4: To add deployment pipelines
Verify that the following deployment pipelines already exist in your Jenkins server:
Pipeline
Repository URL
Branches to build
Script path
HELIX_PLATFORM_UPDATE
ssh://git@<jenkins_server>/<GIT_REPO_DIR>/ITSM_REPO/itsm-on-premise-installer.git
*/master
pipeline/jenkinsfile/HELIX_PLATFORM_UPDATE.jenkinsfile
HELIX_NON_PLATFORM_UPDATE
ssh://git@<jenkins_server>/<GIT_REPO_DIR>/ITSM_REPO/itsm-on-premise-installer.git
*/master
pipeline/jenkinsfile/HELIX_NON_PLATFORM_UPDATE.jenkinsfile
HELIX_SMARTREPORTING_UPGRADE
ssh://git@<jenkins_server>/<GIT_REPO_DIR>/ITSM_REPO/itsm-on-premise-installer.git
*/master
pipeline/jenkinsfile/HELIX_SMARTREPORTING_UPGRADE.jenkinsfile
HELIX_SMARTAPPS_DEPLOY
ssh://git@<jenkins_server>/GIT_REPO_DIR/ITSM_REPO/itsm-on-premise-installer.git
*/master
pipeline/jenkinsfile/HELIX_SMARTAPPS_DEPLOY_ONPREM.jenkinsfile
- If the deployment pipelines exist in your Jenkins server, run the HELIX_PLATFORM_UPDATE, HELIX_NON_PLATFORM_UPDATE, HELIX_SMARTREPORTING_UPGRADE, and HELIX_SMARTAPPS_DEPLOY pipelines in dry-run mode so that the pipeline parameters that are updated in 21.3.06 version are reflected.
- On the Jenkins server, select the pipeline.
For example, on the Jenkins server, select the HELIX_NON_PLATFORM_UPDATE pipeline. - In the navigation pane, select the latest build and click Build with Parameters > Build.
- Click Rebuild.
After you rebuild the pipeline, the updated parameters for the pipeline are reflected.
To confirm that the pipeline is updated with the new parameters, click on Build with Parameters and check if ONPREM checkbox is present.
- On the Jenkins server, select the pipeline.
- If any of the deployment pipelines are not present in your Jenkins server, add the pipeline by performing the following steps:
- Log in to the Jenkins server by using the following URL:
http://<Jenkins server host name>:8080 - On the Jenkins home page, click New Item.
- In the Enter an item name field, enter the pipeline name.
Example: HELIX_PLATFORM_UPDATE. - Select Pipeline and click OK.
- Click the Pipeline tab.
Enter the following information:
- From the Definition list, select Pipeline script from SCM.
- From the SCM list, select Git.
- Enter the Repository URL as the path of your local Git repository in the format ssh://git@<jenkins_server>/<path to itsm-on-premise-installer.git>.
Example: ssh://git@<Jenkins server host name>/home/git/Git_Repo/ITSM_REPO/itsm-on-premise-installer.git. - Enter the Git server credentials.
- Specify the script path.
Example: pipeline/jenkinsfile/HELIX_PLATFORM_UPDATE.jenkinsfile.
The following image shows an example:
- Click Apply and then Save.
After the pipeline is created, make sure that the pipeline is selected from Jenkins home page. - Click Build Now.
The first build job fails because it needs to run the first time to load all the parameters of the pipeline script. - After the build job fails, select the pipeline name again from the Jenkins home page.
The Build Now option changes to Build With Parameters.
- Log in to the Jenkins server by using the following URL:
Task 5: To upgrade BMC Helix Innovation Suite platform and applications
To upgrade the platform and applications, update the deployment pipelines, specify the required parameters, and run the pipelines.
To update the deployment pipelines
- Update the HELIX_ONPREM_DEPLOYMENT pipeline so that the updated parameters for the pipeline are reflected.
- On the Jenkins server, select the HELIX_ONPREM_DEPLOYMENT pipeline.
- In the Build History, select the latest build and click Rebuild.
- SUPPORT_ASSISTANT_TOOL check box. uncheck the
- In the PRODUCT-DEPLOY section, uncheck the check boxes for all the options.
- Click Rebuild.
After you rebuild the pipeline, the updated parameters for the pipeline are reflected.
- Update the HELIX_GENERATE_CONFIG pipeline so that the updated parameters for the pipeline are reflected.
- On the Jenkins server, select the HELIX_GENERATE_CONFIG pipeline.
- In the Build History, select the latest build and click Rebuild.
- Click Rebuild.
After you rebuild the pipeline, the updated parameters for the pipeline are reflected.
To run the HELIX_ONPREM_DEPLOYMENT pipeline
- Select the HELIX_ONPREM_DEPLOYMENT pipeline, select the latest build, and click Rebuild.
In the CODE section, specify the following parameter:
Parameter
Description
GIT_USER_HOME_DIR
Git user home directory.
Example: /home/git
If you are updating from 21.3.02 version and you want to update the BMC Helix ITSM: Smart Reporting application, in the CODE section, specify the following parameters:
Parameter
Description
SMARTREPORTING_PLAYBOOKS_REPO
Git repository for the Smart Reporting application pipeline.
Example: ssh://<Jenkins server host name>/home/git/Git_Repo/SMARTREPORTING_PLAYBOOKS_REPO/smartreporting-deploy-playbooks.git
SMARTREPORTING_HELM_REPO
Repository URL to check out Helm charts for Smart Reporting application.
Example: ssh://<Jenkins server host name>/home/git/GIT_REPO/SMARTREPORTING_HELM_REPO/smartreporting-containerization-certified.git
In the CUSTOMER-INFO section, specify the following parameters:
Parameter
Description
OS_RESTRICTED_SCC
Select this check box you are using an Openshift cluster and have restricted security context constraints enabled.
IS_NAMESPACE
Specify the namespace where you want to install BMC Helix Innovation Suite.
CACERTS_FILE
Click Browse and upload your custom cacerts file.
Important: If you used a custom cacerts file in a BMC Helix Service Management version earlier than 21.3.06, upload the custom cacerts file to this parameter.
Use this optional parameter in the following cases:
- You want to use a custom CA certificate or self-signed certificate to use HTTPS communication for Service Management applications.
- You want BMC Helix Innovation Suite to communicate with third-party services that use custom cacerts.
Important: Make sure that you use the same custom certificate in BMC Helix Innovation Suite and BMC Helix Platform.
For information about creating a custom cacerts file and ways to apply a custom cacerts file, see Applying-security-certificates-to-your-applications.
CUSTOMER_SIZE
Specify the deployment size such as, Compact, Small, Medium, or Large. Enter the value as C, S, M, or L.
Important: Make sure that you select the appropriate deployment size.
Before applying the patch, the deployment size is C - Compact by default. During update, you can continue to use compact size by specifying the value as C or another size according to your requirement.SOURCE_VERSION
Specify the source version of the Helm repositories:
- If your BMC Helix Innovation Suite platform source version is 21.3.02, select 2021302.1.00.00
- If your BMC Helix Innovation Suite platform source version is 21.3.04, select 2021304.1.00.00
- If your BMC Helix Innovation Suite platform source version is 21.3.05, select 2021305.1.05.00
- If your BMC Helix Innovation Suite platform source version is 21.3.06, select 2021306.1.00.00
PLATFORM_HELM_VERSION
Specify the target version of the Helm repositories as 2021306.1.07.00
SMARTREPORTING_SOURCE_VERSION
Select the source version of the Helm repositories for BMC Helix ITSM: Smart Reporting application:
- If your Smart Reporting source version is 21.3.02, select 2021302.1.00.00
- If your Smart Reporting source version is 21.3.03, select 2021303.1.03.00
- If your Smart Reporting source version is 21.05.03, select 210503.1.05.00
Important: Specify the parameter value if you want to updateSmart Reporting.
(Optional) To find the Smart Reporting source version, run the following command:
helm ls -n <BMC Helix Innovation Suite namespace>and check the value of smartreporting-<BMC Helix Innovation Suite namespace>
Sample output
smartreporting-21.05.03
In this example, specify the SMARTREPORTING_SOURCE_VERSION value as 210503.1.05.00
SMARTAPPS_HELM_VERSION
Specify the version of the Helm repositories for applications as 2021306.1.06.00
Specify the value as UPDATE.
Parameter
Description
HELIX_VIRTUALCHAT
Select this check box to install BMC Live Chat.
HELIX_OPENFIRE
Select this check box to install Openfire.
HELIX_DWP
Select this check box to install BMC Digital Workplace.
HELIX_DWPA
Select this check box to install BMC Digital Workplace Catalog.
HELIX_BWF
Select this check box to install BMC Helix Business Workflows.
HELIX_MCSM
Select this check box to install BMC Helix Multi-Cloud Broker.
HELIX_ITSM_INSIGHTS
Select this check box to install BMC Helix ITSM Insights.
Parameter
Description
SUPPORT_ASSISTANT_TOOL
Select this option to install the Support Assistant tool.
SIDECAR_SUPPORT_ASSISTANT_FPACK
Important: If you select the SUPPORT_ASSISTANT_TOOL option, select this option to install the Support Assistant tool sidecar container.
The Support Assistant tool is deployed as a sidecar container and runs as a non-root user. The Support Assistant tool deployment requires namespace- level permissions.
SUPPORT_ASSISTANT_CREATE_ROLE
Important: Select this check box to use a default role when installing the Support Assistant tool. Skip this option if the Support Assistant tool is already installed in the BMC Helix Innovation Suite namespace.
If you want to use a custom role for the Support Assistant tool installation, clear this check box and confirm the following actions:
In your BMC Helix Innovation Suite namespace, make sure that you have created a role and the role has the following rules:
rules:
- apiGroups: [""]
resources: ["pods"]
verbs: ["get", "watch", "list"]- Make sure that you specify the appropriate service account in the SUPPORT_ASSISTANT_SERVICE_ACCOUNT parameter.
SUPPORT_ASSISTANT_SERVICE_ACCOUNT
Specify the value as default so that the default service account is used during the Support Assistant tool installation. Skip this option if Support Assistant tool is already installed in the IS Namespace.
If you want to use a custom role for the Support Assistant tool installation, specify the service account name that is available in your BMC Helix Innovation Suite namespace and the custom role is assigned to the account by using the role binding permission.
SIDECAR_FLUENTBIT
Select this parameter to install Fluent Bit.
Fluent Bit is deployed as a sidecar container and runs as a non-root user.
In the PRODUCT-DEPLOY section,
Parameter
Description
HELIX_GENERATE_CONFIG
Select this check box.
HELIX_PLATFORM_DEPLOY
Select this check box to update the platform components, such as Mid Tier and BMC Helix CMDB.
HELIX_SMARTREPORTING_DEPLOY
Select this check box to update BMC Helix ITSM: Smart Reporting.
HELIX_NONPLATFORM_DEPLOY
Select this check box to update BMC Helix ITSM: Smart IT and BMC Live Chat.
HELIX_SMARTAPPS_DEPLOY
Select this check box to update the following applications:
BMC Helix ITSM, BMC Helix Digital Workplace Catalog, BMC Helix Digital Workplace, BMC Helix Business Workflows, and BMC Helix Multi-Cloud Broker.
HELIX_INTEROPS_DEPLOY
Select this check box to activate services such as BMC Helix ITSM Insights, BMC Helix ITSM: Smart IT, BMC Helix Digital Workplace, BMC Helix Digital Workplace Catalog, and BMC Helix Business Workflows for the BMC Helix Platform users.
Important: Select this option if you have not activated the following services in earlier version of BMC Helix Service Management.
HELIX_DR
Do not select this option.
SCALE_DOWN
Do not select this option.
In the DATABASE_REGISTRY_STORAGE_PASSWORDS_SECRETS_DETAILS section, specify the following parameters:
Parameter
Description
AR_ADMIN_USER
Action Request System administrator user name.
AR_ADMIN_PASSWORD
Password for Action Request System administrator user.
To update the password, click Change Password.
PLATFORM_ADMIN_PLATFORM_EXTERNAL_IPS
Specify the IP address that you specified as the external IP for the platform-admin-ext service.
The external IP must be in JSON list format within square brackets, such as [10.x.x.x].In the RSSO_PARAMETERS section, specify the following parameter:
Parameter
Description
TENANT_DOMAIN
Specify the value of the Tenant parameter that you specified while configuring the BMC Helix Single Sign-On realm.
In the ITSM_INTEROPS_PARAMETERS section, specify the following parameters:
Parameter
Description
HELIX_PLATFORM_DOMAIN
Domain name of the cluster where BMC Helix Platform is installed.
HELIX_PLATFORM_CLUSTER
Cluster name where BMC Helix Platform is installed.
HELIX_PLATFORM_NAMESPACE
Namespace where BMC Helix Platform is installed.
HELIX_PLATFORM_KUBECONFIG_CREDENTIAL
Jenkins credential ID that contains the kubeconfig file for the Kubernetes cluster where BMC Helix Platform is installed.
If you have installed BMC Helix Platform on one cluster and you are installing BMC Helix Service Management on another cluster, add BMC Helix Platform cluster kubeconfig file as a credential in your Jenkins server.
Learn about configuring a kubeconfig file at Setting-up-BMC-Deployment-Engine.
HELIX_PLATFORM_CUSTOMER_NAME
Registered tenant in BMC Helix Platform.
ITSM_USER
User name to log in to BMC Helix ITSM.
Use the hannah_admin user.
ITSM_Password
Password for BMC Helix ITSM user.
Use the hannah_admin user password.
- Click Rebuild.
The HELIX_ONPREM_DEPLOYMENT pipeline updates the platform and applications.
After successful completion of the HELIX_ONPREM_DEPLOYMENT pipeline, verify the platform and application component pods are running by using the following command:
The following image shows an example:
The following video clip shows how to run the HELIX_ONPREM_DEPLOYMENT pipeline:
(Optional) Task 6: To upgrade the Kubernetes platform
After you upgrade BMC Helix Service Management to 21.3.06 version, upgrade your Kubernetes platform to version 1.22 or 1.23.
Rollback deployment
During upgrading BMC Helix Service Management from 21.3.04 Hotfix 5 to 21.3.06 version, if any of the HELIX_PLATFORM_DEPLOY, HELIX_NONPLATFORM_DEPLOY, or HELIX_SMARTAPPS_DEPLOY pipelines fail, you can rollback back to the last successful deployed version of the platform and applications by using the rollback option. When a pipeline fails, the rollback option is displayed on the pipeline output console and on the pipeline stage view as shown in the following images:
Rollback option | Example | Description |
---|---|---|
Pipeline output console | To rollback to the last successful deployment, click Proceed. To stop the pipeline execution, click Abort. If you stop the pipeline execution, find the cause of the failure, fix the issue, and then rebuild the pipeline by using the Rerun option. | |
Pipeline stage view |
Where to go from here