SlideShare a Scribd company logo
1 of 27
Download to read offline
Apache Provisionr (incubating)

            Andrei Savu
         Bucharest JUG #10
About me

●   Founder of Axemblr.com
●   Organizer of Bucharest JUG (bjug.ro)
●   Apache Whirr PMC, ZooKeeper contributor
●   Passion for DevOps & Data Analysis

●   Connect with me on LinkedIn
@ Axemblr

●   Data Processing Infrastructure
●   Deployment Automation

●   Product: Hadoop On-Demand Appliance
●   Open Source (part of our DNA)
●   Fair amount of consulting (bootstrapping)
Agenda

●   What is Provisionr?
●   Challenges & Architecture
●   Demo (HDFS on EC2)
●   Future @ Apache Software Foundation
What is Provisionr?

.. and how does it help me create
    pools of virtual machines?
What?

●   Simple Service for Managing Pools of 10s
    or 100s of Virtual Machines

●   A way to create clusters of machines that
    share a common set of characteristics on
    multiple cloud providers
Characteristics like?

●   Operating system     ●   Network settings
●   Pre-installed        ●   Firewall
    packages &           ●   SSH config
    binaries
                         ●   Admin access
●   Sane DNS settings
    (forward & reverse   ●   VPN access
    dns resolution)      ●   etc.
●   NTP settings
Why? (initially)

●   Setup on-demand Hadoop clusters
    (Axemblr)

●   Handles basic setup for large clusters
●
    Service config by using 3rd party apps like
    Ambari or Cloudera Manager
Why? (long term)

       Core functionality is generic
                                                          Next generation
                                                           Apache Whirr?

  External                            Configuration
Specification         Events


                                                 Events
                Provisionr


                             Events         Monitoring
FAQ: Looks like Puppet?

●   No
●   Provisionr is actually using Puppet

●   Focus: Interact with IaaS APIs to start
    machines in groups with minimal configs
    (as listed before). Simple & reliable.
Challenges

How is the game different when we
work with 50-100+ virtual machines?
Challenges #1

●   API Throttling (batch calls)

●   Concurrency Control (across multiple
    instances)

●   Error handling, partial failures and
    automatic retries (idempotency)
Challenges #2

●   Granular internal workflows (short
    transactions)

●   State persistence across restarts and
    upgrades

●   Audit & Logging
Challenges #3

●   Integrating multiple native provider SDKs

●   Provide a plugin architecture (run just a
    sub-set of all the features)

●   Semi-automated and fully automated
    modes
Challenges #4

●   Automatic creation of gold images
Architecture

   Building Blocks, Internals,
Persistence, Packaging, Plugins
Activiti (from Alfresco)

●   Light-weight workflow engine (BPM)

●   Has a nice Java API
●   Has a nice set of tools
●   Handles persistence as expected
●   Good error handling (retryable activities)
Activiti – Process Execution
Activiti – Interactive View
Apache Karaf

●   Using it as an application server

●   Provides an interactive shell
●   Integrated with Activiti
●   Solves the packaging problem (custom
    distribution)
Apache Karaf - Shell
IaaS SDKs

●   AWS SDK for Java
    –   http://aws.amazon.com/sdkforjava/


●   jclouds (for CloudStack)
    –   http://www.jclouds.org/
Demo Time (video)

  Provisionr & Rundeck
CDH4 HDFS cluster on EC2
Summary

●   Provisionr solves the problem of creating
    large pools of virtual machines (100s)

●   Cloud portability by making the machines &
    the cluster indistinguishable from an
    application perspective on multiple clouds
Working on
●   Short term: first release compliant with the
    Apache Software Foundation policies

●   Automatic AMI creation (fast provisioning of
    large clusters)

●   Bundle Rundeck with the binary release
    and write support services
You're invited to join!

    http://provisionr.incubator.apache.org/


●   Code:
    –   git clone https://git-wip-us.apache.org/repos/asf/incubator-
        provisionr.git
●   Mailing list:
    –   dev-subscribe@provisionr.incubator.apache.org
Thanks! Questions?
     Andrei Savu
  asavu@apache.org

  Twitter: @andreisavu

More Related Content

What's hot

Full Stack Automation with Katello & The Foreman
Full Stack Automation with Katello & The ForemanFull Stack Automation with Katello & The Foreman
Full Stack Automation with Katello & The ForemanWeston Bassler
 
Deploying RDO OpenStack with a pair of plugins
Deploying RDO OpenStack with a pair of pluginsDeploying RDO OpenStack with a pair of plugins
Deploying RDO OpenStack with a pair of pluginsDominic Cleal
 
Auto infra with_foreman_katello
Auto infra with_foreman_katelloAuto infra with_foreman_katello
Auto infra with_foreman_katelloSachin Ghai
 
Linux host orchestration with Foreman, Puppet and Gitlab
Linux host orchestration with Foreman, Puppet and GitlabLinux host orchestration with Foreman, Puppet and Gitlab
Linux host orchestration with Foreman, Puppet and GitlabBen Tullis
 
