SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
Fosdem 2013
                                        Brussels, Belgium, February 3rd, 2013




                          Getting Started Hacking
                                OpenNebula


                                                         Jaime Melis
                                                      Project Engineer




© OpenNebula Project. Creative Commons Attribution-NonCommercial-ShareAlike License
What is OpenNebula?



             Public Cloud                              Private
                                                       Cloud
        Simple Web Interface                     A Cloud behind a
        Infrastructure Resources                 firewall

        Elastic & “infinite”                     Security Concerns
                                                 Improve Operations




                         Hybrid Cloud / CloudBursting
                               Supplement Capacity
                               of the Private Cloud
The OpenNebula Project
What is OpenNebula?



                                      Interfaces, Tools & API
                                  ● CLI & Sunstone (GUI)
                                  ● API

                                  ● Cloud (EC2,OCCI)

                                  ● Service Management & Catalogs




  Network                                                  Storage
  ● VLAN                                                   ● VM disks (file & block)
  ● Firewalling                                            ● Image Distribution
  ● Multiple Technologies                                  ● Multiple Backends



                                              Multi-tenancy
                                              ● AAA Services
                                              ● Scheduling
                                              ● Permissions & roles
       Compute Hosts
       ● Grouped into logical clusters
       ● Multiple hypervisors
       ● Monitoring
The OpenNebula Project
What is OpenNebula?

Design Principles



    ●   Flexible: One solution can not fit all data-centers

    ●   Provide basic components, but easily hacked by others

    ●   Simple: just-what-you-need components & simple protocols

    ●   Scalable: single instance & multi-tier architectures

    ●   Be interoperable! rich set of API's & Interfaces

    ●   Open Source: Apache License v2.0000




The OpenNebula Project
What is OpenNebula?

Simplicity




     VM VM VM VM                VM VM VM VM
             Hypervisor

     Physical Hardware
                          ...          Hypervisor

                                Physical Hardware
   Host                         Host




The OpenNebula Project
The Cloud Integrator Perspective

The Cloud Integrator Perspective

                         CLI               GUI        Cloud Servers


                                                                      Scheduler
                     OCA (Ruby, Java)


                     XML-RPC API




                         OpenNebula core




                    Monitoring              Storage       Network
                                                                             DB

                    Virtualization          Images        Auth

                                     Languages




The OpenNebula Project
The Cloud Integrator Perspective

How to Develop Drivers
                                                       Drivers
                            Cloud
  CLI             GUI
                            Servers
                                                        ●   Small scripts for each action
  OCA (Ruby, Java)                       Scheduler
                                                        ●   Any language (shell, Ruby, Python,...)
                                                        ●   Different drivers can co-exist in
  XML-RPC API
                                                            heterogeneous environments

  OpenNebula core


 Monitoring       Storage     Network        DB
 Virtualization   Images      Auth




                                      Easy to adapt
                                      Easy to create new ones
                                      Easy to maintain




The OpenNebula Project
The Cloud Integrator Perspective

How to Develop Drivers                              Virtualization Drivers

                            Cloud                    ●    Translate the OpenNebula VM life-cycle
  CLI             GUI                                     management into specific hypervisor
                            Servers
                                                          operations
  OCA (Ruby, Java)                      Scheduler

                                                    Monitoring Drivers
  XML-RPC API
                                                     ●    Gather information about the physical host
                                                          and hypervisor status
  OpenNebula core
                                                    Hybrid Cloud Drivers
 Monitoring       Storage     Network       DB       ●    Interact with an external provider instead of
 Virtualization   Images      Auth                        a hypervisor



        OpenNebula distribution                          Community contributions




The OpenNebula Project
The Cloud Integrator Perspective

Virtual Machine Manager Drivers


  Deployment flow for KVM

                          Deployment      ssh $host:         ●   write deployment file
           Core
                              file     bash kvm/deploy       ●   virsh create




                                        [...]
     <domain type='kvm'>
                                        domain=$1
          <name>one-1</name>
          <cputune>                     mkdir -p `dirname $domain`
                <shares>103</shares>
          </cputune>                    cat > $domain
          <memory>65536</memory>
          <os>                          data=`virsh --connect $LIBVIRT_URI
                <type arch='i686'>      create $domain`
                     hvm
                </type>                 if [ "x$?" = "x0" ]; then
                <boot dev='hd'/>              echo $data | sed 's/Domain //' | 
          </os>                               sed 's/ created from .*$//'
                                        else
          <devices>
                                              error_message "Could not create" 
          ...                                             " domain from $domain"
          </devices>                         exit -1
     </domain>                          fi


The OpenNebula Project
The Cloud Integrator Perspective

Virtual Machine Manager Drivers


   Virtualization Driver Example:
   Hypervisor: Xen
   Action: migrate
   Description: live-migrates a running VM to the specified Host




The OpenNebula Project
The Cloud Integrator Perspective

Creating a new set of drivers

  Adapting KVM drivers for QEMU
    1.    $ cp -r /var/lib/one/remotes/vmm/kvm /var/lib/one/remotes/vmm/qemu
    2.    qemu/deploy: type = 'kvm' => type = 'qemu' and call kvm/deploy

           qemu/deploy
         sed "s/type='kvm'/type='qemu'/" | $(dirname $0)/../kvm/deploy $@


    3.    fix poll script to detect qemu

           qemu/poll (diff)
          @@ -269,7 +269,7 @@
                    if !hypervisor
                         case $0
          -              when %r{/vmm/kvm/}
          +              when %r{/vmm/(qemu|kvm)/}
                               hypervisor=KVM


The OpenNebula Project
The Cloud Integrator Perspective

How to Develop Drivers                                           Image & Storage Drivers
                                    Cloud                         ●   Create or Import new Images into the
  CLI                GUI
                                    Servers                           Image Repository
                                                    Scheduler     ●   File management between the Image
  OCA (Ruby, Java)
                                                                      Repository and the physical hosts
  XML-RPC API


  OpenNebula core


Monitoring           Storage           Network            DB
Virtualization       Images            Auth




             OpenNebula distribution                                  Community contributions

                 ●    Shared FS (nfs, gluster, lustre, ...)
                 ●    LVM
                                                                MooseFS        CDMI API
                 ●    iSCSI (tgt)
                 ●    SSH
                 ●    HTTP
                                                                                                Swift/Glance


The OpenNebula Project
The Cloud Integrator Perspective

Image & Storage Drivers

        Datastore                  Transfer Manager


         ●     cp                  ●   clone
         ●     stat                ●   ln
         ●     mkfs                ●   mkimage
         ●     clone               ●   mkswap
         ●     rm                  ●   mv
                                   ●   mvds
                                   ●   context
                                   ●   delete
                                   ●   postmigrate
                                   ●   premigrate



The OpenNebula Project
The Cloud Integrator Perspective

Image & Storage Drivers

      Datastore iscsi / cp

                            Image                       ssh $DST_HOST:
            Core           template     bash iscsi/cp    ● create LV
                            base64                       ● create tgt lun
                                                         ● dump image


          # Create LV and Setup tgt LUN
          REGISTER_CMD=$(cat <<EOF
              set -e
              $SUDO $LVCREATE -L${SIZE}M ${VG_NAME} -n ${LV_NAME}

                 $SUDO $(tgt_setup_lun "$IQN" "$DEV")
                 $SUDO $(tgt_admin_dump_config "$TARGET_CONF")
          EOF
          )

          ssh_exec_and_log "$DST_HOST" "$REGISTER_CMD"

          # Dump
          exec_and_log "eval $DUMP | 
              $SSH $DST_HOST $SUDO $DD of=$DEV bs=2M"

