FTL Server Configuration
In a single configuration file you can specify all the values for a localized cluster of cooperating FTL servers, along with the services they provide.
Configure FTL servers in a configuration file in YAML format.
One FTL server command line parameter specifies the file name of the configuration file. A second command line parameter selects one named configuration from within that file.
For clarity, it is good practice specify sections in the order listed in the following table. You may omit optional sections when you do not need them.
(For FTL services that previously were executable component processes in Release 5.x and earlier, parameter semantics are analogous to the command line parameters of those executable components.)
Example Configuration File for FTL Servers
globals: # These values apply to all servers. core.servers: # The set of core servers and their locations. ftl1: host1:8585 ftl2: host2:8585 ftl3: host3:8585 # All servers inherit this value. auth.url: file:///myhome/ftlserver/secure/myauthfile.txt # All services can inherit this loglevel value. loglevel: all:warn;transports:info services: # All bridge services inherit and run these 2 bridges. bridge: names: - bridgeA - bridgeB eftl: # For eftl services, override the inherited loglevel value. loglevel: debug servers: ftl1: - realm: # Override inherited loglevel value for this realm service only. loglevel: debug - persistence: # Persistence service names must be unique; no inheritance. name: p1 - bridge: {} ftl2: - realm: {} - persistence: name: p2 - bridge: {} - eftl: {} ftl3: - realm: {} - persistence: name: p3 - eftl: {}
Sections in the FTL Server Configuration File
Section | Description |
---|---|
globals: | Required. |
services: | Optional.
The global services section can contain a section for each type of service (for example, realm, persistence, bridge, eftl). It can also contain an ftl section with parameters that apply to the FTL server as a whole, but are not inherited by other services or servers. Within each global service section you can specify key/value pairs that apply (through inheritance) to all instances of a that service in any FTL server. These values override values inherited from the globals section. You can, in turn, override these values in the individual service sections within any server section. Specifying a global service section does not imply that every FTL server provides that service. |
servers: | Optional.
The servers section contains a map of the FTL servers you are configuring. Each item in the map pairs a server name with a list of services that the server provides. The map must contain an item configuring each core server, and may also include optional items configuring auxiliary servers. Each FTL server item in this map begins with a unique name. The FTL server command line parameter --name selects one of the server names from this map. The resulting process instantiates an FTL server with that name. For each server, configure a list of services that that server provides. An FTL server provides a service if and only if the service is configured at this level. Within each server section you may override key/value pairs inherited from the global section or a global service section. You may omit the servers section if the file specifies only one core server, and specifies its extended server name with host and port. |