Foreman in Your Data Center :OSDC 2015
Foreman in Your Data Center :OSDC 2015Foreman in Your Data Center :OSDC 2015
Foreman in Your Data Center :OSDC 2015Stephen Benjamin
 
Deploying Foreman in Enterprise Environments
Deploying Foreman in Enterprise EnvironmentsDeploying Foreman in Enterprise Environments
Deploying Foreman in Enterprise Environmentsinovex GmbH
 
Foreman presentation
Foreman presentationForeman presentation
Foreman presentationGlen Ogilvie
 
CfgMgmtCamp 2015 - Managing the Content Lifecycle with Katello
CfgMgmtCamp 2015 - Managing the Content Lifecycle with KatelloCfgMgmtCamp 2015 - Managing the Content Lifecycle with Katello
CfgMgmtCamp 2015 - Managing the Content Lifecycle with KatelloStephen Benjamin
 
OpenNebula, the foreman and CentOS play nice, too
OpenNebula, the foreman and CentOS play nice, tooOpenNebula, the foreman and CentOS play nice, too
OpenNebula, the foreman and CentOS play nice, tooinovex GmbH
 
Lifecycle Management with Foreman
Lifecycle Management with ForemanLifecycle Management with Foreman
Lifecycle Management with ForemanJulien Pivotto
 
PXEless Discovery with Foreman
PXEless Discovery with ForemanPXEless Discovery with Foreman
PXEless Discovery with ForemanStephen Benjamin
 
OSCamp 2019 | #3 Ansible: Foreman Discovery by Adam Ruzicka
OSCamp 2019 | #3 Ansible: Foreman Discovery by Adam RuzickaOSCamp 2019 | #3 Ansible: Foreman Discovery by Adam Ruzicka
OSCamp 2019 | #3 Ansible: Foreman Discovery by Adam RuzickaNETWAYS
 
Extending Foreman the easy way with foreman_hooks
Extending Foreman the easy way with foreman_hooksExtending Foreman the easy way with foreman_hooks
Extending Foreman the easy way with foreman_hooksDominic Cleal
 
PuppetCamp Sydney 2012 - Building a Multimaster Environment
PuppetCamp Sydney 2012 - Building a Multimaster EnvironmentPuppetCamp Sydney 2012 - Building a Multimaster Environment
PuppetCamp Sydney 2012 - Building a Multimaster EnvironmentGreg Cockburn
 
OSDC 2015: Stephen Benjamin | Foreman in Your Data Center
OSDC 2015: Stephen Benjamin | Foreman in Your Data CenterOSDC 2015: Stephen Benjamin | Foreman in Your Data Center
OSDC 2015: Stephen Benjamin | Foreman in Your Data CenterNETWAYS
 
Running at Scale: Practical Performance Tuning with Puppet - PuppetConf 2013
Running at Scale: Practical Performance Tuning with Puppet - PuppetConf 2013Running at Scale: Practical Performance Tuning with Puppet - PuppetConf 2013
Running at Scale: Practical Performance Tuning with Puppet - PuppetConf 2013Puppet
 
Making your first contribution to Foreman
Making your first contribution to ForemanMaking your first contribution to Foreman
Making your first contribution to ForemanDominic Cleal
 
Puppet Availability and Performance at 100K Nodes - PuppetConf 2014
Puppet Availability and Performance at 100K Nodes - PuppetConf 2014Puppet Availability and Performance at 100K Nodes - PuppetConf 2014
Puppet Availability and Performance at 100K Nodes - PuppetConf 2014Puppet
 
A user's perspective on SaltStack and other configuration management tools
A user's perspective on SaltStack and other configuration management toolsA user's perspective on SaltStack and other configuration management tools
A user's perspective on SaltStack and other configuration management toolsSaltStack
 
Red Hat Satellite 6 - Automation with Puppet
Red Hat Satellite 6 - Automation with PuppetRed Hat Satellite 6 - Automation with Puppet
Red Hat Satellite 6 - Automation with PuppetMichael Lessard
 

What's hot (20)

Full Stack Automation with Katello & The Foreman
Full Stack Automation with Katello & The ForemanFull Stack Automation with Katello & The Foreman
Full Stack Automation with Katello & The Foreman
 
Deploying RDO OpenStack with a pair of plugins
Deploying RDO OpenStack with a pair of pluginsDeploying RDO OpenStack with a pair of plugins
Deploying RDO OpenStack with a pair of plugins
 
Auto infra with_foreman_katello
Auto infra with_foreman_katelloAuto infra with_foreman_katello
Auto infra with_foreman_katello
 
Linux host orchestration with Foreman, Puppet and Gitlab
Linux host orchestration with Foreman, Puppet and GitlabLinux host orchestration with Foreman, Puppet and Gitlab
Linux host orchestration with Foreman, Puppet and Gitlab
 
Foreman in Your Data Center :OSDC 2015
Foreman in Your Data Center :OSDC 2015Foreman in Your Data Center :OSDC 2015
Foreman in Your Data Center :OSDC 2015
 
