Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Introduction


This document describes the hardware, software, and network configuration that needs to be in place before MettleCI can be deployed and configured in your environment. The platform delivered will include all MettleCI software, and will interface with your nominated non-production Information Server environment to enable the demonstration of all of MettleCI's capabilities.

The deployment topology of a MettleCI platform, whether being used for evaluation or production purposes, has been deliberately designed to be as simple as possible. The biggest difference between evaluation and production deployments of MettleCI is the selection of software components residing on the dedicated MettleCI Host that would be better deployed to separate servers. Alternatively, some components of the MettleCI stack could be delivered by integrating with existing solutions already in place in your organisation. While MettleCI is easily integrated with Customers' existing Jira, Git, and Bamboo instances, describing the full range of integration options available is beyond the scope of this document.

The delivered architecture will focus on evaluation purposes only, and has been designed for ease and speed of deployment. The evaluation will validate which parts of this architecture could be re-used for a MettleCI production deployment, and which may need to be re-deployed or reconfigured to meet your organisational requirements.

Whilst not representing our recommended production deployment of MettleCI, this MettleCI architecture assembles all of the software forming MettleCI's DevOps platform for Information Server into a single, pre-configured, easily deployed package. This optimises the time spent on the evaluation process.

Info

See also Rapid DataStage Upgrade - Technical Prerequisites for a description of the Rapid DataStage Upgrade technical pre-requisites for MettleCI.

See also

Child pages (Children Display)



MettleCI Platform Components

The following high-level MettleCI architecture shows the key software components to be installed, and their communications between hosts. 

Gliffy
imageAttachmentIdatt373522447
baseUrlhttps://datamigrators.atlassian.net/wiki
macroIdc2597739-805c-4170-8d3e-11ea7656b611
displayNameMettleCI topology - Generic
migration1
nameMettleCI topology (simplified) Copy
diagramAttachmentIdatt373555207
containerId373424141
timestamp16031731506971603197468002

In-scope Hosts

Developer's Workstation: Where the Windows DataStage Designer client is typically run

Application Lifecycle Management Tools: One or more hosts running Work Item Management, Git, and Build services

Information Server Development Environment: Your development instance of Information Server, which may be deployed in any topology, and on any number of hosts.

Other Information Server Test Environment(s): Downstream Information Server environments sitting between Development and Production., including testing and (optionally) Production.  These environments can be MettleCI deployment targets without requiring the deployment of any MettleCI components. 

MettleCI Host: A MettleCI-dedicated Windows server hosting an IBM DataStage client Client tier which is used by your Azure AgentBuild system's agent, in conjunction with the MettleCI Command Line Interface, to automate build and deployment activities.

Connections

  1. here
  2. The Developer Workstation provides data engineers with access to the ALM tools' user interfaces via a supported web browser.
  3. Your regular DataStage client tier access to the development environment's DataStage Engine and Services tiers.
  4. here
  5. here
  6. here
  7. here
  8. here
  9. hereThe MettleCI Workbench application running on your DataStage Engine tier needs to performs a commit to your Git platform.
  10. The MettleCI Workbench application running on your DataStage Engine tier needs to performs a dynamic lookup of Work items when displaying the Git Commit page.
  11. The Developer Workstation provides data engineers with access to the
Azure
  1. ALM tools' user
interface
  1. interfaces via a supported web browser.  This should cover...
    1. the Git host, 
    2. the Work item Management host, and
    3. the Build Host
  2. The Developer Workstation provides data engineers with access to the following components via a supported web browser:
    1. OPTIONAL The MettleCI Scheduler (Azkaban) user interface
    2. OPTIONAL The MettleCI Wallboard  
  3. Your regular DataStage client tier access to the development environment's ...
    1. DataStage Engine tier, and
    2. DataStage Services tier.
  4. Your Build system performs its duties via its agent installed on the MettleCI Host
  5. The MettleCI Host requires regular access to the development environment's DataStage Engine tiers, identical to that of Developer Workstations.
  6. The MettleCI
