- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
Use Case:
To adhere to best practices, I aim to ensure that the instance and data remain synchronized between the Production and Non-Production environments. What approach and solutions should we consider implementing on our side? Are there any out-of-the-box capabilities available to assist in managing the instance and data synchronization?
Solution:
ServiceNow offers a robust feature known as 'Clone' that facilitates the management of instances and data synchronization. However, it is advisable not to activate this feature immediately. For example, the Development Environment tends to be more complex when enabling the clone, as it is often engaged in ongoing development activities driven by business requirements and functionality enhancements. Unlike the TEST, QA, and PROD environments, the DEV environment requires careful consideration prior to cloning. The following approaches and checklist are designed to assist in simplifying the cloning process while minimizing potential issues.
When planning to clone any ServiceNow instance environment, the checklist provided below will be beneficial. I have applied this checklist in real-time scenarios, and it has proven to be highly effective. I am eager to share these details, as I believe they will be advantageous for your cloning activities. Please review the following pre- and post-clone checklist for each instance during the cloning process.
Pre-Clone Activities | Status | Target Instance | Source Instance | Comments |
Check the system property - glide.db.clone.allow_clone_target is TRUE | ||||
Check the all update sets are closed. | ||||
Ask Developer to take a backup which code are not moved to UAT/ PROD. | ||||
Data Preserve should enable required table. The table list are mentioned below. | ||||
Data Preserve should enable custom sys_properties if required. | ||||
Data Preserve should enable for SSO Configuration / SSO Properties table. | ||||
Data Preserve should enable for admin users. | ||||
Data Preserve should enable for instance_name | ||||
Export the story and defect and Test Plan info from appropriate table using xml file. | ||||
Export integration end points (3rd Party System) i.e, Pointed to DEV / Test / QA Environments. | ||||
Export the intalled plugin list on each instance -- https://instance-name/xmlstats.do?include=plugins | ||||
Collect the Integration Credentials and store in local drive before start the Cloning. | ||||
Connect the Hi Team and ask to take a backup from DB. | ||||
Broadcost the Clone acticity start time to Business people. If require, display the clone activity in Portal and Instance Header. |
Post-Clone Activities | Status | Comments | ||
Regenrate the Text Indexes. | ||||
Check the email properties and Depends business requirement enable or disable the property. | ||||
Check the Mid Server status and Credentials. | ||||
Use Cleanup scripts as per OOB / Custom if required. | ||||
If clone shows issue, you can rollback the clone.i.e., Go to Clone History and Select which should roll back then Use 'Roll Back Clone' as per OOB. Must be initiated within 24 hours of clone completion. | ||||
Check preserved data is available part of the table. | ||||
Compare installed plugin list from Pre-Clone and enable the missed plugins -- https://instance-name/xmlstats.do?include=plugins |
In the event that certain plugins are installed on one instance and are not accessible on another, you may utilize the script provided below. Please ensure that the plugin names are accurately entered before executing it in either the 'Fix Script' or 'Background Script' sections.
var plugins = [];
plugins.push('com.snc.test_management.2.0'); // Add Plugin Names which you require to install in the instance
plugins.push('com.snc.fullcalendar'); // Add Plugin Names which you require to install in the instance
plugins.push('com.snc.on_call_rotation'); // Add Plugin Names which you require to install in the instance
plugins.push('com.snc.sdlc.ranking'); // Add Plugin Names which you require to install in the instance
var main = new GlideMultiPluginManagerWorker();
main.setPluginIds(plugins);
main.setProgressName("Plugin Installer");
main.setBackground(true);
main.start();
Please use following link to refer the ServiceNow guidance as well.
#Clone #InstanceManagement #DataSync #Pre-Clone #Post-Clone
Hope you like it. If any questions or remarks, let me know!
If this helped you in any way, I would appreciate it if you hit bookmark or mark it as helpful.
Regards,
Suresh.
- 881 Views
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.