The OpenNebula Project
The Cloud Integrator Perspective

How to Develop Drivers
                                                             Networking drivers
  CLI            GUI
                                     Cloud                    ● Manage network configuration in
                                     Servers
                                                 Scheduler       the hosts
  OCA (Ruby, Java)

  XML-RPC API
                                                             ●   Firewalling rules
                                                             ●   Network Isolation
  OpenNebula core                                            ●   Bridge creation

Monitoring       Storage               Network               Structure
                                                     DB
Virtualization   Images                Auth                   ● pre
                                                              ● post
                                                              ● clean
                 OpenNebula distribution                         Community contributions

                  ●      VLAN, 802.1Q
                  ●      OpenvSwitch
                  ●      ebtables
                                                                 quantum
                  ●      FLAT
                  ●      firewall*



The OpenNebula Project
The Cloud Integrator Perspective

Network Drivers

      802.1Q / pre

                           VM template   ssh $DST_HOST:     ●   create bridge
            Core                                            ●   tag phy dev
                             base64       bash 802.1Q/pre
                                                            ●   attach to bridge


         require 'HostManaged'

         hm = OpenNebulaHM.from_base64(ARGV[0])
         exit hm.activate



       Strategy
        ●    what hypervisor?
        ●    name of the vnet device?
        ●    create bridge, tag, ...




The OpenNebula Project
The Cloud Integrator Perspective

How to Develop Drivers
                                                             Authentication drivers
                                Cloud
  CLI            GUI                                          ●    Strong security
                                Servers
                                                              ●    Flexibility
  OCA (Ruby, Java)                               Scheduler

  XML-RPC API                                                Authorization drivers
                                                              ●    Add any limitations to the user actions

  OpenNebula core


Monitoring       Storage            Network          DB
Virtualization   Images             Auth




                       OpenNebula distribution                    Community contributions
                         ●   SSH Keypairs
                         ●   x509 Certificates
                         ●   LDAP
                         ●   Active Directory
                         ●   ACLs
                         ●   Quotas



The OpenNebula Project
The Cloud Integrator Perspective

How to Interact with OpenNebula
                                                          XML-RPC
                                 Cloud
  CLI            GUI                                      ●       Simple, fast
                                 Servers
                                                          ●       Works in any language
  OCA (Ruby, Java)                            Scheduler

  XML-RPC API                                             OCA (OpenNebula Cloud API)
                                                          ●       High level bindings
                                                          ●       Complete functionality
  OpenNebula core                                         ●       Ruby, Java, Python

Monitoring        Storage          Network        DB
Virtualization    Images           Auth



           OpenNebula distribution                                Community Contributions
        Administrator GUI          User GUI




                                                              OCCI
                                                              ●
                    Cloud APIs
                                                                                           CDMI
                                                                                           ●

                                                              OVF
                                                              ●




The OpenNebula Project
The Cloud Integrator Perspective

How to Interact with OpenNebula
       OCA Ruby Example:
         Shutdown all my Virtual Machines




The OpenNebula Project
Tools for Users and Administrators

OpenNebulaApps




    Manage services               Automatic installation of           Host your own
                                      software stacks                  marketplace

               Service Example                                App Example

    {"name": "my_service",                   {"name": "wordpress",
      "deployment":                            "run_list": [
    "straight",                                   "recipe[mysql::server]",
      "roles": [                                  "recipe[wordpress]"
        {                                      ],
           "name": "frontend",                 "wordpress": {
           "vm_template": 0                       "db": {
        },                                          "database": "${WP_DB_NAME}",
        {                                           "user": "${WP_DB_USER}",
           "name": "db_master",                     "password": "${WP_DB_PASSWORD}"
           "parents": [                           }
              "frontend"                       },
           ],                                  "mysql": {
           "vm_template": 1                       "server_root_password":
        }]                                   "${DB_PASSWORD}"
    }                                          }
The OpenNebula Project                       }
Join our growing community!

I Like OpenNebula, what can I do?




     Help us make OpenNebula even better by...              Community Activity

      ●    Use OpenNebula! give us feedback                 ●   Contributions by users: RIM, Akamai, Logica,
      ●    Join our mailing list
                                                                FermiLab, SARA, Terradue…
      ●    Report bugs or features at development at dev.
           opennebula.org                                   ●   > 100 in opennebula.org/about:contributors
      ●    Translate OpenNebula                             ●   ~ 500 in dev.opennebula.org
      ●    Share your Virtual Appliances                    ●   Sunstone in 17 languages
      ●    Use 'master'
                                                            ●   Components in the ecosystem by RIM, China
      ●    Write howto's
                                                                Mobile…
      ●    Share your use cases
      ●    Submit patches
      ●    Maintain OpenNebula in your distro of choice

     IRC Channel

      ●    #opennebula on irc.freenode.net

The OpenNebula Project
What is OpenNebula?

Try OpenNebula


             Cloud Sandbox - Virtual Appliance

             A real cloud in your laptop under 5 minutes by downloading a pre-
             configured automated installation of OpenNebula.


                         opennebula.org/cloud:tryout
             Available Platforms

              ●    Amazon
              ●    VirtualBox
              ●    VMWare
              ●    KVM




The OpenNebula Project
Want more?

More OpenNebula @FOSDEM



                         Enabling cloud for e-Science with OpenNebula
                                 11:30. Chavanne. Zeeshan Ali



         BuildSys and QA in CentOS using a Private Cloud: OpenNebula
                  12:00. H.1302. Karanbir Singh & Jaime Melis



                                         Raindrops
                         13:00. H.1301. Karanbir Singh & Jaime Melis




The OpenNebula Project
Questions?

We Will Be Happy to Answer any Question


                         TL; DR: OpenNebula is awesome, go check it out!


                                            @opennebula




The OpenNebula Project
About the Project


   Differentiating Factors in the Market

    ●     Focus on enterprise data center virtualization

    ●     Rich functionality for private clouds: on-demand provision of virtual data
          centers, self-service portal and catalog, clustering, fault tolerance…

    ●     Wide integration capabilities with data center services: monitoring,
          computing, storage, networking, chargeback, authentication…

    ●     Service management with automatic installation and configuration of
          software stacks, multi-tier service catalog and provision…

    ●     External cloud connectors for hybrid cloud computing

    ●     Delivered as a production-proven, packaged product with single installing
          and upgrade process

    ●     Direct support from developers
The OpenNebula Project

Contenu connexe

Tendances

OpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic Usage
OpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic UsageOpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic Usage
OpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic UsageOpenNebula Project
 
OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo...
OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo...OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo...
OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo...NETWAYS
 
Building and deploying a distributed application with Docker, Mesos and Marathon
Building and deploying a distributed application with Docker, Mesos and MarathonBuilding and deploying a distributed application with Docker, Mesos and Marathon
Building and deploying a distributed application with Docker, Mesos and MarathonJulia Mateo
 
OpenNebula 4.14 Hands-on Tutorial
OpenNebula 4.14 Hands-on TutorialOpenNebula 4.14 Hands-on Tutorial
OpenNebula 4.14 Hands-on TutorialOpenNebula Project
 
OpenNebulaConf 2016 - ONEDock: Docker as a hypervisor in ONE by Carlos de Alf...
OpenNebulaConf 2016 - ONEDock: Docker as a hypervisor in ONE by Carlos de Alf...OpenNebulaConf 2016 - ONEDock: Docker as a hypervisor in ONE by Carlos de Alf...
OpenNebulaConf 2016 - ONEDock: Docker as a hypervisor in ONE by Carlos de Alf...OpenNebula Project
 
