Graylog2-server: API browser behavior not as expected through load balancer

Created on 1 May 2019  路  2Comments  路  Source: Graylog2/graylog2-server

The Graylog server cluster is behind a load balancer with the http_external_uri configured per the manual. The http_external_uri corresponds to the LB VIP. The http_publish_uri must correspond to the local address of the Graylog server for cluster connectivity, otherwise unexpected behavior may result when communicating through the LB.

If the http_external_uri is being used through the browser and the user clicks on the API browser button, then the http_publish_uri of the node is returned, resulting in broken browser connection. The node should instead return the http_external_uri to the browser.

The current workaround is to avoid the API browser button for user education and instead send them to http://$LB_VIP$:9000/api/api-browser directly.

Steps to reproduce

  1. Set up Graylog servers such that http_publish_uri is different than http_external_uri
  2. Add NAT LB to graylog
  3. Go to System-->Nodes-->API Browser
  4. Observe the location of the link returned, and how it fails mightily.

Context
Some users that do not control the environment will still need access to the API for features or metrics that are not easily available via the browser or searchable log. It is easier to have a predictable path to the API browser rather than requiring a bookmark for each Graylog server.

  • Graylog Version: 3.0.1
  • Elasticsearch Version: 6.6.2
  • MongoDB Version: 4.0.2
  • Operating System: Centos 7
  • Browser version:
bug triaged ux

Most helpful comment

@waynekearns We introduced a "global api browser" option on the nodes page which will be in the upcoming 3.1.3.

All 2 comments

while in situations having a link to the each nodes API - having a "big button" that uses the http_external_uri!

@waynekearns We introduced a "global api browser" option on the nodes page which will be in the upcoming 3.1.3.

Was this page helpful?
0 / 5 - 0 ratings