Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
 
Why Sun for Drupal? <ul><ul><li>Scott Mattoon </li></ul></ul><ul><ul><li>Sun Microsystems, Inc. </li></ul></ul><ul><ul><li...
<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 W...
The Participation Age Matters Many Diverse Objects Collaborative Process <ul><li>Hand sketches </li></ul><ul><li>Photos </...
<ul><li>In the first six months </li></ul><ul><li>700 Projects  </li></ul><ul><li>7,000 Members </li></ul><ul><li>7 Creati...
<ul><li>7 Creative Commons Licenses </li></ul><ul><li>Drupal 4.7 + new OAN modules  </li></ul><ul><li>X64 tuned SAMP Cools...
Creative Commons Licenses
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><...
Network Services Identity Management Java Enterprise System Communications Composite Application Platform Application Plat...
The S in SAMP stands for Solaris <ul><li>Solaris Zones  </li></ul><ul><ul><li>Free, lightweight and easy virtualization </...
The S in SAMP stands for Solaris <ul><li>CoolStack 1.2 </li></ul><ul><ul><li>Apache 2.2.6  </li></ul></ul><ul><ul><ul><li>...
The S in SAMP stands for Solaris <ul><li>CoolStack 1.2 </li></ul><ul><ul><li>Squid 2.6.16 </li></ul></ul><ul><ul><li>Tomca...
Solaris Zones for Efficiency & Control <ul><li>one server </li></ul><ul><li>host (2) Dev, Test, Production environments  <...
/opt/coolstack -ro -ro /opt/coolstack' ./apache -ro ./mysql -ro ./php -rw /data/drupal-5.2 -rw -ro -ro /data/drupal-5.1 ./...
Solaris Zones for Efficiency & Control ...
Security  <ul><li>RBAC </li></ul><ul><ul><li>Grant users the privileges they need </li></ul></ul><ul><li>Process Rights Ma...
The S in SAMP stands for Solaris MySQL /var/svc/manifest/network/mysql.xml /lib/svc/method/CSKmysql # svccfg import /var/s...
Performance Tuning Which functions are being called by Drupal? # dtrace -n function-entry'{printf(&quot;called %s() in %s ...
Resource Management & Isolation Projects # projadd -c &quot;Apache-PHP&quot; -U webservd httpd.php # projmod -sK &quot;pro...
Versioning & Protecting Data $ zfs snapshot  /data/db1/scott@21Sep $ zfs snapshot /data/db1/scott@22Sep ZFS snapshots
Drupal and Java <ul><li>Requires Resin and Quercus  </li></ul><ul><li>Gives you: </li></ul><ul><ul><li>Database connection...
For More Information <ul><li>Open Architecture Network & AFH </li></ul><ul><ul><li>http://www.openarchitecturenetwork.org/...
For More Information <ul><li>SMF & Security </li></ul><ul><ul><li>http://blogs.sun.com/downstream/tags/smf   </li></ul></u...
<ul><li>Constant innovation </li></ul><ul><li>Free </li></ul><ul><li>Open source </li></ul><ul><li>Incredible performance ...
<ul><ul><li>Get Solaris sun.com/solaris/get </li></ul></ul><ul><ul><li>Get Data Sheets and White Papers sun.com/solaris/re...
Q&A <ul><li>Scott Mattoon </li></ul><ul><li>Sun Microsystems, Inc. </li></ul>
Upcoming SlideShare
Loading in …5
×

Drupal Deployment on Solaris - DrupalCamp Bay Area 2007 - Mattoon

3,316 views

Published on

Material presented at Bay Area DrupalCamp 2007 session Title: Industrial Grade Deployment on OpenSolaris

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Drupal Deployment on Solaris - DrupalCamp Bay Area 2007 - Mattoon

  1.  
  2. 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
  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>
  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>
  5. <ul><li>In the first six months </li></ul><ul><li>700 Projects </li></ul><ul><li>7,000 Members </li></ul><ul><li>7 Creative Commons Licenses in Use </li></ul><ul><li>6 Million Visitors </li></ul><ul><li>3,000+ concurrent sessions </li></ul>The Community is Amazing
  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>
  7. Creative Commons Licenses
  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>Sun, Intel Landmark Alliance; Intel Endorses Solaris <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 <ul><ul><ul><li>$0 Solaris Price Tag Levels the Playing Field with Linux </li></ul></ul></ul>IBM jumps on the Solaris bandwagon
  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
  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
  11. The S in SAMP stands for Solaris <ul><li>CoolStack 1.2 </li></ul><ul><ul><li>Apache 2.2.6 </li></ul></ul><ul><ul><ul><li>+ mod_fcgid-2.2, mod_jk-1.2.25, mod_proxy </li></ul></ul></ul><ul><ul><li>MySQL 5.0.45 </li></ul></ul><ul><ul><ul><li>+ compiler optimization, support for ndbcluster </li></ul></ul></ul><ul><ul><li>PHP 5.2.4 </li></ul></ul><ul><ul><ul><li>+ compiler optimization, dtrace extension, FastCGI support </li></ul></ul></ul><ul><ul><ul><li>APC version upgraded to 3.0.14. </li></ul></ul></ul><ul><ul><ul><li>gmp library compiler optimization </li></ul></ul></ul>Solaris – Apache – MySQL – PHP
  12. The S in SAMP stands for Solaris <ul><li>CoolStack 1.2 </li></ul><ul><ul><li>Squid 2.6.16 </li></ul></ul><ul><ul><li>Tomcat 5.5.23 </li></ul></ul><ul><ul><li>Ruby 1.8.6, Rails 1.2.3. </li></ul></ul><ul><ul><li>lighttpd 1.4.18 </li></ul></ul>Solaris – Apache – MySQL – PHP
  13. 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
  14. /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 ...
  15. Solaris Zones for Efficiency & Control ...
  16. 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>
  17. 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
  18. 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
  19. 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
  20. Versioning & Protecting Data $ zfs snapshot /data/db1/scott@21Sep $ zfs snapshot /data/db1/scott@22Sep ZFS snapshots
  21. Drupal and Java <ul><li>Requires Resin and Quercus </li></ul><ul><li>Gives you: </li></ul><ul><ul><li>Database connection pooling </li></ul></ul><ul><ul><li>JIT Compiler </li></ul></ul><ul><ul><li>Clustering with Terracotta </li></ul></ul><ul><ul><li>Easy deployment from NetBeans </li></ul></ul>PHP apps, Glassfish, NetBeans
  22. 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><ul><ul><li>http://blogs.sun.com/downstream/tags/oan </li></ul></ul>
  23. 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><ul><li>NetBeans </li></ul><ul><ul><li>http://www.netbeans.org/ </li></ul></ul><ul><li>Glassfish </li></ul><ul><ul><li>http://glassfish.java.net/ </li></ul></ul>
  24. <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?
  25. <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>
  26. Q&A <ul><li>Scott Mattoon </li></ul><ul><li>Sun Microsystems, Inc. </li></ul>

×