Td Mxc Amp Virikki

Embed Size (px)

Citation preview

  • 8/14/2019 Td Mxc Amp Virikki

    1/27

    Sun Confidential: Internal Only 1

    OpenSolaris and SAMP(Solaris , Apache, MySQL,

    PHP)

    Jyri J. Virkki

    Senior Staff Engineer

    Sun Microsystems

    1

  • 8/14/2019 Td Mxc Amp Virikki

    2/27

    Sun Confidential: Internal Only 2

    Agenda

    Introduction to Web Stack Review of Current Web Stack Components Demos Summary

  • 8/14/2019 Td Mxc Amp Virikki

    3/27

    Sun Confidential: Internal Only 3

    Looking Back to Summer '07 Web Stack project started in July 2007

    OpenSolaris had> Apache httpd - outdated version

    >MySQL - outdated version> No PHP or other web tier components available from Sun

    A heavyweight integration process> I estimated about 2.5 new components per year per full-time engineer

    > Making it nearly impossible for OpenSolaris to catch up to otherdistributions in application availability

    > A source repository model which cannot scale to present needs sfw consolidation = all general-purpose open source components in a

    single source tree built together at the same time

  • 8/14/2019 Td Mxc Amp Virikki

    4/27

    Sun Confidential: Internal Only 4

    Web Stack Project

    One sentence summary:> The goal of this project is to address the OpenSolaris community needs

    for web tier technologies

    A project within OpenSolaris

    > Pure open source effort, all build trees on opensolaris.org> http://opensolaris.org/os/project/webstack/

    Contributors from a wide range of groups within Sun

    Package contribution from all of you are welcome!> Sadly external contributions still have excessive overhead> But it is improving and alternatives are emerging!

    > Join the list to influence design decisions based on your needs

    > Contact Jyri Virkki for guidance if you are interested in owning thedelivery of any new web tier component

  • 8/14/2019 Td Mxc Amp Virikki

    5/27

    Sun Confidential: Internal Only 5

    Web Stack Project Goals

    As first priority, deliver (or update) the AMP components inOpenSolaris> Components are being integrated into the public source tree available

    from OpenSolaris.org> Therefore became available in both SXDE/SXCE distributions as well asOpenSolaris distributions

    Project started by targeting the inclusion of a fully integratedAMP stack into SXDE 1/08 (done!)

    With more components and additional functionalitybecoming available in May'08 OpenSolaris distribution

  • 8/14/2019 Td Mxc Amp Virikki

    6/27

  • 8/14/2019 Td Mxc Amp Virikki

    7/27Sun Confidential: Internal Only 7

    Web Stack Project Goals

    Highlights of OpenSolaris integration areas:> smf support- daemon processes (such as Apache, Squid, MySQL) are

    enhanced to be manageable via smf

    > dtrace probes - dtrace is a key observability advantage in OpenSolaris,therefore Web Stack project seeks to enhance components with dtrace

    probes wherever applicable> zones/layout compatibility- components are configured to be compatible

    with OpenSolaris layout needs e.g. configuration under /etc, runtime variable files under /var

    and so on

    > RBAC support- where applicable, components define rights profiles soadministration can be delegated

    OpenSolaris performance> We seek to fix bugs and tune configuration for optimal performance on

    OpenSolaris (and on scalable hardware)

  • 8/14/2019 Td Mxc Amp Virikki

    8/27Sun Confidential: Internal Only 8

    Dtrace: OpenSolaris killer feature

    Comprehensive tracing facility used to examine the behaviorof both user programs and of the OS.

    Understand how the system works, track down performance

    problems across many layers of software, or locate thecause of aberrant behavior.

    Dynamically modify the OS kernel and user processes torecord additional data that you specify at locations of

    interest, called probes. Probes are like programmable sensors scattered all over

    your OpenSolaris system in interesting places

  • 8/14/2019 Td Mxc Amp Virikki

    9/27Sun Confidential: Internal Only 9

    Web Stack Project Goals

    Another key goal of the project is to help improve thedelivery time and process> Delivering components necessary but not sufficient

    > We need to enable distributed, streamlined delivery in order to trulysucceed in the long term

    We have been able to drive improvement in the agility of theprocess of making open source components available forOpenSolaris

    We are also working hard on making the process moretransparent and more accessible> So that all of you can contribute your favorite components through a

    convenient process

  • 8/14/2019 Td Mxc Amp Virikki

    10/27Sun Confidential: Internal Only 10

    Where We Are Today

    Full AMP stack (and more) available and integrated> More detail in next section

    Integration processes are improving so we can acceleratedelivery> But most improvements are not very visible outside Sun yet so work

    remains

    Web Stack delivery goals are aligning closely with the riseof IPS package distribution

    > Experimental repository already available

    Source repository model not quite resolved yet (thoughalternatives appearing)> (Components still going into a single consolidation, will not scale)

  • 8/14/2019 Td Mxc Amp Virikki

    11/27Sun Confidential: Internal Only 11

    A Word on CoolStack

    CoolStack is a related project> Also hosted by the Web Stack community

    > Also delivers web tier components

    > http://opensolaris.org/os/project/webstack/coolstack/> http://cooltools.sunsource.net/coolstack/

    Target is currently Solaris 10> For current production systems

    > Support pilot program in place> Delivered as unbundled applications (under /opt)

    > Not fully integrated into Solaris (no smf/RBAC/etc integration)

    > Performance tuned for Solaris

  • 8/14/2019 Td Mxc Amp Virikki

    12/27Sun Confidential: Internal Only 12

    Looking Ahead

    More components> lighttpd, applications/frameworks (drupal), administration components and

    much more

    > As always, suggest/contribute: [email protected]

    More features> PHP pear/pecl, 64bit, more modules and extensions

    > Performance improvement work across the board

    Continue to drive unconsolidation

    > Fulfill the need for a scalable (tens of thousands of packages) andmaintainable source and build infrastructure

    Most importantly:> Simplify ways for you to participate and contribute

  • 8/14/2019 Td Mxc Amp Virikki

    13/27Sun Confidential: Internal Only 13

    Beyond Web Stack

    While this talk concentrates on web tier components> and how to improve content and timeliness of delivery in our area

    That's just a start...

    Ultimately these delivery improvements are needed in allareas for OpenSolaris, not only Web Stack

    Food for thought...> Debian stable currently has O(20000) packages

    Let's get there for OpenSolaris First we must make it easy for you to participate...

    It's happening!

  • 8/14/2019 Td Mxc Amp Virikki

    14/27Sun Confidential: Internal Only 14

    Agenda

    Introduction to Web Stack Review of Current Web Stack Components

    Demos Summary

  • 8/14/2019 Td Mxc Amp Virikki

    15/27

    Sun Confidential: Internal Only 15

    Apache HTTPD

    Current version is 2.2.8> Both worker and prefork MPMs

    > Both 32bit and 64bit

    > SUNWapch22 and SUNWapch22d (documentation)

    mod_dtrace, mod_fcgid, mod_security, mod_jk, mod_php> In addition to a long list of included modules

    > SUNWapch22m-* packages

    Look for it in

    > /usr/apache2/2.2/*, /etc/apache2/2.2/*, /var/apache2/2.2/*> Live configuration goes into /etc/apache2/2.2/conf.d/

    (sample configs found in /etc/apache2/2.2/samples-conf.f/)

    % svcadm enable apache22

    Apache 22 Administration::::auths=solaris.smf.manage.http/apache22,solaris.smf.value.http/apache22

  • 8/14/2019 Td Mxc Amp Virikki

    16/27

    Sun Confidential: Internal Only 16

    MySQL

    Current version is 5.0.45> SUNWmysql5

    dtrace support added in latest version> Not yet in the integrated (5.0.45) version

    > ... but soon to be included

    Look for it in> /usr/mysql/5.0/*, /etc/mysql/5.0/*, /var/mysql/5.0/*

    Profile:> MySQLAdministration::::auths=solaris.smf.manage.mysql/version_50,

    solaris.smf.value.mysql/version_50

  • 8/14/2019 Td Mxc Amp Virikki

    17/27

    Sun Confidential: Internal Only 17

    PHP

    Current version is 5.2.4 (soon to be updated)> SUNWphp524[core|doc|usr|man] (package split to be fixed)

    > Many extensions are included

    Some extensions packages separately for dependencies> SUNWphp524-mysql, SUNWphp524-pgsql

    Look for it in> /usr/php5/5.2.4/*, /etc/php5/5.2.4/*

    To enable in Apache, simply install the package> It will install a php5.conf into apache conf.d to enable itself> # pkg install SUNWapch22m-php5

    > % cat /etc/apache2/2.2/conf.d/php5.conf

  • 8/14/2019 Td Mxc Amp Virikki

    18/27

    Sun Confidential: Internal Only 18

    Beyond Just AMP

    There is more to Web Stack than AMP components All web tier applications (and related libraries) are in scope

    Available today from pkg.opensolaris.org:

    Squid (2.6.STABLE17) [SUNWsquid]> smf support included> svcadm enable svc:/network/http:squid

    Ruby (1.8.6) and gems (0.9.4) [SUNWruby18]

    > Ruby includes dtrace probes as well http://blogs.sun.com/prashant/entry/dtrace_support2

    > gem support included for installing additional components e.g. Rails

    memcached (1.2.5) [SUNWmemcached]

    http://blogs.sun.com/prashant/entry/dtrace_support2http://blogs.sun.com/prashant/entry/dtrace_support2
  • 8/14/2019 Td Mxc Amp Virikki

    19/27

    Sun Confidential: Internal Only 19

    Experimental Components

    Web Stack also provides experimental components> These components may or many not work on any given day and they are

    updated often...

    Some are early access builds

    > Projects which are on track to become fully integrated> Still in development but available for early access testing

    One example today is lighttpd (SUNWlighttpd) - try it out!

    And some are just experiments (for now?)

    > No immediate plan to promote to the primary repositories> But if there is interest (or volunteer owners), can be promoted

    > Examples today include: varnish (SUNWvarnish), phpMyAdmin (SUNWphp5-myadmin)

  • 8/14/2019 Td Mxc Amp Virikki

    20/27

    Sun Confidential: Internal Only 20

    Experimental Web Stack Repository

    Today, only Web Stack has experimental repository> Only because Web Stack is the pioneer community

    > Desire is to have a home for all experimental packages

    % pfexec pkg set-authority -Ohttp://pkg.opensolaris.org/webstack webstack

    % pfexec pkg refresh% pfexec pkg list -a NAME (AUTHORITY) VERSION STATE SUNWlighttpd14r (webstack) 0-1 known ----

    SUNWlighttpd14u (webstack) 0-1 known ----SUNWphp5-myadmin (webstack) 0-1 known ----SUNWvarnish (webstack) 0-1 known ----SUNWwebstack-build (webstack) 0-1 known ----SUNWwebstackui (webstack) 0-1 known ----

    % pfexec pkg install SUNWvarnish

    http://pkg.opensolaris.org/webstackhttp://pkg.opensolaris.org/webstack
  • 8/14/2019 Td Mxc Amp Virikki

    21/27

    Sun Confidential: Internal Only 21

    Experimental Web Stack Repository

    Details may change> As the experimental repository itself is still ... experimental!

    Check my blog for the latest developments> http://blogs.sun.com/jyrivirkki/

    Or ask on the list if you run into any difficulties> [email protected]

    http://blogs.sun.com/jyrivirkki/http://blogs.sun.com/jyrivirkki/
  • 8/14/2019 Td Mxc Amp Virikki

    22/27

    Sun Confidential: Internal Only 22

    Agenda

    Introduction to Web Stack Review of Current Web Stack Components Demos

    Summary

  • 8/14/2019 Td Mxc Amp Virikki

    23/27

    Sun Confidential: Internal Only 23

    Demonstrations

    All the demos start with a fresh install of OpenSolaris2008.05 with nothing preconfigured

    Apache and PHP> Install Apache, check it works

    > Install PHP, add very simple PHP page> Install Apache-PHP connector and configuration, test it

    Experimental Web Stack Repository> Configure experimental Web Stack repository

    > Install some packages from it

    Wordpress> From new OpenSolaris install to working Wordpress installation in (less

    than) 5 minutes

  • 8/14/2019 Td Mxc Amp Virikki

    24/27

    Sun Confidential: Internal Only 24

    Agenda

    Introduction to Web Stack Review of Current Web Stack Components Demos Summary

  • 8/14/2019 Td Mxc Amp Virikki

    25/27

    Sun Confidential: Internal Only 25

    Summary

    OpenSolaris LiveCD is here

    IPS repositories are online serving packages> Primary OpenSolaris repository:

    http://pkg.opensolaris.org

    > Web Stack Experimental: http://pkg.opensolaris.org/webstack

    Full AMP stack (and more) is fully integrated

    Tools support is integrated Go, get it and play with it!

    Please send feedback (and consider joining the community)> [email protected]

  • 8/14/2019 Td Mxc Amp Virikki

    26/27

    Sun Confidential: Internal Only 26

    More Information

    Web Stack Project> http://opensolaris.org/os/project/webstack/

    > http://www.opensolaris.org/jive/forum.jspa?forumID=200

    > [email protected]

    OpenSolaris> http://opensolaris.org/os/

    > http://opensolaris.org/os/project/indiana/resources/getit/

    > http://defect.opensolaris.org

    Blogs> http://blogs.sun.com/jyrivirkki/

  • 8/14/2019 Td Mxc Amp Virikki

    27/27

    Jyri J. [email protected]