Baragon Basics
Baragon is made up of two services:
BaragonService -- coordination service
BaragonAgentService -- applies changes on the actual load balancer
When a web service changes (i.e. upstreams added / removed), POST a BaragonRequest JSON object to BaragonService's /[contextPath]/request endpoint like this one:
{
"loadBalancerRequestId": "4",
"loadBalancerService": {
"serviceId": "1",
"owners": ["foo"],
"serviceBasePath": "/basepath",
"loadBalancerGroups": ["loadBalancerGroupName"]
},
"addUpstreams": ["1.1.1.1:80"],
"removeUpstreams": []
}
BaragonServicewill fan out the update to allBaragonAgents in the specifiedloadBalancerGroupsBaragonAgents will apply the changes on the load balancer using templates provided in its configuration and report back a Success or Failure toBaragonService- Polling the
BaragonServicerequest status url (/[contextPath]/request/{loadBalancerRequestId}) will indicate the current status of the request
Check out the API Docs for additional BaragonRequest fields and returned values.