Deploying Foreman in Enterprise Environments
Deploying Foreman in Enterprise EnvironmentsDeploying Foreman in Enterprise Environments
Deploying Foreman in Enterprise Environments
 
Foreman presentation
Foreman presentationForeman presentation
Foreman presentation
 
CfgMgmtCamp 2015 - Managing the Content Lifecycle with Katello
CfgMgmtCamp 2015 - Managing the Content Lifecycle with KatelloCfgMgmtCamp 2015 - Managing the Content Lifecycle with Katello
CfgMgmtCamp 2015 - Managing the Content Lifecycle with Katello
 
OpenNebula, the foreman and CentOS play nice, too
OpenNebula, the foreman and CentOS play nice, tooOpenNebula, the foreman and CentOS play nice, too
OpenNebula, the foreman and CentOS play nice, too
 
Lifecycle Management with Foreman
Lifecycle Management with ForemanLifecycle Management with Foreman
Lifecycle Management with Foreman
 
PXEless Discovery with Foreman
PXEless Discovery with ForemanPXEless Discovery with Foreman
PXEless Discovery with Foreman
 
OSCamp 2019 | #3 Ansible: Foreman Discovery by Adam Ruzicka
OSCamp 2019 | #3 Ansible: Foreman Discovery by Adam RuzickaOSCamp 2019 | #3 Ansible: Foreman Discovery by Adam Ruzicka
OSCamp 2019 | #3 Ansible: Foreman Discovery by Adam Ruzicka
 
Extending Foreman the easy way with foreman_hooks
Extending Foreman the easy way with foreman_hooksExtending Foreman the easy way with foreman_hooks
Extending Foreman the easy way with foreman_hooks
 
PuppetCamp Sydney 2012 - Building a Multimaster Environment
PuppetCamp Sydney 2012 - Building a Multimaster EnvironmentPuppetCamp Sydney 2012 - Building a Multimaster Environment
PuppetCamp Sydney 2012 - Building a Multimaster Environment
 
OSDC 2015: Stephen Benjamin | Foreman in Your Data Center
OSDC 2015: Stephen Benjamin | Foreman in Your Data CenterOSDC 2015: Stephen Benjamin | Foreman in Your Data Center
OSDC 2015: Stephen Benjamin | Foreman in Your Data Center
 
Running at Scale: Practical Performance Tuning with Puppet - PuppetConf 2013
Running at Scale: Practical Performance Tuning with Puppet - PuppetConf 2013Running at Scale: Practical Performance Tuning with Puppet - PuppetConf 2013
Running at Scale: Practical Performance Tuning with Puppet - PuppetConf 2013
 
Making your first contribution to Foreman
Making your first contribution to ForemanMaking your first contribution to Foreman
Making your first contribution to Foreman
 
Puppet Availability and Performance at 100K Nodes - PuppetConf 2014
Puppet Availability and Performance at 100K Nodes - PuppetConf 2014Puppet Availability and Performance at 100K Nodes - PuppetConf 2014
Puppet Availability and Performance at 100K Nodes - PuppetConf 2014
 
A user's perspective on SaltStack and other configuration management tools
A user's perspective on SaltStack and other configuration management toolsA user's perspective on SaltStack and other configuration management tools
A user's perspective on SaltStack and other configuration management tools
 
Red Hat Satellite 6 - Automation with Puppet
Red Hat Satellite 6 - Automation with PuppetRed Hat Satellite 6 - Automation with Puppet
Red Hat Satellite 6 - Automation with Puppet
 

Viewers also liked

Apache REEF - stdlib for big data
Apache REEF - stdlib for big dataApache REEF - stdlib for big data
Apache REEF - stdlib for big dataSergiy Matusevych
 
Q4 Slides 020917
Q4 Slides 020917Q4 Slides 020917
Q4 Slides 020917wuir
 
Аналитика инструментов на сайтах интернет-магазинов 2015
Аналитика инструментов на сайтах интернет-магазинов 2015Аналитика инструментов на сайтах интернет-магазинов 2015
Аналитика инструментов на сайтах интернет-магазинов 2015InSales
 
Ir deck 4 q16 final
Ir deck 4 q16 finalIr deck 4 q16 final
Ir deck 4 q16 finalIR_HubSpot
 
Building large scale applications in yarn with apache twill
Building large scale applications in yarn with apache twillBuilding large scale applications in yarn with apache twill
Building large scale applications in yarn with apache twillHenry Saputra
 
Harnessing the power of YARN with Apache Twill
Harnessing the power of YARN with Apache TwillHarnessing the power of YARN with Apache Twill
Harnessing the power of YARN with Apache TwillTerence Yim
 
Odnoklassniki - Flashgamm 2011
Odnoklassniki - Flashgamm 2011Odnoklassniki - Flashgamm 2011
Odnoklassniki - Flashgamm 2011Edgars Strods
 
Mail.Ru Tech Forum 2011: Платформа@Mail.Ru - Настоящее и будущее
Mail.Ru Tech Forum 2011: Платформа@Mail.Ru - Настоящее и будущееMail.Ru Tech Forum 2011: Платформа@Mail.Ru - Настоящее и будущее
Mail.Ru Tech Forum 2011: Платформа@Mail.Ru - Настоящее и будущееGlen Smith
 