Bare Metal to OpenStack with Razor and Chef
Bare Metal to OpenStack with Razor and ChefBare Metal to OpenStack with Razor and Chef
Bare Metal to OpenStack with Razor and ChefMatt Ray
 
Docker on openstack by OpenSource Consulting
Docker on openstack by OpenSource ConsultingDocker on openstack by OpenSource Consulting
Docker on openstack by OpenSource ConsultingOpen Source Consulting
 
OpenNebulaConf 2016 - Building a GNU/Linux Distribution by Daniel Dehennin, M...
OpenNebulaConf 2016 - Building a GNU/Linux Distribution by Daniel Dehennin, M...OpenNebulaConf 2016 - Building a GNU/Linux Distribution by Daniel Dehennin, M...
OpenNebulaConf 2016 - Building a GNU/Linux Distribution by Daniel Dehennin, M...OpenNebula Project
 
OpenNebula - OpenNebula and tips for CentOS 7
OpenNebula - OpenNebula and tips for CentOS 7OpenNebula - OpenNebula and tips for CentOS 7
OpenNebula - OpenNebula and tips for CentOS 7OpenNebula Project
 
Container & kubernetes
Container & kubernetesContainer & kubernetes
Container & kubernetesTed Jung
 
Scaling and Embracing Failure: Clustering Docker with Mesos
Scaling and Embracing Failure: Clustering Docker with MesosScaling and Embracing Failure: Clustering Docker with Mesos
Scaling and Embracing Failure: Clustering Docker with MesosRob Gulewich
 
D’une infrastructure de virtualisation scripté à un cloud privé OpenNebula
D’une infrastructure de virtualisation scripté à un cloud privé OpenNebulaD’une infrastructure de virtualisation scripté à un cloud privé OpenNebula
D’une infrastructure de virtualisation scripté à un cloud privé OpenNebulaOpenNebula Project
 
Openstack study-nova-02
Openstack study-nova-02Openstack study-nova-02
Openstack study-nova-02Jinho Shin
 
Packaging et déploiement d'une application avec Docker et Ansible @DevoxxFR 2015
Packaging et déploiement d'une application avec Docker et Ansible @DevoxxFR 2015Packaging et déploiement d'une application avec Docker et Ansible @DevoxxFR 2015
Packaging et déploiement d'une application avec Docker et Ansible @DevoxxFR 2015Stephane Manciot
 
Apache Mesos: a simple explanation of basics
Apache Mesos: a simple explanation of basicsApache Mesos: a simple explanation of basics
Apache Mesos: a simple explanation of basicsGladson Manuel
 
OpenNebulaConf 2016 - Networking, NFVs and SDNs Hands-on Workshop by Rubén S....
OpenNebulaConf 2016 - Networking, NFVs and SDNs Hands-on Workshop by Rubén S....OpenNebulaConf 2016 - Networking, NFVs and SDNs Hands-on Workshop by Rubén S....
OpenNebulaConf 2016 - Networking, NFVs and SDNs Hands-on Workshop by Rubén S....OpenNebula Project
 
LXC, Docker, and the future of software delivery | LinuxCon 2013
LXC, Docker, and the future of software delivery | LinuxCon 2013LXC, Docker, and the future of software delivery | LinuxCon 2013
LXC, Docker, and the future of software delivery | LinuxCon 2013dotCloud
 

Tendances (20)

OpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic Usage
OpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic UsageOpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic Usage
OpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic Usage
 
OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo...
OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo...OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo...
OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo...
 
Building and deploying a distributed application with Docker, Mesos and Marathon
Building and deploying a distributed application with Docker, Mesos and MarathonBuilding and deploying a distributed application with Docker, Mesos and Marathon
Building and deploying a distributed application with Docker, Mesos and Marathon
 
OpenNebula 4.14 Hands-on Tutorial
OpenNebula 4.14 Hands-on TutorialOpenNebula 4.14 Hands-on Tutorial
OpenNebula 4.14 Hands-on Tutorial
 
OpenNebulaConf 2016 - ONEDock: Docker as a hypervisor in ONE by Carlos de Alf...
OpenNebulaConf 2016 - ONEDock: Docker as a hypervisor in ONE by Carlos de Alf...OpenNebulaConf 2016 - ONEDock: Docker as a hypervisor in ONE by Carlos de Alf...
OpenNebulaConf 2016 - ONEDock: Docker as a hypervisor in ONE by Carlos de Alf...
 
Bare Metal to OpenStack with Razor and Chef
Bare Metal to OpenStack with Razor and ChefBare Metal to OpenStack with Razor and Chef
Bare Metal to OpenStack with Razor and Chef
 
Docker on openstack by OpenSource Consulting
Docker on openstack by OpenSource ConsultingDocker on openstack by OpenSource Consulting
Docker on openstack by OpenSource Consulting
 
OpenNebulaConf 2016 - Building a GNU/Linux Distribution by Daniel Dehennin, M...
OpenNebulaConf 2016 - Building a GNU/Linux Distribution by Daniel Dehennin, M...OpenNebulaConf 2016 - Building a GNU/Linux Distribution by Daniel Dehennin, M...
OpenNebulaConf 2016 - Building a GNU/Linux Distribution by Daniel Dehennin, M...
 
OpenNebula - OpenNebula and tips for CentOS 7
OpenNebula - OpenNebula and tips for CentOS 7OpenNebula - OpenNebula and tips for CentOS 7
OpenNebula - OpenNebula and tips for CentOS 7
 
Container & kubernetes
Container & kubernetesContainer & kubernetes
Container & kubernetes
 
Why Go Lang?
Why Go Lang?Why Go Lang?
Why Go Lang?
 
Scaling and Embracing Failure: Clustering Docker with Mesos
Scaling and Embracing Failure: Clustering Docker with MesosScaling and Embracing Failure: Clustering Docker with Mesos
Scaling and Embracing Failure: Clustering Docker with Mesos
 
D’une infrastructure de virtualisation scripté à un cloud privé OpenNebula
D’une infrastructure de virtualisation scripté à un cloud privé OpenNebulaD’une infrastructure de virtualisation scripté à un cloud privé OpenNebula
D’une infrastructure de virtualisation scripté à un cloud privé OpenNebula
 
Docker toolbox
Docker toolboxDocker toolbox
Docker toolbox
 
Openstack study-nova-02
Openstack study-nova-02Openstack study-nova-02
Openstack study-nova-02
 
Packaging et déploiement d'une application avec Docker et Ansible @DevoxxFR 2015
Packaging et déploiement d'une application avec Docker et Ansible @DevoxxFR 2015Packaging et déploiement d'une application avec Docker et Ansible @DevoxxFR 2015
Packaging et déploiement d'une application avec Docker et Ansible @DevoxxFR 2015
 
Apache Mesos: a simple explanation of basics
Apache Mesos: a simple explanation of basicsApache Mesos: a simple explanation of basics
Apache Mesos: a simple explanation of basics
 
Docker
DockerDocker
Docker
 
OpenNebulaConf 2016 - Networking, NFVs and SDNs Hands-on Workshop by Rubén S....
OpenNebulaConf 2016 - Networking, NFVs and SDNs Hands-on Workshop by Rubén S....OpenNebulaConf 2016 - Networking, NFVs and SDNs Hands-on Workshop by Rubén S....
OpenNebulaConf 2016 - Networking, NFVs and SDNs Hands-on Workshop by Rubén S....
 
