SAP BTP MTA specification solves the life cycle and choreography complexity of cloud and local platforms. Its official definition is as follows:
Multi target application (MTA) consists of multiple parts（
modules）Composition, created and deployed to different targets using different technologies, but with a single and common life cycle.
MTA connects developers with native tools specific to deployment target (such as cloud foundry) through a formal application model independent of target and technology
cf push）Isolated and solved the deployment challenge. The developer is responsible for describing the modules of the application, the dependencies with other modules, MTA and (micro) services, as well as the required and exposed interfaces.
The life cycle management framework of MTA application is responsible for verifying, orchestrating and automating MTA deployment on local and cloud platforms.
MTA is logically a single application consisting of multiple related and interdependent parts (here referred to as
modules）Different technologies are designed and used in different runtime environments, and these technologies have the same goal.
A module does not have to be executed in a runtime container
code。 Instead, it may contain additional information needed to get the application running
artifactFor example, consider the documents to be deployed to the document web server, or the API metadata to be deployed to the API gateway, or the configuration data to be deployed to the central registry.
The MTA model is used for the following purposes:
- Define one by multiple (heterogeneous,
heterogeneous）Application composed of subcomponents (benefit: tools can establish a unique life cycle for these subcomponents)
- Declare the resources that the application depends on at run time and / or deployment time (benefit: the tool can allocate and bind these resources)
- Define configuration variables (and their relationships), and their values distinguish different deployment of applications (benefits: tools can bind sub components, automatically deploy according to default settings, or interactive request missing mandatory values)
The MTA model is between the developer (using development tools) and the MTA deployer
former contractThe deployer is a tool that uses the description of the MTA model and transforms it into a target platform specific
nativeCommand to configure runtime containers, create and bind resources (for example, on cloud foundry or sap XS advanced)
service instance）, and installing, running and updating application modules. The MTA deployer may not be just a tool, as it can contain tools for maintaining configuration and aggregating multiple target platform specific Deployers. The development environment also includes such functionality because deployment (for example, for testing) is an integral part of the development process.