Flash Gamm 2011: Новые виральные каналы в Моем Мире
Flash Gamm 2011: Новые виральные каналы в Моем МиреFlash Gamm 2011: Новые виральные каналы в Моем Мире
Flash Gamm 2011: Новые виральные каналы в Моем МиреGlen Smith
 
РИФ+КИБ 2012: API и секреты монетизации
РИФ+КИБ 2012: API и секреты монетизацииРИФ+КИБ 2012: API и секреты монетизации
РИФ+КИБ 2012: API и секреты монетизацииGlen Smith
 
Casual Connect 2011: Продвижение приложений в Моем Мире и Одноклассниках
Casual Connect 2011: Продвижение приложений в Моем Мире и ОдноклассникахCasual Connect 2011: Продвижение приложений в Моем Мире и Одноклассниках
Casual Connect 2011: Продвижение приложений в Моем Мире и ОдноклассникахGlen Smith
 
Sociality Rocks 2011: Создание лидирующих приложений
Sociality Rocks 2011: Создание лидирующих приложенийSociality Rocks 2011: Создание лидирующих приложений
Sociality Rocks 2011: Создание лидирующих приложенийGlen Smith
 
КРИ 2012: Социальные игры - настоящее и будущее
КРИ 2012: Социальные игры - настоящее и будущееКРИ 2012: Социальные игры - настоящее и будущее
КРИ 2012: Социальные игры - настоящее и будущееGlen Smith
 
Рынок социальных игр в России
Рынок социальных игр в РоссииРынок социальных игр в России
Рынок социальных игр в РоссииEdgars Strods
 
New directions for Apache Spark in 2015
New directions for Apache Spark in 2015New directions for Apache Spark in 2015
New directions for Apache Spark in 2015Databricks
 
Пишем про игры на Одноклассниках
Пишем про игры на ОдноклассникахПишем про игры на Одноклассниках
Пишем про игры на ОдноклассникахEdgars Strods
 
Real-time Analytics with Apache Flink and Druid
Real-time Analytics with Apache Flink and DruidReal-time Analytics with Apache Flink and Druid
Real-time Analytics with Apache Flink and DruidJan Graßegger
 

Viewers also liked (20)

Apache REEF - stdlib for big data
Apache REEF - stdlib for big dataApache REEF - stdlib for big data
Apache REEF - stdlib for big data
 
Giraph+Gora in ApacheCon14
Giraph+Gora in ApacheCon14Giraph+Gora in ApacheCon14
Giraph+Gora in ApacheCon14
 
Q4 Slides 020917
Q4 Slides 020917Q4 Slides 020917
Q4 Slides 020917
 
Аналитика инструментов на сайтах интернет-магазинов 2015
Аналитика инструментов на сайтах интернет-магазинов 2015Аналитика инструментов на сайтах интернет-магазинов 2015
Аналитика инструментов на сайтах интернет-магазинов 2015
 
Ir deck 4 q16 final
Ir deck 4 q16 finalIr deck 4 q16 final
Ir deck 4 q16 final
 
Q4 2016 investor deck
Q4 2016 investor deckQ4 2016 investor deck
Q4 2016 investor deck
 
The Revolutionary Power of the Economy of Experiences Vakantiebeurs v 02 public
The Revolutionary Power of the Economy of Experiences Vakantiebeurs  v 02 publicThe Revolutionary Power of the Economy of Experiences Vakantiebeurs  v 02 public
The Revolutionary Power of the Economy of Experiences Vakantiebeurs v 02 public
 
Building large scale applications in yarn with apache twill
Building large scale applications in yarn with apache twillBuilding large scale applications in yarn with apache twill
Building large scale applications in yarn with apache twill
 
Harnessing the power of YARN with Apache Twill
Harnessing the power of YARN with Apache TwillHarnessing the power of YARN with Apache Twill
Harnessing the power of YARN with Apache Twill
 
Odnoklassniki - Flashgamm 2011
Odnoklassniki - Flashgamm 2011Odnoklassniki - Flashgamm 2011
Odnoklassniki - Flashgamm 2011
 
Mail.Ru Tech Forum 2011: Платформа@Mail.Ru - Настоящее и будущее
Mail.Ru Tech Forum 2011: Платформа@Mail.Ru - Настоящее и будущееMail.Ru Tech Forum 2011: Платформа@Mail.Ru - Настоящее и будущее
Mail.Ru Tech Forum 2011: Платформа@Mail.Ru - Настоящее и будущее
 
Flash Gamm 2011: Новые виральные каналы в Моем Мире
Flash Gamm 2011: Новые виральные каналы в Моем МиреFlash Gamm 2011: Новые виральные каналы в Моем Мире
Flash Gamm 2011: Новые виральные каналы в Моем Мире
 
РИФ+КИБ 2012: API и секреты монетизации
РИФ+КИБ 2012: API и секреты монетизацииРИФ+КИБ 2012: API и секреты монетизации
РИФ+КИБ 2012: API и секреты монетизации
 
