Nuxeo on the Cloud - Nuxeo World 2011
Upcoming SlideShare
Loading in...5
×
 

Nuxeo on the Cloud - Nuxeo World 2011

on

  • 1,479 views

 

Statistics

Views

Total Views
1,479
Views on SlideShare
1,474
Embed Views
5

Actions

Likes
1
Downloads
24
Comments
0

1 Embed 5

http://coderwall.com 5

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

CC Attribution License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Things are getting faster\nDevs need to care about Ops\nOps need to care about Dev\nIf you're going to deploy 10 times a day you need to talk.\nOne continuous team, not “us vs. them”.\n
  • Devs asked to iterate and deliver quickly\nOps tasked with keeping things safe and secure and stable\n
  • Devs asked to iterate and deliver quickly\nOps tasked with keeping things safe and secure and stable\n
  • \n
  • We take your expertise and distill it into Juju Charms\nHigher level than configuration management.\nOnly do things once, don't repeat yourself.\nDon't repeat others.\nBest practice out of the box.\nThink of it like an API layer for your deployment.\n No restriction on how you want to deploy\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

Nuxeo on the Cloud - Nuxeo World 2011 Nuxeo on the Cloud - Nuxeo World 2011 Presentation Transcript

  • Nuxeo on the Cloud Stefane Fermigier (Nuxeo), Nick Barcet (Canonical) - 2011/10/21Open Source ECM
  • What’s the Cloud? 2
  • Cloud Services Applications Application containers Virtual machines and storage 3
  • Scale As You Need• Manual or Automatic provisioning• The Cloud knows what’s available 4
  • Pay As You Go• Instances (Memory, CPU)• Storage• Bandwidth• Applications 5
  • Public / Private / Hybrid• Public commercial cloud• Private instances • Needs the full cloud machinery locally• Hybrid model 6
  • Why Nuxeo on the Cloud? 7
  • Use Cases and BusinessMotivations• Developers• Business Users• Ops 8
  • Nuxeo Cloud for Developers• Quick setup of development instances• Rapid deployment from Nuxeo Studio and Nuxeo IDE 9
  • Nuxeo Cloud for Business• Quick setup of business applications• Customize using profiles from the Nuxeo Marketplace in the Update Center 10
  • Nuxeo Cloud for Ops• Simplify and speed up Nuxeo deployment on public or private clouds (e.g. OpenStack)• Manage your instances 11
  • Current Stateof Nuxeo Cloud 12
  • Nuxeo as SaaS• Running on Amazon EC2• Managed Nuxeo instances• Customizable through Nuxeo Studio• Arbitrary plugins allowed 13
  • Nuxeo as SaaS 14
  • Nuxeo on IaaS• CloudFormation scripts (Amazon)• Or pre-baked images (AMI) 15
  • 16
  • Upcoming Offers 17
  • Nuxeo on IaaS• Short term projects• Upcoming support for more IaaS providers (ex: Rackspace) and private IaaS (ex: OpenStack) 18
  • Nuxeo on a PaaS• Short / medium term projects• Options: Elastic Beanstalk, CloudBees, Cloud Foundry, OpenShift... • All need customization due to our own specific needs • CloudFoundry is currently the only open source solution• Need an open source platform to adapt it to our own needs (Studio, Update Center...) • Cloud Foundry (maybe) • OpenShift when they decide to open it for real 19
  • Focus on CloudFoundry• Set of command-line tools to deploy applications (Java, Ruby, Node...) to a public PaaS (owned by VMWare) or your own• Takes care of application provisioning, starting, stopping, monitoring• Can add / remove instances to scale up / down your applications 20
  • Nuxeo on CloudFoundry• One needs to patch several pieces of CloudFoundry• Sample Usage: $ vmc push myapp --no-start $ vmc start myapp $ vmc apps +-------------+----+---------+----------------+------------------+ | Application | # | Health | URLS | Services | +-------------+----+---------+----------------+------------------+ | myapp | 1 | RUNNING | myapp.vcap.me | myappdb | +-------------+----+---------+----------------+------------------+ 21
  • Current issues• We still need to figure out how to support some important Nuxeo features on this platform: • Hot deploy / reload • Updates through Nuxeo Connect 22
  • Scale up $ vmc instances myapp +1 $ vmc instances myapp +-------+----------+--------------------+ | Index | State | Start Time | +-------+----------+--------------------+ | 0 | RUNNING | 09/30/2011 05:20PM | | 1 | RUNNING | 09/30/2011 05:24PM | +-------+----------+--------------------+ 23
  • Nuxeo as a PaaS• Longer term• Multi-tenant PaaS specific to ECM applications• ECM as a service 24
  • Nick Barcet• Presentation of Juju 25
  • DevOps, Distilled
  • What is DevOps? Rate of agile development and deployment requires deeper interaction between teams A melding of development, deployment, and QA principles, methods, and practices Fills the gap between developers and system administratorsPresentation by Nick Barcet
  • What drives DevOps? Speed of the deployment Continuous Integration, Automated Testing, etc. Fast change vs. StabilityPresentation by Nick Barcet
  • What does DevOps “deliver”? Fast repeatable server setup, consistent environment Abstract ops tasks to empower devs Smaller deployments empower ops Repeatable processes that let you scale out quicklyPresentation by Nick Barcet
  • Youve got the tools already Hardware Virtualization Platform (OS) Configuration Management need to tie that together into something whole.Presentation by Nick Barcet
  • Manages Services, not MachinesPresentation by Nick Barcet
  • Elevate to Juju Service Orchestration Configuration Management Virtualization Operating System HardwarePresentation by Nick Barcet
  • Juju, DevOps DistilledDev Ops Reuse existing deployment charms in an Explicit control over deployment, openly-accessible repository of shared configuration and upgrade options expertise See what’s deployed and track usage in the Reproduce deployments for test and cloud staging purposes Create and share charms for new Rapid deployment of your dependencies applications for development purposes Monitor, scale, shrink and adjust Compose whole systems from individual deployment parameters in real time application components and describe the Explicitly connect different components and entire deployment maintain those relationships over time Collaborate with developers on the exact deployment and upgrade processes Get more done: implement decisions immediately regardless of infrastructure scale http://juju.ubuntu.com Presentation by Nick Barcet
  • Jujus Charms Charms are a shareable, re-usable, and repeatable expressions of DevOps best practices. You can use them unmodified, or easily change and connect them to fit your needs. Deploying a formula is similar to installing a package on Ubuntu: ask for it and it’s there, remove it and it’s completely gone. Presentation by Nick Barcet
  • Juju is a community of DevOps expertise. Most of the application you want will be available in Juju. Juju provides direct and free access to a DevOps community-contributed collection of formulasPresentation by Nick Barcet
  • Juju provides service orchestration Juju focuses on managing the service units you need to deliver a single solution, above simply configuring the machines or cloud instances needed to run them. Charms developed, tested, and deployed on your own hardware will operate the same in an EC2 API compatible cloud, including OpenStack.Presentation by Nick Barcet
  • Juju is intelligent Juju exposes re-usable service units and well-defined interfaces that allow you to quickly and organically adjust and scale solutions without repeating yourself.Presentation by Nick Barcet
  • Juju is Easy There’s no need to learn a domain specific language (DSL) to use Juju or create formulas. You can be up and running with your own formula in minutesPresentation by Nick Barcet
  • Jujus internalsPresentation by Nick Barcet
  • Juju Juju treats individual services as atoms that are described as charms and can be Juju environment instantiated one or many times. Cloud app and dependency solverPresentation by Nick Barcet OpenStack in Action, Paris
  • Juju Juju treats individual services as atoms that are described as charms and can be Juju environment instantiated one or many times. Cloud app Cloud app and dependency solverPresentation by Nick Barcet OpenStack in Action, Paris
  • Juju Juju treats individual services as atoms that are described as charms and can be Juju environment instantiated one or many times. Cloud app Cloud app Cloud app and dependency solverPresentation by Nick Barcet OpenStack in Action, Paris
  • Juju Load Balancer Each charm (or atom) define dependencies and/or provides. Depends Juju environment Cloud app Cloud app Cloud app and dependency solver Depends SQL DatabasePresentation by Nick Barcet OpenStack in Action, Paris
  • Juju Load Balancer HAProxy Each charm (or atom) define dependencies and/or provides. Depends Provides Juju environment Cloud app Cloud app Cloud app and dependency solver Depends SQL DatabasePresentation by Nick Barcet OpenStack in Action, Paris
  • Juju Load Balancer HAProxy Each charm (or atom) define dependencies and/or provides. Depends Provides Juju environment Cloud app Cloud app Cloud app and dependency solver Provides Depends SQL Database MySQLPresentation by Nick Barcet OpenStack in Action, Paris
  • Juju Load Balancer HAProxy Varnish Multiple charms can provide the same service and can be easily switched. Depends Provides Juju environment Cloud app Cloud app Cloud app and dependency solver Provides Depends SQL Database MySQLPresentation by Nick Barcet OpenStack in Action, Paris
  • Juju Varnish Varnish Juju maintains the relations between the services so that you dont need to care Juju environment about the elasticity of your environment. Cloud app Cloud app Cloud app Relations are to charms and dependency solver what bounds are to atoms. Services are loosely coupled MySQL MySQL but highly cohesive. MySQLPresentation by Nick Barcet OpenStack in Action, Paris
  • Juju Varnish Juju delivers service focused management through their life-cycle Juju environment  Offers the same simple rules to components of you infra as we do already for packages on your servers: Cloud app Cloud app dependencies, provides Cloud app  Adds the notion of dynamic relations between components and dependency solver*  To provide you with simple automated elasticity that is easy to expand  Working on your bare metal servers (through Orchestra*) as easily as on your favourite clouds (AWS, OpenStack*, ...) MySQLPresentation by Nick Barcet OpenStack in Action, Paris soon *coming
  • Jujus ArchitechturePresentation by Nick Barcet
  • Thank youNick Barcet<nick.barcet@canonical.com>www.ubuntu.com
  • Nuxeo on Juju 47
  • Use case• We already know how to deploy single server instances of Nuxeo on the cloud (ex: using CloudFormation)• But deploying fault-tolerant and scalable multi- servers instances is still a manual process• Enters Juju... 48
  • Target architecture 49
  • Bootstrap the environment $ juju bootstrap # Wait a couple of minutes $ juju status .. 50
  • Launch the services $ juju deploy --repository=charms local:haproxy $ juju deploy --repository=charms local:nuxeo $ juju deploy --repository=charms local:postgres-nuxeo 51
  • 52
  • Connect the services together $ juju add-relation haproxy:reverseproxy nuxeo:website $ juju add-relation postgres-nuxeo:db nuxeo:db 53
  • 54
  • Open the business! $ juju expose haproxy 55
  • Users are coming ! 56
  • Add more servers! $ juju add-unit nuxeo $ juju add-unit nuxeo 57
  • 58
  • Additional goodies• NFS storage (or S3 / S3-like)• Monitoring• Auto-scalability (add more Nuxeo servers when loads increases, remove them afterwards)• HA and scale out for the PostgreSQL, for HAProxy• Backups• Integration with Nuxeo Connect & Nuxeo Marketplace 59
  • Work in progress• Juju is still a developer preview (will reach production-readiness in April 2012)• Watch (and contribute to) our charms on http://github.com/nuxeo/nuxeo-juju 60