Why Sun for Drupal? Scott Mattoon Sun Microsystems, Inc. Job Title Company Name URL of Company or Project Session ID
 
AFH founded in 1999 100's of affiliates 2006 TED Prize Winner OAN Launched 2007
The Participation Age Matters Many Diverse Objects Collaborative Process Hand sketches Photos CAD files Project Plans Designs that are situation appropriate Designs that get  re-used  Better Ideas Architects, Designers, Community Members, NGOs, Funders Crowdsourcing
In the first 60 days 400 Projects  4,500 Members 7 Creative Commons Licenses in Use 1.5 Million Visitors 3,000+ concurrent sessions The Community is Amazing
7 Creative Commons Licenses Drupal 4.7 + new OAN modules  X64 tuned SAMP Coolstack Solaris 10 (2) SunFire X2200 M2 (1) 6 TB StorageTek 3511 Hosted at AMD datacenter
Creative Commons Licenses
Ian Murdock: What's a Linux Guy Doing at Sun? Sun Fire T2000: Sun's Eco-friendly Server Tears It Up Solaris Technology Wins WSJ’s 2006 Top Innovation Award, Beating Inhalable Insulin Sun Moves to Number Six x86 Server Vendor in 2005  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 $0 Solaris Price Tag Levels the Playing Field with Linux IBM jumps on the Solaris bandwagon
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
The S in SAMP stands for Solaris Solaris Zones  Free, lightweight and easy virtualization Dtrace Find bottlenecks in PHP code RBAC, Process Rights Management Don't give privileges that aren't needed ZFS Simplify admin, max. integrity, massive scale Solaris – Apache – MySQL - PHP/Perl/Python
Solaris Zones for Efficiency & Control one server host (2) Dev, Test, Production environments  maximize sharing, minimize redundancy prevent misconfig, grant least privilege guarantee max. resources for Productions maximize efficiency & consistency btw. envs. recover quickly from failed deployments Hypothetical Requirements & Constraints
/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 ...
Solaris Zones for Efficiency & Control ...
Security  RBAC Grant users the privileges they need Process Rights Management Run with least privileges E.g., not root, nosuid, noexec
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
Performance Tuning Which functions are being called by Drupal? # dtrace -n function-entry'{printf("called %s() in %s at line %d\n",\  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
Resource Management & Isolation Projects # projadd -c "Apache-PHP" -U webservd httpd.php # projmod -sK "project.max-sem-ids=(privileged,256,deny)" 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
Versioning & Protecting Data $ zfs snapshot  /data/db1/scott@21Sep $ zfs snapshot /data/db1/scott@22Sep ZFS snapshots
Drupal and Java Requires quercus  Gives you: Database connection pooling Clustering with Terracotta PHP apps in Glassfish
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
For More Information Open Architecture Network & AFH http://www.openarchitecturenetwork.org/   http://www.architectureforhumanity.org/ http://www.ted.com/index.php/speakers/view/id/54   http://www.architectureforhumanity.org/programs/africa/advisory.html
For More Information SMF & Security http://blogs.sun.com/downstream/tags/smf   http://www.opensolaris.org/os/community/smf/   http://www.sun.com/software/solaris/howtoguides/s10securityhowto.jsp   Dtrace http://blogs.sun.com/bmc/entry/dtrace_and_php_demonstrated http://blogs.sun.com/shanti/entry/debugging_amp
Constant innovation Free Open source Incredible performance Enterprise class, worldwide, 24x7 cost-effective support Runs on more hardware Runs more applications We protect our customers We protect the community Huge numbers of customers, installed base, partners Why Solaris?
Get Solaris sun.com/solaris/get Get Data Sheets and White Papers sun.com/solaris/reference_materials Get Trained sun.com/solaris/freetraining  |  Learning Paths:  sun.com/training/solaris 1 2 3 4 Get Started with Solaris Learning Centers sun.com/solaris/teachme 5 Get Current sun.com/solaris/move  |   bigadmin.com/apps  |   bigadmin.com/hcl 6 Get Involved opensolaris.org  |  bigadmin.com  |  developers.sun.com/solaris
Q&A Scott Mattoon Sun Microsystems, Inc.

