Blue/Green Deployment
  • 23 Jan 2025
  • Dark
    Light
  • PDF

Blue/Green Deployment

  • Dark
    Light
  • PDF

Article summary

A Blue/Green deployment has two separate, but identical, environments whereby both "old" and "new" versions of an application are running simultaneously in production. Blue is the old version, and Green is the new one. Users are migrated (moved) to the new application version (green) after it has been deployed to production.

Using a Blue/Green deployment increases application availability and reduces deployment risk by simplifying the rollback process if a deployment fails. Deployments and upgrades can be staged in advance during normal business hours so end users are not interrupted. After users are moved to the new application version (green), the old version (blue) can act as a failover if code must be rolled back to the previous version due to bugs or critical errors. Moreover, changes made on the blue will never affect the green. This includes code running adapters and applications, database documents such as workflows, and configurations.

Blue/Green Architecture in Itential Platform

Itential structures its Blue/Green deployment architecture with two Itential Platform stacks defined as “Separate” and "Identical".

Separate Itential Platform

Itential Platform that is “Separate” is defined as having a separate:

  • Logical database in MongoDB
  • Database in Redis

A “Separate” Itential Platform does not interfere with the "Identical" Itential Platform environment during the execution of automations.

Figure 1: Separate Itential Platform (Blue)
Blue - Green image.jpg


Identical Itential Platform

Itential Platform is “Identical” to another Itential Platform if it has the same set of native resource models (defined below) in the MongoDB logical database. The database data required to make an "Identical" Itential Platform is:

  • An iap_profiles document for both Green Itential Platform and Blue Itential Platform.
  • A service_configs document for both Green Itential Platform and Blue Itential Platform.
  • An identical set of native resource model documents.
  • An identical set of custom resource model documents owned by custom applications/adapters.

Native Resource Models

Each Itential Platform in a Blue/Green deployment has a set of native resource models that configure Itential Platform to work with automations and resource components to provide a consistent development and automated management experience. These include the following collections, but may also include custom collections from custom applications/adapters.

Collections

accounts
automations
catalog_store
component_groups
forms
groups
iap_profiles
iap_versioning
ids
integration_models
json_forms
mop_analytic_templates
mop_templates
rate_limit
roles
service_configs
tags
templates
transformations
triggers
ucm_compliance_reports
ucm_config_parsers
ucm_configs
ucm_golden_configs
ucm_json_specs
workflows

Blue/Green Deployment Process in Itential Platform

You will need to create a Blue/Green environment using the process outlined below. This requires Itential Platform release version 2023.1 and higher.

  1. Create a “Separate”, but “Identical” Itential Platform using the desired new version of Itential Platform. The new Itential Platform will be referred to as "Green" and the existing (old) Itential Platform will be referred to as "Blue".

    • Green Itential Platform must have startJobs deactivated.
    • Green Itential Platform must have Task Worker deactivated.
    • Green Itential Platform must have an iap_profiles document.
    • Green Itential Platform must have a service_configs document.
  2. Copy over all native resource models, including any running schema migrations.

  3. Start the Green Itential Platform.

  4. Deactivate startJobs on Blue Itential Platform.

  5. Activate startJobs and Task Worker on Green Itential Platform.

  6. Point the Load Balancer or DNS at Green Itential Platform.

  7. Once all jobs are completed on Blue Itential Platform, deactivate Task Worker.

  8. Migrate any desired jobs and tasks and other automation execution data to Green Itential Platform for record keeping or another secure location for archived data.

Figure 2: Blue/Green Itential Platform
Figure 2


Was this article helpful?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.