Cannot use database_file in ingest-geoip, please send help every thread here is a dead end


I've been trying to setup ingest-geoip with our paid MaxMind databases. I cannot get them to work, regardless of where I put these files, I get

        "reason" : "[database_file] database file [GeoIP2-City.mmdb] doesn't exist",

This is a multi-instance linux server, running 7.10.2, I have ES_PATH_CONF="/etc/elasticsearch/1" (Instance 1 is the ingest instance)

I have put the files in the following directories:

  • /usr/share/elasticsearch/modules/ingest-geoip
  • /usr/share/elasticsearch/config/ingest-geoip
  • /etc/elasticsearch/1/config/ingest-geoip
  • /etc/elasticsearch/1/ingest-geoip
  • /etc/elasticsearch/1

For the love of all that is reasonable, can someone please tell where the bleep it's looking for these files? Would it kill someone to include the search path in the error message? Instead, here I am, wasting your time.

More internet searching, yielded the solution. So, I'll close this thread and explain how I fixed it.

If ES_PATH_CONF is set, you need to install in all ingest and master eligible nodes, so:

# ES_PATH_CONF for master is /etc/elasticsearch/0, and for ingest is /etc/elasticsearch/1
for instance in 0, 1: do
   mkdir -p "/etc/elasticsearch/${instance}/ingest-geoip";
   for db in /var/lib/maxmind/*.mmdb; do
       ln -s $db "/etc/elasticsearch/${instance}/ingest-geoip/"

The restart the master and ingest nodes.

1 Like

@reyjrar Welcome to the community and thank you very much for posting your solution!

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.