Requirements

Frontend (mod_mirrorbrain, the redirector)

  • A recent enough version of the Apache HTTP server is required. 2.2.6 or later should be used. In addition, the apr-util library needs to be 1.3.0 or newer. This is because the DBD database pool functionality was developed mainly between 2006 and 2007, and reached production quality at the time. This will mean that you have to upgrade Apache when installing on an oldish enterprise platform.
  • libGeoIP and mod_geoip
  • mod_form
  • if you want to compile with the optional memcache support (there should not be reason for it, though), you would need libapr_memcache, mod_memcache, memcache daemon

Database

  • PostgreSQL
  • To use mod_asn (for refined mirror selection and full exploitation of network locality), you need a data type for PostgreSQL called "ip4r". See there.
  • mod_mirrorbrain, the core of MirrorBrain, doesn't care about the database; you can use MySQL just as well - or Oracle, everything for that the Apache DBD Api has a driver. The admin framework and tool set however is currently provided for PostgreSQL only. In addition, mod_asn is a compelling reason to use PostgreSQL.

Tool set and admin framework

  • Perl and some modules: Config::IniFiles, libwww::perl, DBD::Pg, Digest::MD4
  • Python and modules modules: psycopg2, sqlobject, cmdln. An "old" Python 2.4.x installation is sufficient.

Hardware requirements

  • The file tree to be served needs to be accessible locally by the Apache that runs mod_mirrorbrain.
  • Hardware needs are mediocre by all means; MirrorBrain needs few resources.