Oyster: an incubator for perls in the cloud

27
http://www.fickr.com/photos/rainchurch/3163870154/ http://www.fickr.com/photos/rainchurch/3163870154/ Oyster Oyster an incubator an incubator for Perls in for Perls in the cloud the cloud Pitch for NorthWestEngland.pm Hackday, 16 Pitch for NorthWestEngland.pm Hackday, 16 th th Sep 2010 Sep 2010 [email protected] [email protected]

description

My proposal for northwestengland.pm's Hackday. Oyster will be an opensource set of tools and modules to enable easy provisioning and deployment of Perl web-apps to the cloud. Oyster was selected as the main application for the Hackday on 20th December. During the day we'll also be working on Iain's "Hackday in a Box" application (which will be the first test application for Oyster!); triaging Perl bugs; and adding features to last year's project Ironman. Why Aim So Low indeed!

Transcript of Oyster: an incubator for perls in the cloud

Page 1: Oyster: an incubator for perls in the cloud

http://www.fickr.com/photos/rainchurch/3163870154/http://www.fickr.com/photos/rainchurch/3163870154/

OysterOysteran incubator an incubator for Perls in for Perls in the cloudthe cloud

Pitch for NorthWestEngland.pm Hackday, 16Pitch for NorthWestEngland.pm Hackday, 16thth Sep 2010 Sep [email protected]@cpan.org

Page 2: Oyster: an incubator for perls in the cloud

Easy Deployment!Easy Deployment!● Write an Write an

appapp● Host it in Host it in

the cloud!the cloud!● Launch Launch

server by server by pushing to pushing to gitgit

Page 3: Oyster: an incubator for perls in the cloud
Page 4: Oyster: an incubator for perls in the cloud
Page 5: Oyster: an incubator for perls in the cloud
Page 6: Oyster: an incubator for perls in the cloud
Page 7: Oyster: an incubator for perls in the cloud

Easy Deployment!Easy Deployment!● Write an Write an

appapp● Host it in Host it in

the cloud!the cloud!● Launch Launch

server by server by pushing to pushing to gitgit

● Why Ruby Why Ruby not Perl?not Perl?

Page 8: Oyster: an incubator for perls in the cloud

Walled GardenWalled Garden● heroku heroku

manage manage Amazon Amazon instancesinstances

● Standard Standard buildsbuilds

Amazon Amazon EC2EC2

Page 9: Oyster: an incubator for perls in the cloud

Walled GardenWalled Garden● heroku heroku

manage manage Amazon Amazon instancesinstances

● Standard Standard buildsbuilds

Amazon Amazon EC2EC2

$$$ discount pricing$$$ discount pricing

Page 10: Oyster: an incubator for perls in the cloud

Walled GardenWalled Garden● heroku heroku

manage manage Amazon Amazon instancesinstances

● Standard Standard buildsbuilds

Amazon Amazon EC2EC2

Dyno build:Dyno build:gitgitrack apprack appmemcachedmemcachedPostgres onlyPostgres onlyrestrictions on modules restrictions on modules

Page 11: Oyster: an incubator for perls in the cloud

http://www.fickr.com/photos/beautifulrust/3921191447

Oyster: incubator for PerlsOyster: incubator for Perls● EC2 standardEC2 standard

● Net::Amazon::EC2Net::Amazon::EC2● open-source copies open-source copies

available available (Ubuntu / Eucalyptus)(Ubuntu / Eucalyptus)

● Task::KenshoTask::Kensho● Catalyst/PlackCatalyst/Plack● Storage (EBS)Storage (EBS)

– DBIC+pgDBIC+pg– KiokuDBKiokuDB

● Other standardsOther standards– git / lighttpd / git / lighttpd /

memcachedmemcached

Page 12: Oyster: an incubator for perls in the cloud

http://www.fickr.com/photos/beautifulrust/3921191447

Oyster: incubator for PerlsOyster: incubator for Perls● Client buildClient build

● standard package / standard package / VM buildVM build

● Server buildServer build● AMI instanceAMI instance

Page 13: Oyster: an incubator for perls in the cloud

http://www.fickr.com/photos/beautifulrust/3921191447

Oyster: incubator for PerlsOyster: incubator for Perls● Client buildClient build

● standard package / standard package / VM buildVM build

● Server buildServer build● AMI instanceAMI instance

● Not walled garden!Not walled garden!● Speak to Amazon Speak to Amazon

yourselfyourself

Page 14: Oyster: an incubator for perls in the cloud

http://www.fickr.com/photos/beautifulrust/3921191447

Oyster: incubator for PerlsOyster: incubator for Perls● Client buildClient build

● standard package / standard package / VM buildVM build

● Server buildServer build● AMI instanceAMI instance

● Not walled garden!Not walled garden!● Speak to Amazon Speak to Amazon

yourselfyourself● Set up your own cloud!Set up your own cloud!

– (community could do this?)(community could do this?)

Page 15: Oyster: an incubator for perls in the cloud

http://www.fickr.com/photos/beautifulrust/3921191447

Oyster: incubator for PerlsOyster: incubator for Perls● Client buildClient build

● standard package / standard package / VM buildVM build

● Server buildServer build● AMI instanceAMI instance

● Not walled garden!Not walled garden!● Speak to Amazon Speak to Amazon

yourselfyourself● Set up your own cloud!Set up your own cloud!

– (community could do this?)(community could do this?)– (commercial ecosystem)(commercial ecosystem)

