• Like
Ganeti Web Manager: Cluster Management Made Simple
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Ganeti Web Manager: Cluster Management Made Simple


Looking for an easy, scalable way to manage your Ganeti-based clusters? Ganeti Web Manager provides admins an easy to deploy, Django based GUI that effectively manages private clusters & works equally …

Looking for an easy, scalable way to manage your Ganeti-based clusters? Ganeti Web Manager provides admins an easy to deploy, Django based GUI that effectively manages private clusters & works equally well for providing customers access. With a caching system designed to scale to thousands of virtual machines without decreasing performance, Ganeti Web Manager makes cluster management truly simple.

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads


Total Views
On SlideShare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. Ganeti Web ManagerCluster Management Made Simple Lance Albertson Peter Krenesky http://is.gd/oscongwm | http://is.gd/oscongwmpdf
  • 2. About us OSU Open Source LabServer hosting for Open Source Projects Open Source development projects Lance / Lead Systems Administrator Peter / Lead Software Engineer
  • 3. Session OverviewGaneti BasicsGaneti Web ManagerGWM InternalsUsing GWM
  • 4. Ganeti Cluster
  • 5. What is Ganeti?Cluster virtual server managementsoftware toolBuilt on top of existing OSShypervisorsFast & simple recovery after physicalfailuresUsing cheap commodity hardwarePrivate IaaS
  • 6. Comparing GanetiUtilizes local storageBuilt to deal with hardware failuresMature projectLow package requirementsEasily pluggable via hooks & RAPI
  • 7. Project BackgroundGoogle funded projectUsed in internal corporate envOpen Sourced in 2007 GPLv2Team based in Google SwitzerlandActive mailing list & IRC channelStarted internally before libvirt
  • 8. Terminology
  • 9. Components Python Haskell DRBD LVMHypervisor
  • 10. Architecture
  • 11. NodesPhysical machineFault tolerance not requiredAdded/removed at will from clusterNo data loss with loss of node
  • 12. InstancesVirtual machine that runs on theclusterfault tolerant/HA entity within cluster
  • 13. Instance ParametersHypervisor (called hvparams)General (called beparams)Networking (called nicparams)Modified via instance or clusterdefaults
  • 14. Disk templatedrbd : LVM + DRBD between 2 nodesplain : LVM w/ no redundancyfile : Plain files, no redundancydiskless : Special purposes
  • 15. IAllocatorAutomatic placement of instancesEliminates manual node specificationhtoolsExternal scripts used to compute
  • 16. ComponentsAutomatic allocationhbal : Cluster rebalancerhail : IAllocator scripthspace : Cluster capacity estimator
  • 17. Primary & Secondary conceptsInstances always runs on primaryUses secondary node for diskreplicationDepends on disk template (i.e. drbd)
  • 18. Remote API
  • 19. Remote APIExternal toolsRetrieve cluster stateExecute commandsJSON over HTTP via REST
  • 20. RAPI SecurityUsers & PasswordsRFC 2617 HTTP AuthenticationRead-only or Read-write
  • 21. Easy management of GanetiClient facing service
  • 22. ReleasesProject Founded - 9-10-2011Version 0.4 - 12-20-2010Version 0.5 - 02-03-2011Version 0.6 - 03-04-2011Version 0.7 - 06-17-2011
  • 23. Open Sourced LibrariesDjango Object PermissionsDjango Object LogTwisted VNC Auth Proxy
  • 24. Ganeti Web Manager Installation
  • 25. DependenciesPython >=2.5, 2.7 recommendedPip - Python package installerFabric - Install scriptsVirtualEnv - Python virtualenvironmentsGit - Distributed Source Control
  • 26. Fabric Installer$ fab dev deploy$ fab prod deploy
  • 27. Import ToolsFind Orphaned InstancesImport New Nodes & InstancesRemove Deleted Nodes & Instances
  • 28. Cache Updater Imports Nodes and Virtual Machines too$ twistd --pidfile=cache.pid gwm_cache
  • 29. Cache System
  • 30. VNC Auth Proxyallows proxying through firewall / VPNno need for passwords
  • 31. Permissions
  • 32. PersonasUsers can act on behalf of groups
  • 33. Ownership vs. PermissionsOwnership is for book keepingPermissions let you do things
  • 34. Users Tab
  • 35. Editing Users
  • 36. QuotasPer Persona, Per Cluster
  • 37. Overriding Default Quota
  • 38. Future FeaturesInstance TemplateInstance DefaultsAPIAnd much more!
  • 39. Conclusion
  • 40. Questions? Lance Albertson Peter Krenesky lance@osuosl.org peter@osuosl.org @ramereth @kreneskyp http://www.lancealbertson.com http://blogs.osuosl.org/kreneskyp/ http://code.google.com/p/ganeti/http://code.osuosl.org/projects/ganeti-webmgr Presentation made with showoff http://github.com/ramereth/presentation-ganeti-tutorial http://is.gd/oscongwm | http://is.gd/oscongwmpdf