Zookeeper is an open source sub-project for Hadoop (the open source implementation of Google Chubby), a reliable, coordinated system for large distributed systems that includes configuration maintenance, naming services, distributed synchronization, group services, and more.
Zookeeper's fast Fail and leader election features greatly enhance the stability and robustness of the distributed cluster, and solve the major hidden trouble of single point of failure in Master/slave mode, which is more and more distributed products such as HBase, Storm (Stream computing), S4 (flow calculation) and other strong dependent zookeeper reasons.
Zookeeper is becoming more and more prominent in the distributed cluster (Hadoop ecosystem), and it also provides great convenience for the development of distributed application, which is the reason of the urgent need to study zookeeper deeply.
Learning Note
1. Storing Data data
Save all the data from the Stom cluster to monitor entire data changes, entire clusters and jobs.
Lightweight database,
The directory structure of the file system, each path has node nodes as a unique identity, can store small data, state, ACL, version
Node data change, trigger watches event, notify to each client, one time trigger, need to set next notification
Temporary nodes do not have a ribbon node. Disconnection will automatically disappear.
2. There is no single point of failure. Fast failure mode, automatic repair in short time, provide stable service
3. Configuration management for distributed applications
4. Naming Services
Each node globally is a unique path, a serialized node, and the default naming convention
5. Distributed Notifications and coordination
Using the watches mechanism, the node data is changed and notified to other observers. Realize real-time processing of data changes by different systems, and different systems register the same node with ZK
6. Distributed Lock:
Use object locks to control the order in which the application executes.
Ensure strong data consistency and control timing
Believe every moment, ZK node data must be the same for each client
7. Distributed queues
FIFO, wait for queue member NAND to start execution (increased distributed lock)
Course Outline:
1th Lecture. Zookeeper Familiarity and use overview
Zookeeper basic knowledge, architecture, data model
Common Application Scenarios
2nd lecture. Zookeeper cluster Construction, command-line client operation
Cluster building and testing
Command-line client operations
Stat
3rd talk, Watches, node, API introduction, Java Client Development Watches, node detailed
API Introduction
Java Client Development
4th, Java Client Advanced Practice
Advanced Practice
Authorization actions
5th, actual case development one of the configuration management
Case Development for configuration management
6th, actual case development two distributed lock implementation
The principle and realization of distributed lock
7th Lecture, Operation and maintenance guide and matters needing attention
Daily Maintenance Precautions
Detailed configuration parameters
4 Word Command detailed
8th, operation and monitoring web platform construction and use
Taokeeper Construction and use
Taokeeper provides a web interface to monitor zookeeper clusters in various ways, such as the number of connections, the number of watcher, cluster operation status, disk memory CPU utilization, and other comprehensive monitoring, and provide an alarm interface.
Zookeeper_ Basic Knowledge Learning