Preparing for upgrade
Task 1: To download the upgrade artifacts
- Download the upgrade artifacts; see Downloading-the-installation-files.
- Confirm access to the container images; see Setting-up-a-Harbor-repository-to-synchronize-container-images.
Task 2: To upgrade Helm
Upgrade Helm to the following version based on your orchestration platform version:
Kubernetes version | Helm |
---|---|
Kubernets 1.29 | 3.14 |
Kubernetes 1.28 | 3.14 |
Kubernetes 1.27 | 3.13 |
Kubernetes 1.26 | 3.12 |
Kubernetes 1.24 and 1.25 | 3.11 |
Task 3: To update the Git repositories
- Log in to the BMC Deployment Engine as a Git user.
- In your local Git repository, 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, CUSTOMER_CONFIGS, SMARTREPORTING_PLAYBOOKS_REPO, SMARTREPORTING_HELM_REPO, and DB_REFRESH_REPO repositories located at ssh://<Jenkins server host name>/home/git/Git_Repo.
- Copy the BMC_Remedy_Deployment_Manager_Configuration_Release_23.3.01.002.zip file that you downloaded from EPD to your existing local Git repository.
For example, copy the BMC_Remedy_Deployment_Manager_Configuration_Release_23.3.01.002.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_23.3.01.002.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_23.3.01.002.zip file.The BMC_Remedy_Deployment_Manager_Configuration_Release_23.3.01.002.zip file contains the following artifacts:
- CUSTOMER_CONFIGS
- HELM_REPO
- ITSM_REPO
- PLAYBOOKS_REPO
- SMARTREPORTING_PLAYBOOKS_REPO
- SMARTREPORTING_HELM_REPO
- SMARTAPPS_HELM_REPO
- DB_REFRESH_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_SMARTREPORTING_UPGRADE
ssh://git@<jenkins_server>/GIT_REPO_DIR/ITSM_REPO/itsm-on-premise-installer.git
*/master
pipeline/jenkinsfile/HELIX_SMARTREPORTING_UPGRADE.jenkinsfile
HELIX_ONPREM_DEPLOYMENT
ssh://git@<jenkins_server>/GIT_REPO_DIR/ITSM_REPO/itsm-on-premise-installer.git
*/master
pipeline/jenkinsfile/HELIX_ONPREM_DEPLOYMENT.jenkinsfile
HELIX_RESTART
ssh://git@<jenkins_server>/GIT_REPO_DIR/ITSM_REPO/itsm-on-premise-installer.git
*/master
pipeline/jenkinsfile/HELIX_RESTART.jenkinsfile
HELIX_FULL_STACK_UPGRADE
ssh://git@<jenkins_server>/GIT_REPO_DIR/ITSM_REPO/itsm-on-premise-installer.git
*/master
pipeline/jenkinsfile/HELIX_FULL_STACK_UPGRADE.jenkinsfile
HELIX_DB_REFRESH
ssh://git@<jenkins server>/GIT_REPO_DIR/DB_REFRESH_REPO/itsm-on-premise-db-refresh.git
*/master
jenkinsfile/helix_db_refresh.jenkinsfile
- (Deployment pipelines exist) Run the HELIX_FULL_STACK_UPGRADE and HELIX_SMARTREPORTING_UPGRADE pipelines in dry-run mode so that the pipeline parameters that are updated in 23.3.01.002 version are reflected on the pipeline.
- On the Jenkins server, select the pipeline.
For example, on the Jenkins server, select the HELIX_FULL_STACK_UPGRADE pipeline. - In the navigation pane, select the latest build and select Build with Parameters > Build.
- Click Rebuild.
After the pipeline is rebuilt, the updated parameters for the pipeline are reflected.
To verify that the pipeline is updated with the new parameters, click Build with Parameters and check that the ONPREM check box is present.
- On the Jenkins server, select the pipeline.
- Perform the following steps to add the pipeline:
- 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_FULL_STACK_UPGRADE. - Select Pipeline and click OK.
- Click the Pipeline tab.
Enter the following information:
Field
Description
Definition
From the Definition list, select Pipeline script from SCM.
SCM
From the SCM list, select Git.
Repository URL
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.Credentials
Enter the Git server credentials.
Additional Behaviours
Specify the script path.
Example: pipeline/jenkinsfile/HELIX_FULL_STACK_UPGRADE.jenkinsfile.The following image shows an example:
- Click Apply and then Save.
- From the Jenkins home page, select the pipeline and 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 the Kubernetes platform and Ingress controller
If you are using Kubernetes platform earlier than version 1.24, upgrade your Kubernetes platform to version 1.24, 1.25, 1.26, 1.27, 1.28, or 1.29.
Upgrade the Ingress version based on the Kubernetes platform version that you want to use. Supported Ingress controller versions are as follows:
Kubernetes | Ingress controller |
---|---|
1.29 | 1.9.6 |
1.28 | 1.9.5 |
1.27 | 1.9.3 |
1.26 | 1.8.1 |
1.25 | 1.7.0 |
1.24 | 1.7.0 |
Task 6: To delete the Helm revision secrets of the Kubernetes Cronjob
Run the following commands to export the kubectl and Helm binary:
export KUBECTL_BIN=<path of KUBECTL_BIN>
export HELM_BIN=<path of HELM_BIN>Copy the path of KUBECTL_BIN and HELM_BIN from the infra.config file.
- Download the script.
Run the Cronjob_helm_revision_delete.sh script to delete the helm revision secrets of the Cronjob in the BMC Helix Platform namespace.
./Cronjob_helm_revision_delete.sh <BMC Helix Platform namespace>Run the Cronjob_helm_revision_delete.sh script to delete the helm revision secrets of the Cronjob in the BMC Helix Service Management namespace.
./Cronjob_helm_revision_delete.sh <BMC Helix IT Service Management namespace>
Where to go from here
Upgrading-BMC-Helix-Platform-Common-services-version-from-24-1-00-to-24-2-00
Upgrading-BMC-Helix-Platform-Common-services-version-from-23-4-00-to-24-2-00
Upgrading-BMC-Helix-Platform-Common-services-version-from-23-4-00-to-24-1-00
Upgrading-BMC-Helix-Platform-Common-services-version-from-23-2-02-to-24-1-00