-dedicated DataStage Client tier
  1. Host requires regular access to the development environment's DataStage
Engine and
  1. Services tiers, identical to that of Developer Workstations.
  2. The MettleCI
-dedicated DataStage Client tier
  1. Host requires regular access to the downstream test environments' DataStage Engine and Services tiers, to affect automated deployment.
  • Your Azure Pipelines perform their duties via an agent installed on the MettleCI-dedicated DataStage Client.
  • Some points to note:

    • MettleCI works with all Information Server deployment topologies, including High Availability, Grid, and Cluster environments, For clarity, this diagram shows each tier residing on its own, dedicated host.
    • Application Lifecycle Management components can be co-hosted with the other tools on the MettleCI Host or located on another host (on-premise, cloud or SaaS).

    Component Connections

    The following table describes which interactions take place between the software components listed above, and which functions those interactions support.  Note that if a component or protocol isn't specified then it’s either irrelevant to MettleCI, or MettleCI can re-use whatever your infrastructure dictates.

    ConnectionFrom HostFrom ApplicationTo HostTo ApplicationProtocol(s)Related MettleCI Function(s)Comments3Developer WorkstationWeb browserMettleCI Host

    MettleCI Scheduler (Azkaban)

    HTTP(S)
    • Automated execution monitoring
    • Ad hoc execution
    • Execution Failure Recovery
    Status
    colourYellow
    titleOPTIONAL
    3Developer WorkstationWeb browserMettleCI Host

    MettleCI Wallboard

    HTTP(S)
    • Solution health monitoring
    • Build/Delivery metric monitoring
    Status
    colourYellow
    titleOPTIONAL
    2Developer WorkstationGit clientALM HostGit serviceSSH / HTTP(S)
    • Filesystem asset version control
    • Non Information Server (ISX) asset version control
    Could be ignored as various Git UI's (HTTPS) provide a lot of support in this area. 3Developer WorkstationRemote Desktop ClientMettleCI HostRemote Desktop ServiceRDP
    • Administration of Azkaban Software
    • Detailed debug log access
    1DataStage Development Engine TierMettleCI WorkbenchALM HostGit serviceSSH (default), HTTP(S)
    • Check-In
    5MettleCI HostMettleCI WallboardALM Host
    ALM software componentsHTTP(S)
    • Sprint Health Metrics
    • Build/Deployment Health Metrics
    The MettleCI Wallboard needs to extract data from the work item management and CI / CD components via their REST APIs to present health metrics to users.7MettleCI HostMettleCI WallboardInformation Server Services Tier
    Operations ConsoleHTTP(S
    • )
    • DataStage Engine Tier CPU load
    • Job execution statistics
    The MettleCI solution will use the ports and protocols mandated by the customer's standards (see IBM IIS documentation) for the database technology that hosts DSODB.6MettleCI Host

    DataStage Client

    (via a CI/CD Agent)

    Information Server Engine TierInformation Server processesMultiple
    • Check-In
    • Compilation
    • Deployment
    • Compliance
    • Execution
    • Testing
    The MettleCI solution will use the same ports and protocols that the customer uses for its standard installation of the DataStage Client on end-user hardware.6MettleCI HostSSHInformation Server Engine TierSSH server processSSL
    • Deployment (via SCP)
    • Script Execution (via SSH)
    The MettleCI solution will use the port that the customer's standards mandate for this protocol.7MettleCI HostDataStage ClientInformation Server Services Tier
    Information Server processesMultiple
    • Check-In
    • Compilation
    • Deployment
    • Compliance
    • Execution
    • Testing

    The MettleCI solution will use the same ports and protocols that the customer uses for its standard installation of the DataStage Client on end-user hardware.

    7MettleCI Host

    MettleCI CLI Plugins

    (via a CI/CD Agent)

    Information Server Services Tier

    Information Governance Catalog REST API

    HTTP(S)
    • Execution
    • Testing

    Status
    colourYellow
    titleOPTIONAL

    This is only required where Azkaban is being used as the Job execution scheduling solution
    • .