This documentation supports an earlier version of BMC Helix IT Service Management on-premises deployment.To view the documentation for the latest version, select 23.3.04 from the Product version picker.

Moving your customization to a new target system


This section describes how to migrate BMC Helix ITSM customizations between environments as part of the Staged Upgrade methodology for upgrading a BMC Helix ITSMenvironment.

To upgrade, you must migrate your customizations from your current ITSM system to the new BMC Helix ITSM system. This involves the following activities:

  • Migrate CMDB customizations—Apply CMDB extensions to your new system and update any user interfaces impacted by these extensions.
  • Migrate workflow customizations—Export overlays and customizations to the definition file and import these definitions to the target system.
  • Three-way reconciliation—Review and validate the workflow in the new BMC Helix ITSM application using three-way reconciliation.

Migrating CMDB customizations

The following image describes the process to migrate CMDB customizations:

MovingCustomizations.png

You can export and import CMDB customizations from the source system to the target system by using the Deployment Management Console. Alternatively, you can use the cdmchecker utility to export and import the customizations.

Important

The process describes migration of CMDB customizations from a denormalized source CMDB system to a denormalized target CMDB system.

To identify the customizations

Identify all the out-of-the-box CMDB metadata for classes and attributes by using the cdmchecker utility. For information about cdmchecker utility, see Troubleshooting issues when using the CDMChecker tool.

To identify the CMDB customizations, perform the following steps:

  1. Make sure that all the applications and CMDB extensions are installed on the OOB system so that the products installed on target system where customizations need to be migrated are same.
    For example, if the source system where you want to identify the customizations has ITSM and True Sight extension installed. On the OOB system of the same version, make sure that the system has ITSM and True Sight extension installed.
  2. In the OOB environment that has the same version as that of your source system, run the following cdmchecker tool command: 

    cdmchecker -x <name of xml file to include all classes> -u <user> -p <password> -s <server> -t <TCP Port>

    This command exports an OOTB xml file for the CMDB classes and attributes.

  3. Compare the OOTB xml file generated in the step 2 with the source system by using the following command: 

    cdmchecker -c <name of xml file to include all classes> -u <user> -p <password> -s <server> -t <TCP Port>

    This command displays the classes and attributes found in the source system. A sample output of the command for Added Classes, Added Attributes, and Changed Attributes is as follows:

    ************************************************
    Added Classes:
    ************************************************
    CUS.CORE:CUS_CloudInfo
    ************************************************

    ************************************************
    Added Attributes:
    ************************************************
    BMC.CORE:BMC_WAN::WANInfo
    ************************************************

    ************************************************
    Changed Attributes:
    ************************************************
    BMC.CORE:BMC_BaseElement::RequestId
    BMC.CORE:BMC_BaseRelationship::RequestId
    BMC.CORE:BMC_Collection::isVirtual_old
    BMC.CORE:BMC_ElementLocation::ElementLocation
    ************************************************

To export the customizations by using the Deployment Management Console

  1. Log in to Mid Tier as an administrator.
  2. Select AR System Administration > AR System Deployment Management Console.
  3. On the AR System Deployment Management Console page, click Create.The following image shows an example: 

    Export CMDB classes.png

  4. Specify the details such as package name, version, and description.
  5. From the Content Type drop down list, select CMDB.
  6. Add the classes and attributes.
    From the CMDB Object Type drop down list, select any of the following options:
    1. To add a class, select Add Class, click Add, select the class name and click Add.
      The following image shows an example:
      Add class.png
    2. To add an attribute, select Add Attribute, click Add, select the attribute name and click Add.
  7. Click Save.
    A package is created and a package creation message is displayed.
  8. Navigate to the Deployment Management Console.
  9. To build the package, click Build.
    The following image shows an example:

    Build package.png

    After the package is built successfully, the build status changes to Ready for Export.

  10. To export the package, click Export.

    The following image shows an example:

    Export package.png

To import the customizations by using the Deployment Management Console

  1.  Log in to the target system.
  1. Select AR System Administration > AR System Deployment Management Console.
  2. On the AR System Deployment Management Console page, click Import.The following image shows an example:

    Import package.png

  3. After the import completes successfully, click Deploy.
    The following image shows an example:

    Deploy package.png

