HBASE-27307 Add Move table to Target Group on master web

This commit is contained in:
SiCheng-Zheng 2023-02-22 01:12:40 +08:00
parent 222ec684d6
commit 553cec4450
1 changed files with 32 additions and 2 deletions

View File

@ -44,15 +44,19 @@
import="org.apache.hadoop.hbase.Size" import="org.apache.hadoop.hbase.Size"
import="org.apache.hadoop.hbase.TableName" import="org.apache.hadoop.hbase.TableName"
import="org.apache.hadoop.hbase.TableNotFoundException" import="org.apache.hadoop.hbase.TableNotFoundException"
import="org.apache.hadoop.hbase.client.Admin"
import="org.apache.hadoop.hbase.client.AsyncAdmin" import="org.apache.hadoop.hbase.client.AsyncAdmin"
import="org.apache.hadoop.hbase.client.AsyncConnection" import="org.apache.hadoop.hbase.client.AsyncConnection"
import="org.apache.hadoop.hbase.client.ColumnFamilyDescriptor" import="org.apache.hadoop.hbase.client.ColumnFamilyDescriptor"
import="org.apache.hadoop.hbase.client.CompactionState" import="org.apache.hadoop.hbase.client.CompactionState"
import="org.apache.hadoop.hbase.client.Connection"
import="org.apache.hadoop.hbase.client.RegionInfo" import="org.apache.hadoop.hbase.client.RegionInfo"
import="org.apache.hadoop.hbase.client.RegionInfoBuilder" import="org.apache.hadoop.hbase.client.RegionInfoBuilder"
import="org.apache.hadoop.hbase.client.RegionLocator" import="org.apache.hadoop.hbase.client.RegionLocator"
import="org.apache.hadoop.hbase.client.RegionReplicaUtil" import="org.apache.hadoop.hbase.client.RegionReplicaUtil"
import="org.apache.hadoop.hbase.client.Table" import="org.apache.hadoop.hbase.client.Table"
import="org.apache.hadoop.hbase.client.TableDescriptor"
import="org.apache.hadoop.hbase.client.TableDescriptorBuilder"
import="org.apache.hadoop.hbase.client.TableState" import="org.apache.hadoop.hbase.client.TableState"
import="org.apache.hadoop.hbase.client.ColumnFamilyDescriptor" import="org.apache.hadoop.hbase.client.ColumnFamilyDescriptor"
import="org.apache.hadoop.hbase.http.InfoServer" import="org.apache.hadoop.hbase.http.InfoServer"
@ -77,6 +81,7 @@
<%@ page import="org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Quotas" %> <%@ page import="org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Quotas" %>
<%@ page import="org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.SpaceQuota" %> <%@ page import="org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.SpaceQuota" %>
<%@ page import="java.util.stream.Collectors" %> <%@ page import="java.util.stream.Collectors" %>
<%@ page import="org.apache.hadoop.hbase.rsgroup.RSGroupAdminClient" %>
<%! <%!
/** /**
* @return An empty region load stamped with the passed in <code>regionInfo</code> * @return An empty region load stamped with the passed in <code>regionInfo</code>
@ -233,7 +238,7 @@
<% return; <% return;
} %> } %>
<% // table split/major compact/compact/merge actions <% // table split/major compact/compact/merge/move actions
if ( !readOnly && action != null ) { %> if ( !readOnly && action != null ) { %>
<div class="container-fluid content"> <div class="container-fluid content">
<div class="row inner_header"> <div class="row inner_header">
@ -282,7 +287,19 @@
admin.mergeRegions(Bytes.toBytesBinary(left), Bytes.toBytesBinary(right), false); admin.mergeRegions(Bytes.toBytesBinary(left), Bytes.toBytesBinary(right), false);
} }
%> Merge request accepted. <% %> Merge request accepted. <%
} %> } else if (action.equals("move")) {
Connection connect = master.getConnection();
Admin newAdmin = connect.getAdmin();
TableName tableName = TableName.valueOf(fqtn);
TableDescriptor td = TableDescriptorBuilder.newBuilder(newAdmin.getDescriptor(tableName))
.setRegionServerGroup(key).build();
newAdmin.modifyTable(td);
RSGroupAdminClient rsGroupAdminClient = new RSGroupAdminClient(connect);
Set<TableName> tableNameSet = new HashSet<>();
tableNameSet.add(tableName);
rsGroupAdminClient.moveTables(tableNameSet,key);
%> Move Table group accepted. <%
}%>
<jsp:include page="redirect.jsp" /> <jsp:include page="redirect.jsp" />
</div> </div>
<% return; <% return;
@ -1235,6 +1252,19 @@ Actions:
</td> </td>
</form> </form>
</tr> </tr>
<tr>
<form method="get">
<input type="hidden" name="action" value="move">
<input type="hidden" name="name" value="<%= fqtn %>">
<td class="centered">
<input style="font-size: 12pt; width: 10em" type="submit" value="Move" class="btn">
</td>
<td style="text-align: center;">
<input type="text" name="key" size="40" placeholder="Target Group (required)">
</td>
<td>Move table to Target Group</td>
</form>
</tr>
</table> </table>
</center> </center>
</p> </p>