ZooKeeper nodes of an ensemble are not independent and self-sufficient, in the sense that a master exists and a majority of nodes must persist such information to consider it valid. The role of master migrates if the corresponding node fails, however.
Writes to a ZooKeeper ensemble are persisted in-order, hence write-wise it is not scalable as you would expect. For reads, each node is eventually consistent. Consequently it may not need the master until a write is requested. In the ideal case of no writes, it would scale perfectly.
Hope that clears the issue.