public class ReplicationPeersZKImpl extends ReplicationStateZKBase implements ReplicationPeers
Modifier and Type | Class and Description |
---|---|
static class |
ReplicationPeersZKImpl.PeerRegionServerListener
Tracks changes to the list of region servers in a peer's cluster.
|
abortable, conf, DISABLED_ZNODE_BYTES, ENABLED_ZNODE_BYTES, ourClusterKey, peerStateNodeName, peersZNode, queuesZNode, replicationZNode, zookeeper
Constructor and Description |
---|
ReplicationPeersZKImpl(ZooKeeperWatcher zk,
org.apache.hadoop.conf.Configuration conf,
Abortable abortable) |
Modifier and Type | Method and Description |
---|---|
void |
addPeer(String id,
String clusterKey)
Add a new remote slave cluster for replication.
|
void |
addPeer(String id,
String clusterKey,
String tableCFs)
Add a new remote slave cluster for replication.
|
boolean |
connectToPeer(String peerId)
Attempt to connect to a new remote slave cluster.
|
void |
disablePeer(String id)
Stop the replication to the specified remote slave cluster.
|
void |
disconnectFromPeer(String peerId)
Disconnect from a remote slave cluster.
|
void |
enablePeer(String id)
Restart the replication to the specified remote slave cluster.
|
Map<String,String> |
getAllPeerClusterKeys()
List the cluster keys of all remote slave clusters (whether they are enabled/disabled or
connected/disconnected).
|
List<String> |
getAllPeerIds()
List all registered peer clusters and set a watch on their znodes.
|
Set<String> |
getConnectedPeers()
Get a set of all connected remote slave clusters.
|
org.apache.hadoop.conf.Configuration |
getPeerConf(String peerId)
Returns the configuration needed to talk to the remote slave cluster.
|
String |
getPeerTableCFsConfig(String id)
Get the table and column-family list string of the peer from ZK.
|
UUID |
getPeerUUID(String peerId)
Returns the UUID of the provided peer id.
|
List<ServerName> |
getRegionServersOfConnectedPeer(String peerId)
Returns all region servers from given connected remote slave cluster.
|
boolean |
getStatusOfConnectedPeer(String id)
Get the replication status for the specified connected remote slave cluster.
|
boolean |
getStatusOfPeerFromBackingStore(String id)
Get the replication status for the specified remote slave cluster, which doesn't
have to be connected.
|
Map<String,List<String>> |
getTableCFs(String id)
Get the table and column-family-list map of the peer.
|
long |
getTimestampOfLastChangeToPeer(String peerId)
Get the timestamp of the last change in composition of a given peer cluster.
|
void |
init()
Initialize the ReplicationPeers interface.
|
void |
removePeer(String id)
Removes a remote slave cluster and stops the replication to it.
|
void |
setPeerTableCFsConfig(String id,
String tableCFsStr)
Set the table and column-family list string of the peer to ZK.
|
getListOfReplicators, isPeerPath, peerExists, toByteArray
public ReplicationPeersZKImpl(ZooKeeperWatcher zk, org.apache.hadoop.conf.Configuration conf, Abortable abortable)
public void init() throws ReplicationException
ReplicationPeers
init
in interface ReplicationPeers
ReplicationException
public void addPeer(String id, String clusterKey) throws ReplicationException
ReplicationPeers
addPeer
in interface ReplicationPeers
id
- a short that identifies the clusterclusterKey
- the concatenation of the slave cluster's:
hbase.zookeeper.quorum:hbase.zookeeper.property.clientPort:zookeeper.znode.parentReplicationException
public void addPeer(String id, String clusterKey, String tableCFs) throws ReplicationException
ReplicationPeers
addPeer
in interface ReplicationPeers
id
- a short that identifies the clusterclusterKey
- the concatenation of the slave cluster's:
hbase.zookeeper.quorum:hbase.zookeeper.property.clientPort:zookeeper.znode.parenttableCFs
- the table and column-family list which will be replicated for this peerReplicationException
public void removePeer(String id) throws ReplicationException
ReplicationPeers
removePeer
in interface ReplicationPeers
id
- a short that identifies the clusterReplicationException
public void enablePeer(String id) throws ReplicationException
ReplicationPeers
enablePeer
in interface ReplicationPeers
id
- a short that identifies the clusterReplicationException
public void disablePeer(String id) throws ReplicationException
ReplicationPeers
disablePeer
in interface ReplicationPeers
id
- a short that identifies the clusterReplicationException
public String getPeerTableCFsConfig(String id) throws ReplicationException
ReplicationPeers
getPeerTableCFsConfig
in interface ReplicationPeers
id
- a short that identifies the clusterReplicationException
public void setPeerTableCFsConfig(String id, String tableCFsStr) throws ReplicationException
ReplicationPeers
setPeerTableCFsConfig
in interface ReplicationPeers
id
- a short that identifies the clustertableCFsStr
- the table and column-family list which will be replicated for this peerReplicationException
public Map<String,List<String>> getTableCFs(String id) throws IllegalArgumentException
ReplicationPeers
getTableCFs
in interface ReplicationPeers
id
- a short that identifies the clusterIllegalArgumentException
public boolean getStatusOfConnectedPeer(String id)
ReplicationPeers
ReplicationPeers.getStatusOfPeerFromBackingStore(String)
if reading the state after enabling or disabling it.getStatusOfConnectedPeer
in interface ReplicationPeers
id
- a short that identifies the clusterpublic boolean getStatusOfPeerFromBackingStore(String id) throws ReplicationException
ReplicationPeers
getStatusOfPeerFromBackingStore
in interface ReplicationPeers
id
- a short that identifies the clusterReplicationException
public boolean connectToPeer(String peerId) throws ReplicationException
ReplicationPeers
connectToPeer
in interface ReplicationPeers
peerId
- a short that identifies the clusterReplicationException
public void disconnectFromPeer(String peerId)
ReplicationPeers
disconnectFromPeer
in interface ReplicationPeers
peerId
- a short that identifies the clusterpublic Map<String,String> getAllPeerClusterKeys()
ReplicationPeers
getAllPeerClusterKeys
in interface ReplicationPeers
public List<ServerName> getRegionServersOfConnectedPeer(String peerId)
ReplicationPeers
getRegionServersOfConnectedPeer
in interface ReplicationPeers
peerId
- a short that identifies the clusterpublic UUID getPeerUUID(String peerId)
ReplicationPeers
getPeerUUID
in interface ReplicationPeers
peerId
- the peer's ID that will be converted into a UUIDpublic Set<String> getConnectedPeers()
ReplicationPeers
getConnectedPeers
in interface ReplicationPeers
public org.apache.hadoop.conf.Configuration getPeerConf(String peerId) throws ReplicationException
ReplicationPeers
getPeerConf
in interface ReplicationPeers
peerId
- a short that identifies the clusterReplicationException
public List<String> getAllPeerIds()
getAllPeerIds
in interface ReplicationPeers
public long getTimestampOfLastChangeToPeer(String peerId)
ReplicationPeers
getTimestampOfLastChangeToPeer
in interface ReplicationPeers
peerId
- identifier of the peer cluster for which the timestamp is requestedCopyright © 2014 The Apache Software Foundation. All Rights Reserved.