ExhibitorNetflix’s ZooKeeper Management System                           Jordan Zimmerman                                  ...
The Problem
• ZooKeeper is statically configured• Limited tools for managing the ensemble• Backup/restore is sometimes needed• Visualiz...
The Goal
Chaos Monkey-able• See http://techblog.netflix.com/2011/07/   netflix-simian-army.html A tool that randomly disables our pro...
Features
Instance MonitoringEach Exhibitor instance monitors theZooKeeper server running on the sameserver. If ZooKeeper is not run...
Log CleanupIn versions prior to ZooKeeper 3.4.x, log filemaintenance is necessary. Exhibitor willperiodically do this maint...
Backup/RestoreBackups in a ZooKeeper ensemble are more complicatedthan for a traditional data store (e.g. aRDBMS). General...
Cluster-wide        ConfigurationExhibitor presents a single console for yourentire ZooKeeper ensemble. Configurationchanges...
Rolling Ensemble          ChangesExhibitor can update the servers in theensemble in a rolling fashion so that theZooKeeper...
VisualizerExhibitor provides a graphical tree view ofthe ZooKeeper ZNode hierarchy.
ZooKeeper Data       MutationWhen enabled, Exhibitor can create/update/delete nodes in the ZooKeeper hierarchy.
Curator IntegrationExhibitor and Curator (Cur/Ex!) can beconfigured to work together so that Curatorinstances are updated f...
How it Works
Shared Configuration                             • S3                             • File System                 Shared     ...
Coming Soon...
• Auto-register new instances• Auto-remove old instances• Alerting• ???
Using / Integration
• Stand alone application                   - or -• Library/JAR
REST API
• https://github.com/Netflix/exhibitor/wiki/  REST-Introduction
DemosQ&A
Exhibitor Introduction
Exhibitor Introduction
Exhibitor Introduction
Exhibitor Introduction
Upcoming SlideShare
Loading in...5
×

Exhibitor Introduction

4,160

Published on

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,160
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
66
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Exhibitor Introduction

    1. 1. ExhibitorNetflix’s ZooKeeper Management System Jordan Zimmerman Senior Platform Engineer Netflix, Inc. jzimmerman@netflix.com @rangalt
    2. 2. The Problem
    3. 3. • ZooKeeper is statically configured• Limited tools for managing the ensemble• Backup/restore is sometimes needed• Visualization is desperately needed• Prior to 3.4.x, periodic cleanup needed
    4. 4. The Goal
    5. 5. Chaos Monkey-able• See http://techblog.netflix.com/2011/07/ netflix-simian-army.html A tool that randomly disables our production instances to make sure we can survive common types of failure without any customer impact.• Completely unmanned• Bringing up a new ensemble should be turn-key/push-button
    6. 6. Features
    7. 7. Instance MonitoringEach Exhibitor instance monitors theZooKeeper server running on the sameserver. If ZooKeeper is not running, Exhibitorwill write the zoo.cfg file, etc. and start it. IfZooKeeper crashes for some reason,Exhibitor will restart it.
    8. 8. Log CleanupIn versions prior to ZooKeeper 3.4.x, log filemaintenance is necessary. Exhibitor willperiodically do this maintenance.
    9. 9. Backup/RestoreBackups in a ZooKeeper ensemble are more complicatedthan for a traditional data store (e.g. aRDBMS). Generally,most of the data in ZooKeeper is ephemeral. It would beharmful to blindly restore an entire ZooKeeper data set.What is needed is selective restoration to prevent accidentaldamage to a subset of the data set. Exhibitor enables this.Exhibitor will periodically backup the ZooKeeper transactionfiles. Once backed up, you can index any of these transactionfiles. Once indexed, you can search for individual transactionsand “replay” them to restore a given ZNode to ZooKeeper.
    10. 10. Cluster-wide ConfigurationExhibitor presents a single console for yourentire ZooKeeper ensemble. Configurationchanges made in Exhibitor will be applied tothe entire ensemble.
    11. 11. Rolling Ensemble ChangesExhibitor can update the servers in theensemble in a rolling fashion so that theZooKeeper ensemble can stay up and inquorum while the changes are being made.
    12. 12. VisualizerExhibitor provides a graphical tree view ofthe ZooKeeper ZNode hierarchy.
    13. 13. ZooKeeper Data MutationWhen enabled, Exhibitor can create/update/delete nodes in the ZooKeeper hierarchy.
    14. 14. Curator IntegrationExhibitor and Curator (Cur/Ex!) can beconfigured to work together so that Curatorinstances are updated for changes in theensemble. Exhibitor Exhibitor Exhibitor A B ... Round Robin - periodic query for servers list Curator Clients Curator Clients Curator Clients
    15. 15. How it Works
    16. 16. Shared Configuration • S3 • File System Shared • Etc. Config Exhibitor Exhibitor Exhibitor A B ...
    17. 17. Coming Soon...
    18. 18. • Auto-register new instances• Auto-remove old instances• Alerting• ???
    19. 19. Using / Integration
    20. 20. • Stand alone application - or -• Library/JAR
    21. 21. REST API
    22. 22. • https://github.com/Netflix/exhibitor/wiki/ REST-Introduction
    23. 23. DemosQ&A
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×