Binding server components to particular addresses
To bind Apama server components to a particular address or set of addresses, specify a bindAddress definition for each address. Specify this in the server section of the YAML configuration file. For example:
server:
bindAddress:
- 127.0.0.1:15903
- 10.0.0.1
You can specify as many bindAddress definitions as you want. Clients can connect to any of the listed addresses.
An IP address is required. If you do not specify a port, the Apama server components use the port that is specified when the correlator is started. This makes it possible to share YAML configuration files if you want to restrict connections according to only addresses.
If you do not specify a YAML configuration file when you start the correlator, or there are no bindAddress definitions in the YAML configuration file, the Apama components bind to the wildcard address (0.0.0.0).
Using the correlator web interface with non-default addresses
The correlator web interface sometimes uses the client's host header for redirects. For security, this is checked against a list of accepted host:port aliases for this component. By default, all of the addresses of the machine on the default or overridden correlator port are part of this list.
If the correlator has a custom bind address configuration, or is being hidden behind another component which is redirecting the web interface, the default list of permitted addresses may need to be overridden. This can be done with the permittedRootURIs configuration entry:
server:
permittedRootURIs:
- ${EXTERNAL_HOSTNAME}:${EXTERNAL_PORT}
This can either be a single string or a list of multiple permitted URIs. This list replaces the automatically calculated defaults, it does not append.