Hi @nverrill
You are on the right track
1st you need to careful in the future of comparing the MaxMind GeoIP demo with the results from the GeoLite2 database. The demo is based on their commercial offering and the GeoLite2 the free offereing does not have the same accuracy / data I know this from some very long late night frustration.
If you want to test the GeoLite2 database follow the instructions here
That said I see the new data in the new GeoLite2 database
First I recommend to download all 3 GeoLite2 databases and install them the ASN, Country and City.
Yes you need to install on all the nodes. I restarted my node(s). If you are using ingest nodes, the DBs would need to be on them as well.
/Users/sbrown/workspace/elastic-install/7.13.0/elasticsearch-7.13.0/modules/ingest-geoip
ceres-2:ingest-geoip sbrown$ ls -lrt
total 111632
-rw-r--r-- 1 sbrown staff 1081 May 19 15:24 plugin-security.policy
-rw-r--r-- 1 sbrown staff 1747 May 19 15:24 plugin-descriptor.properties
-rw-r--r-- 1 sbrown staff 23384 May 19 15:24 maxmind-db-1.3.1.jar
-rw-r--r-- 1 sbrown staff 1404874 May 19 15:24 jackson-databind-2.10.4.jar
-rw-r--r-- 1 sbrown staff 68083 May 19 15:24 jackson-annotations-2.10.4.jar
-rw-r--r-- 1 sbrown staff 94678 May 19 15:24 ingest-geoip-7.13.0.jar
-rw-r--r-- 1 sbrown staff 49735 May 19 15:24 geoip2-2.13.1.jar
drwxr-xr-x@ 5 sbrown staff 160 May 25 04:57 GeoLite2-Country_20210525/
drwxr-xr-x@ 6 sbrown staff 192 May 25 05:03 GeoLite2-City_20210525/
drwxr-xr-x@ 5 sbrown staff 160 May 27 10:02 GeoLite2-ASN_20210528/
drwxr-xr-x 5 sbrown staff 160 May 29 08:51 GeoLite2_orig/
-rw-r--r--@ 1 sbrown staff 4081989 May 29 08:52 GeoLite2-ASN_20210528.tar.gz
-rw-r--r--@ 1 sbrown staff 31195858 May 29 08:52 GeoLite2-City_20210525.tar.gz
-rw-r--r--@ 1 sbrown staff 2085704 May 29 08:52 GeoLite2-Country_20210525.tar.gz
-rw-r--r--@ 1 sbrown staff 7335692 May 29 08:53 GeoLite2-ASN.mmdb
-rw-r--r--@ 1 sbrown staff 63864684 May 29 08:53 GeoLite2-City.mmdb
-rw-r--r--@ 1 sbrown staff 4076222 May 29 08:53 GeoLite2-Country.mmdb
I use this little simple test
BEFORE
PUT _ingest/pipeline/geoip
{
"description" : "Add geoip info",
"processors" : [
{
"geoip" : {
"field" : "ip"
}
}
]
}
POST _ingest/pipeline/geoip/_simulate
{
"docs": [
{
"_source": {
"ip": "45.153.227.50"
}
}
]
}
BEFORE RESULT
{
"docs" : [
{
"doc" : {
"_index" : "_index",
"_type" : "_doc",
"_id" : "_id",
"_source" : {
"geoip" : {
"continent_name" : "Europe",
"country_name" : "Russia",
"location" : {
"lon" : 37.6068,
"lat" : 55.7386
},
"country_iso_code" : "RU"
},
"ip" : "45.153.227.50"
},
"_ingest" : {
"timestamp" : "2021-05-29T16:07:55.648116576Z"
}
}
}
]
}
Now after I installed the new databases and restarted
{
"docs" : [
{
"doc" : {
"_index" : "_index",
"_type" : "_doc",
"_id" : "_id",
"_source" : {
"geoip" : {
"continent_name" : "Europe",
"region_iso_code" : "DE-BE",
"city_name" : "Berlin",
"country_iso_code" : "DE",
"country_name" : "Germany",
"region_name" : "Land Berlin",
"location" : {
"lon" : 13.4059,
"lat" : 52.5155
}
},
"ip" : "45.153.227.50"
},
"_ingest" : {
"timestamp" : "2021-05-29T16:07:44.764339Z"
}
}
}
]
}
Just to Check I put the old databases back in and I got the old Geo Location.
You could test this on a single node Elasticsearch cluster to check you have it right first and then do it on all your node.
Hope this helps.