Author: poeml Date: Mon Sep 6 00:00:03 2010 New Revision: 8110 URL: http://svn.mirrorbrain.org/viewvc/mirrorbrain?rev=8110&view=rev Log: docs/installation/initial_config: fix the hierarchy of headings Modified: trunk/docs/installation/initial_config.rst trunk/docs/installation/mod_asn.rst trunk/docs/installation/prerequirements.rst Modified: trunk/docs/installation/initial_config.rst URL: http://svn.mirrorbrain.org/viewvc/mirrorbrain/trunk/docs/installation/initial_config.rst?rev=8110&r1=8109&r2=8110&view=diff ============================================================================== --- trunk/docs/installation/initial_config.rst (original) +++ trunk/docs/installation/initial_config.rst Mon Sep 6 00:00:03 2010 _at_@ -8,7 +8,7 @@ .. _initial_configuration_file_tree: Creating a file tree -~~~~~~~~~~~~~~~~~~~~ +-------------------- If you haven't got a file tree yet, you should create it now. _at_@ -46,7 +46,7 @@ Creating mirrorbrain.conf -~~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------- Create a configuration file named :file:`/etc/mirrorbrain.conf` with the content below:: _at_@ -100,8 +100,8 @@ -Test the database admin tool -~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Testing the database admin tool +------------------------------- At this point, you should be able to type the following command without getting an error:: _at_@ -130,7 +130,7 @@ Creating some mirrors -~~~~~~~~~~~~~~~~~~~~~ +--------------------- Collect a list of mirrors (their HTTP baseurl, and their rsync or FTP baseurl for scanning). For example:: _at_@ -175,11 +175,12 @@ the :program:`mb` tool. -Set up required cron jobs -------------------------- - -Set up mirror monitoring -~~~~~~~~~~~~~~~~~~~~~~~~ + +Setting up required cron jobs +----------------------------- + +Setting up mirror monitoring +~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Mirror monitoring needs to be set up to run automatically. Put this into :file:`/etc/crontab`: _at_@ -190,8 +191,8 @@ -* * * * * mirrorbrain mirrorprobe -Setup mirror scanning -~~~~~~~~~~~~~~~~~~~~~ +Setting up mirror scanning +~~~~~~~~~~~~~~~~~~~~~~~~~~ Configure mirror scanning:: _at_@ -207,6 +208,7 @@ # Monday: database clean-up day... 30 1 * * mon mirrorbrain mb db vacuum + Testing _at_@ -236,8 +238,8 @@ .. _initial_configuration_logging_setup: -Logging setup -------------- +Setting up logging +------------------ You may want to log more details than Apache normally logs into the access_log file. You can define a new log format that gives you an access_log, with _at_@ -263,11 +265,11 @@ .. TODO: describe a good logging setup with cronolog + .. _creating_hashes: Creating hashes --------------- - First, add some configuration:: _at_@ -317,8 +319,8 @@ -Configure GeoIP ----------------------------------------------- +Configuring GeoIP +----------------- Edit /etc/apache2/conf.d/mod_geoip.conf:: _at_@ -358,8 +360,8 @@ -Create a virtual host ---------------------- +Creating a virtual host +----------------------- Maybe create a DNS alias for your web host, if needed. Modified: trunk/docs/installation/mod_asn.rst URL: http://svn.mirrorbrain.org/viewvc/mirrorbrain/trunk/docs/installation/mod_asn.rst?rev=8110&r1=8109&r2=8110&view=diff ============================================================================== --- trunk/docs/installation/mod_asn.rst (original) +++ trunk/docs/installation/mod_asn.rst Mon Sep 6 00:00:03 2010 _at_@ -1,15 +1,51 @@ + +.. _installing_mod_asn: Installing mod_asn ------------------ -mod_asn is optional for MirrorBrain. MirrorBrain runs fine without it. If you -don't need mirror selection based on network prefix or autonomous system, you -don't need to install mod_asn. +`mod_asn <http://mirrorbrain.org/mod_asn/>`_ is an optional extension for +MirrorBrain. It is not required. -.. note:: - There was a bug in the :program:`mb` tool that it depended on the existance on - a database table named ``pfx2asn`` which is created when mod_asn is installed. The - bug was fixed in the 2.9.0 release. +mod_asn allows a refined mirror selection upon certain network characteristics. + +*Without* mod_asn, MirrorBrain selects an appropriate mirror by geolocation +through the GeoIP database. Thus, the client gets his download from a mirror +within the same country, or if that isn't possible from a mirror within the +same continent at least. That's often all that you need. + +*With* mod_asn, MirrorBrain additionally looks at the network prefix that the +client's IP address is contained in, and the autonomous system (AS) that it +belongs to, and (if possible) matches that to the networks that the mirrors +live in. This can be useful in the following scenarios: + +- You have a lot of mirrors - so many, that there is a chance that a client + might have a mirror on his own network. mod_asn will find it by matching the + AS and network prefix. For instance, if there's a large ISP who run a + mirror, and they probably have a significant number of downloaders among + their customers, it is generally desirable to send them to their ISPs mirror, + instead of somewhere else. + + On the contrary, if such "network locality" does not exist, there is no + reason to look up the network prefix or autonomous system and match them to + the mirrors. For instance, say you have exactly one US mirror, one in India, + and one in Germany; then GeoIP is good enough to assign the clients to their + closest mirror simply by looking at the client's country. + +- You have a certain mirror that has a lot of users on the same network, and + you want to make sure that those clients all get sent to that mirror, and not + just to *any* mirror in the same country (what GeoIP alone would do). + +- You have a certain mirror that doesn't want to get requests from any network + other than its own. Only local traffic is wanted, by policy. MirrorBrain + knows which clients are "local", and you set a flag in the mirror's config + (``prefixOnly`` or ``asOnly``) which tells MirrorBrain that the mirror should + not get any other traffic. The mirrors will be happy to know about this + possibility. + + +If you don't need mirror selection based on +network prefix or autonomous system, you don't need to install mod_asn. To install mod_asn, refer to the `its documentation`__. Modified: trunk/docs/installation/prerequirements.rst URL: http://svn.mirrorbrain.org/viewvc/mirrorbrain/trunk/docs/installation/prerequirements.rst?rev=8110&r1=8109&r2=8110&view=diff ============================================================================== --- trunk/docs/installation/prerequirements.rst (original) +++ trunk/docs/installation/prerequirements.rst Mon Sep 6 00:00:03 2010 _at_@ -7,7 +7,8 @@ ------- The file tree to be served needs to be accessible locally by the Apache that -runs mod_mirrorbrain. (See `FAQ`_.) +runs mod_mirrorbrain. (See the `FAQ`_ as well as +:ref:`initial_configuration_file_tree`.) The hardware needs are mediocre; MirrorBrain needs few resources. _at_@ -19,10 +20,10 @@ 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 should be **1.3.0** -or newer. This is because the `DBD database pool functionality`_ was developed -mainly around 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. +or newer, or at least a not-too-old **1.2.x** release. This is because the `DBD +database pool functionality`_ was developed mainly around 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. .. _`DBD database pool functionality`: http://apache.webthing.com/database/ _at_@ -31,30 +32,24 @@ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ openSUSE/SLE - sufficiently new, since openSUSE 11.0 and SLE11. SLE11 does not ship + Sufficiently new, since openSUSE 11.0 and SLE11. SLE11 does not ship the required PostgreSQL database adapter. The one from openSUSE 11.1 would work. Current and stable Apache for openSUSE/SLE can always be found here: http://download.opensuse.org/repositories/Apache/ -Gentoo - has a new enough Apache. - CentOS 5/RHEL - very old Apache. It *might* work or not, but if not, you'll need to get a - newer one. + Ancient Apache. It *might* work or not -- you might need to get a + newer one. Feedback would be appreciated! Debian - the Apache in *Etch* is too old. In newer releases, it should be alright. - If APR-Util is older than 1.3 (1.2), it is necessary to apply a patch to - mod_mirrorbrain. See http://mirrorbrain.org/issues/issue7. The provided - Debian packages are compiled with this patch. + The Apache in *Lenny* (or newer) is fine. The version in *Etch* was too old. Ubuntu - Apache in *9.04* is new enough and known to work. - APR-Util on 9.04 is still older than 1.3 (1.2.x), and thus it is necessary - to apply a patch to mod_mirrorbrain. See http://mirrorbrain.org/issues/issue7. - The provided Ubuntu packages are compiled with this patch. + Apache is new enough and known to work at least since *9.04*. +Gentoo + Has a new enough Apache. + Frontend (mod_mirrorbrain, the redirector) ------------------------------------------ _at_@ -83,14 +78,23 @@ * `PostgreSQL`_ -* mod_mirrorbrain, the core of MirrorBrain, isn't actually bound to a particular +* mod_mirrorbrain, the core of MirrorBrain, is not really bound to a particular database; you could use MySQL just as well, SQLite, or Oracle - everything that the Apache DBD API has a driver for. The admin framework and tool set - however is currently provided for PostgreSQL only. + however is currently provided for PostgreSQL only. Therefore, it doesn't make sense + to use a different database, unless you are prepared to extend MirrorBrain, or have + a special setup in mind (like, integrating MirrorBrain with some existing database). -* `mod_asn`_ is optional, for refined mirror selection and full exploitation - of network locality. It works only with PostgreSQL as database. It needs a data - type for PostgreSQL called "ip4r". Confer to `its documentation`_ and `its prerequirements`_). +* `mod_asn`_ is optional, and needed only for refined mirror selection and full + exploitation of network locality. It works only with PostgreSQL as database. + It needs a data type for PostgreSQL called "ip4r" that needs to be installed + additionally. + + The question whether you should (or should not) extend MirrorBrain with mod_asn + is discussed in the section :ref:`installing_mod_asn`. + + If you intend to install it, confer to `its documentation`_ and `its prerequirements`_). + .. _`PostgreSQL`: http://www.postgresql.org/ .. _`mod_asn`: http://mirrorbrain.org/mod_asn/ _at_@ -107,7 +111,7 @@ * :mod:`sqlobject` * :mod:`psycopg2` -The mirror scanner needs Perl and the following modules: +The following Perl modules are required: * :mod:`Config::IniFiles` * :mod:`libwww::perl` _at_@ -115,6 +119,8 @@ * :mod:`Digest::MD4` * :mod:`Date::Parse` +(If you install MirrorBrain in pre-packaged form, all these requirements should +automatically be met.) The following sections will guide you through installing the various components. _______________________________________________ mirrorbrain-commits mailing list Archive: http://mirrorbrain.org/archive/mirrorbrain-commits/ Note: To remove yourself from this list, send a mail with the content unsubscribe to the address mirrorbrain-commits-request_at_mirrorbrain.orgReceived on Sun Sep 05 2010 - 22:00:10 GMT
This archive was generated by hypermail 2.3.0 : Mon Feb 20 2012 - 23:47:04 GMT