aegir hosting system
play

Aegir Hosting System One Drupal to Rule Them All THE OHIO STATE - PowerPoint PPT Presentation

THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING COLLEGE OF ENGINEERING Aegir Hosting System One Drupal to Rule Them All THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Agenda: Aegir Hosting System Introduction Challenges maintaining


  1. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING COLLEGE OF ENGINEERING Aegir Hosting System One Drupal to Rule Them All

  2. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Agenda: Aegir Hosting System • Introduction – Challenges maintaining sites – How Aegir can help • Using Aegir – Core components – Servers, sites, and platforms – Live demo • Advanced Topics – Details – Gotchas – Awesomeness – References

  3. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Intro: Aegir Hosting System Aegir @ Ohio State University – 3-4 known Aegir instances – 300+ sites in Aegir and rapidly growing. My Experience – Almost 2 years starting with 0.4 – Written some internal extensions. – 100+ sites Why Aegir? – Encourages some best practices. – Order of magnitude efficiency savings with high volumes of sites. – Works for few or many sites (once you understand it).

  4. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Intro | Challenges: Create a Site from Scratch 1. Create a database 2. Create a database user 3. Copy Drupal files out to a web server 4. Set appropriate file permissions 5. Configure Apache 6. Run Drupal installer

  5. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Intro | Challenges: Upgrade a Site 1. Take site offline (maintenance mode) 2. Make a backup 3. Update files 4. Run update.php 5. Apply any manual configuration changes. 6. Take site out of maintenance mode.

  6. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Intro | Challenges: Other Concerns 4. Software audits 1. Testing changes 5. Repeatable deployments 2. Staging environments 6. General administration 3. Regular backups

  7. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Intro | Challenges: Options • Maintain by hand – You manage everything – Easy to start out – Doesn’t scale well • Become a Drush ninja – You manage everything Now with scripts! – Scales as well as you • Use Aegir – Setup requires knowledge – Novice can manage sites – Expert can use Drush-fu – Encourages best practices

  8. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Intro | Challenges: #Drupal Sites vs Cost to Sanity

  9. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Intro | Aegir: One Drupal to Rule Them All Aegir can manage • Apache, Nginx • MySQL • Drupal sites & platforms • Upgrades • Backups But wait, there’s more! • Free Drush CLI! • Learn best practices! • So easy, anyone can use! • Now midi-chlorian free!

  10. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Intro | Aegir: Hosting - a website to manage websites

  11. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Intro | Aegir: Provision - Drush extension backend Sh-3.2$ drush | grep provision provision-backup Generate a back up for the site. provision-backup_del Delete a backup file. provision-clone Clone a site between platforms. provision-delete Delete a site. provision-deploy Deploy an existing backup to a new url. provision-disable Disable a site. provision-enable Enable a disabled site. provision-import Import site to provision provision-install Provision a new site using the provided data. provision-lock Lock a platform from having any other sites. provision-login_rese Generate a one-time login reset URL. provision-migrate Migrate a site between platforms. provision-restore Restore the site to a previous backup. provision-save Save Drush alias provision-unlock Unlock a platform provision-verify Verify the framework is correctly installed. provision-zone Manipulate a zonefile

  12. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Using Aegir | Servers: Web or Database Web Servers • Apache • Nginx Database • MySQL Servers have: • IP Address(es) • Port(s) • Credentials • Etc

  13. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Using Aegir | Servers: Web or Database

  14. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Using Aegir | Platforms: Root of a Multi-Site Install OpenAtrium-rc1 • puppies.com • kittens.org OpenPublic-beta1 • billthecat4pres.com • toonces4gov.com A platform can have multiple sites but can reside only on one web server.

  15. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Using Aegir | Platforms: Create a Platform http://www.youtube.com/watch?v=A_QIvMLoouI

  16. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Using Aegir | Sites: Your Websites OpenAtrium-rc1 @ server1 • puppies.com • kittens.org OpenPublic-beta1 @ server2 • billthecat4pres.com • toonces4gov.com Sites are tied to a DB server and platform. The platform determines which web server the site runs on.

  17. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Using Aegir | Sites: Create a Site http://www.youtube.com/watch?v=jbJefaWUE-0

  18. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Using Aegir | Migrations: Upgrade One or Many Sites 1. Create a new platform with the upgraded code. 2. Migrate sites (or entire platforms) to the new platform. Open Open Atrium Atrium Beta 2 Beta 2 Site 1 Site 2 Site 3

  19. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Using Aegir | Upgrades: Upgrade One or Many Sites http://www.youtube.com/watch?v=KD5KQTkj4Lk

  20. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Using Aegir | Backups: Manual and Automatic • Upgrades and other actions automatically create backups. • You can manually create/restore backups from web ui. • Backups are stored locally (/var/aegir/backup) • You can restore backups to another Aegir instance (with a little work)

  21. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Using Aegir | Backups: How to Backup / Restore a Site http://www.youtube.com/watch?v=YCIRmtf_RV4

  22. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Using Aegir | Cloning: Make a copy of your site • Works just like an upgrade/migration. • Great way to test a migration. • Can be a way to get a test copy of a site.

  23. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Advanced | Migrate+Rename/Cloning: Under the Hood When we migrated/cloned from puppies.com to the- puppy.com… How did this… <img src =“/sites/ puppies.com /files/vienna- sausages.png”> Get changed to this… <img src =“/sites/ the-puppy.com /files/vienna- sausages.png”> Aegir fixes some content programmatically. It also adds this alias /files/vienna-sausages.png

  24. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Advanced | Hooking In: vhost configuration Aegir regenerates your vhost configuration (all the time). /var/aegir/.drush/<whatever>.drush.inc <?php function <whatever>_provision_apache_vhost_config($uri, $data) { if ($uri == “abc.com ") { return array("php_value upload_max_filesize 100M", "php_value post_max_size 200M"); } } ?> See also pre.d and post.d vhost configuration http://community.aegirproject.org/node/341

  25. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Advanced | Hooking In: settings.php Aegir regenerates your settings.php file (all the time). This file is included at the end of your Aegir controlled settings.php /var/aegir/platforms/sites/<yoursite>/local.settings.php For example, you might want to configure a maintenance theme. <?php $conf[' maintenance_theme '] = 'themeName'; ?>

  26. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Advanced | Installation: Easy or Hard Vanilla Aegir • If you use Ubuntu/Debian, you can use apt-get. http://community.aegirproject.org/node/400 • If you use RHEL/Centos/etc, you can use the manual instructions. It’s pretty well documented, but budget a couple hours. http://community.aegirproject.org/installing/manual Omega8cc Alternatives to Vanilla (on d.org/projects) Barracuda Barracuda is a bash script to install and/or upgrade, tuned for high performance, Aegir Master Instance with all related system services. Octopus Octopus is a bash script to install and/or upgrade, tuned for high performance, Aegir Satellite Instances , compatible with Barracuda

  27. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Advanced | Gotchas: Multi-Server Architecture Hub Spoke Model Master Server • Has a copy of everything (sort of). • Migrations go through it. - Web Server 1 - Platform A - Site 1 - Web Server 2 - Platform B

  28. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Advanced | Gotchas: Multi-Server $#@! Data Loss There is a long standing data loss bug in which Why! Why was the files directory on the hub sometimes I programmed overwrites data on the spoke. to feel pain? There are various patches in the issue queue none of which quite work. We solved it by hacking our Aegir instance to rsync files from the spoke to hub prior to many other actions. Bug Report http://drupal.org/node/1083366

  29. THE OHIO STATE UNIVERSITY COLLEGE OF ENGINEERING Advanced | Gotchas: Site Specific Modules/Themes Site-specific modules/themes not super well supported in multi-server. The original recommendation was to make a site specific install profile and put them there. At some point they made the hub the authority but this doesn’t work with things like apps so it’s still debated. Bug Report http://drupal.org/node/1561102

Recommend


More recommend