Casual Connect 2011: Продвижение приложений в Моем Мире и Одноклассниках
Casual Connect 2011: Продвижение приложений в Моем Мире и ОдноклассникахCasual Connect 2011: Продвижение приложений в Моем Мире и Одноклассниках
Casual Connect 2011: Продвижение приложений в Моем Мире и Одноклассниках
 
Sociality Rocks 2011: Создание лидирующих приложений
Sociality Rocks 2011: Создание лидирующих приложенийSociality Rocks 2011: Создание лидирующих приложений
Sociality Rocks 2011: Создание лидирующих приложений
 
КРИ 2012: Социальные игры - настоящее и будущее
КРИ 2012: Социальные игры - настоящее и будущееКРИ 2012: Социальные игры - настоящее и будущее
КРИ 2012: Социальные игры - настоящее и будущее
 
Рынок социальных игр в России
Рынок социальных игр в РоссииРынок социальных игр в России
Рынок социальных игр в России
 
New directions for Apache Spark in 2015
New directions for Apache Spark in 2015New directions for Apache Spark in 2015
New directions for Apache Spark in 2015
 
Пишем про игры на Одноклассниках
Пишем про игры на ОдноклассникахПишем про игры на Одноклассниках
Пишем про игры на Одноклассниках
 
Real-time Analytics with Apache Flink and Druid
Real-time Analytics with Apache Flink and DruidReal-time Analytics with Apache Flink and Druid
Real-time Analytics with Apache Flink and Druid
 

Similar to Apache Provisionr (incubating) - Bucharest JUG 10

Creating pools of Virtual Machines - ApacheCon NA 2013
Creating pools of Virtual Machines - ApacheCon NA 2013Creating pools of Virtual Machines - ApacheCon NA 2013
Creating pools of Virtual Machines - ApacheCon NA 2013Andrei Savu
 
DevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
DevOpsDays Taipei 2019 - Mastering IaC the DevOps WayDevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
DevOpsDays Taipei 2019 - Mastering IaC the DevOps Waysmalltown
 
Devops with Python by Yaniv Cohen DevopShift
Devops with Python by Yaniv Cohen DevopShiftDevops with Python by Yaniv Cohen DevopShift
Devops with Python by Yaniv Cohen DevopShiftYaniv cohen
 
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a MonthUSENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a MonthNicolas Brousse
 
Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...
Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...
Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...javier ramirez
 
Dark launching with Consul at Hootsuite - Bill Monkman
Dark launching with Consul at Hootsuite - Bill MonkmanDark launching with Consul at Hootsuite - Bill Monkman
Dark launching with Consul at Hootsuite - Bill MonkmanAmbassador Labs
 
Things You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst IT
Things You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst ITThings You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst IT
Things You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst ITOpenStack
 
20141111_SOS3_Gallo
20141111_SOS3_Gallo20141111_SOS3_Gallo
20141111_SOS3_GalloAndrea Gallo
 
Build cloud like Rackspace with OpenStack Ansible
Build cloud like Rackspace with OpenStack AnsibleBuild cloud like Rackspace with OpenStack Ansible
Build cloud like Rackspace with OpenStack AnsibleJirayut Nimsaeng
 
Velocity NYC 2016 - Containers @ Netflix
Velocity NYC 2016 - Containers @ NetflixVelocity NYC 2016 - Containers @ Netflix
Velocity NYC 2016 - Containers @ Netflixaspyker
 
Open shift and docker - october,2014
Open shift and docker - october,2014Open shift and docker - october,2014
Open shift and docker - october,2014Hojoong Kim
 
OSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius Schumacher
OSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius SchumacherOSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius Schumacher
OSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius SchumacherNETWAYS
 
Writing and deploying serverless python applications
Writing and deploying serverless python applicationsWriting and deploying serverless python applications
Writing and deploying serverless python applicationsCesar Cardenas Desales
 
Rohit Yadav - The future of the CloudStack Virtual Router
Rohit Yadav - The future of the CloudStack Virtual RouterRohit Yadav - The future of the CloudStack Virtual Router
Rohit Yadav - The future of the CloudStack Virtual RouterShapeBlue
 
Netflix oss season 2 episode 1 - meetup Lightning talks
Netflix oss   season 2 episode 1 - meetup Lightning talksNetflix oss   season 2 episode 1 - meetup Lightning talks
Netflix oss season 2 episode 1 - meetup Lightning talksRuslan Meshenberg
 
Visão Técnica - RHOS (Red Hat Enterprise Linux OpenStack)
Visão Técnica - RHOS (Red Hat Enterprise Linux OpenStack)Visão Técnica - RHOS (Red Hat Enterprise Linux OpenStack)
Visão Técnica - RHOS (Red Hat Enterprise Linux OpenStack)Raul Leite
 

Similar to Apache Provisionr (incubating) - Bucharest JUG 10 (20)

Creating pools of Virtual Machines - ApacheCon NA 2013
Creating pools of Virtual Machines - ApacheCon NA 2013Creating pools of Virtual Machines - ApacheCon NA 2013
Creating pools of Virtual Machines - ApacheCon NA 2013
 
DevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
DevOpsDays Taipei 2019 - Mastering IaC the DevOps WayDevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
DevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
 
Devops with Python by Yaniv Cohen DevopShift
Devops with Python by Yaniv Cohen DevopShiftDevops with Python by Yaniv Cohen DevopShift
Devops with Python by Yaniv Cohen DevopShift
 
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a MonthUSENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
 
Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...
Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...
Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...
 
Dark launching with Consul at Hootsuite - Bill Monkman
Dark launching with Consul at Hootsuite - Bill MonkmanDark launching with Consul at Hootsuite - Bill Monkman
Dark launching with Consul at Hootsuite - Bill Monkman
 
Things You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst IT
Things You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst ITThings You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst IT
Things You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst IT
 
20141111_SOS3_Gallo
20141111_SOS3_Gallo20141111_SOS3_Gallo
20141111_SOS3_Gallo
 
Build cloud like Rackspace with OpenStack Ansible
Build cloud like Rackspace with OpenStack AnsibleBuild cloud like Rackspace with OpenStack Ansible
Build cloud like Rackspace with OpenStack Ansible
 
PaaS options for .NET
PaaS options for .NETPaaS options for .NET
PaaS options for .NET
 
Velocity NYC 2016 - Containers @ Netflix
Velocity NYC 2016 - Containers @ NetflixVelocity NYC 2016 - Containers @ Netflix
Velocity NYC 2016 - Containers @ Netflix
 
Microservices at Mercari
Microservices at MercariMicroservices at Mercari
Microservices at Mercari
 
Open shift and docker - october,2014
Open shift and docker - october,2014Open shift and docker - october,2014
Open shift and docker - october,2014
 
OSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius Schumacher
OSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius SchumacherOSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius Schumacher
OSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius Schumacher
 
Writing and deploying serverless python applications
Writing and deploying serverless python applicationsWriting and deploying serverless python applications
Writing and deploying serverless python applications
 
Rohit Yadav - The future of the CloudStack Virtual Router
Rohit Yadav - The future of the CloudStack Virtual RouterRohit Yadav - The future of the CloudStack Virtual Router
Rohit Yadav - The future of the CloudStack Virtual Router
 
Netty training
Netty trainingNetty training
Netty training
 
Netty training
Netty trainingNetty training
Netty training
 
Netflix oss season 2 episode 1 - meetup Lightning talks
Netflix oss   season 2 episode 1 - meetup Lightning talksNetflix oss   season 2 episode 1 - meetup Lightning talks
Netflix oss season 2 episode 1 - meetup Lightning talks
 
Visão Técnica - RHOS (Red Hat Enterprise Linux OpenStack)
Visão Técnica - RHOS (Red Hat Enterprise Linux OpenStack)Visão Técnica - RHOS (Red Hat Enterprise Linux OpenStack)
Visão Técnica - RHOS (Red Hat Enterprise Linux OpenStack)
 

More from Andrei Savu

The Evolving Landscape of Data Engineering
The Evolving Landscape of Data EngineeringThe Evolving Landscape of Data Engineering
The Evolving Landscape of Data EngineeringAndrei Savu
 
The Evolving Landscape of Data Engineering
The Evolving Landscape of Data EngineeringThe Evolving Landscape of Data Engineering
The Evolving Landscape of Data EngineeringAndrei Savu
 
Recap on AWS Lambda after re:Invent 2015
Recap on AWS Lambda after re:Invent 2015Recap on AWS Lambda after re:Invent 2015
Recap on AWS Lambda after re:Invent 2015Andrei Savu
 
One Hadoop, Multiple Clouds - NYC Big Data Meetup
One Hadoop, Multiple Clouds - NYC Big Data MeetupOne Hadoop, Multiple Clouds - NYC Big Data Meetup
One Hadoop, Multiple Clouds - NYC Big Data MeetupAndrei Savu
 
Introducing Cloudera Director at Big Data Bash
Introducing Cloudera Director at Big Data BashIntroducing Cloudera Director at Big Data Bash
Introducing Cloudera Director at Big Data BashAndrei Savu
 
APIs & Underlying Protocols #APICraftSF
APIs & Underlying Protocols #APICraftSFAPIs & Underlying Protocols #APICraftSF
APIs & Underlying Protocols #APICraftSFAndrei Savu
 
Challenges for running Hadoop on AWS - AdvancedAWS Meetup
Challenges for running Hadoop on AWS - AdvancedAWS MeetupChallenges for running Hadoop on AWS - AdvancedAWS Meetup
Challenges for running Hadoop on AWS - AdvancedAWS MeetupAndrei Savu
 
Cloud as a Data Platform
Cloud as a Data PlatformCloud as a Data Platform
Cloud as a Data PlatformAndrei Savu
 
Data Scientist Toolbox
Data Scientist ToolboxData Scientist Toolbox
Data Scientist ToolboxAndrei Savu
 
