Cloud Orchestration

Orchestration across Cloud-based and on-premises applications exposed in the Cloud.

Pattern Definition

Problem How do I incorporate Cloud-based applications and on-premises applications in an orchestration with minimal on-premises impacts?
Context This pattern is applicable when there is a desire to create an orchestration incorporating Cloud-based applications and on-premises applications using Cloud-based infrastructure.
Forces
  • Want to expose the orchestration in the Cloud.
  • Applications included in the orchestration are Cloud-based.
  • On-premises applications may also be needed for the orchestration.
  • In-house orchestration skills are limited.
  • Focus is on rapid orchestration construction.
Solution This pattern employs an Application Integration Platform only in the Cloud. This provides the quickest way to incorporate Cloud-based applications into orchestrations.
ConsequencesPros:
  • Provides the quickest orchestration approach.
  • Only one Application Integration Platform to manage.
Cons:
  • Probably not a good solution for orchestrations with extensive on-premises application integrations.
  • Limits the options for connecting to the on-premises applications.

Interaction View


Orchestration

An orchestration incorporating Cloud-based applications and on-premises application.

Interaction

  1. The interface for the orchestration is exposed by the Application Integration Platform.
  2. The Application Integration Platform calls a Cloud-based application as part of the orchestration.
  3. The Application Integration Platform calls another Cloud-based application as part of the orchestration.
  4.  The Application Integration Platform communicates with the on-premises application. The on-premises application must expose an appropriate API (e.g. REST/SOAP) accessible from the public cloud.

Notes

  1. With no agent on premises it will be necessary to open a port in the on-premises firewall to allow the Application Integration Platform to make a call into the on-premises network.
  2. The communication to the applications could use native APIs or adapters.

Orchestration with Agent

An orchestration incorporating Cloud-based applications and on-premises application

Interaction

  1. The interface for the orchestration is exposed by the Application Integration Platform.
  2. The Application Integration Platform calls a Cloud-based application as part of the orchestration.
  3. The Application Integration Platform calls another Cloud-based application as part of the orchestration.
  4. Application Integration Platform communicates with the on-premises Integration Agent to include an on-premises application in the orchestration.
  5. The on-premises Integration Agent uses an adapter to communicate with the on-premises application.

Notes

  1. The Integration Agent provides secure communication between on premises and Public Cloud. The Integration Agent establishes an encrypted connection to the Application Integration Platform by calling into the Application Integration Platform. There is no need to “punch a hole” in the on-premises firewall.
  2. The communication to the applications could use native APIs or adapters.
  3. This interaction shows three applications included in the orchestration but there could be more or less.

Composite Orchestration

An orchestration incorporating Cloud-based applications and on-premises orchestration.

Interaction

  1. The interface for the orchestration is exposed by the application integration platform.
  2. The application integration platform calls a Cloud-based application as part of the orchestration.
  3. The application integration platform calls another Cloud-based application as part of the orchestration.
  4. The application integration platform incorporates an on-premises orchestration. This explicitly illustrates the ability to compose complex orchestrations using other existing orchestrations.

Notes

  1. This interaction shows two applications and an existing orchestration included in the orchestration but there could be any number of applications and existing orchestrations.
  2. The communication to the applications could use native APIs or adapters.
  3. The existing orchestration could also be Cloud-based instead of on premises.