LXC, Docker, and the future of software delivery | LinuxCon 2013
LXC, Docker, and the future of software delivery | LinuxCon 2013LXC, Docker, and the future of software delivery | LinuxCon 2013
LXC, Docker, and the future of software delivery | LinuxCon 2013
 

En vedette

IPWEA NSW Division Conference: Engineering Cadet Programs
IPWEA NSW Division Conference: Engineering Cadet ProgramsIPWEA NSW Division Conference: Engineering Cadet Programs
IPWEA NSW Division Conference: Engineering Cadet ProgramsMelissa Gaspari
 
Adressing requirements with agile practices
Adressing requirements with agile practicesAdressing requirements with agile practices
Adressing requirements with agile practicesfboisvert
 
Dynamic Scheduling - Federated clusters in mesos
Dynamic Scheduling - Federated clusters in mesosDynamic Scheduling - Federated clusters in mesos
Dynamic Scheduling - Federated clusters in mesosAaron Carey
 
OpenNebula TechDay Ede: Status, Roadmap and New Features
OpenNebula TechDay Ede: Status, Roadmap and New FeaturesOpenNebula TechDay Ede: Status, Roadmap and New Features
OpenNebula TechDay Ede: Status, Roadmap and New FeaturesOpenNebula Project
 
Creating a Mesos python framework
Creating a Mesos python frameworkCreating a Mesos python framework
Creating a Mesos python frameworkOlivier Sallou
 
Docker and Go: why did we decide to write Docker in Go?
Docker and Go: why did we decide to write Docker in Go?Docker and Go: why did we decide to write Docker in Go?
Docker and Go: why did we decide to write Docker in Go?Jérôme Petazzoni
 
Building and Deploying Application to Apache Mesos
Building and Deploying Application to Apache MesosBuilding and Deploying Application to Apache Mesos
Building and Deploying Application to Apache MesosJoe Stein
 
Strata SC 2014: Apache Mesos as an SDK for Building Distributed Frameworks
Strata SC 2014: Apache Mesos as an SDK for Building Distributed FrameworksStrata SC 2014: Apache Mesos as an SDK for Building Distributed Frameworks
Strata SC 2014: Apache Mesos as an SDK for Building Distributed FrameworksPaco Nathan
 
Datacenter Computing with Apache Mesos - BigData DC
Datacenter Computing with Apache Mesos - BigData DCDatacenter Computing with Apache Mesos - BigData DC
Datacenter Computing with Apache Mesos - BigData DCPaco Nathan
 
Project Management Office Roles Functions And Benefits
Project Management Office Roles Functions And BenefitsProject Management Office Roles Functions And Benefits
Project Management Office Roles Functions And BenefitsMaria Erland, PMP
 
Project Management Office (PMO)
Project Management Office (PMO)Project Management Office (PMO)
Project Management Office (PMO)Anand Subramaniam
 

En vedette (18)

Mesos introduction
Mesos introductionMesos introduction
Mesos introduction
 
Password Management Project Roadmap
Password Management Project RoadmapPassword Management Project Roadmap
Password Management Project Roadmap
 
IPWEA NSW Division Conference: Engineering Cadet Programs
IPWEA NSW Division Conference: Engineering Cadet ProgramsIPWEA NSW Division Conference: Engineering Cadet Programs
IPWEA NSW Division Conference: Engineering Cadet Programs
 
Adressing requirements with agile practices
Adressing requirements with agile practicesAdressing requirements with agile practices
Adressing requirements with agile practices
 
PROGRESS
PROGRESSPROGRESS
PROGRESS
 
Dynamic Scheduling - Federated clusters in mesos
Dynamic Scheduling - Federated clusters in mesosDynamic Scheduling - Federated clusters in mesos
Dynamic Scheduling - Federated clusters in mesos
 
OpenNebula TechDay Ede: Status, Roadmap and New Features
OpenNebula TechDay Ede: Status, Roadmap and New FeaturesOpenNebula TechDay Ede: Status, Roadmap and New Features
OpenNebula TechDay Ede: Status, Roadmap and New Features
 
Sample Roadmaps
Sample RoadmapsSample Roadmaps
Sample Roadmaps
 
Creating a Mesos python framework
Creating a Mesos python frameworkCreating a Mesos python framework
Creating a Mesos python framework
 
Fundamentos de gerenciamento de projetos
Fundamentos de gerenciamento de projetosFundamentos de gerenciamento de projetos
Fundamentos de gerenciamento de projetos
 
Docker and Go: why did we decide to write Docker in Go?
Docker and Go: why did we decide to write Docker in Go?Docker and Go: why did we decide to write Docker in Go?
Docker and Go: why did we decide to write Docker in Go?
 
Network Transformation Roadmap
Network Transformation RoadmapNetwork Transformation Roadmap
Network Transformation Roadmap
 
Building and Deploying Application to Apache Mesos
Building and Deploying Application to Apache MesosBuilding and Deploying Application to Apache Mesos
Building and Deploying Application to Apache Mesos
 
Strata SC 2014: Apache Mesos as an SDK for Building Distributed Frameworks
Strata SC 2014: Apache Mesos as an SDK for Building Distributed FrameworksStrata SC 2014: Apache Mesos as an SDK for Building Distributed Frameworks
Strata SC 2014: Apache Mesos as an SDK for Building Distributed Frameworks
 
Datacenter Computing with Apache Mesos - BigData DC
Datacenter Computing with Apache Mesos - BigData DCDatacenter Computing with Apache Mesos - BigData DC
Datacenter Computing with Apache Mesos - BigData DC
 
Project Management Office Roles Functions And Benefits
Project Management Office Roles Functions And BenefitsProject Management Office Roles Functions And Benefits
Project Management Office Roles Functions And Benefits
 
Project Management Office (PMO)
Project Management Office (PMO)Project Management Office (PMO)
Project Management Office (PMO)
 
STEAL THIS PRESENTATION!
STEAL THIS PRESENTATION! STEAL THIS PRESENTATION!
STEAL THIS PRESENTATION!
 

Similaire à Getting Started Hacking OpenNebula - Fosdem-2013

CloudOpen 2012 OpenNebula talk
CloudOpen 2012 OpenNebula talkCloudOpen 2012 OpenNebula talk
CloudOpen 2012 OpenNebula talkOpenNebula Project
 
Loadays 2013 OpenNebula Fundamentals
Loadays 2013 OpenNebula FundamentalsLoadays 2013 OpenNebula Fundamentals
Loadays 2013 OpenNebula FundamentalsOpenNebula Project
 
OpenNebula Project - FOSDEM 2012
OpenNebula Project - FOSDEM 2012OpenNebula Project - FOSDEM 2012
OpenNebula Project - FOSDEM 2012dmamolina
 
FOSDEM 2012 - OpenNebula Project
FOSDEM 2012 - OpenNebula ProjectFOSDEM 2012 - OpenNebula Project
FOSDEM 2012 - OpenNebula ProjectOpenNebula Project
 
Building IaaS Clouds and the Art of Virtual Machine Management: A Practical G...
Building IaaS Clouds and the Art of Virtual Machine Management: A Practical G...Building IaaS Clouds and the Art of Virtual Machine Management: A Practical G...
Building IaaS Clouds and the Art of Virtual Machine Management: A Practical G...Ruben S. Montero
 
OSDC 2012 - OpenNebula: Open-source Solution for Data Center Virtualization
OSDC 2012 - OpenNebula: Open-source Solution for Data Center VirtualizationOSDC 2012 - OpenNebula: Open-source Solution for Data Center Virtualization
OSDC 2012 - OpenNebula: Open-source Solution for Data Center VirtualizationOpenNebula Project
 