To export and import the customizations by using the cmdbdriver utility

  1. Export custom CMDB classes and attributes by using the expdf command.
    An example of exporting a complete custom CUS_CloudInfo class with all custom attributes is as follows:

    Command: expdf
    EXPORT DEFINITION
    Export Item List:
    Number of export items (0): 2
     Item Type: (Class, Attribute) (1-2) (1): 1
     Class Type
        Class Name
           Namespace (): CUS.CORE
           Class name (): CUS_CloudInfo
     Item Type: (Class, Attribute) (1-2) (1): 2
     Attribute Type
        Class Name
           Namespace (): CUS.CORE
           Class name (): CUS_CloudInfo
        Number of Attributes (0): 7
           Attribute Name (): CUS_ID
           Attribute Name (): CUS_LastModifedDate
           Attribute Name (): CUS_Place
           Attribute Name (): CUS_StackID
           Attribute Name (): CUS_Reference
           Attribute Name (): CUS_ServerName
           Attribute Name (): CUS_LastModifiedBy
    Filename for exported def: CUS_CloudInfo.xml

    CMDBExportDef results
    ReturnCode: OK
    Status List : 0 items

    An example of exporting additional custom attributes from an OOB class is as follows:

    Command: expdf
    EXPORT DEFINITION
    Export Item List:
    Number of export items (0): 1
     Item Type: (Class, Attribute) (1-2) (1): 2
     Attribute Type
        Class Name
           Namespace (): BMC.CORE
           Class name (): BMC_SoftwareServer
        Number of Attributes (0): 10
           Attribute Name (): CUS_DCName
           Attribute Name (): CUS_Activity_Month
           Attribute Name (): CUS_Activity_Day
           Attribute Name (): CUS_Activity_Time
           Attribute Name (): CUS_Activity_Date
           Attribute Name (): CUS_Activity_Frequency
           Attribute Name (): CUS_Activity_Time
           Attribute Name (): CUS_Activity_TimeZone
           Attribute Name (): CUS_Activity_Week
           Attribute Name (): CUS_Rack
    Filename for exported def: BMC_SoftwareServer_Custom_attr.xml

    CMDBExportDef results
    ReturnCode: OK
    Status List : 0 items
  2. Run the import command with customization file as an input. 

    An example of importing a complete custom class is as follows:

    Command: impdf
    DEFINITION IMPORT
    Import Item List:
    Number of import items (0):
    Import option: Create/Overwrite (1-2) (1): 1
    Filename containing import data: CUS_CloudInfo.xml

    CMDBImportDef results
    ReturnCode: OK
    Status List : 0 items

    An example command to import all custom attributes in the BMC_SoftwareServer class in the target system is as follows:

    Command: impdf
    DEFINITION IMPORT
    Import Item List:
    Number of import items (0):
    Import option : Create/Overwrite (1-2) (1): 1
    Filename containing import data: BMC_SoftwareServer_custom_attr.xml

    CMDBImportDef results
    ReturnCode: OK
    Status List : 0 items
  3. Create UI Asset forms for the imported classes. To create an asset form, see Synchronizing the BMC Asset Inventory forms with BMC Atrium CMDB.

Migrating workflow customizations

You can use BMC Developer Studio to migrate workflow customizations. The high-level steps are:

  1. Identify and export overlaid and custom workflow to a definition file.
  2. Migrate customer AR System groups.
  3. Import overlays and customer workflow from a definition file.

To identify and export overlaid and custom workflow

  1. Open Developer Studio and connect to source system. Make sure you are using Best Practice Development Mode.
  2. Open the list of forms in your source system and sort by the Customization Type to bring all Custom and Overlay objects to the top of the list.
  3. Select all overlaid forms. Then, right-click and select Export To File.
    ExportToFile.png
  4. On the Export dialog box, enter the name of the file you want to export to.
    You can use multiple files for each category or consolidate all exports into a single definition file.
  5. Select all of the real custom forms. Then, right click and select Export To File.
    Some forms might be incorrectly specified as Custom but may be out-of-the-box. These include SLA join forms generated by BMC Helix ITSM.
  6. Repeat steps 2-5 for active links, filters, active link guides, filter guides, applications, web services, and menus.

Migrating customer AR System groups

Before importing workflow, make sure that any custom AR System groups or roles that are referenced in your workflow have been migrated to your target system. Use BMC Helix Data Manager to migrate the data for your custom AR System groups or simply export the groups and roles to an arx file and use the AR System Import Tool to import them.

To import overlays and customer workflow from a definition file

  1. Open Developer Studio and connect to target system. Make sure you are using Best Practice Development Mode.
  2. Select File > Import.
  3. In the dialog box, select Object Definitions, and click Next.
  4. Select the server you want to import into and click Next.
  5. Open the Import definition file and click Next to view the list of objects available for import.
    ImportOverlays.png
    For overlaid forms, the underlying base form and the overlay will be in the definition file. The overlay is indicated with a " o" suffix. For example, an overlay of "AAS:Activity appears in the definition file as "AAS:Activity o".
    You must remove all instances of the base form or workflow from the definition file when importing an overlay, or the base form will be updated with the older version form definition.
  6. After you have configured the set of workflow to be imported, click Import.
    You should not need to overwrite any definitions in the target system unless you are reattempting an import. If the Replace Objects on the Destination Server flag is not checked, you might accidentally update the base layer, so it may be safer to delete and re-import overlays if reattempting a migration.
  7. Repeat steps 2-6 for each of your definition files.

Handling exceptions

It may not be possible to import all of your overlaid workflow.

For Example: If an overlaid object does not exist on the target, or if the customizations are so significant that the definition cannot even be imported as an overlay.

Manage these exceptions on a case-by-case basis because the change will likely need to be redeveloped.

Three-way reconciliation

Three-way reconciliation enables you to compare your overlaid workflow with the base objects from the previous and new BMC Helix ITSM version. This enables you to evaluate whether the customization that was applied to the previous version is still valid and whether you should carry it forward in the same way.

For additional details, see Comparing-and-reconciling-objects-using-the-Objects-list.

After your customizations and overlays are migrated to the larger system, complete the following steps to use three-way reconciliation to validate your customizations when using the Staged Upgrade methodology.

To validate your customizations

  1. Open Developer Studio and log in to the source and target AR System server.
  2. Right-click the source server and select Capture Snapshot.
  3. Right-click the target server and select Compare with Snapshot.
    Overlays that might not be compatible with the changes being applied in the new version are highlighted for your review (as shown in the screen shot). Overlays with no clashes are not flagged, so if you get no output from this comparison, that is a desirable output.
    ValidateCustomizations.png

Where to go from here

Staged-upgrade-process


 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*