The jvm options template provided by this ansible role doesn't reflect current log4j configuration in elasticsearch 6.x and 7.x. This commit update it to default version provided in 6.x and 7.x elasticsearch standard packages.
- add support for elasticsearch 7.x
- remove support for elasticsearch 5.x
- update kitchen-ansible configuration (install ansible and jmespath dependencies using os repositories)
- replace geoip plugin in tests as this one is now embeded in elasticsearch since 6.7.0 (cf. https://www.elastic.co/guide/en/elasticsearch/plugins/6.7/ingest-geoip.html)
- update discovery configuration for 7.x (in ES 7.x, discovery.zen.ping.unicast.hosts is replaced by discovery.seed_hosts and transport.tcp.port is replaced by transport.port, also discovery.seed_hosts is disabled on master nodes to avoid "master_not_discovered_exception" error when creating templates in the same play)
- update index template structure for 7.x
- update security realms settings for 7.x (cf. https://www.elastic.co/guide/en/elasticsearch/reference/current/breaking-changes-7.0.html#include-realm-type-in-setting)
* Use log4j2.properties instead of logging.yml
* Add jvm.options
* Use bootstrap.memory_lock instead of bootstrap.mlockall
* Get rid of work directory
* Executable does not accept `-D` anymore, replace with `-E` and `-p`
* Get rid of 5.x default (file)s