Stackato

Preview:

DESCRIPTION

Presentation of ActiveStates micro-cloud solution Stackato at Open Source Days 2012. Stackato is a cloud solution from renowned ActiveState. It is based on the Open Source CloudFoundry and offers a serious cloud solution for Perl programmers, but also supports Python, Ruby, Node.js, PHP, Clojure and Java. Stackato is very strong in the private PaaS area, but do also support as public PaaS and deployment onto Amazon's EC2. The presentation will cover basic use of Stackato and the reason for using a PaaS, public as private. Stackato can also be used as a micro-cloud for developers supporting vSphere, VMware Fusion, Parallels and VirtualBox. Stackato is currently in public beta, but it is already quite impressive in both features and tools. Stackato is not Open Source, but CloudFoundry is and Stackato offers a magnificent platform for deployment of Open Source projects, sites and services. ActiveState has committed to keeping the micro-cloud solution free so it offers an exciting capability and extension to the developers toolbox and toolchain. More information available at: https://logiclab.jira.com/wiki/display/OPEN/Stackato

Citation preview

Stackato- a developers experiences and evaluation

by jonasbn for Open Source Days 2012

Disclaimer• I am jonasbn - like almost everywhere

• Long time Perl and web developer

• Open Source/CPAN contributor and previously freelance developer in logicLAB

• Currently employed with DK Hostmaster

• I have no affiliation with ActiveState

Developer Needs• Easy access to platform, runtimes and

frameworks

• The least possible gap between development, test and production

• Minimal differences between deployed code and the code in the editor

• reproducibility for transparency

What do we have?• Unit-tests

• Mocked objects and classes, stubs a.s.o

• Local servers / emulators

• Virtualization

• Dedicated environments (dev/test/prod)

• Code - lots of code...

the Cloud

• What is the cloud?

• What problem does it solve?

• What needs does it address?

Talking Cloud

• You cannot ignore Amazon and EC2

Dr. Matt Wood (@mtz)

• Technology Evangelist with Amazon, working with Amazon Web Services (AWS)

• http://youtu.be/NT-ccnFMBWA

• from Internetdagarna 2011 in Stockholm/Sweden

Dr. Matt Wood / Heavy Lifting

Dr. Matt Wood / 30%

Points from Dr. Matt Wood

• 30-70% divide

• IT infrastructure friction

• Focus on your core competences

• Focus on delivering value

• http://www.slideshare.net/FDIHdk/ahead-in-the-cloud-matt-wood-amazon

The general issue of development vs. operations is quite wide-spread, see something like the GOTOCPH conference 2011 with a dedicated track

Amazon EC2

• Amazon EC2 however does not get us there - no matter how much elasticity it provides

• http://aws.amazon.com/

Perl in the cloud?

• @ActiveState introduces #stackato based on phenona and Cloud Foundry

• http://www.activestate.com/stackato

• http://www.cloudfoundry.com/

Stackato• A micro cloud

• current version 1.0.4

• just out of beta, released 2012.02.29

• Platform as a Service (PaaS)

• Supporting several languages, their frameworks and widely-used services

Hello World!first demo: in Perl using Mojolicious

recapfirst demo: in Perl using Mojolicious

initial deployment

• target, where do we want to deploy

• login, it is all a matter of permissions

• push, a “one-click” CLI deployment

Requirements

• PPM (ActivePerl)

• CPAN (App::cpanminus)

• requirements.txt

Sandboxing

• local::lib, encapsulates in a Perl sandbox

• Your apps will not intrude on each other - unless you want them too

inspecting deployment

• logs

• crashes

• crashlogs

• files

operating• start, start a service

• stop, stop a service

• restart, restart a service

• this is about it, for what I can provide, I have no experience with long time operation of a Stackato deployed service

• Oh there is one more thing...

Management Console

second demo: the built in management console

Hello Open Source Days

third demo: in Perl using Mojolicious

recapthird demo: in Perl using Mojolicious

updating

• update, when an application has been pushed (deployed) this is the command you will use

• stackato.yml - a configuration file for assisting deployment

All the little things

• binding DNS, going beyond mDNS

• binding services (databases et al.)

• resource allocation, memory, instances etc.

• logging (more on this later...)

• now for some architecture...

Support• @ActiveState fora

• #stackato on irc://irc.freenode.org with users and ActiveState staff

• Webcasts

• White papers

• ActiveState are incredibly open and cooperative

Open Source Examples

• @ActiveState examples on Github

• my own fork is on Github

• Github is nice!

Stackato is not

• Open Source - it is closed and proprietary

• @ActiveState is however dedicated to keeping the micro-cloud solution free

So what is in it?

Targets!• Multiple targets

• development / test / production

• Targets make sense in SCM context

• trunk / branches / tags (releases)

• You could just go for the micro-cloud, but you would loose some of the benefits

My Current Issues• Oracle as a service (DBD::Oracle and driver

distribution issue)

• Cryptographic components (export of PPMs)

• Deployment of custom components

• Service integration (PostgreSQL)

• Full blown examples (Mojolicious over Mojolicious::Lite etc.)

• mDNS and dynamic DNS (might be .local)

Conclusion

• The Stackato cloud is awesome

• @ActiveState mean serious business

• I am going to present and propose Stackato as a part of our future infrastructure

Benefits• Easy and controlled access to platform,

runtimes and frameworks

• The least possible gap between development, test and production and minimal differences between deployed code and the code in the editor depending on your cloud deployment

• reproducibility for transparency since the amount of magic is kept at a minimum

IDE Integrationfourth demo: Komodo IDE 7

Surprise!Komodo IDE 7 license

courtesy of @ActiveState

Game On!pick a number - any number!

jonasbn!

• @jonasbn, jonasbn@logicLAB.dk

• Blogs: logicLAB.org and logicLAB.dk

• Presentation on Slideshare.com

• logicLAB Open Wiki

• do you have 5 minutes! - of course

References• http://www.slideshare.net/FDIHdk/ahead-in-the-cloud-matt-wood-amazon

• http://youtu.be/NT-ccnFMBWA

• http://logiclab.dk/wordpress/2011/11/30/internetdagarna-day-2-matt-wood/

• http://en.wikipedia.org/wiki/WTF

• http://smallbiztechnology.com/archive/2011/09/wait-what-is-cloud-computing.html/

• http://www.activestate.com/stackato

• http://www.cloudfoundry.com/

• https://logiclab.jira.com/wiki/display/OPEN/Stackato

• https://github.com/jonasbn/stackato-samples

• https://github.com/ActiveState/stackato-samples

• http://aws.amazon.com/