Microservices Architecture

As described in the SoS Logical View for the AM ecosystem, there are five infrastructure systems that encompass the capabilities needed by the scientific workflow.

  • Additive Manufacturing System: The 3D metal printer with its controller computer at the MDF.

  • Experiment Steering Analysis System: The OLCF ACE testbed computer used for the thermomechanical simulation.

  • Spallation Neutron Source System: The SNS with its neutron beam experiment and corresponding neutron diffraction sensors.

  • Design of Experiments Analysis System: The SNS analysis cluster computer used for the analysis of the neutron diffraction data.

  • Experiment Planning System: The domain expert computer used for experiment planning.

Together, these systems provide microservices for system management, data management, experiment control, and computing.

As described in Microservice Capabilities for System Management, each AM system listed above is expected to provide a System Management Service. This service manages a catalog of information about the system and its components including associated resources, services, and subsystems via the System Information Catalog capability. The management service also enables control and status monitoring of services and subsystems via the System Manager capability.

Each of the AM systems listed above requires local data storage and thus should provide a Data Management Service as described in Data Management Microservices for Campaigns. This service gives local and remote services access to the local data storage via the Data Storage capability and enables remote data transfers to and from the local storage via the Data Transfer Endpoint capability. In addition, to facilitate streaming of experiment observational data from the Additive Manufacturing System to the Experiment Steering Analysis System, the data management services on these systems should provide the Data Stream capability that extends the functionality of the Data Storage capability.

For experiment control, the Additive Manufacturing System and Spallation Neutron Source System should each provide an Instrument Service. In the Additive Manufacturing System, this service enables control of the 3D metal printer and observation of thermocouple and IR camera data by interfacing with the ROS software [B97] and exposing the Instrument Controller capability. The ROS Instrument Controller supports three actions: (1) start a print job, (2) stop a print job, and (3) update printer control parameters. In addition, it creates data products for the files corresponding to sampled thermocouple and IR camera observations and adds them to data streams for consumption by the ADAMANTINE thermomechanical simulation running on the Experiment Steering Analysis System. The Instrument Service for the Spallation Neutron Source System interfaces with the SNS VULCAN Engineering Materials Diffractometer [B105] control software and also exposes the Instrument Controller capability.

The Experiment Steering Analysis System and Design of Experiments Analysis System provide computing resources for online and post-mortem analysis of the experimental data. Each system is expected to support the execution of a pre-configured application on the associated local computational resource via the Application Execution capability. This capability in turn depends on a local Compute Service providing either the Compute Allocation capability or the Compute Queue capability.

Table 20 Microservice Capabilities for Infrastructure System Services

Logical \ Infrastructure System

Additive Manufacturing System

Experiment Steering Analysis System

Spallation Neutron Source System

Design of Experiments Analysis System

Experiment Planning System

Infrastructure Management System

  • System Management Service

    • System Manager

    • System Information Catalog

  • Instrument Service

    • Instrument Controller

  • System Management Service

    • System Manager

    • System Information Catalog

  • Steering Analysis Service

    • Application Execution

  • Compute Service

    • Compute Allocation or Compute Queue

  • System Management Service

    • System Manager

    • System Information Catalog

  • Instrument Service

    • Instrument Controller

  • System Management Service

    • System Manager

    • System Information Catalog

  • Design Analysis Service

    • Application Execution

  • Compute Service

    • Compute Allocation or Compute Queue

  • System Management Service

    • System Manager

    • System Information Catalog

Data Management System

  • Data Management Service

    • Data Storage

    • Data Stream

    • Data Transfer Endpoint

  • Data Management Service

    • Data Storage

    • Data Stream

    • Data Transfer Endpoint

  • Data Management Service

    • Data Storage

    • Data Transfer Endpoint

  • Data Management Service

    • Data Storage

    • Data Transfer Endpoint

  • Data Management Service

    • Data Storage

    • Data Transfer Endpoint