What is MEO? (Multi-Environment Orchestrator)
Audience: Citizen devs
System/Security Administrators
Skill Prerequisites:
System Administration and Maintenance
Description
The Multi-Environment Orchestrator (MEO) is a tool that allows the management, backup and audit of your different Plant an App instances or environments by leveraging the use of a GIT-based Version Control System such as GitHub.
MEO has two components: the Environment Orchestrator
itself, and an Identity Provider
.
- The
Environment Orchestrator
is the main component and acts like a link between your Plant an App instances or environments and your VCS repository and is responsible with the environment orchestration (seeFunctional Architecture
, below). - The
Identity Provider
that handles the authentication between your Plant an App instances or environments and the Environment Orchestrator.
Techincal Architecture
MEO is a server application that runs in a Linux Docker container. It can be installed and run both on Windows and Linux-based operating systems (see the "MEO Hardware and Software requirements" section for further information).
The Environment Orchestrator
component is connected and communicates with your Plant an App instance(s) on one side, and with your Version Control System on the other. The connection and configuration of the VSC repository is stored on a dedicated MEO Database.
Functional architecture
The Multi-Environment Orchestrator takes snapshots of your Plant an App instance(s) structure and pushes them to the Version Control System that you have defined. This brings easy backup and audit capabilities to Plant an App. MEO uses its Database to store the PAT (Personal Access Token) for the VCS access. The PAT is encrypted and decrypted from the database using a symmetric key built from a string that is passed as an environment variable to Docker.
The authentication component of the MEO, the Identity Provider acts as an authentication server between your Plant an App instance(s) and the Environment Orchestrator. The Identity Provider is an authentication manager built upon the OpenIddict framework.