Slide 1

Slide 1 text

MLADEN ĐURIĆ @MacMladen 1

Slide 2

Slide 2 text

THANKS ! 2

Slide 3

Slide 3 text

TIME SPACE CONTINUUM THE EXISTENCE OF GOD AND OBJECT ORIENTED PHP IN DRUPAL 8 Mladen Đurić @macmladen 3

Slide 4

Slide 4 text

BOA BARRACUDA OCTOPUS ÆGIR ~ HOW TO RUN A WEB SERVER LIKE A PRO ON CHEAP ~ Mladen Đurić @macmladen 4

Slide 5

Slide 5 text

MLADEN ĐURIĆ a.k.a MacMladen • in IT since the time of mainframes, 8th year in UNIX epoch (that’s 1978). • started with Z80 assembly, went over 6502 to 8086 (1978-1990) • somewhere in between, there was an episode with BASIC but really enjoyed hard core C • was knee deep in DTP 1990-2000 • gone to Mac in 1995 and never looked back • 2005 started playing with web technologies • 2007 landed on Drupal :D 5

Slide 6

Slide 6 text

TIMETABLE: • Shared hosting: ~10 min • Ægir: ~30 min • Q & A: 15 min or more 6

Slide 7

Slide 7 text

7

Slide 8

Slide 8 text

THE SURVIVAL OF THE FITTEST 8

Slide 9

Slide 9 text

Chapter 1. SHARED HOSTING 9

Slide 10

Slide 10 text

NOT ALL HOSTINGS ARE THE SAME Requirements: • some Linux • Apache • PHP • MySQL • FTP • SSH access • Unlimited everything • Disk • Transfer • Domains • Databases • Users 10

Slide 11

Slide 11 text

HITTING THE WALL The limits • CPU • Memory • Database • Caching (APC, opcache) • Extra PHP stuff (uploadprogress, xdebug) • Tweaks 11

Slide 12

Slide 12 text

DREAMHOST: LOVE & HATE Tuned: • Users: unlimited! • Memory: .htaccess raised! • Database: horor, hell. • Caching (APC, opcache) — added! • Extra PHP stuff added! (uploadprogress, xdebug) • Tweaks — totally customized :D 12

Slide 13

Slide 13 text

Chapter 2. EVALUATING DRUPAL HOSTING OPTIONS 13

Slide 14

Slide 14 text

My favourite 8086 assembler directive ASSUME NOTHING 14

Slide 15

Slide 15 text

IMPORTANT QUESTIONS Who you are? • Service or VPS? Who your clients are? • Service or VPS? System skill level • Will you be able to cope with system maintaining Resources needed • Service or VPS? • Sites • Memory • CPU • Disk • Transfer • SSL • IP Budget Client expectations, sensitivity • Security, maintenance, performance World region • Proximity to client market 15

Slide 16

Slide 16 text

Chapter 3. TESTING FOR VPS 16

Slide 17

Slide 17 text

AWS FREE TIER MICRO INSTANCE EC2 t2.micro: • 1 CPU • 1 GB • 30 GB of EBS • World region • Spot vs Reserved • Load balancing http://aws.amazon.com/ec2/pricing/ 17

Slide 18

Slide 18 text

Chapter 4. BUILDING THE VPS 18

Slide 19

Slide 19 text

$10 = 1 CPU, 1GB, 30GB • Cheaper plan is just too small. • 1GB is enough for moderate use but will not allow Solr and memory use will be ~700-800MB active • 2GB would raise MySQL cache, allow for Solr (~200MB) and leave some room for more performance. • 4GB is expensive -> Dedicated 19

Slide 20

Slide 20 text

INSTANCE BUILD: DEBIAN 7 32BIT • Debian: 6 or 7 • Ubuntu • CentOS • FreeBSD • Darwin/Mac? • some exotic? • 32 bit
 No need for less than 4GB • 64 bit
 Imperative if you have more than 4GB 20

Slide 21

Slide 21 text

SUPPORTED LTS OS 32/64BIT MINIMAL ON SERVER OR DESKTOP ON LOCALHOST • Debian 7 Wheezy (recommended) • Debian 6 Squeeze (fully supported with automatic upgrade to Wheezy available) • Ubuntu Trusty 14.04 (limited support) • Ubuntu Precise 12.04 (limited support) • Ubuntu Lucid 10.04 (limited support) 21

Slide 22

Slide 22 text

Chapter 5. UNDERSTANDING AEGIR 22

Slide 23

Slide 23 text

23

Slide 24

Slide 24 text

Chapter 6. BUILDING THE BOA 24

Slide 25

Slide 25 text

REQUIREMENTS FOR BOA • wget must be installed. • The git standard port 9418 must be open. • SMTP standard port 25 (or SMTP relay) must be open for outgoing connections. • Minimum 1 GB of RAM • Locales with UTF-8 support, otherwise en_US.UTF-8 (default) is forced. • Basic sysadmin skills and experience. • Willingness to accept BOA PI (paranoid idiosyncrasies). 25

Slide 26

Slide 26 text

BOA INSTALLATION IMPORTANT! • Don't run any installer via sudo. • You must be logged in as root or `sudo -i` first. • Don't run any system updates before running Barracuda installer. • You should use vanilla system. # cd # wget -q -U iCab http://files.aegir.cc/BOA.sh.txt # bash BOA.sh.txt 26 You are prepared now. But before starting installation, you have to configure it first.

Slide 27

Slide 27 text

BARRACUDA IMPORTANT! • Don't run any installer via sudo. • You must be logged in as root or `sudo -i` first. • Don't run any system updates before running Barracuda installer. • You should use vanilla system. # cd # wget -q -U iCab http://files.aegir.cc/BOA.sh.txt # bash BOA.sh.txt # … { make changes in .barracuda.cnf and .octopus.cnf } # boa in-stable public server.mydomain.org my@email o1 # boa in-stable public server2.mydomain2.org my2@email o2 mini 27

Slide 28

Slide 28 text

Chapter 7. MIGRATING SITES 28

Slide 29

Slide 29 text

Chapter 8. MAINTAING SITES 29

Slide 30

Slide 30 text

Q & A BARRACUDA ON AEGIR ~ MY FIRST YEAR ~ Mladen Đurić @macmladen 30

Slide 31

Slide 31 text

THANKS! BARRACUDA ON AEGIR ~ MY FIRST YEAR ~ Mladen Đurić @macmladen 31