OpenNebula Interoperability
OpenNebula InteroperabilityOpenNebula Interoperability
OpenNebula Interoperabilitydmamolina
 
ISC Cloud'13 - Hands-On Tutorial on “Building Your Cloud for HPC, Here & Now,...
ISC Cloud'13 - Hands-On Tutorial on “Building Your Cloud for HPC, Here & Now,...ISC Cloud'13 - Hands-On Tutorial on “Building Your Cloud for HPC, Here & Now,...
ISC Cloud'13 - Hands-On Tutorial on “Building Your Cloud for HPC, Here & Now,...OpenNebula Project
 
Build Your Private Cloud with Ezilla and Haduzilla
Build Your Private Cloud with Ezilla and HaduzillaBuild Your Private Cloud with Ezilla and Haduzilla
Build Your Private Cloud with Ezilla and HaduzillaJazz Yao-Tsung Wang
 
EGI TF 2013 / Cloud Interoperability Week – Hands-On Tutorial
EGI TF 2013 / Cloud Interoperability Week – Hands-On TutorialEGI TF 2013 / Cloud Interoperability Week – Hands-On Tutorial
EGI TF 2013 / Cloud Interoperability Week – Hands-On TutorialOpenNebula Project
 
Cloud Computing in practice with OpenNebula ~ Develer workshop 2012
Cloud Computing in practice with OpenNebula ~ Develer workshop 2012Cloud Computing in practice with OpenNebula ~ Develer workshop 2012
Cloud Computing in practice with OpenNebula ~ Develer workshop 2012Giovanni Toraldo
 
Cloud computing, in practice ~ develer workshop
Cloud computing, in practice ~ develer workshopCloud computing, in practice ~ develer workshop
Cloud computing, in practice ~ develer workshopDeveler S.r.l.
 
Building Clouds with OpenNebula2.2
Building Clouds with OpenNebula2.2Building Clouds with OpenNebula2.2
Building Clouds with OpenNebula2.2Ruben S. Montero
 
CodiLime Tech Talk - Jarek Łukow: You need a cloud to test a cloud: using Ope...
CodiLime Tech Talk - Jarek Łukow: You need a cloud to test a cloud: using Ope...CodiLime Tech Talk - Jarek Łukow: You need a cloud to test a cloud: using Ope...
CodiLime Tech Talk - Jarek Łukow: You need a cloud to test a cloud: using Ope...CodiLime
 
OpenNebula TechDay Boston 2015 - An introduction to OpenNebula
OpenNebula TechDay Boston 2015 - An introduction to OpenNebulaOpenNebula TechDay Boston 2015 - An introduction to OpenNebula
OpenNebula TechDay Boston 2015 - An introduction to OpenNebulaOpenNebula Project
 
OpenNebula - Open-source Enterprise Cloud Simplified - CeBIT March 2014
OpenNebula - Open-source Enterprise Cloud Simplified - CeBIT March 2014OpenNebula - Open-source Enterprise Cloud Simplified - CeBIT March 2014
OpenNebula - Open-source Enterprise Cloud Simplified - CeBIT March 2014OpenNebula Project
 

Similaire à Getting Started Hacking OpenNebula - Fosdem-2013 (20)

CloudOpen 2012 OpenNebula talk
CloudOpen 2012 OpenNebula talkCloudOpen 2012 OpenNebula talk
CloudOpen 2012 OpenNebula talk
 
Loadays 2013 OpenNebula Fundamentals
Loadays 2013 OpenNebula FundamentalsLoadays 2013 OpenNebula Fundamentals
Loadays 2013 OpenNebula Fundamentals
 
OpenNebula Project - FOSDEM 2012
OpenNebula Project - FOSDEM 2012OpenNebula Project - FOSDEM 2012
OpenNebula Project - FOSDEM 2012
 
FOSDEM 2012 - OpenNebula Project
FOSDEM 2012 - OpenNebula ProjectFOSDEM 2012 - OpenNebula Project
FOSDEM 2012 - OpenNebula Project
 
Open nebula froscon
Open nebula frosconOpen nebula froscon
Open nebula froscon
 
Building IaaS Clouds and the Art of Virtual Machine Management: A Practical G...
Building IaaS Clouds and the Art of Virtual Machine Management: A Practical G...Building IaaS Clouds and the Art of Virtual Machine Management: A Practical G...
Building IaaS Clouds and the Art of Virtual Machine Management: A Practical G...
 
OSDC 2012 - OpenNebula: Open-source Solution for Data Center Virtualization
OSDC 2012 - OpenNebula: Open-source Solution for Data Center VirtualizationOSDC 2012 - OpenNebula: Open-source Solution for Data Center Virtualization
OSDC 2012 - OpenNebula: Open-source Solution for Data Center Virtualization
 
Linuxtag 2012 - OpenNebula
Linuxtag 2012 - OpenNebula  Linuxtag 2012 - OpenNebula
Linuxtag 2012 - OpenNebula
 
OpenNebula Interoperability
OpenNebula InteroperabilityOpenNebula Interoperability
OpenNebula Interoperability
 
ISC Cloud'13 - Hands-On Tutorial on “Building Your Cloud for HPC, Here & Now,...
ISC Cloud'13 - Hands-On Tutorial on “Building Your Cloud for HPC, Here & Now,...ISC Cloud'13 - Hands-On Tutorial on “Building Your Cloud for HPC, Here & Now,...
ISC Cloud'13 - Hands-On Tutorial on “Building Your Cloud for HPC, Here & Now,...
 
Build Your Private Cloud with Ezilla and Haduzilla
Build Your Private Cloud with Ezilla and HaduzillaBuild Your Private Cloud with Ezilla and Haduzilla
Build Your Private Cloud with Ezilla and Haduzilla
 
EGI TF 2013 / Cloud Interoperability Week – Hands-On Tutorial
EGI TF 2013 / Cloud Interoperability Week – Hands-On TutorialEGI TF 2013 / Cloud Interoperability Week – Hands-On Tutorial
EGI TF 2013 / Cloud Interoperability Week – Hands-On Tutorial
 
Building Clouds One 1.4
Building Clouds One 1.4Building Clouds One 1.4
Building Clouds One 1.4
 
LinuxTag 2013
LinuxTag 2013LinuxTag 2013
LinuxTag 2013
 
Cloud Computing in practice with OpenNebula ~ Develer workshop 2012
Cloud Computing in practice with OpenNebula ~ Develer workshop 2012Cloud Computing in practice with OpenNebula ~ Develer workshop 2012
Cloud Computing in practice with OpenNebula ~ Develer workshop 2012
 
Cloud computing, in practice ~ develer workshop
Cloud computing, in practice ~ develer workshopCloud computing, in practice ~ develer workshop
Cloud computing, in practice ~ develer workshop
 
Building Clouds with OpenNebula2.2
Building Clouds with OpenNebula2.2Building Clouds with OpenNebula2.2
Building Clouds with OpenNebula2.2
 
CodiLime Tech Talk - Jarek Łukow: You need a cloud to test a cloud: using Ope...
CodiLime Tech Talk - Jarek Łukow: You need a cloud to test a cloud: using Ope...CodiLime Tech Talk - Jarek Łukow: You need a cloud to test a cloud: using Ope...
CodiLime Tech Talk - Jarek Łukow: You need a cloud to test a cloud: using Ope...
 
