4 All-in-one bash scripts (see docs/INSTALL.txt for details)
5 to install and/or upgrade high performance Aegir Hosting Systems
6 for Drupal, with Nginx, PHP-FPM, MariaDB/Percona and Redis,
7 now available with simple command line tools: http://bit.ly/JHpFSh
10 ###--------------------------------------------------------------###
12 ### For BOA installation instructions see docs/INSTALL.txt
13 ### See also related information in docs/NOTES.txt
14 ### For BOA upgrade instructions see docs/UPGRADE.txt
15 ### For how-to on using MultiCore Solr Jetty see docs/SOLR.txt
16 ### For custom Nginx rewrites how-to see docs/HINTS.txt
17 ### For SSL and extra IPs how-to see docs/SSL.txt
18 ### For sites migration between instances see docs/REMOTE.txt
20 ### Please read all comments for configuration options in both
21 ### BARRACUDA.sh.txt and OCTOPUS.sh.txt, since there is information
22 ### not included in the README or INSTALL and can be modified or
23 ### updated with every new Edition.
25 ###--------------------------------------------------------------###
28 You can install one Aegir Master Instance on your server using
29 Barracuda and any number of Aegir Satellite Instances using
32 Note: the 'Master' and 'Satellite' names in the Barracuda/Octopus
33 context are not related to the multi-server Aegir features.
34 It is related to the multi-Aegir-instances environment, with
35 virtual chroot/jail for every Aegir instance.
37 Barracuda is the main script for the Aegir Master Instance system
38 install and upgrades, including OS env and main Aegir instance,
39 but no platforms will be added there to keep it compatible
40 with all existing and future installs, when you don't need
41 any ready to use platforms and instead you are using the system
42 for managing your own imported platforms/sites.
44 Octopus is an Aegir + Platforms installer (you can interactively
45 choose the platforms you wish to install on the instance)
46 and updater only. It allows to install new versions of platforms
47 with clean directory structure, with code shared between all created
48 instances, so one vanilla Octopus instance is using only ~18 MB,
49 while most of the code, which is over 1700 MB total, is shared.
51 Sharing the code between instances is of critical importance,
52 because it allows you to dramatically lower RAM and CPU usage,
53 because most of the actively used code is opcode cached with APC.
55 With multi-install system you have to remember that all of them
56 will use the same Nginx server, so you could break the system
57 trying to install site with the same domain on two or more instances.
58 The instances will not be aware of other running instances,
59 so it is your responsibility to use such system wisely.
61 There is also Tuner script available (see aegir/tools/BOND.sh.txt)
62 for easy system tuning for development and switching it back easily
63 to the standard production settings.
66 ### SUPPORTED PARENT SYSTEMS
68 * Xen, VServer, Linux KVM or VMware based VPS or a dedicated box.
69 * VirtualBox VM for localhost install - check the how-to for:
70 Ubuntu Precise desktop image install: http://bit.ly/boa-precise
71 Debian Squeeze desktop image install: http://bit.ly/boa-squeeze
74 ### SUPPORTED LTS OS 32/64bit - minimal on server or desktop on localhost
76 * Debian 6.0 Squeeze (recommended) - 12 min install, 3 min upgrade
77 * Debian 7.0 Wheezy - 30 min install, 15 min upgrade
78 * Ubuntu Precise 12.04 - 12 min install, 3 min upgrade
79 * Ubuntu Lucid 10.04 - 30 min install, 15 min upgrade
81 NOTE: Average time to install and upgrade tested with PHP 5.3 option
82 _PHP_MODERN_ONLY=YES (default), using Barracuda installer only.
83 Upgrade time is applicable when PHP upgrade is required.
86 ### PREVIOUSLY SUPPORTED OS (deprecated)
88 * Debian 5.0 Lenny (automatic upgrade to Squeeze supported)
89 * Ubuntu Oneiric 11.10
91 * Ubuntu Maverick 10.10
96 ### OTHER REQUIREMENTS
98 * The Git standard port 9418 must be open.
99 * SMTP standard port 25 (or SMTP relay) must be open for outgoing connections.
100 * Minimum 512 MB of RAM.
101 * Locales with UTF-8 support, otherwise en_US.UTF-8 (default) is forced.
102 * Basic sysadmin skills and experience.
107 === Included by default - see docs/NOTES.txt for details
109 * All libraries & tools required to install and run Nginx based Aegir system.
110 * Latest release of MariaDB 5.5 database server with Chive manager.
111 * Latest version of Nginx web server.
112 * PHP-FPM 5.3.25 with APC, phpredis, uploadprogress and ionCube.
113 * Fast Redis Cache with DB auto-failover for all 6.x and 7.x platforms.
114 * Fast proxy DNS server (pdnsd) with permanent caching.
115 * Limited shell, SFTP and FTPS separate accounts per Octopus instance.
116 * Limited Shell and FTPS accounts per Aegir Client with per site access.
117 * Drush and Drush Make access - drush4, drush5 and drush6 on command line.
118 * HTTPS access with self-signed certificate for all hosted sites.
119 * Magic Speed Booster cache, working like a Boost + AuthCache, but per user.
120 * Entry level XSS built-in protection on the Nginx level.
121 * Firewall csf/lfd integrated with Nginx abuse guard.
122 * PHP errors debugging, including WSOD, enabled on the fly on dev. aliases.
123 * Boost, AdvAgg, Domain Access and Drupal for Facebook built-in support.
124 * Built-in collection of useful modules available in all platforms.
125 * Autonomous Maintenance & Auto-Healing scripts in /var/xdrago.
126 * Every 10 seconds uptime/self-healing local monitoring.
127 * Automated, rotated daily backups for all databases in /data/disk/arch/sql.
129 === Optional add-ons - see docs/NOTES.txt for details
131 * MultiCore Apache Solr 1.4.1 with Jetty 7 - see docs/SOLR.txt for details.
132 * MultiCore Apache Solr 3.6.2 with Jetty 8 - see docs/SOLR.txt for details.
133 * MultiCore Apache Solr 4.2.0 with Jetty 8 or Jetty 9 on Precise and Wheezy.
134 * Fast Redis Lock support with DB auto-failover for all 6.x and 7.x platforms.
135 * Latest release of Percona 5.5 database server.
136 * New Relic Server and Apps Monitor with per Site/Instance/Server reporting.
137 * LDAP Nginx support via third-party module.
138 * MongoDB driver for PHP 5.3
139 * GEOS extension for PHP 5.3 (experimental).
141 * PHP-FPM 5.2.17 with APC, phpredis, uploadprogress and ionCube (deprecated).
143 * Webmin Control Panel.
144 * SQL Buddy database manager.
145 * Collectd server monitor.
149 ### OCTOPUS PLATFORMS
151 Octopus can install the platforms listed below:
155 CiviCRM 4.2.8 ---------------- http://civicrm.org
156 Commerce 1.18 ---------------- http://drupal.org/project/commerce_kickstart
157 Commerce 2.7 ----------------- http://drupal.org/project/commerce_kickstart
158 Commons 3.2 ------------------ http://drupal.org/project/commons
159 Drupal 7.22.1 ---------------- http://drupal.org/drupal-7.22
160 NodeStream 2.0-rc5 ----------- http://drupal.org/project/nodestream
161 Open Deals 1.21 -------------- http://drupal.org/project/opendeals
162 Open Outreach 1.0-rc11 ------- http://drupal.org/project/openoutreach
163 OpenChurch 1.11-beta10 ------- http://drupal.org/project/openchurch
164 OpenPublish 3.0-beta7 -------- http://drupal.org/project/openpublish
165 Panopoly 1.0-rc4 ------------- http://drupal.org/project/panopoly
166 Ubercart 3.4.1 --------------- http://drupal.org/project/ubercart
170 Acquia 6.28.1 (int) ---------- http://bit.ly/acquiadrupal
171 CiviCRM 4.1.6 ---------------- http://civicrm.org
172 Commons 2.12 ----------------- http://drupal.org/project/commons
173 Conference 1.0-rc2 ----------- http://drupal.org/project/cod
174 Feature Server 1.2 ----------- http://bit.ly/fserver
175 Managing News 1.2.3 ---------- http://drupal.org/project/managingnews
176 Open Atrium 1.7.1 ------------ http://drupal.org/project/openatrium
177 Pressflow 6.28.1 (int) ------- http://pressflow.org
178 ProsePoint 0.46 -------------- http://prosepoint.org
179 Ubercart 2.11.1 (int) -------- http://drupal.org/project/ubercart
181 All D7 platforms have been enhanced using Drupal 7.22.1 +Extra core:
182 https://github.com/omega8cc/7x/tree/7.22.1
184 All D6 platforms have been enhanced using Pressflow 6.28.1 +Extra core:
185 https://github.com/omega8cc/pressflow6/tree/pressflow-plus-6.28.1
187 There are also platforms temporarily disabled for new installs,
188 because they are either outdated, with numerous security updates
189 not applied by maintainer, or sometimes no longer possible to use
190 with Drush based install because of fatal errors, or even abandoned
191 with no development for months and no issues fixed in the meantime.
193 Note that we still support some semi-abandoned distros listed above,
194 but at some point we may no longer be able to maintain their security
195 and version updates, and they may be moved to the second list below.
197 We also removed D8-edge platform, since it is broken too often
198 because of D8 own critical bugs. We will keep debugging it to add
199 latest D8-tested platform to every release.
201 The platforms listed below can be re-added when their maintainers
202 will fix all critical issues and/or apply required updates:
204 ELMS ------------------------- http://drupal.org/project/elms
205 MartPlug --------------------- http://drupal.org/project/martplug
206 Octopus Video ---------------- http://octopusvideo.org
207 Open Academy ----------------- http://drupal.org/project/openacademy
208 Open Enterprise -------------- http://drupal.org/project/openenterprise
209 OpenPublic ------------------- http://drupal.org/project/openpublic
210 OpenScholar ------------------ http://openscholar.harvard.edu
211 Videola ---------------------- http://videola.tv
213 Platforms marked with (int) come also with ready to use translations
214 of Drupal core in 25 languages. Only languages with at least
215 10 maintainers and at least 60% of progress are included.
216 Other platforms are using extended and customized translations or
217 require far more than just core translation, so we don't touch them.
219 There are also some useful and/or performance related modules
220 added to all 6.x and 7.x platforms.
222 Some core and contrib modules are either enabled or disabled
223 by default, by running daily (at morning) maintenance monitor.
225 There are also modules supported by Octopus, but not bundled
226 by default and/or not enabled.
228 Some modules require custom rewrites on the web server level,
229 but since there is no .htaccess available/used in Nginx,
230 we have added all required rewrites and associated supported
231 configuration settings on the system level. This is the real
232 meaning of [S]upported flag here.
234 Note that while some of them are enabled by default on initial
235 install of "blank" site in the supported platform, they are
236 not forced as enabled by the running daily maintenance monitor,
237 so we marked them as [S]oft[E]nabled.
239 Here is a complete list with corresponding flags for every
240 module/theme: [S]upported, [B]undled, [F]orce[E]nabled,
241 [S]oft[E]nabled or [F]orce[D]isabled. [NA] means that
242 this module is used without the need to enable it.
244 Supported core version is listed for every module or theme
249 admin ---------------------- [D6,D7] --- [S] [B] [SE]
250 advagg --------------------- [D6,D7] --- [S] [B]
251 ais ------------------------ [D7] ------ [S]
252 audio ---------------------- [D5,D6] --- [S]
253 backup_migrate ------------- [D6,D7] --- [S] [B]
254 blockcache_alter ----------- [D6,D7] --- [S] [B]
255 boost ---------------------- [D6,D7] --- [S] [B]
256 cache_backport ------------- [D6] ------ [S] [B] [NA]
257 cdn ------------------------ [D6,D7] --- [S] [B]
258 ckeditor ------------------- [D6,D7] --- [S]
259 config_perms --------------- [D6,D7] --- [S] [B]
260 core_library --------------- [D7] ------ [S] [B]
261 css_emimage ---------------- [D6,D7] --- [S] [B]
262 css_gzip ------------------- [D6] -------------- [FD]
263 dbtuner -------------------- [D6] ------ [S] [B]
264 devel ---------------------- [D6,D7] ----------- [FD]
265 entitycache ---------------- [D7] ------ [S] [B] [FE]
266 esi ------------------------ [D6] ------ [S] [B]
267 expire --------------------- [D6,D7] ----------- [FD]
268 fbconnect ------------------ [D6,D7] --- [S]
269 fckeditor ------------------ [D6] ------ [S]
270 filefield_nginx_progress --- [D6,D7] --- [S] [B]
271 flood_control -------------- [D7] ------ [S] [B]
272 fpa ------------------------ [D6,D7] --- [S] [B]
273 httprl --------------------- [D6,D7] --- [S] [B]
274 imagecache ----------------- [D6,D7] --- [S]
275 imagecache_external -------- [D6,D7] --- [S]
276 javascript_aggregator ------ [D6] -------------- [FD]
277 l10n_update ---------------- [D6,D7] ----------- [FD]
278 login_security ------------- [D6,D7] --- [S] [B]
279 nocurrent_pass ------------- [D7] ------ [S] [B]
280 performance ---------------- [D6,D7] ----------- [FD]
281 phpass --------------------- [D6] ------ [S] [B]
282 poormanscron --------------- [D6] -------------- [FD]
283 private_upload ------------- [D6] ------ [S] [B]
284 purge ---------------------- [D6,D7] ----------- [FD]
285 readonlymode --------------- [D6,D7] --- [S] [B]
286 redis ---------------------- [D6,D7] --- [S] [B] [NA]
287 reroute_email -------------- [D6,D7] --- [S] [B]
288 responsive_images ---------- [D7] ------ [S]
289 robotstxt ------------------ [D6,D7] --- [S] [B] [FE]
290 rubik ---------------------- [D6,D7] --- [S] [B] [SE]
291 securesite ----------------- [D6] ------ [S] [B]
292 site_verify ---------------- [D6,D7] --- [S] [B]
293 speedy --------------------- [D7] ------ [S] [B]
294 supercron ------------------ [D6] -------------- [FD]
295 taxonomy_edge -------------- [D6,D7] --- [S] [B]
296 textile -------------------- [D6,D7] --- [S] [B]
297 tinybrowser ---------------- [D6,D7] --- [S]
298 tinymce -------------------- [D6] ------ [S]
299 variable_clean ------------- [D6,D7] --- [S] [B]
300 vars ----------------------- [D7] ------ [S] [B]
301 views_content_cache -------- [D6,D7] --- [S] [B]
302 views404 ------------------- [D6] ------ [S] [B]
303 wysiwyg_spellcheck --------- [D6,D7] --- [S]
307 cookie_cache_bypass -------- [D6] -------------- [FD]
308 dblog ---------------------- [D6,D7] ----------- [FD]
309 path_alias_cache ----------- [D6] -------------- [FE]
310 syslog --------------------- [D6,D7] ----------- [FD]
312 Drush [E]xtensions [M]aster [S]atellite:
314 drush_ecl ------------------ [D7] ------ [S] [B] [EM,ES]
315 drush_make ----------------- [D6,D7] --- [S] [B] [EM,ES]
316 registry_rebuild ----------- [D6,D7] --- [S] [B] [EM,ES]
318 Provision [E]xtensions [M]aster [S]atellite:
320 clean_missing_modules ------ [D6,D7] --- [S] [B] [EM,ES]
321 provision_boost ------------ [D6,D7] --- [S] [B] [EM,ES]
322 provision_cdn -------------- [D6,D7] --- [S] [B] [EM,ES]
323 provision_civicrm ---------- [D6,D7] --- [S] [B] [ES]
324 provision_site_backup ------ [D6,D7] --- [S] [B] [ES]
325 provision_tasks_extra ------ [D6,D7] --- [S] [B] [ES]
326 remote_import -------------- [D6,D7] --- [S] [B] [ES]
328 Hostmaster [E]xtensions [S]atellite:
330 aegir_custom_settings ------ [D6] ------ [S] [B] [FE] [ES]
331 css_emimage ---------------- [D6] ------ [S] [B] [FE] [ES]
332 ctools --------------------- [D6] ------ [S] [B] [FE] [ES]
333 features ------------------- [D6] ------ [S] [B] [FE] [ES]
334 features_extra ------------- [D6] ------ [S] [B] [FE] [ES]
335 hosting_advanced_cron ------ [D6] ------ [S] [B] [FE] [ES]
336 hosting_backup_queue ------- [D6] ------ [S] [B] [ES]
337 hosting_cdn ---------------- [D6] ------ [S] [B] [FE] [ES]
338 hosting_platform_pathauto -- [D6] ------ [S] [B] [FE] [ES]
339 hosting_remote_import ------ [D6] ------ [S] [B] [ES]
340 hosting_site_backup -------- [D6] ------ [S] [B] [FE] [ES]
341 hosting_task_gc ------------ [D6] ------ [S] [B] [FE] [ES]
342 hosting_tasks_extra -------- [D6] ------ [S] [B] [FE] [ES]
343 protect_critical_users ----- [D6] ------ [S] [B] [FE] [ES]
344 revision_deletion ---------- [D6] ------ [S] [B] [FE] [ES]
345 strongarm ------------------ [D6] ------ [S] [B] [FE] [ES]
346 userprotect ---------------- [D6] ------ [S] [B] [FE] [ES]
351 * Please follow bug submission guidelines:
353 Before you submit a bug, make sure you have diagnosed your
354 configuration as documented in this guide:
355 http://groups.drupal.org/node/21890. It is Aegir specific,
356 but the good rules are the same: always search for similar
357 bug report before submitting your own, and include as much
358 information about your context as possible, especially
359 please include, using http://gist.github.com, the contents
360 (anonymized for security and privacy) of files:
362 /var/aegir/config/includes/barracuda_log.txt
363 /data/disk/user/log/octopus_log.txt
364 /var/aegir/install.log (remove the password)
366 /root/.USER.octopus.cnf
369 http://drupal.org/project/issues/barracuda (active)
370 http://drupal.org/project/issues/octopus (active)
371 http://github.com/omega8cc/nginx-for-drupal/issues (deprecated)
373 Please don't post your server logs here. Instead use
374 http://gist.github.com and post the link in your submission.
379 * Join us at: http://groups.drupal.org/boa
380 http://community.aegirproject.org
381 http://groups.drupal.org/nginx
386 * Grace - http://omega8.cc
387 * Albert - http://omega8.cc
388 * Robert - http://omega8.cc
393 * http://drupal.org/project/barracuda (main)
394 * http://drupal.org/project/octopus (main)
395 * http://code.aegir.cc/aegir (mirror)
396 * http://github.com/omega8cc/nginx-for-drupal/ (mirror)
401 * Brian Mercer - http://drupal.org/user/103565
402 Initial work: http://drupal.org/node/244072#comment-1747170
404 * Nice people who are submitting bugs and problems in the
405 Barracuda/Octopus issue queues.