Choosing a Deployment Architecture
The FME Flow installer provides three options for installation:
- Express
- Distributed/Fault Tolerant
- Distributed EngineNote To install a distributed engine, you must already have performed a distributed/fault-tolerant installation.
Express
An Express architecture installs all the required components of FME Flow on a single host machine, and is the quickest and easiest way to get started with FME Flow.
Mouse-over for diagram:
Distributed
A Distributed installation provides options for spreading components across a network to achieve a 2- or 3-tiered architecture. This approach allows greater control of some components that you provide and maintain yourself, such as a database server for the FME Flow Database, and a web application server. You can provide redundancy with some elements, but if you require high availability, consider a fault-tolerant architecture (see below) instead. If you are considering fault tolerance in the future, you should start with a distributed installation now for an easier transition.
To learn more, see Distributing FME Flow Components.
Fault-Tolerant
A fault-tolerant installation provides options for spreading components across a network, ensuring high availability, and allows choices to maintain some components yourself, such as a database server for the FME Flow Database, and a web application server.
Comprised of redundant FME Flow Core and web application server components spread across additional host machines, this architecture ensures that if a hardware component fails, FME Flow remains online. This installation requires only a single FME Flow System Share and FME Flow Database server (which, optionally, can serve a custom database with replication.) A third-party load balancer is required, which directs incoming traffic to one of the redundant web application servers.
To learn more, see Planning for Fault Tolerance.
Distributed Engine
The Distributed Engine installation allows you to build onto an existing FME Flow installation by Adding FME Engines on a Separate Machine.
Reasons you might want to provide a distributed engine include:
- Utilizing an Esri ArcGIS license on a separate host machine.
- Hosting FME Engines on a different OS than your web application server and FME Flow Core.
- Utilizing system resources of other machines.
- Placing FME Engines in close proximity to your data.
For more information, see Planning for Scalability and Performance.
Disaster Recovery
Disaster recovery is primarily concerned with recovering FME Flow operations and data in the event of a major failure of a data center. The general concept of disaster recovery is that if one data center fails, the second data center can be brought online after a manual redirect, and start accepting requests. Disaster recovery can be incorporated into any of the other architectures discussed here.
For more information, see Planning for Disaster Recovery.