Axemblr Provisionr 0.3.x Overview
Axemblr Provisionr 0.3.x OverviewAxemblr Provisionr 0.3.x Overview
Axemblr Provisionr 0.3.x OverviewAndrei Savu
 
2012 in Review - Bucharest JUG
2012 in Review - Bucharest JUG2012 in Review - Bucharest JUG
2012 in Review - Bucharest JUGAndrei Savu
 
Metrics for Web Applications - Netcamp 2012
Metrics for Web Applications - Netcamp 2012Metrics for Web Applications - Netcamp 2012
Metrics for Web Applications - Netcamp 2012Andrei Savu
 
Counters with Riak on Amazon EC2 at Hackover
Counters with Riak on Amazon EC2 at HackoverCounters with Riak on Amazon EC2 at Hackover
Counters with Riak on Amazon EC2 at HackoverAndrei Savu
 
Simple REST with Dropwizard
Simple REST with DropwizardSimple REST with Dropwizard
Simple REST with DropwizardAndrei Savu
 
Guava Overview Part 2 Bucharest JUG #2
Guava Overview Part 2 Bucharest JUG #2 Guava Overview Part 2 Bucharest JUG #2
Guava Overview Part 2 Bucharest JUG #2 Andrei Savu
 
Guava Overview. Part 1 @ Bucharest JUG #1
Guava Overview. Part 1 @ Bucharest JUG #1 Guava Overview. Part 1 @ Bucharest JUG #1
Guava Overview. Part 1 @ Bucharest JUG #1 Andrei Savu
 
Polyglot Persistence & Big Data in the Cloud
Polyglot Persistence & Big Data in the CloudPolyglot Persistence & Big Data in the Cloud
Polyglot Persistence & Big Data in the CloudAndrei Savu
 
Building a Great Team in Open Source - Open Agile 2011
Building a Great Team in Open Source - Open Agile 2011Building a Great Team in Open Source - Open Agile 2011
Building a Great Team in Open Source - Open Agile 2011Andrei Savu
 
Automated Testing for Web Applications - Wurbe #36
Automated Testing for Web Applications - Wurbe #36Automated Testing for Web Applications - Wurbe #36
Automated Testing for Web Applications - Wurbe #36Andrei Savu
 

More from Andrei Savu (20)

The Evolving Landscape of Data Engineering
The Evolving Landscape of Data EngineeringThe Evolving Landscape of Data Engineering
The Evolving Landscape of Data Engineering
 
The Evolving Landscape of Data Engineering
The Evolving Landscape of Data EngineeringThe Evolving Landscape of Data Engineering
The Evolving Landscape of Data Engineering
 
Recap on AWS Lambda after re:Invent 2015
Recap on AWS Lambda after re:Invent 2015Recap on AWS Lambda after re:Invent 2015
Recap on AWS Lambda after re:Invent 2015
 
One Hadoop, Multiple Clouds - NYC Big Data Meetup
One Hadoop, Multiple Clouds - NYC Big Data MeetupOne Hadoop, Multiple Clouds - NYC Big Data Meetup
One Hadoop, Multiple Clouds - NYC Big Data Meetup
 
Introducing Cloudera Director at Big Data Bash
Introducing Cloudera Director at Big Data BashIntroducing Cloudera Director at Big Data Bash
Introducing Cloudera Director at Big Data Bash
 
APIs & Underlying Protocols #APICraftSF
APIs & Underlying Protocols #APICraftSFAPIs & Underlying Protocols #APICraftSF
APIs & Underlying Protocols #APICraftSF
 
Challenges for running Hadoop on AWS - AdvancedAWS Meetup
Challenges for running Hadoop on AWS - AdvancedAWS MeetupChallenges for running Hadoop on AWS - AdvancedAWS Meetup
Challenges for running Hadoop on AWS - AdvancedAWS Meetup
 
Cloud as a Data Platform
Cloud as a Data PlatformCloud as a Data Platform
Cloud as a Data Platform
 
Data Scientist Toolbox
Data Scientist ToolboxData Scientist Toolbox
Data Scientist Toolbox
 
Axemblr Provisionr 0.3.x Overview
Axemblr Provisionr 0.3.x OverviewAxemblr Provisionr 0.3.x Overview
Axemblr Provisionr 0.3.x Overview
 
2012 in Review - Bucharest JUG
2012 in Review - Bucharest JUG2012 in Review - Bucharest JUG
2012 in Review - Bucharest JUG
 
Metrics for Web Applications - Netcamp 2012
Metrics for Web Applications - Netcamp 2012Metrics for Web Applications - Netcamp 2012
Metrics for Web Applications - Netcamp 2012
 
Counters with Riak on Amazon EC2 at Hackover
Counters with Riak on Amazon EC2 at HackoverCounters with Riak on Amazon EC2 at Hackover
Counters with Riak on Amazon EC2 at Hackover
 
Simple REST with Dropwizard
Simple REST with DropwizardSimple REST with Dropwizard
Simple REST with Dropwizard
 
Guava Overview Part 2 Bucharest JUG #2
Guava Overview Part 2 Bucharest JUG #2 Guava Overview Part 2 Bucharest JUG #2
Guava Overview Part 2 Bucharest JUG #2
 
