(一)如果部署JAVA 代码的主机用户获取了kerberos权限情况下

假设主机名是:client

su - client 登录主机后

kinit -kt /keytab的路径/client.keytab client@STARYEA.COM

编写的java代码入下:

public static void main(String[] args) throws IOException, InterruptedException {

conf = HBaseConfiguration.create();
conf.addResource("hbase-site.xml");
conf.addResource("core-site.xml");
conf.addResource("hdfs-site.xml");

--代码正常写不需要添加任何东西

conn = ConnectionFactory.createConnection(conf);

createTable("client:test_table_0204");
insertData("clienttest_table_0204");
QueryAll("client:test_table_0204");

conn.close();

}

(二)以应用程序的方式获取kerberos认证的情况下

假设主机名是:client

su - client 登录主机后

kdestory --删除主机的凭证,在这种情况下 JAVA代码如下

public static void main(String[] args) throws IOException,
InterruptedException {

conf = HBaseConfiguration.create();
conf.addResource("hbase-site.xml");
conf.addResource("core-site.xml");
conf.addResource("hdfs-site.xml");

--需要添加kerberos认证
String USER = "client@STARYEA.COM";
String KEYTAB = "/etc/security/keytabs/client.keytab";

--APP需要kerberos认证
UserGroupInformation ugi = UserGroupInformation.loginUserFromKeytabAndReturnUGI(USER, KEYTAB);

ugi.doAs(new PrivilegedExceptionAction<Void>() {
   public Void run() {
     try {
      conn = ConnectionFactory.createConnection(conf);

createTable("client:test_table_0204");
      insertData("client:test_table_0204");
      QueryAll("client:test_table_0204");
    }   catch (IOException e) {
    // TODO Auto-generated catch block
     e.printStackTrace();
}

return null;
}
});

conn.close();

}

kerberos下JAVA代码操作hbase的方式(客户端方式,应用程序方式)的更多相关文章

  1. Java代码操作zookeeper

    .personSunflowerP { background: rgba(51, 153, 0, 0.66); border-bottom: 1px solid rgba(0, 102, 0, 1); ...

  2. Java代码操作HDFS测试类

    1.Java代码操作HDFS需要用到Jar包和Java类 Jar包: hadoop-common-2.6.0.jar和hadoop-hdfs-2.6.0.jar Java类: java.net.URL ...

  3. 【HBase】通过Java代码实现HBase数据库中数据的增删改查

    目录 创建maven工程,导入jar包 java代码实现创建hbase表 java代码实现向hbase表中插入数据 java代码查询hbase数据 使用rowKey查询指定列族指定列的值 通过star ...

  4. 【Hbase三】Java,python操作Hbase

    Java,python操作Hbase 操作Hbase python操作Hbase 安装Thrift之前所需准备 安装Thrift 产生针对Python的Hbase的API 启动Thrift服务 执行p ...

  5. 使用java代码操作Redis

    1导入pom.xml依赖 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis ...

  6. java代码操作Redis

    1.导入需要的pom依赖 <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEn ...

  7. linux 下通过过 hbase 的Java api 操作hbase

    hbase版本:0.98.5 hadoop版本:1.2.1 使用自带的zk 本文的内容是在集群中创建java项目调用api来操作hbase,主要涉及对hbase的创建表格,删除表格,插入数据,删除数据 ...

  8. HBase 6、用Phoenix Java api操作HBase

    开发环境准备:eclipse3.5.jdk1.7.window8.hadoop2.2.0.hbase0.98.0.2.phoenix4.3.0 1.从集群拷贝以下文件:core-site.xml.hb ...

  9. 统计文件夹下java代码行数的小程序--主要是学习任务队列的思想

    首先感谢czbk的老师,录制的视频,让我们有这么好的学习资料.……—— 统计文件夹java文件的行数,首先想到的肯定是用递归的方法,因为文件夹下面可能包含文件夹,用递归的方法,代码容易写.(这和写简单 ...

随机推荐

  1. css中的关于margin-top,position和z-index的一些bug解决方案

    这两天在写一个demo的时候,就碰到一些css的问题,不知道能不能算bug,很有可能是因为我写的代码太少,孤陋寡闻了_(:зゝ∠)_.记录一下,以防下次遇到同样问题. 进入正题: 1.问题描述:div ...

  2. 收藏清单: python测试框架最全资源汇总

    xUnit frameworks 单元测试框架 frameworks 框架 unittest - python自带的单元测试库,开箱即用 unittest2 - 加强版的单元测试框架,适用于Pytho ...

  3. Duilib第一步(I)-简介与环境搭建

    Primus gradus et cognoscetis veritatem et veritas liberabit vos.  --Johannes 8:32 Introduction Duili ...

  4. js鼠标滚轮事件兼容

    JavaScript鼠标滚轮事件 IE6.0首先实现了鼠标的滚轮事件,其良好的交互效果得到认可,随后Opera.chrome.safari等主流浏览器都实现了该效果,不过存在着很大的兼容问题. 大多数 ...

  5. PAT1119. Pre- and Post-order Traversals

    思路:中序遍历–根结点,左子树,右子树:后序遍历–左子树,右子树,根结点. 那么在找到根结点之后就可以开始划分左右子树了.左子树的先序第一个节点是根,左子树的后序最后一个节点是根. 例如 1 2 3 ...

  6. 使用IntelliJ IDEA 和 Maven创建Java Web项目

    1. Maven简介 相对于传统的项目,Maven 下管理和构建的项目真的非常好用和简单,所以这里也强调下,尽量使用此类工具进行项目构建, 它可以管理项目的整个生命周期. 可以通过其命令做所有相关的工 ...

  7. 3D打印技术在医疗上的实际应用与实验室研究

    2018-01-17 Chris 免费3D打印模型资源站 预计阅读时间:5-10分钟 关键字:3D打印髋关节.脊柱置换产品,3D打印技术辅助精准截骨,义齿,生物墨水(BioInk),干细胞   随着& ...

  8. 使用BEM命名规范来组织CSS代码

    BEM 是 Block(块) Element(元素) Modifier(修饰器)的简称 使用BEM规范来命名CSS,组织HTML中选择器的结构,利于CSS代码的维护,使得代码结构更清晰(弊端主要是名字 ...

  9. AFDX总线协议规范

    AFDX总线协议规范 1.概述 2. AFDX简介 3.AFDX的在数据传输性能的改进 3.1 AFDX以太网帧格式 3.2 AFDX以太网冗余备份 3.3 虚拟连接 3.4 数据交换处理 4.航空计 ...

  10. VxWorks程序指南

    ******************************************* 一.任务 ******************************************* 任务状态:挂起 ...