From 9b6f0a81c078ca929f4fec99e2ce3aebe971fc41 Mon Sep 17 00:00:00 2001 From: Ali Yousafzai Date: Fri, 16 Jun 2017 13:24:30 -0700 Subject: [PATCH] HBASE-18218 List replication peers for the cluster --- .../hbase/tmpl/master/MasterStatusTmpl.jamon | 66 ++++++++++++++++++++++ 1 file changed, 66 insertions(+) diff --git a/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/master/MasterStatusTmpl.jamon b/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/master/MasterStatusTmpl.jamon index 14dfe0a02c..8f63fae454 100644 --- a/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/master/MasterStatusTmpl.jamon +++ b/hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/master/MasterStatusTmpl.jamon @@ -55,6 +55,11 @@ org.apache.hadoop.hbase.util.Bytes; org.apache.hadoop.hbase.util.FSUtils; org.apache.hadoop.hbase.util.JvmVersion; org.apache.hadoop.util.StringUtils; +org.apache.hadoop.hbase.replication.ReplicationPeerConfig; +org.apache.hadoop.hbase.client.replication.ReplicationAdmin; +org.apache.hadoop.hbase.replication.ReplicationException; +org.apache.hadoop.hbase.HBaseConfiguration; +org.apache.hadoop.conf.Configuration; <%if format.equals("json") %> @@ -239,6 +244,67 @@ AssignmentManager assignmentManager = master.getAssignmentManager();
<& ../common/TaskMonitorTmpl; filter = filter &>
+ + <%java> + Configuration conf = master.getConfiguration(); + ReplicationAdmin replAdmin = new ReplicationAdmin(conf); + Map peers = replAdmin.listPeerConfigs(); + + +
+

Replication Peers

+ + + + + + + + + + + <%for Map.Entry peerEntry : peers.entrySet() %> + <%java> + String peerID = peerEntry.getKey(); + String clusterKey = peerEntry.getValue().getClusterKey(); + String replicationEndpointImpl = peerEntry.getValue().getReplicationEndpointImpl(); + Map peerConfiguration = peerEntry.getValue().getConfiguration(); + String state = ""; + boolean isEnabled = true; + try { + isEnabled = replAdmin.getPeerState(peerID); + state = (isEnabled == true) ? "ENABLED" : "DISABLED"; + } + catch(ReplicationException repExp){ + state = "N/A"; + } + + + + + + + + <%java> + String mapStr = peerConfiguration.toString(); //encloses key=value pairs in {} + int start = mapStr.indexOf('{'); + int end = mapStr.indexOf('}'); + String strToShow = mapStr.substring(start+1,end); //remove {} + + + + + + + + + + + + + +
Peer IDCluster KeyStatusReplicationEndpointImplConfiguration
<% peerID %><% clusterKey %><% state %><% replicationEndpointImpl %><% strToShow %>
Total:<% peers.size() %>
+

Software Attributes

-- 2.11.0 (Apple Git-81)