MES Container Stack#
Critical Manufacturing MES can be deployed in several different environments and strategies, both on-premises and on a cloud platform. The installation on a containerized environment pulls together a number of different containers that interact with each other and serve specific purposes. This section describes the usage of each of those containers and allows you to understand and manage the building blocks of the application.
The following diagram shows the core components of the Critical Manufacturing MES when deployed in a containerized environment. For the complete list, including the Data Platform, Connect IoT, and Generative AI components, see MES Stack Components:
graph TD
subgraph Customer Environment
UI[UI]
Host[Host]
Help[Project Help]
Grafana[Grafana]
Postgres[PostgreSQL]
IoTEventProcessor[IoT Event Processor]
SecurityPortal[Security Portal]
Traefik[Traefik]
TraefikForwardAuth[Traefik Forward Auth]
Bus[MessageBus]
SQL[SQL Server]
Env[Environment Manager]
LBOGenerator[LBO Generator]
MESScheduler[MES Scheduler]
end
subgraph Required Dependencies
ClickHouse[ClickHouse]
Kafka[Kafka]
Storage[S3-compatible Storage]
end
subgraph Customer Portal
EdgePortal[DevOps Center]
end
subgraph Observability Stack
Observability[Observability]
end
subgraph Infrastructure Agent
InfrastructureAgent[Infrastructure Agent]
end
IngressController[Ingress Controller]
Traefik --> TraefikForwardAuth
TraefikForwardAuth --> SecurityPortal
Traefik --> UI
Traefik --> Host
Traefik --> Help
Traefik --> Grafana
Traefik --> SecurityPortal
Traefik --> Bus
Traefik --> LBOGenerator
Traefik --> Env
Host -.-> SQL
SQL -.-> Env
Host -.-> Env
UI -.-> Env
Help -.-> Env
Grafana -.-> Env
Grafana -.-> Postgres
Grafana -.-> ClickHouse
Host -.-> Storage
Host -.-> Kafka
IoTEventProcessor -.-> Kafka
SecurityPortal -.-> Env
Bus -.-> Env
LBOGenerator -.-> Env
MESScheduler -.-> Env
Env -.-> EdgePortal
InfrastructureAgent --> Env
InfrastructureAgent -.-> EdgePortal
User[MES User] --> IngressController
IngressController --> Traefik
Traefik -->|telemetry| Observability
classDef mermaid_title color:#000, fill:#fafafa, stroke:#fafafa, stroke-width:0x, font-size:100%, font-weight:200;
classDef mermaid_start color:#000, fill:#fafafa, stroke:#fafafa, color:#fafafa, stroke-width:0x, font-size:100%, visibility: hidden;
classDef mermaid_businessdata color:#000, fill:#65CDE8, stroke:#65CDE8, stroke-width:0px, font-size:100%;
classDef mermaid_nonbusinessdata color:#000, fill:#B7DEE8, stroke:#B7DEE8, stroke-width:0px, font-size:100%;
classDef mermaid_entity color:#000, fill:#FB9F53, stroke:#FB9F53, stroke-width:0px, font-size:100%;
classDef mermaid_entitylinked color:#000, fill:#FCD5B5, stroke:#FCD5B5, stroke-width:0px, font-size:100%;
classDef mermaid_context color:#000, fill:#B9CDE5, stroke:#B9CDE5, stroke-width:0px, font-size:100%;
classDef mermaid_optional color:#000, fill:#B7DEE8, stroke:#65CDE8, stroke-width:1px, font-size:100%, stroke-dasharray: 5 5;
classDef mermaid_state color:#000, fill:#d7e4bd, stroke:#000, stroke-width:1px, font-size:100%, font-weight:300;
class Observability,InfrastructureAgent,EdgePortal,IngressController mermaid_entity
class UI,Host,SecurityPortal,Bus,Grafana,LBOGenerator,MESScheduler mermaid_businessdata
class Env,Traefik,TraefikForwardAuth mermaid_entitylinked
class User mermaid_context
class SQL,Help mermaid_optional
click Traefik "messtackcomponents/#traefik"
click TraefikForwardAuth "messtackcomponents/#traefik-forward-auth"
click Bus "messtackcomponents/#mes-message-bus"
click Host "messtackcomponents/#mes-host"
click Env "messtackcomponents/#environment-manager"
click SecurityPortal "messtackcomponents/#security-portal"
click UI "messtackcomponents/#mes-gui"
click Help "messtackcomponents/#project-help"
click Grafana "messtackcomponents/#grafana"
click SQL "messtackcomponents/#sql-server"
click LBOGenerator "messtackcomponents/#lbo-generator"
click MESScheduler "messtackcomponents/#mes-scheduler"
click Observability "observabilitycomponents/"
click InfrastructureAgent "https://portal.criticalmanufacturing.com/Help/devops-center/infrastructure-agent/" ClickHouse, Kafka, and S3-compatible storage are required by every environment. Staging and production environments must use external services, while development and test environments can run them inside the cluster.
This section is divided into several topics:
- Infrastructure Agent Components ↗ - Information on the Infrastructure Agent, responsible for the remote deployments of Critical Manufacturing MES and their connection to the DevOps Center.
- MES Stack Components - Information on the components of a customer environment containerized stack of the Critical Manufacturing MES.
- Observability Components - Information on the components of the Observability stack.
- Environment Variables - Information about the environment variables used by the above containerized stack components.
For information on how to install the container stack described in these pages, see also DevOps Center Documentation ↗ in the Critical Manufacturing Customer Portal.