code: func (kz *Kazoo) Brokers() (map[int32]string, error) {
  	root := fmt.Sprintf("%s/brokers/ids", kz.conf.Chroot)
  	children, _, err := kz.conn.Children(root)
  	if err != nil {
  		return nil, err
  	}
  
  	type brokerEntry struct {
  		Host string `json:"host"`
  		Port int    `json:"port"`
  	}
  
  	result := make(map[int32]string)
  	for _, child := range children {
  		brokerID, err := strconv.ParseInt(child, 10, 32)
  		if err != nil {
  			return nil, err
  		}
  
  		value, _, err := kz.conn.Get(path.Join(root, child))
  		if err != nil {
  			return nil, err
  		}
  
  		var brokerNode brokerEntry
  		if err := json.Unmarshal(value, &brokerNode); err != nil {
  			return nil, err
  		}
  
  		result[int32(brokerID)] = fmt.Sprintf("%s:%d", brokerNode.Host, brokerNode.Port)
  	}
  
  	return result, nil
  }
docs: // Brokers returns a map of all the brokers that make part of the
  // Kafka cluster that is registered in Zookeeper.