Ansible Role linuxfabrik.lfops.mod_maxminddb¶
This role downloads, compiles and installs the Maxmind module mod_maxminddb for Apache httpd (/usr/lib64/httpd/modules/mod_maxminddb.so).
For Maxmind, depending on your needs, you normally run three playbooks in this particular order:
- libmaxminddb
- mod_maxminddb (this role)
- maxmind_geoip
Mandatory Requirements¶
Apache has to be installed and at least one LoadModule directive already has to exist, otherwise compile might fail. If you get apxs:Error: Activation failed for custom /etc/httpd/conf/httpd.conf file.., apxs:Error: At least one 'LoadModule' directive already has to exist.., check if /usr/lib64/httpd/modules/mod_maxminddb.so has been built (this is the reason why errors are ignored - the module is compiled anyway).
Tags¶
mod_maxminddb
- Install gcc httpd-devel redhat-rpm-config.
- curl https://github.com/maxmind/mod_maxminddb/releases/download/{{ mod_maxminddb__version }}/mod_maxminddb-{{ mod_maxminddb__version }}.tar.gz --output /tmp/mod_maxminddb-{{ mod_maxminddb__version }}.tar.gz.
- Copy /tmp/mod_maxminddb-{{ mod_maxminddb__version }}.tar.gz to the server.
- mkdir -p /tmp/mod_maxminddb-{{ mod_maxminddb__version }}.
- tar xfz --strip-components 1 -C /tmp/mod_maxminddb-{{ mod_maxminddb__version }} /tmp/mod_maxminddb-{{ mod_maxminddb__version }}.tar.gz.
- rm -f /tmp/mod_maxminddb-{{ mod_maxminddb__version }}.tar.gz.
- ./configure.
- Create Apache
LoadModuledirective in {{ mod_maxminddb__apache_conf_modules_d }}. - make install.
- Triggers: none.
Optional Role Variables¶
mod_maxminddb__apache_conf_modules_d
- Path and filename to place the new
LoadModuledirective for Apache. - Type: String.
- Default:
'/etc/httpd/conf.modules.d/20-mod_maxminddb.conf'
mod_maxminddb__version
- The version to install.
- Type: String.
- Default:
'1.2.0'
Example:
# optional
mod_maxminddb__apache_conf_modules_d: '/etc/httpd/conf-available/mod_maxminddb.conf'
mod_maxminddb__version: '1.2.0'