Cloning instances with AES

  • Release version: Washingtondc
  • Updated February 1, 2024
  • 4 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of Cloning instances with AES

    This guide provides essential information on how to protect data, tables, and templates when cloning instances using App Engine Studio (AES) in ServiceNow. It emphasizes the importance of maintaining data integrity during the cloning process from production to non-production environments.

    Show full answer Show less

    Key Features

    • Data Preservation Requirements: Ensure all AES plugins are installed on all instances. Set up data preservers on target instances for Automated Test Framework (ATF) and Instance Scan properties.
    • Collaboration Tables: Specific tables, such as App Collaboration Descriptors and App Collaboration Users, have data preservation to retain necessary data during cloning.
    • Clone Exclusions: Certain tables are excluded from cloning to prevent overwriting critical data in non-production instances.
    • Post-Cloning Cleanup: A script automatically syncs collaborator permissions after cloning, enabling immediate developer access to applications.
    • Template Protection: Custom templates created in AES are at risk during cloning; thus, steps must be taken to preserve them.

    Key Outcomes

    By following the outlined procedures, ServiceNow customers can ensure that their development environments maintain critical data and templates during the cloning process. This not only protects against data loss but also facilitates seamless development efforts post-clone. For further guidance on cloning and data preservation, additional resources are available within ServiceNow University.

    Learn how to protect the data, tables, and templates you've created in App Engine Studio when using System Clone to copy instances from production to non-production.

    Preserving data and tables when cloning

    The following are requirements for cloning instances with AES:
    1. Ensure that all of your AES plugins are installed across all instances.
    2. If you're cloning a production instance, verify that you've set up a data preserver on the target instances to preserve the Automated Test Framework (ATF) and Instance Scan properties. For more information about data preservers, see Data preservation on cloning target instances.
      Important:
      By default, the ATF system property is disabled to prevent you from accidentally running these tests on a production system. Running ATF on a production instance is neither recommended nor supported due to the potential for data corruption or outages.
    3. If you're collecting development and deployment data, the App Engine Management Center (AEMC) plugin must be installed on all instances.
    Cloning data and tables from a production instance over a non-production instance can overwrite data in your non-production tables. To ensure that data isn't lost in development environments, create a cloning strategy for collaboration.
    1. The following tables have data preservation to ensure that the tables are correctly cloned between instances:
      Note:
      For the following tables, preservation is for global scope only.
      • Collaboration Descriptor tables:
        • App Collaboration Descriptors (sys_appcollab_descriptor)
        • App Collaboration Descriptor Permissions (sys_appcollab_permission_m2m)
      • Collaboration Users and Groups tables:
        • App Collaboration Users (sys_appcollab_user)
        • App Collaboration Groups (sys_appcollab_group)
      The data preservation ensures data is retained on the tables in the development instances.
    2. The following tables have clone exclusions:
      • Collaboration Descriptor tables:
        • App Collaboration Descriptors (sys_appcollab_descriptor)
        • App Collaboration Descriptor Permissions (sys_appcollab_permission_m2m)
      • Collaboration Users and Groups tables:
        • App Collaboration Users (sys_appcollab_user)
        • App Collaboration Groups (sys_appcollab_group)
      Clone exclusions ensure data from production instances isn't copied to development instances.
    3. If AES is the only application using the Credentials table, consider creating data preservers for Credential Alias, Basic Auth, and Discovery credentials. Otherwise, you must ensure that these tables aren't overwritten when the production instance is cloned to non-production instances.
    4. The following users must be reassigned their roles after cloning:
      • Users in the AES Users group
      • Users in the AES User Limited group
      • Users who have the sn_app_eng_studio.user role in non-production instances
    5. After cloning, a ReSync Collaborations Permissions post-clone clean-up script runs automatically, so any applications that were the same on production and development instances are automatically have collaborators synced. Developers can resume development on them immediately.
      Note:
      The cloned instance must have the collaboration plugin enabled.
    6. If some applications were backed up prior to cloning and retrieved after cloning, you can use the Resync collaboration permissions related link on the sys_app record to reassign users and groups to their appropriate delegated development permissions.
    7. If a collaboration descriptor is no longer associated with a user or group after cloning (in the event that development apps were wiped out during cloning as they were not in the source instance), select the Clean up records with empty references related link to remove the unreferenced user or group from the collaboration table. You should run this UI action after the cloning is done and all preserved applications have been retrieved (with Resync collaboration permissions already run on them).
    The following tables have data preservation to ensure that the tables are correctly cloned between instances:
    • Pipeline Instance
    • Request Authorization Key
    • Deployment Request
    • Deployment Environment Request

    Preserving app templates when cloning

    Admins must protect custom templates from being overwritten during the cloning process. Without protection, templates created in AES (both from existing applications and from scratch) are in danger of disappearing during a clone.

    When you create a template in AES, a scoped app is automatically generated on the Custom Applications [sys_app.list] table in your instance. Though they have different contents, template applications and standard custom applications are treated similarly on the ServiceNow AI Platform. So, preserving app templates during a system clone works the same way as preserving an application.

    To protect app templates on your non-production instances, follow the process in Preserve applications and customizations in development during a system clone.

    More information on cloning and data preservation

    See the following topics for more information on cloning and data preservation:
    Learn more about cloning instances with AES Additional ServiceNow resources
    ServiceNow provides several additional resources on cloning instances with App Engine Studio.

    Cloning basics knowledge article

    Cloning instances tips and tricks knowledge article

    Extensive FAQ knowledge article on cloning instances

    App Engine Enterprise - Data Preservation During System Clone Whitepaper
    Note:
    You must log in to ServiceNow University to access this resource.