OpenNebula TechDay Boston 2015 - An introduction to OpenNebula
OpenNebula TechDay Boston 2015 - An introduction to OpenNebulaOpenNebula TechDay Boston 2015 - An introduction to OpenNebula
OpenNebula TechDay Boston 2015 - An introduction to OpenNebula
 
OpenNebula - Open-source Enterprise Cloud Simplified - CeBIT March 2014
OpenNebula - Open-source Enterprise Cloud Simplified - CeBIT March 2014OpenNebula - Open-source Enterprise Cloud Simplified - CeBIT March 2014
OpenNebula - Open-source Enterprise Cloud Simplified - CeBIT March 2014
 

Plus de OpenNebula Project

OpenNebulaConf2019 - Welcome and Project Update - Ignacio M. Llorente, Rubén ...
OpenNebulaConf2019 - Welcome and Project Update - Ignacio M. Llorente, Rubén ...OpenNebulaConf2019 - Welcome and Project Update - Ignacio M. Llorente, Rubén ...
OpenNebulaConf2019 - Welcome and Project Update - Ignacio M. Llorente, Rubén ...OpenNebula Project
 
OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...
OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...
OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...OpenNebula Project
 
OpenNebulaConf2019 - CORD and Edge computing with OpenNebula - Alfonso Aureli...
OpenNebulaConf2019 - CORD and Edge computing with OpenNebula - Alfonso Aureli...OpenNebulaConf2019 - CORD and Edge computing with OpenNebula - Alfonso Aureli...
OpenNebulaConf2019 - CORD and Edge computing with OpenNebula - Alfonso Aureli...OpenNebula Project
 
OpenNebulaConf2019 - 6 years (+) OpenNebula - Lessons learned - Sebastian Man...
OpenNebulaConf2019 - 6 years (+) OpenNebula - Lessons learned - Sebastian Man...OpenNebulaConf2019 - 6 years (+) OpenNebula - Lessons learned - Sebastian Man...
OpenNebulaConf2019 - 6 years (+) OpenNebula - Lessons learned - Sebastian Man...OpenNebula Project
 
OpenNebulaConf2019 - Performant and Resilient Storage the Open Source & Linux...
OpenNebulaConf2019 - Performant and Resilient Storage the Open Source & Linux...OpenNebulaConf2019 - Performant and Resilient Storage the Open Source & Linux...
OpenNebulaConf2019 - Performant and Resilient Storage the Open Source & Linux...OpenNebula Project
 
OpenNebulaConf2019 - Image Backups in OpenNebula - Momčilo Medić - ITAF
OpenNebulaConf2019 - Image Backups in OpenNebula - Momčilo Medić - ITAFOpenNebulaConf2019 - Image Backups in OpenNebula - Momčilo Medić - ITAF
OpenNebulaConf2019 - Image Backups in OpenNebula - Momčilo Medić - ITAFOpenNebula Project
 
OpenNebulaConf2019 - How We Use GOCA to Manage our OpenNebula Cloud - Jean-Ph...
OpenNebulaConf2019 - How We Use GOCA to Manage our OpenNebula Cloud - Jean-Ph...OpenNebulaConf2019 - How We Use GOCA to Manage our OpenNebula Cloud - Jean-Ph...
OpenNebulaConf2019 - How We Use GOCA to Manage our OpenNebula Cloud - Jean-Ph...OpenNebula Project
 
OpenNebulaConf2019 - Crytek: A Video gaming Edge Implementation "on the shoul...
OpenNebulaConf2019 - Crytek: A Video gaming Edge Implementation "on the shoul...OpenNebulaConf2019 - Crytek: A Video gaming Edge Implementation "on the shoul...
OpenNebulaConf2019 - Crytek: A Video gaming Edge Implementation "on the shoul...OpenNebula Project
 
Replacing vCloud with OpenNebula
Replacing vCloud with OpenNebulaReplacing vCloud with OpenNebula
Replacing vCloud with OpenNebulaOpenNebula Project
 
NTS: What We Do With OpenNebula - and Why We Do It
NTS: What We Do With OpenNebula - and Why We Do ItNTS: What We Do With OpenNebula - and Why We Do It
NTS: What We Do With OpenNebula - and Why We Do ItOpenNebula Project
 
OpenNebula from the Perspective of an ISP
OpenNebula from the Perspective of an ISPOpenNebula from the Perspective of an ISP
OpenNebula from the Perspective of an ISPOpenNebula Project
 
NTS CAPTAIN / OpenNebula at Julius Blum GmbH
NTS CAPTAIN / OpenNebula at Julius Blum GmbHNTS CAPTAIN / OpenNebula at Julius Blum GmbH
NTS CAPTAIN / OpenNebula at Julius Blum GmbHOpenNebula Project
 
Performant and Resilient Storage: The Open Source & Linux Way
Performant and Resilient Storage: The Open Source & Linux WayPerformant and Resilient Storage: The Open Source & Linux Way
Performant and Resilient Storage: The Open Source & Linux WayOpenNebula Project
 
NetApp Hybrid Cloud with OpenNebula
NetApp Hybrid Cloud with OpenNebulaNetApp Hybrid Cloud with OpenNebula
NetApp Hybrid Cloud with OpenNebulaOpenNebula Project
 
NSX with OpenNebula - upcoming 5.10
NSX with OpenNebula - upcoming 5.10NSX with OpenNebula - upcoming 5.10
NSX with OpenNebula - upcoming 5.10OpenNebula Project
 
Security for Private Cloud Environments
Security for Private Cloud EnvironmentsSecurity for Private Cloud Environments
Security for Private Cloud EnvironmentsOpenNebula Project
 
CheckPoint R80.30 Installation on OpenNebula
CheckPoint R80.30 Installation on OpenNebulaCheckPoint R80.30 Installation on OpenNebula
CheckPoint R80.30 Installation on OpenNebulaOpenNebula Project
 
Cloud Disaggregation with OpenNebula
Cloud Disaggregation with OpenNebulaCloud Disaggregation with OpenNebula
Cloud Disaggregation with OpenNebulaOpenNebula Project
 

Plus de OpenNebula Project (20)

OpenNebulaConf2019 - Welcome and Project Update - Ignacio M. Llorente, Rubén ...
OpenNebulaConf2019 - Welcome and Project Update - Ignacio M. Llorente, Rubén ...OpenNebulaConf2019 - Welcome and Project Update - Ignacio M. Llorente, Rubén ...
OpenNebulaConf2019 - Welcome and Project Update - Ignacio M. Llorente, Rubén ...
 
OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...
OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...
OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...
 
OpenNebulaConf2019 - CORD and Edge computing with OpenNebula - Alfonso Aureli...
OpenNebulaConf2019 - CORD and Edge computing with OpenNebula - Alfonso Aureli...OpenNebulaConf2019 - CORD and Edge computing with OpenNebula - Alfonso Aureli...
OpenNebulaConf2019 - CORD and Edge computing with OpenNebula - Alfonso Aureli...
 
OpenNebulaConf2019 - 6 years (+) OpenNebula - Lessons learned - Sebastian Man...
OpenNebulaConf2019 - 6 years (+) OpenNebula - Lessons learned - Sebastian Man...OpenNebulaConf2019 - 6 years (+) OpenNebula - Lessons learned - Sebastian Man...
OpenNebulaConf2019 - 6 years (+) OpenNebula - Lessons learned - Sebastian Man...
 
OpenNebulaConf2019 - Performant and Resilient Storage the Open Source & Linux...
OpenNebulaConf2019 - Performant and Resilient Storage the Open Source & Linux...OpenNebulaConf2019 - Performant and Resilient Storage the Open Source & Linux...
OpenNebulaConf2019 - Performant and Resilient Storage the Open Source & Linux...
 
