You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Need to add an plugin/abstraction for what underlying consul API library we utilize.
Plugin based feature
For now create 3 interfaces for the consul APIs we currently use
CatalogAPIClient
HealthAPIClient
AgentAPIClient
The initial set of methods on each of these 3 interfaces should be compatible with the existing orbitz methods.
Create an initial orbitz consul client implementation of all 3.
<!-- Which consul API client library plugin to use -->
<property name="consul-default-client-provider">orbitz</property>
<!-- specific functional domain override -->
<property name="consul-catalog-client-provider">orbitz</property>
<property name="consul-health-client-provider">orbitz</property>
<property name="consul-agent-client-provider">orbitz</property>
Resiliancy feature
Add an option that is globally obeyed to define the timeout for all API requests (both connect and socket timeouts)
We need the ability to define more than one consul host/port to talk to, specifically define which consul endpoints to use for each different API we utilize, add a new configuration properties such as:
<!-- comma separated list of host:ports to use for all API clients-->
<property name="consul-hosts">localhost:port,host2:port</property>
<!-- Permit specific overrides of hosts to uses for specific APIs -->
<property name="consul-agent-hosts">localhost:port,host2:port</property>
<property name="consul-health-hosts">localhost:port,host2:port</property>
<property name="consul-catalog-hosts">localhost:port,host2:port</property>
<!-- still support this backwards compatible method, which would seed consul-hosts -->
<property name="consul-host">localhost</property>
<property name="consul-port">8500</property>
Behavior when multiple hosts are specified
Agent / Health
If more than one agent host is configured, register against each specified agent host (both register the node and a health check)
Catalog
If more than one catalog host is configured, attempt to talk to the first one, if a transient connectivity error occurs, revert to the second host and so on
The text was updated successfully, but these errors were encountered:
Need to add an plugin/abstraction for what underlying consul API library we utilize.
Plugin based feature
For now create 3 interfaces for the consul APIs we currently use
The initial set of methods on each of these 3 interfaces should be compatible with the existing orbitz methods.
Create an initial
orbitz consul client
implementation of all 3.Resiliancy feature
Behavior when multiple hosts are specified
Agent / Health
If more than one agent host is configured, register against each specified agent host (both register the node and a health check)
Catalog
If more than one catalog host is configured, attempt to talk to the first one, if a transient connectivity error occurs, revert to the second host and so on
The text was updated successfully, but these errors were encountered: