Skip to content

Deployment Targets#

Critical Manufacturing MES offers flexible deployment options to suit various needs and IT strategies. The below sections present the deployment options and major considerations when establishing your strategy.

Deployment Options#

Cloud#

MES may be deployed on cloud environments using:

  • Public Cloud - Leveraging platforms like Microsoft Azure or AWS.
  • Private Cloud - Hosted within the on your own data center or a dedicated private cloud environment.

When deploying Critical Manufacturing on a cloud infrastructure, Critical Manufacturing recommends a containerized approach, targeting a managed Kubernetes service like Azure AKS or Amazon EKS. In the Critical Manufacturing Information Center, there are detailed guides on how to configure a Kubernetes cluster ⧉.

For cloud-based installations, the following concerns should be taken into account:

Topic Description
Latency In order to ensure adequate user experience and performance, it's recommended that the latency between the application clients (web browser or mobile devices) and the application servers does not exceed 200ms.
Bandwidth In order to ensure adequate performance of the user interface, a minimum throughput of 20 Mbps between the application clients (web browser or mobile devices) and the application servers is recommended.
Connection availability Cloud-based installation rely on a stable connection to the data center hosting the application backend. The system does not offer any offline capability in case there is no connectivity to the cloud.
Database and application servers co-located In order to ensure application performance, database servers running Windows Server VMs should be co-located in the same region to ensure low latency.
On-premises components Components related with automation are recommended to be executed on premises, due to lower latency between equipment controllers and the physical equipment to which they are connected. Connectivity is required between on-premises components and the application servers.

Table: Cloud-based installation concerns

On-Premise#

Installing and running the MES directly on your local servers and infrastructure is also an option. On such scenario, evaluate if your deployment is a:

  • Single-plant deployment - For a single manufacturing facility.
  • Multi-plant deployment - Connecting and managing MES across multiple manufacturing sites.

This may impact a lot of decisions when setting up your infrastructure.

Hybrid#

A combination of cloud and on-premise deployments, where the MES might utilize the cloud while Connect IoT Automation Managers remain on-premise, close to the shop floor.

Considerations#

General#

When choosing your deployment target evaluate:

  • IT Infrastructure Readiness - Ensure the chosen environment (cloud, on-premise or hybrid) has the necessary hardware, software, network connectivity, and cybersecurity measures in place.
  • Scalability Requirements - Assess the current and future production volumes and the need for the MES to handle increasing data and user loads.
  • Security and Compliance - Evaluate data security requirements and any industry-specific regulations that might influence the choice between cloud and on-premise options.
  • Integration with Existing Systems - Considering how the MES will need to connect and exchange data with other enterprise systems like ERP, PLM, and automation systems.
  • Company IT Strategy - Align the MES deployment with the overall IT strategy and preferences of the manufacturing organization.
  • Disaster Recovery and Business Continuity - Plan for data backup, system redundancy, and failover capabilities in the chosen environment.
  • Latency and Performance - For real-time data collection and control, especially in highly automated environments, the proximity of servers (on-premise vs. cloud) can be a crucial factor.

MES Specifics#

Below are listed the Critical Manufacturing MES specific functions that may influence your deployment target decisions.

Deployment Process#

Critical Manufacturing MES environment is managed through Critical Manufacturing DevOps Center (a centralized deployment platform for containerized applications). This service allows you to create, configure and automate the installation, upgrade and uninstall MES environments.

The DevOps Center provides different container orchestration platforms. For each one there are one or more deployment targets to directly deal with different vendors or deployment strategies (On-Premises, Hybrid and Cloud). Also, it provides two deployment processes:

  • Remote installation - First you configure and deploy Critical Manufacturing Infrastructure Agent into your infrastructure. The agent will then be responsible by the communication between DevOps Center and your infrastructure. This will allow you to install, upgrade and uninstall the environments just by interacting with this service GUI or CLI.

  • Local installation - After creating and configure the environment, you will be allowed to download a package with a recipe (scripts and configuration files) required for you to manually run the setup on your environment.

For more information, see DevOps Center deployment targets documentation ⧉.

Database Layer Requirements#

Critical Manufacturing MES requires a SQL Server installation running on Windows Server. For high-availability purposes, an Always On High Availability cluster configuration is recommended.

SQL Server for Linux or containerized versions of SQL Server are currently not supported for full MES workloads, including Operational Data Store (ODS) and Data Warehouse (DWH) transactions, since they offer several limitations on components required by the system. Therefore, the database component is required to be hosted on servers running Windows Server.

Managed SQL Server services like Azure SQL Database or Amazon RDS are also not supported due to features that are currently unavailable in those services.

There is limited support for Azure SQL Managed Instances. In this case, SQL Server Analysis Services (SSAS) and Reporting Services (SSRS) must be hosted separately. Please consult Critical Manufacturing for additional details on how to configure an installation using Azure SQL Managed Instances.

For additional details on the required configuration of the database component, see the Database Component section.

Application Layer Requirements#

Critical Manufacturing MES application layer is deployed as a containerized application on one of the following platforms:

  • Kubernetes (check Application Layer - Container Stack for the supported containers)
  • Red Hat OpenShift
  • Cloud managed container orchestration services based on Kubernetes (Azure AKS, and Amazon EKS)

The deployment process for containerized installations is managed through Critical Manufacturing DevOps Center.

For additional details on the required configuration for a containerized deployment, see the Application Layer - Container Stack section.

Optional Components Requirements#

In addition to the containerized components, there are currently Application Layer optional components which, due to dependencies to Windows-specific libraries, are required to run on Windows servers. The table below describes these components and the associated modules.

Component Module Description
Printable Documents Renderer Advanced Layout and Printing On containerized environments, this component supports printing documents to Windows printers. It is also possible to configure the container infrastructure to enable printing documents using a CUPS Server.
On Windows environments, this is not required as the application host will be able to print directly to printers configured on the application servers.
ECAD Renderer Core Required to render CAD file visualizations.
IoT Automation Managers Core Required to support Windows-based automation drivers.

Table: Optional components and associated modules