OpenNebulaConf2019 - Image Backups in OpenNebula - Momčilo Medić - ITAF
OpenNebulaConf2019 - Image Backups in OpenNebula - Momčilo Medić - ITAFOpenNebulaConf2019 - Image Backups in OpenNebula - Momčilo Medić - ITAF
OpenNebulaConf2019 - Image Backups in OpenNebula - Momčilo Medić - ITAF
 
OpenNebulaConf2019 - How We Use GOCA to Manage our OpenNebula Cloud - Jean-Ph...
OpenNebulaConf2019 - How We Use GOCA to Manage our OpenNebula Cloud - Jean-Ph...OpenNebulaConf2019 - How We Use GOCA to Manage our OpenNebula Cloud - Jean-Ph...
OpenNebulaConf2019 - How We Use GOCA to Manage our OpenNebula Cloud - Jean-Ph...
 
OpenNebulaConf2019 - Crytek: A Video gaming Edge Implementation "on the shoul...
OpenNebulaConf2019 - Crytek: A Video gaming Edge Implementation "on the shoul...OpenNebulaConf2019 - Crytek: A Video gaming Edge Implementation "on the shoul...
OpenNebulaConf2019 - Crytek: A Video gaming Edge Implementation "on the shoul...
 
Replacing vCloud with OpenNebula
Replacing vCloud with OpenNebulaReplacing vCloud with OpenNebula
Replacing vCloud with OpenNebula
 
NTS: What We Do With OpenNebula - and Why We Do It
NTS: What We Do With OpenNebula - and Why We Do ItNTS: What We Do With OpenNebula - and Why We Do It
NTS: What We Do With OpenNebula - and Why We Do It
 
OpenNebula from the Perspective of an ISP
OpenNebula from the Perspective of an ISPOpenNebula from the Perspective of an ISP
OpenNebula from the Perspective of an ISP
 
NTS CAPTAIN / OpenNebula at Julius Blum GmbH
NTS CAPTAIN / OpenNebula at Julius Blum GmbHNTS CAPTAIN / OpenNebula at Julius Blum GmbH
NTS CAPTAIN / OpenNebula at Julius Blum GmbH
 
Performant and Resilient Storage: The Open Source & Linux Way
Performant and Resilient Storage: The Open Source & Linux WayPerformant and Resilient Storage: The Open Source & Linux Way
Performant and Resilient Storage: The Open Source & Linux Way
 
NetApp Hybrid Cloud with OpenNebula
NetApp Hybrid Cloud with OpenNebulaNetApp Hybrid Cloud with OpenNebula
NetApp Hybrid Cloud with OpenNebula
 
NSX with OpenNebula - upcoming 5.10
NSX with OpenNebula - upcoming 5.10NSX with OpenNebula - upcoming 5.10
NSX with OpenNebula - upcoming 5.10
 
Security for Private Cloud Environments
Security for Private Cloud EnvironmentsSecurity for Private Cloud Environments
Security for Private Cloud Environments
 
CheckPoint R80.30 Installation on OpenNebula
CheckPoint R80.30 Installation on OpenNebulaCheckPoint R80.30 Installation on OpenNebula
CheckPoint R80.30 Installation on OpenNebula
 
DE-CIX: CloudConnectivity
DE-CIX: CloudConnectivityDE-CIX: CloudConnectivity
DE-CIX: CloudConnectivity
 
DDC Demo
DDC DemoDDC Demo
DDC Demo
 
Cloud Disaggregation with OpenNebula
Cloud Disaggregation with OpenNebulaCloud Disaggregation with OpenNebula
Cloud Disaggregation with OpenNebula
 

