Search in sources :

Example 6 with MasterCoprocessorEnvironment

use of org.apache.hadoop.hbase.coprocessor.MasterCoprocessorEnvironment in project hbase by apache.

the class MasterQuotasObserver method start.

@Override
public void start(CoprocessorEnvironment ctx) throws IOException {
    this.conf = ctx.getConfiguration();
    this.quotasEnabled = QuotaUtil.isQuotaEnabled(conf);
    if (!(ctx instanceof MasterCoprocessorEnvironment)) {
        throw new CoprocessorException("Must be loaded on master.");
    }
    // if running on master
    MasterCoprocessorEnvironment mEnv = (MasterCoprocessorEnvironment) ctx;
    if (mEnv instanceof HasMasterServices) {
        this.masterServices = ((HasMasterServices) mEnv).getMasterServices();
    } else {
        throw new CoprocessorException("Must be loaded on a master having master services.");
    }
}
Also used : HasMasterServices(org.apache.hadoop.hbase.coprocessor.HasMasterServices) MasterCoprocessorEnvironment(org.apache.hadoop.hbase.coprocessor.MasterCoprocessorEnvironment) CoprocessorException(org.apache.hadoop.hbase.coprocessor.CoprocessorException)

Example 7 with MasterCoprocessorEnvironment

use of org.apache.hadoop.hbase.coprocessor.MasterCoprocessorEnvironment in project hbase by apache.

the class SnapshotScannerHDFSAclController method preMasterInitialization.

@Override
public void preMasterInitialization(ObserverContext<MasterCoprocessorEnvironment> c) throws IOException {
    if (c.getEnvironment().getConfiguration().getBoolean(SnapshotScannerHDFSAclHelper.ACL_SYNC_TO_HDFS_ENABLE, false)) {
        MasterCoprocessorEnvironment mEnv = c.getEnvironment();
        if (!(mEnv instanceof HasMasterServices)) {
            throw new IOException("Does not implement HMasterServices");
        }
        masterServices = ((HasMasterServices) mEnv).getMasterServices();
        hdfsAclHelper = new SnapshotScannerHDFSAclHelper(masterServices.getConfiguration(), masterServices.getConnection());
        pathHelper = hdfsAclHelper.getPathHelper();
        hdfsAclHelper.setCommonDirectoryPermission();
        initialized = true;
        userProvider = UserProvider.instantiate(c.getEnvironment().getConfiguration());
    } else {
        LOG.warn("Try to initialize the coprocessor SnapshotScannerHDFSAclController but failure " + "because the config " + SnapshotScannerHDFSAclHelper.ACL_SYNC_TO_HDFS_ENABLE + " is false.");
    }
}
Also used : HasMasterServices(org.apache.hadoop.hbase.coprocessor.HasMasterServices) MasterCoprocessorEnvironment(org.apache.hadoop.hbase.coprocessor.MasterCoprocessorEnvironment) IOException(java.io.IOException)

Example 8 with MasterCoprocessorEnvironment

use of org.apache.hadoop.hbase.coprocessor.MasterCoprocessorEnvironment in project hbase by apache.

the class TestAccessController2 method testCoprocessorLoading.

@Test
public void testCoprocessorLoading() throws Exception {
    MasterCoprocessorHost cpHost = TEST_UTIL.getMiniHBaseCluster().getMaster().getMasterCoprocessorHost();
    cpHost.load(MyAccessController.class, Coprocessor.PRIORITY_HIGHEST, conf);
    AccessController ACCESS_CONTROLLER = cpHost.findCoprocessor(MyAccessController.class);
    MasterCoprocessorEnvironment CP_ENV = cpHost.createEnvironment(ACCESS_CONTROLLER, Coprocessor.PRIORITY_HIGHEST, 1, conf);
    RegionServerCoprocessorHost rsHost = TEST_UTIL.getMiniHBaseCluster().getRegionServer(0).getRegionServerCoprocessorHost();
    RegionServerCoprocessorEnvironment RSCP_ENV = rsHost.createEnvironment(ACCESS_CONTROLLER, Coprocessor.PRIORITY_HIGHEST, 1, conf);
}
Also used : MasterCoprocessorHost(org.apache.hadoop.hbase.master.MasterCoprocessorHost) RegionServerCoprocessorEnvironment(org.apache.hadoop.hbase.coprocessor.RegionServerCoprocessorEnvironment) RegionServerCoprocessorHost(org.apache.hadoop.hbase.regionserver.RegionServerCoprocessorHost) MasterCoprocessorEnvironment(org.apache.hadoop.hbase.coprocessor.MasterCoprocessorEnvironment) Test(org.junit.Test)

Aggregations

MasterCoprocessorEnvironment (org.apache.hadoop.hbase.coprocessor.MasterCoprocessorEnvironment)8 HasMasterServices (org.apache.hadoop.hbase.coprocessor.HasMasterServices)4 RegionServerCoprocessorEnvironment (org.apache.hadoop.hbase.coprocessor.RegionServerCoprocessorEnvironment)3 IOException (java.io.IOException)2 HashSet (java.util.HashSet)2 Configuration (org.apache.hadoop.conf.Configuration)2 TableName (org.apache.hadoop.hbase.TableName)2 RegionCoprocessorEnvironment (org.apache.hadoop.hbase.coprocessor.RegionCoprocessorEnvironment)2 MasterServices (org.apache.hadoop.hbase.master.MasterServices)2 User (org.apache.hadoop.hbase.security.User)2 PrivilegedExceptionAction (java.security.PrivilegedExceptionAction)1 ArrayList (java.util.ArrayList)1 Arrays (java.util.Arrays)1 List (java.util.List)1 Optional (java.util.Optional)1 Set (java.util.Set)1 Collectors (java.util.stream.Collectors)1 Path (org.apache.hadoop.fs.Path)1 Cell (org.apache.hadoop.hbase.Cell)1 CellUtil (org.apache.hadoop.hbase.CellUtil)1