Page 16: Oyster: an incubator for perls in the cloud

Walled Garden Walled Garden (optional)(optional)

Amazon Amazon EC2EC2

locallocalhosthost

git repogit repoDB DB

serverserverAmazon Amazon

EC2EC2

locallocalhosthost

git repogit repo

DB DB serverserver

Page 17: Oyster: an incubator for perls in the cloud

http://www.fickr.com/photos/beautifulrust/3921191447

Oyster: incubator for PerlsOyster: incubator for Perls● Community servicesCommunity services

● Try Perl!Try Perl!– easy, no-easy, no-

commitment commitment provisioningprovisioning

– 1-4 hours for testing1-4 hours for testing– or 1-12 months for or 1-12 months for

incubation?incubation?

Page 18: Oyster: an incubator for perls in the cloud

http://www.fickr.com/photos/beautifulrust/3921191447

Oyster: incubator for PerlsOyster: incubator for Perls● Community servicesCommunity services

● Try Perl!Try Perl!– easy, no-easy, no-

commitment commitment provisioningprovisioning

– 1-4 hours for testing1-4 hours for testing– or 1-12 months for or 1-12 months for

incubation?incubation?– … … free hosting for free hosting for

community projects?community projects?

Page 19: Oyster: an incubator for perls in the cloud

http://www.fickr.com/photos/beautifulrust/3921191447

Oyster: incubator for PerlsOyster: incubator for Perls● Community servicesCommunity services

● Try Perl!Try Perl!– easy, no-easy, no-

commitment commitment provisioningprovisioning

– 1-4 hours for testing1-4 hours for testing– or 1-12 months for or 1-12 months for

incubation?incubation?– … … free hosting for free hosting for

community projects?community projects?● How?How?

– (sponsor EC2 costs?)(sponsor EC2 costs?)– (or build cloud?)(or build cloud?)

Page 20: Oyster: an incubator for perls in the cloud

http://www.fickr.com/photos/docman/3197133846

TasksTasks● Create standard AMICreate standard AMI

● launch Catalyst app to EC2launch Catalyst app to EC2● launch Plack app to EC2launch Plack app to EC2

● frontend frontend ● Dist::Zilla?Dist::Zilla?● git?git?● Web?Web?

Page 21: Oyster: an incubator for perls in the cloud

http://www.fickr.com/photos/docman/3197133846

TasksTasks● Names!Names!

● ““Oyster”Oyster”● Graphic design / interactionGraphic design / interaction

● project pagesproject pages● management panelsmanagement panels

● Investigate herokuInvestigate heroku● features to stealfeatures to steal● reputation / fundingreputation / funding

Page 22: Oyster: an incubator for perls in the cloud

● Build a cloud!Build a cloud!● Standard client Standard client (developer VMware image)(developer VMware image)● Management toolsManagement tools

● meta-cloud?meta-cloud?● Technical integrationTechnical integration

● persist dependencies (local::lib)persist dependencies (local::lib)● git hooksgit hooks● DBIC/Kioku via EBSDBIC/Kioku via EBS

● look into sponsorshiplook into sponsorshiphttp://www.fickr.com/photos/docman/3197133846

Moar Tasks!Moar Tasks!

Page 23: Oyster: an incubator for perls in the cloud

● 1. Proof of concept1. Proof of concept● 2. Batteries included 2. Batteries included

(website, VMs, easy (website, VMs, easy signup)signup)

● 3. Some support for 3. Some support for hosted service hosted service (incubation)(incubation)

● 4. Ecosystem of 4. Ecosystem of community / community / commercial oferings. commercial oferings. World domination! World domination!

http://www.fickr.com/photos/staylor336/2231280115/

PhasesPhases

Page 24: Oyster: an incubator for perls in the cloud

● 1. Proof of concept1. Proof of concept● 2. Batteries included 2. Batteries included

(website, VMs, easy (website, VMs, easy signup)signup)

● 3. Some support for 3. Some support for hosted service hosted service (incubation)(incubation)

● 4. Ecosystem of 4. Ecosystem of community / community / commercial oferings. commercial oferings. World domination! World domination!

http://www.fickr.com/photos/staylor336/2231280115/

PhasesPhases

Page 25: Oyster: an incubator for perls in the cloud

Benefts to CommunityBenefts to Community

● Ruby oneupmanship ;-)Ruby oneupmanship ;-)● Push Task::KenshoPush Task::Kensho● Better tools / lower frictionBetter tools / lower friction● Show we're not afraid of exciting, trendy Show we're not afraid of exciting, trendy

things like “the Cloud”things like “the Cloud”

http://www.fickr.com/photos/deaconmacmillan/2977657683http://www.fickr.com/photos/deaconmacmillan/2977657683

Page 26: Oyster: an incubator for perls in the cloud

Scope for hackday?Scope for hackday?● FunFun● Tasks forTasks for

● developerdeveloper● sysadminsysadmin● non-technicalnon-technical

● PeriodPeriod● One day spikeOne day spike● Year-long projectYear-long project

http://www.fickr.com/photos/deaconmacmillan/2977657683http://www.fickr.com/photos/deaconmacmillan/2977657683

Page 27: Oyster: an incubator for perls in the cloud

http://www.fickr.com/photos/rainchurch/3163870154/http://www.fickr.com/photos/rainchurch/3163870154/

Tanks!Tanks!any any

questions?questions?

Pitch for NorthWestEngland.pm HackdayPitch for NorthWestEngland.pm [email protected]@cpan.org