Getting Started Hacking OpenNebula - Fosdem-2013

  • 1. Fosdem 2013 Brussels, Belgium, February 3rd, 2013 Getting Started Hacking OpenNebula Jaime Melis Project Engineer © OpenNebula Project. Creative Commons Attribution-NonCommercial-ShareAlike License
  • 2. What is OpenNebula? Public Cloud Private Cloud Simple Web Interface A Cloud behind a Infrastructure Resources firewall Elastic & “infinite” Security Concerns Improve Operations Hybrid Cloud / CloudBursting Supplement Capacity of the Private Cloud The OpenNebula Project
  • 3. What is OpenNebula? Interfaces, Tools & API ● CLI & Sunstone (GUI) ● API ● Cloud (EC2,OCCI) ● Service Management & Catalogs Network Storage ● VLAN ● VM disks (file & block) ● Firewalling ● Image Distribution ● Multiple Technologies ● Multiple Backends Multi-tenancy ● AAA Services ● Scheduling ● Permissions & roles Compute Hosts ● Grouped into logical clusters ● Multiple hypervisors ● Monitoring The OpenNebula Project
  • 4. What is OpenNebula? Design Principles ● Flexible: One solution can not fit all data-centers ● Provide basic components, but easily hacked by others ● Simple: just-what-you-need components & simple protocols ● Scalable: single instance & multi-tier architectures ● Be interoperable! rich set of API's & Interfaces ● Open Source: Apache License v2.0000 The OpenNebula Project
  • 5. What is OpenNebula? Simplicity VM VM VM VM VM VM VM VM Hypervisor Physical Hardware ... Hypervisor Physical Hardware Host Host The OpenNebula Project
  • 6. The Cloud Integrator Perspective The Cloud Integrator Perspective CLI GUI Cloud Servers Scheduler OCA (Ruby, Java) XML-RPC API OpenNebula core Monitoring Storage Network DB Virtualization Images Auth Languages The OpenNebula Project
  • 7. The Cloud Integrator Perspective How to Develop Drivers Drivers Cloud CLI GUI Servers ● Small scripts for each action OCA (Ruby, Java) Scheduler ● Any language (shell, Ruby, Python,...) ● Different drivers can co-exist in XML-RPC API heterogeneous environments OpenNebula core Monitoring Storage Network DB Virtualization Images Auth Easy to adapt Easy to create new ones Easy to maintain The OpenNebula Project
  • 8. The Cloud Integrator Perspective How to Develop Drivers Virtualization Drivers Cloud ● Translate the OpenNebula VM life-cycle CLI GUI management into specific hypervisor Servers operations OCA (Ruby, Java) Scheduler Monitoring Drivers XML-RPC API ● Gather information about the physical host and hypervisor status OpenNebula core Hybrid Cloud Drivers Monitoring Storage Network DB ● Interact with an external provider instead of Virtualization Images Auth a hypervisor OpenNebula distribution Community contributions The OpenNebula Project
  • 9. The Cloud Integrator Perspective Virtual Machine Manager Drivers Deployment flow for KVM Deployment ssh $host: ● write deployment file Core file bash kvm/deploy ● virsh create [...] <domain type='kvm'> domain=$1 <name>one-1</name> <cputune> mkdir -p `dirname $domain` <shares>103</shares> </cputune> cat > $domain <memory>65536</memory> <os> data=`virsh --connect $LIBVIRT_URI <type arch='i686'> create $domain` hvm </type> if [ "x$?" = "x0" ]; then <boot dev='hd'/> echo $data | sed 's/Domain //' | </os> sed 's/ created from .*$//' else <devices> error_message "Could not create" ... " domain from $domain" </devices> exit -1 </domain> fi The OpenNebula Project
  • 10. The Cloud Integrator Perspective Virtual Machine Manager Drivers Virtualization Driver Example: Hypervisor: Xen Action: migrate Description: live-migrates a running VM to the specified Host The OpenNebula Project
  • 11. The Cloud Integrator Perspective Creating a new set of drivers Adapting KVM drivers for QEMU 1. $ cp -r /var/lib/one/remotes/vmm/kvm /var/lib/one/remotes/vmm/qemu 2. qemu/deploy: type = 'kvm' => type = 'qemu' and call kvm/deploy qemu/deploy sed "s/type='kvm'/type='qemu'/" | $(dirname $0)/../kvm/deploy $@ 3. fix poll script to detect qemu qemu/poll (diff) @@ -269,7 +269,7 @@ if !hypervisor case $0 - when %r{/vmm/kvm/} + when %r{/vmm/(qemu|kvm)/} hypervisor=KVM The OpenNebula Project
  • 12. The Cloud Integrator Perspective How to Develop Drivers Image & Storage Drivers Cloud ● Create or Import new Images into the CLI GUI Servers Image Repository Scheduler ● File management between the Image OCA (Ruby, Java) Repository and the physical hosts XML-RPC API OpenNebula core Monitoring Storage Network DB Virtualization Images Auth OpenNebula distribution Community contributions ● Shared FS (nfs, gluster, lustre, ...) ● LVM MooseFS CDMI API ● iSCSI (tgt) ● SSH ● HTTP Swift/Glance The OpenNebula Project
  • 13. The Cloud Integrator Perspective Image & Storage Drivers Datastore Transfer Manager ● cp ● clone ● stat ● ln ● mkfs ● mkimage ● clone ● mkswap ● rm ● mv ● mvds ● context ● delete ● postmigrate ● premigrate The OpenNebula Project
  • 14. The Cloud Integrator Perspective Image & Storage Drivers Datastore iscsi / cp Image ssh $DST_HOST: Core template bash iscsi/cp ● create LV base64 ● create tgt lun ● dump image # Create LV and Setup tgt LUN REGISTER_CMD=$(cat <<EOF set -e $SUDO $LVCREATE -L${SIZE}M ${VG_NAME} -n ${LV_NAME} $SUDO $(tgt_setup_lun "$IQN" "$DEV") $SUDO $(tgt_admin_dump_config "$TARGET_CONF") EOF ) ssh_exec_and_log "$DST_HOST" "$REGISTER_CMD" # Dump exec_and_log "eval $DUMP | $SSH $DST_HOST $SUDO $DD of=$DEV bs=2M" The OpenNebula Project
  • 15. The Cloud Integrator Perspective How to Develop Drivers Networking drivers CLI GUI Cloud ● Manage network configuration in Servers Scheduler the hosts OCA (Ruby, Java) XML-RPC API ● Firewalling rules ● Network Isolation OpenNebula core ● Bridge creation Monitoring Storage Network Structure DB Virtualization Images Auth ● pre ● post ● clean OpenNebula distribution Community contributions ● VLAN, 802.1Q ● OpenvSwitch ● ebtables quantum ● FLAT ● firewall* The OpenNebula Project
  • 16. The Cloud Integrator Perspective Network Drivers 802.1Q / pre VM template ssh $DST_HOST: ● create bridge Core ● tag phy dev base64 bash 802.1Q/pre ● attach to bridge require 'HostManaged' hm = OpenNebulaHM.from_base64(ARGV[0]) exit hm.activate Strategy ● what hypervisor? ● name of the vnet device? ● create bridge, tag, ... The OpenNebula Project
  • 17. The Cloud Integrator Perspective How to Develop Drivers Authentication drivers Cloud CLI GUI ● Strong security Servers ● Flexibility OCA (Ruby, Java) Scheduler XML-RPC API Authorization drivers ● Add any limitations to the user actions OpenNebula core Monitoring Storage Network DB Virtualization Images Auth OpenNebula distribution Community contributions ● SSH Keypairs ● x509 Certificates ● LDAP ● Active Directory ● ACLs ● Quotas The OpenNebula Project
  • 18. The Cloud Integrator Perspective How to Interact with OpenNebula XML-RPC Cloud CLI GUI ● Simple, fast Servers ● Works in any language OCA (Ruby, Java) Scheduler XML-RPC API OCA (OpenNebula Cloud API) ● High level bindings ● Complete functionality OpenNebula core ● Ruby, Java, Python Monitoring Storage Network DB Virtualization Images Auth OpenNebula distribution Community Contributions Administrator GUI User GUI OCCI ● Cloud APIs CDMI ● OVF ● The OpenNebula Project
  • 19. The Cloud Integrator Perspective How to Interact with OpenNebula OCA Ruby Example: Shutdown all my Virtual Machines The OpenNebula Project
  • 20. Tools for Users and Administrators OpenNebulaApps Manage services Automatic installation of Host your own software stacks marketplace Service Example App Example {"name": "my_service", {"name": "wordpress", "deployment": "run_list": [ "straight", "recipe[mysql::server]", "roles": [ "recipe[wordpress]" { ], "name": "frontend", "wordpress": { "vm_template": 0 "db": { }, "database": "${WP_DB_NAME}", { "user": "${WP_DB_USER}", "name": "db_master", "password": "${WP_DB_PASSWORD}" "parents": [ } "frontend" }, ], "mysql": { "vm_template": 1 "server_root_password": }] "${DB_PASSWORD}" } } The OpenNebula Project }
  • 21. Join our growing community! I Like OpenNebula, what can I do? Help us make OpenNebula even better by... Community Activity ● Use OpenNebula! give us feedback ● Contributions by users: RIM, Akamai, Logica, ● Join our mailing list FermiLab, SARA, Terradue… ● Report bugs or features at development at dev. opennebula.org ● > 100 in opennebula.org/about:contributors ● Translate OpenNebula ● ~ 500 in dev.opennebula.org ● Share your Virtual Appliances ● Sunstone in 17 languages ● Use 'master' ● Components in the ecosystem by RIM, China ● Write howto's Mobile… ● Share your use cases ● Submit patches ● Maintain OpenNebula in your distro of choice IRC Channel ● #opennebula on irc.freenode.net The OpenNebula Project
  • 22. What is OpenNebula? Try OpenNebula Cloud Sandbox - Virtual Appliance A real cloud in your laptop under 5 minutes by downloading a pre- configured automated installation of OpenNebula. opennebula.org/cloud:tryout Available Platforms ● Amazon ● VirtualBox ● VMWare ● KVM The OpenNebula Project
  • 23. Want more? More OpenNebula @FOSDEM Enabling cloud for e-Science with OpenNebula 11:30. Chavanne. Zeeshan Ali BuildSys and QA in CentOS using a Private Cloud: OpenNebula 12:00. H.1302. Karanbir Singh & Jaime Melis Raindrops 13:00. H.1301. Karanbir Singh & Jaime Melis The OpenNebula Project
  • 24. Questions? We Will Be Happy to Answer any Question TL; DR: OpenNebula is awesome, go check it out! @opennebula The OpenNebula Project
  • 25. About the Project Differentiating Factors in the Market ● Focus on enterprise data center virtualization ● Rich functionality for private clouds: on-demand provision of virtual data centers, self-service portal and catalog, clustering, fault tolerance… ● Wide integration capabilities with data center services: monitoring, computing, storage, networking, chargeback, authentication… ● Service management with automatic installation and configuration of software stacks, multi-tier service catalog and provision… ● External cloud connectors for hybrid cloud computing ● Delivered as a production-proven, packaged product with single installing and upgrade process ● Direct support from developers The OpenNebula Project