Guava Overview. Part 1 @ Bucharest JUG #1
Guava Overview. Part 1 @ Bucharest JUG #1 Guava Overview. Part 1 @ Bucharest JUG #1
Guava Overview. Part 1 @ Bucharest JUG #1
 
Polyglot Persistence & Big Data in the Cloud
Polyglot Persistence & Big Data in the CloudPolyglot Persistence & Big Data in the Cloud
Polyglot Persistence & Big Data in the Cloud
 
Building a Great Team in Open Source - Open Agile 2011
Building a Great Team in Open Source - Open Agile 2011Building a Great Team in Open Source - Open Agile 2011
Building a Great Team in Open Source - Open Agile 2011
 
Apache Whirr
Apache WhirrApache Whirr
Apache Whirr
 
Automated Testing for Web Applications - Wurbe #36
Automated Testing for Web Applications - Wurbe #36Automated Testing for Web Applications - Wurbe #36
Automated Testing for Web Applications - Wurbe #36
 

Apache Provisionr (incubating) - Bucharest JUG 10

  • 1. Apache Provisionr (incubating) Andrei Savu Bucharest JUG #10
  • 2. About me ● Founder of Axemblr.com ● Organizer of Bucharest JUG (bjug.ro) ● Apache Whirr PMC, ZooKeeper contributor ● Passion for DevOps & Data Analysis ● Connect with me on LinkedIn
  • 3. @ Axemblr ● Data Processing Infrastructure ● Deployment Automation ● Product: Hadoop On-Demand Appliance ● Open Source (part of our DNA) ● Fair amount of consulting (bootstrapping)
  • 4. Agenda ● What is Provisionr? ● Challenges & Architecture ● Demo (HDFS on EC2) ● Future @ Apache Software Foundation
  • 5. What is Provisionr? .. and how does it help me create pools of virtual machines?
  • 6. What? ● Simple Service for Managing Pools of 10s or 100s of Virtual Machines ● A way to create clusters of machines that share a common set of characteristics on multiple cloud providers
  • 7. Characteristics like? ● Operating system ● Network settings ● Pre-installed ● Firewall packages & ● SSH config binaries ● Admin access ● Sane DNS settings (forward & reverse ● VPN access dns resolution) ● etc. ● NTP settings
  • 8. Why? (initially) ● Setup on-demand Hadoop clusters (Axemblr) ● Handles basic setup for large clusters ● Service config by using 3rd party apps like Ambari or Cloudera Manager
  • 9. Why? (long term) Core functionality is generic Next generation Apache Whirr? External Configuration Specification Events Events Provisionr Events Monitoring
  • 10. FAQ: Looks like Puppet? ● No ● Provisionr is actually using Puppet ● Focus: Interact with IaaS APIs to start machines in groups with minimal configs (as listed before). Simple & reliable.
  • 11. Challenges How is the game different when we work with 50-100+ virtual machines?
  • 12. Challenges #1 ● API Throttling (batch calls) ● Concurrency Control (across multiple instances) ● Error handling, partial failures and automatic retries (idempotency)
  • 13. Challenges #2 ● Granular internal workflows (short transactions) ● State persistence across restarts and upgrades ● Audit & Logging
  • 14. Challenges #3 ● Integrating multiple native provider SDKs ● Provide a plugin architecture (run just a sub-set of all the features) ● Semi-automated and fully automated modes
  • 15. Challenges #4 ● Automatic creation of gold images
  • 16. Architecture Building Blocks, Internals, Persistence, Packaging, Plugins
  • 17. Activiti (from Alfresco) ● Light-weight workflow engine (BPM) ● Has a nice Java API ● Has a nice set of tools ● Handles persistence as expected ● Good error handling (retryable activities)
  • 18. Activiti – Process Execution
  • 20. Apache Karaf ● Using it as an application server ● Provides an interactive shell ● Integrated with Activiti ● Solves the packaging problem (custom distribution)
  • 21. Apache Karaf - Shell
  • 22. IaaS SDKs ● AWS SDK for Java – http://aws.amazon.com/sdkforjava/ ● jclouds (for CloudStack) – http://www.jclouds.org/
  • 23. Demo Time (video) Provisionr & Rundeck CDH4 HDFS cluster on EC2
  • 24. Summary ● Provisionr solves the problem of creating large pools of virtual machines (100s) ● Cloud portability by making the machines & the cluster indistinguishable from an application perspective on multiple clouds
  • 25. Working on ● Short term: first release compliant with the Apache Software Foundation policies ● Automatic AMI creation (fast provisioning of large clusters) ● Bundle Rundeck with the binary release and write support services
  • 26. You're invited to join! http://provisionr.incubator.apache.org/ ● Code: – git clone https://git-wip-us.apache.org/repos/asf/incubator- provisionr.git ● Mailing list: – dev-subscribe@provisionr.incubator.apache.org
  • 27. Thanks! Questions? Andrei Savu asavu@apache.org Twitter: @andreisavu