Drupalcon2007 Sun

  • 1.
    Why Sun forDrupal? Scott Mattoon Sun Microsystems, Inc. Job Title Company Name URL of Company or Project Session ID
  • 2.
  • 3.
    AFH founded in1999 100's of affiliates 2006 TED Prize Winner OAN Launched 2007
  • 4.
    The Participation AgeMatters Many Diverse Objects Collaborative Process Hand sketches Photos CAD files Project Plans Designs that are situation appropriate Designs that get re-used Better Ideas Architects, Designers, Community Members, NGOs, Funders Crowdsourcing
  • 5.
    In the first60 days 400 Projects 4,500 Members 7 Creative Commons Licenses in Use 1.5 Million Visitors 3,000+ concurrent sessions The Community is Amazing
  • 6.
    7 Creative CommonsLicenses Drupal 4.7 + new OAN modules X64 tuned SAMP Coolstack Solaris 10 (2) SunFire X2200 M2 (1) 6 TB StorageTek 3511 Hosted at AMD datacenter
  • 7.
  • 8.
    Ian Murdock: What'sa Linux Guy Doing at Sun? Sun Fire T2000: Sun's Eco-friendly Server Tears It Up Solaris Technology Wins WSJ’s 2006 Top Innovation Award, Beating Inhalable Insulin Sun Moves to Number Six x86 Server Vendor in 2005 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 $0 Solaris Price Tag Levels the Playing Field with Linux IBM jumps on the Solaris bandwagon
  • 9.
    Network Services IdentityManagement 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 inSAMP stands for Solaris Solaris Zones Free, lightweight and easy virtualization Dtrace Find bottlenecks in PHP code RBAC, Process Rights Management Don't give privileges that aren't needed ZFS Simplify admin, max. integrity, massive scale Solaris – Apache – MySQL - PHP/Perl/Python
  • 11.
    Solaris Zones forEfficiency & Control one server host (2) Dev, Test, Production environments maximize sharing, minimize redundancy prevent misconfig, grant least privilege guarantee max. resources for Productions maximize efficiency & consistency btw. envs. recover quickly from failed deployments Hypothetical Requirements & Constraints
  • 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 ...
  • 13.
    Solaris Zones forEfficiency & Control ...
  • 14.
    Security RBACGrant users the privileges they need Process Rights Management Run with least privileges E.g., not root, nosuid, noexec
  • 15.
    The S inSAMP 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
  • 16.
    Performance Tuning Whichfunctions are being called by Drupal? # dtrace -n function-entry'{printf("called %s() in %s at line %d\n",\ 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
  • 17.
    Resource Management &Isolation Projects # projadd -c "Apache-PHP" -U webservd httpd.php # projmod -sK "project.max-sem-ids=(privileged,256,deny)" 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
  • 18.
    Versioning & ProtectingData $ zfs snapshot /data/db1/scott@21Sep $ zfs snapshot /data/db1/scott@22Sep ZFS snapshots
  • 19.
    Drupal and JavaRequires quercus Gives you: Database connection pooling Clustering with Terracotta PHP apps in Glassfish
  • 20.
    Drupal and JavaGraph 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
  • 21.
    For More InformationOpen Architecture Network & AFH http://www.openarchitecturenetwork.org/ http://www.architectureforhumanity.org/ http://www.ted.com/index.php/speakers/view/id/54 http://www.architectureforhumanity.org/programs/africa/advisory.html
  • 22.
    For More InformationSMF & Security http://blogs.sun.com/downstream/tags/smf http://www.opensolaris.org/os/community/smf/ http://www.sun.com/software/solaris/howtoguides/s10securityhowto.jsp Dtrace http://blogs.sun.com/bmc/entry/dtrace_and_php_demonstrated http://blogs.sun.com/shanti/entry/debugging_amp
  • 23.
    Constant innovation FreeOpen source Incredible performance Enterprise class, worldwide, 24x7 cost-effective support Runs on more hardware Runs more applications We protect our customers We protect the community Huge numbers of customers, installed base, partners Why Solaris?
  • 24.
    Get Solaris sun.com/solaris/getGet Data Sheets and White Papers sun.com/solaris/reference_materials Get Trained sun.com/solaris/freetraining | Learning Paths: sun.com/training/solaris 1 2 3 4 Get Started with Solaris Learning Centers sun.com/solaris/teachme 5 Get Current sun.com/solaris/move | bigadmin.com/apps | bigadmin.com/hcl 6 Get Involved opensolaris.org | bigadmin.com | developers.sun.com/solaris
  • 25.
    Q&A Scott MattoonSun Microsystems, Inc.