Drupalcon2007 Sun


Published on

Some design patterns and concepts for industrial grade deployment of Drupal on Solaris, plus a specific example of an interesting Drupal site deployed on Solaris

Published in: Technology
1 Comment
  • I attended Scott's presentation, he did a nice job. It's great to see Sun embracing Drupal. The technical data here is pretty useful for folks considering Drupal as a community site solution, although he did mention that their numbers have grown a bit since he last updated the user statistics.
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Drupalcon2007 Sun

    1. 1. Why Sun for Drupal? <ul><ul><li>Scott Mattoon </li></ul></ul><ul><ul><li>Sun Microsystems, Inc. </li></ul></ul><ul><ul><li>Job Title Company Name URL of Company or Project </li></ul></ul>Session ID
    2. 3. <ul><ul><li>AFH founded in 1999 </li></ul></ul><ul><ul><li>100's of affiliates </li></ul></ul><ul><ul><li>2006 TED Prize Winner </li></ul></ul><ul><ul><li>OAN Launched 2007 </li></ul></ul>
    3. 4. The Participation Age Matters Many Diverse Objects Collaborative Process <ul><li>Hand sketches </li></ul><ul><li>Photos </li></ul><ul><li>CAD files </li></ul><ul><li>Project Plans </li></ul><ul><li>Designs that are situation appropriate </li></ul><ul><li>Designs that get re-used </li></ul>Better Ideas <ul><li>Architects, Designers, Community Members, NGOs, Funders </li></ul><ul><li>Crowdsourcing </li></ul>
    4. 5. <ul><li>In the first 60 days </li></ul><ul><li>400 Projects </li></ul><ul><li>4,500 Members </li></ul><ul><li>7 Creative Commons Licenses in Use </li></ul><ul><li>1.5 Million Visitors </li></ul><ul><li>3,000+ concurrent sessions </li></ul>The Community is Amazing
    5. 6. <ul><li>7 Creative Commons Licenses </li></ul><ul><li>Drupal 4.7 + new OAN modules </li></ul><ul><li>X64 tuned SAMP Coolstack </li></ul><ul><li>Solaris 10 </li></ul><ul><li>(2) SunFire X2200 M2 (1) 6 TB StorageTek 3511 </li></ul><ul><li>Hosted at AMD datacenter </li></ul>
    6. 7. Creative Commons Licenses
    7. 8. Ian Murdock: What's a Linux Guy Doing at Sun? <ul><ul><ul><li>Sun Fire T2000: Sun's Eco-friendly Server Tears It Up </li></ul></ul></ul><ul><ul><ul><li>Solaris Technology Wins WSJ’s 2006 Top Innovation Award, Beating Inhalable Insulin </li></ul></ul></ul><ul><ul><ul><li>Sun Moves to Number Six x86 Server Vendor in 2005 </li></ul></ul></ul>IDC Worldwide Quarterly Server Tracker November, 2006 AMD/Sun Strategic Alliance; Opteron to Power Sun’s Servers Solaris, Java Go Open Source Sun, Intel Landmark Alliance; Intel Endorses Solaris <ul><ul><ul><li>$0 Solaris Price Tag Levels the Playing Field with Linux </li></ul></ul></ul>IBM jumps on the Solaris bandwagon
    8. 9. Network Services Identity Management Java Enterprise System Communications Composite Application Platform Application Platform B2B Web Infrastructure ESB Availability Virtualization Solaris Containers LDOMs / DSD VMware / Xen Architecture Operating System
    9. 10. The S in SAMP stands for Solaris <ul><li>Solaris Zones </li></ul><ul><ul><li>Free, lightweight and easy virtualization </li></ul></ul><ul><li>Dtrace </li></ul><ul><ul><li>Find bottlenecks in PHP code </li></ul></ul><ul><li>RBAC, Process Rights Management </li></ul><ul><ul><li>Don't give privileges that aren't needed </li></ul></ul><ul><li>ZFS </li></ul><ul><ul><li>Simplify admin, max. integrity, massive scale </li></ul></ul>Solaris – Apache – MySQL - PHP/Perl/Python
    10. 11. Solaris Zones for Efficiency & Control <ul><li>one server </li></ul><ul><li>host (2) Dev, Test, Production environments </li></ul><ul><li>maximize sharing, minimize redundancy </li></ul><ul><li>prevent misconfig, grant least privilege </li></ul><ul><li>guarantee max. resources for Productions </li></ul><ul><li>maximize efficiency & consistency btw. envs. </li></ul><ul><li>recover quickly from failed deployments </li></ul>Hypothetical Requirements & Constraints
    11. 12. /opt/coolstack -ro -ro /opt/coolstack' ./apache -ro ./mysql -ro ./php -rw /data/drupal-5.2 -rw -ro -ro /data/drupal-5.1 ./misc -ro -ro ./modules -ro -ro ./scripts -ro -ro ./sites -ro -ro ./themes -rw -ro ./files -ro -ro Solaris Zones for Efficiency & Control ...
    12. 13. Solaris Zones for Efficiency & Control ...
    13. 14. Security <ul><li>RBAC </li></ul><ul><ul><li>Grant users the privileges they need </li></ul></ul><ul><li>Process Rights Management </li></ul><ul><ul><li>Run with least privileges </li></ul></ul><ul><ul><li>E.g., not root, nosuid, noexec </li></ul></ul>
    14. 15. The S in SAMP stands for Solaris MySQL /var/svc/manifest/network/mysql.xml /lib/svc/method/CSKmysql # svccfg import /var/svc/manifest/network/mysql.xml # svcadm -v enable mysql Apache /var/svc/manifest/network/http-CSKapache2.xml /lib/svc/method/http-CSKapache2 # svccfg import /var/svc/manifest/network/http-CSKapache2.xml # svcadm -v enable CSKapache2 SMF for MySQL & Apache
    15. 16. Performance Tuning Which functions are being called by Drupal? # dtrace -n function-entry'{printf(&quot;called %s() in %s at line %d &quot;, copyinstr(arg0), copyinstr(arg1), arg2)}' -q How many times is a function called? # dtrace -n function-entry'{@[copyinstr(arg1)] = lquantize(arg2, 0, 5000)}' What's the file name and line number count: # dtrace -n function-entry'{@[copyinstr(arg1)] = lquantize(arg2, 0, 5000)}' Dtrace provider for PHP
    16. 17. Resource Management & Isolation Projects # projadd -c &quot;Apache-PHP&quot; -U webservd httpd.php # projmod -sK &quot;project.max-sem-ids=(privileged,256,deny)&quot; httpd.php # svccfg -s http:CSKapache2 setprop start/project = astring: httpd.php # svcadm -v enable CSKapache2 CPU Shares global# zonecfg -z zone1 zonecfg:zone1> add rctl zonecfg:zone1:rctl> set name=zone.cpu-shares zonecfg:zone1:rctl> add value (priv=privileged,limit=15,action=none) zonecfg:zone1:rctl> end zonecfg:zone1> exit Zones: data, configuration
    17. 18. Versioning & Protecting Data $ zfs snapshot /data/db1/scott@21Sep $ zfs snapshot /data/db1/scott@22Sep ZFS snapshots
    18. 19. Drupal and Java <ul><li>Requires quercus </li></ul><ul><li>Gives you: </li></ul><ul><ul><li>Database connection pooling </li></ul></ul><ul><ul><li>Clustering with Terracotta </li></ul></ul>PHP apps in Glassfish
    19. 20. Drupal and Java Graph courtesy Workhabit.org For details see: http://www.workhabit.org/resin-backed-php-drives-4x-performance-improvements-drupal Drupal in Glassfish, well Resin in this case
    20. 21. For More Information <ul><li>Open Architecture Network & AFH </li></ul><ul><ul><li>http://www.openarchitecturenetwork.org/ </li></ul></ul><ul><ul><li>http://www.architectureforhumanity.org/ </li></ul></ul><ul><ul><li>http://www.ted.com/index.php/speakers/view/id/54 </li></ul></ul><ul><ul><li>http://www.architectureforhumanity.org/programs/africa/advisory.html </li></ul></ul>
    21. 22. For More Information <ul><li>SMF & Security </li></ul><ul><ul><li>http://blogs.sun.com/downstream/tags/smf </li></ul></ul><ul><ul><li>http://www.opensolaris.org/os/community/smf/ </li></ul></ul><ul><ul><li>http://www.sun.com/software/solaris/howtoguides/s10securityhowto.jsp </li></ul></ul><ul><li>Dtrace </li></ul><ul><ul><li>http://blogs.sun.com/bmc/entry/dtrace_and_php_demonstrated </li></ul></ul><ul><ul><li>http://blogs.sun.com/shanti/entry/debugging_amp </li></ul></ul>
    22. 23. <ul><li>Constant innovation </li></ul><ul><li>Free </li></ul><ul><li>Open source </li></ul><ul><li>Incredible performance </li></ul><ul><li>Enterprise class, worldwide, 24x7 cost-effective support </li></ul><ul><li>Runs on more hardware </li></ul><ul><li>Runs more applications </li></ul><ul><li>We protect our customers </li></ul><ul><li>We protect the community </li></ul><ul><li>Huge numbers of customers, installed base, partners </li></ul>Why Solaris?
    23. 24. <ul><ul><li>Get Solaris sun.com/solaris/get </li></ul></ul><ul><ul><li>Get Data Sheets and White Papers sun.com/solaris/reference_materials </li></ul></ul><ul><ul><ul><li>Get Trained sun.com/solaris/freetraining | Learning Paths: sun.com/training/solaris </li></ul></ul></ul>1 2 3 4 <ul><ul><li>Get Started with Solaris Learning Centers sun.com/solaris/teachme </li></ul></ul>5 <ul><ul><li>Get Current sun.com/solaris/move | bigadmin.com/apps | bigadmin.com/hcl </li></ul></ul>6 <ul><ul><ul><li>Get Involved opensolaris.org | bigadmin.com | developers.sun.com/solaris </li></ul></ul></ul>
    24. 25. Q&A <ul><li>Scott Mattoon </li></ul><ul><li>Sun Microsystems, Inc. </li></ul>
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.