3.7 KiB
mapped_pages | |
---|---|
|
Configure GeoIP Database Management [configuring-geoip-database-management]
To configure GeoIP Database Management:
-
Verify that you are using a license that includes the geoip database management feature.
For more information, see https://www.elastic.co/subscriptions and License management.
-
Specify geoip database management settings in the
logstash.yml
file to tune the configuration as-needed.
GeoIP database Management settings in {{ls}} [geoip-database-management-settings]
You can set the following xpack.geoip
settings in logstash.yml
to configure the geoip database manager. For more information about configuring Logstash, see logstash.yml.
xpack.geoip.downloader.enabled
- (Boolean) If
true
, Logstash automatically downloads and manages updates for GeoIP2 databases from thexpack.geoip.downloader.endpoint
. Iffalse
, Logstash does not manage GeoIP2 databases and plugins that need a GeoIP2 database must be configured to provide their own. xpack.geoip.downloader.endpoint
- (String) Endpoint URL used to download updates for GeoIP2 databases. For example,
https://mydomain.com/overview.json
. Defaults tohttps://geoip.elastic.co/v1/database
. Note that Logstash will periodically make a GET request to${xpack.geoip.downloader.endpoint}?elastic_geoip_service_tos=agree
, expecting the list of metadata about databases typically found inoverview.json
. xpack.geoip.downloader.poll.interval
- (Time Value) How often Logstash checks for GeoIP2 database updates at the
xpack.geoip.downloader.endpoint
. For example,6h
to check every six hours. Defaults to24h
(24 hours).
Offline and air-gapped environments [configuring-geoip-database-management-offline]
If Logstash does not have access to the internet, or if you want to disable the database manager, set the xpack.geoip.downloader.enabled
value to false
in logstash.yml
. When the database manager is disabled, plugins that require GeoIP lookups must be configured with their own source of GeoIP databases.
Using an HTTP proxy [_using_an_http_proxy]
If you can’t connect directly to the Elastic GeoIP endpoint, consider setting up an HTTP proxy server. You can then specify the proxy with http_proxy
environment variable.
export http_proxy="http://PROXY_IP:PROXY_PORT"
Using a custom endpoint [_using_a_custom_endpoint]
If you work in an air-gapped environment and can’t update your databases from the Elastic endpoint, You can then download databases from MaxMind and bootstrap the service.
-
Download both
GeoLite2-ASN.mmdb
andGeoLite2-City.mmdb
database files from the MaxMind site. -
Copy both database files to a single directory.
-
From your {{es}} directory, run:
./bin/elasticsearch-geoip -s my/database/dir
-
Serve the static database files from your directory. For example, you can use Docker to serve the files from nginx server:
docker run -p 8080:80 -v my/database/dir:/usr/share/nginx/html:ro nginx
-
Specify the service’s endpoint URL in Logstash using the
xpack.geoip.download.endpoint=http://localhost:8080/overview.json
setting inlogstash.yml
.
Logstash gets automatic updates from this service.