code: func (n *Node) addMember(ctx context.Context, addr string, raftID uint64, nodeID string) error {
  	node := api.RaftMember{
  		RaftID: raftID,
  		NodeID: nodeID,
  		Addr:   addr,
  	}
  
  	meta, err := node.Marshal()
  	if err != nil {
  		return err
  	}
  
  	cc := raftpb.ConfChange{
  		Type:    raftpb.ConfChangeAddNode,
  		NodeID:  raftID,
  		Context: meta,
  	}
  
  	// Wait for a raft round to process the configuration change
  	return n.configure(ctx, cc)
  }
docs: // addMember submits a configuration change to add a new member on the raft cluster.