我需要使用HBase客户端通过Knox连接到HBase。我有诺克斯的详细信息如下
Knox_Url: https://knox-host:port/gateway/cdp-proxy-api/hbase
Username: knox_user_name
Password: knox_password使用下面的代码,我可以添加URL,但不能添加凭据。
URL url = new URL(Knox_Url);
Configuration conf = HBaseConfiguration.create();
conf.addResource(URL);
Connection con = ConnectionFactory.createConnection(conf);我已经看到了其他的StackOverflow问题,但它们都提到了在配置中设置以下属性。
public void setUp() throws IOException {
config = HBaseConfiguration.create();
config.set("zookeeper.znode.parent","/hbase-unsecure");
config.set("hbase.zookeeper.quorum", ZOOKEEPER_QUORUM);
config.set("hbase.zookeeper.property.clientPort", "2181");
config.set("hbase.cluster.distributed", "true");
connection = ConnectionFactory.createConnection(config);
}我的问题是,是否有办法使用诺克斯网关详细信息连接到HBase并检索数据?
发布于 2021-06-23 08:31:32
我们可以使用RestTemplate连接到HBase。
Config
public RestTemplate create(){
return new RestTemplateBuilder()
.basicAuthentication(user, password)
.setConnectTimeout(Duration.ofSeconds(60))
.setReadTimeout(Duration.ofSeconds(60))
.build();
}使用
String url = "https://host:port/gateway/cdp-proxy-api/hbase";
String response = config.create().getForEntity(url, String.class).getBody();https://stackoverflow.com/questions/68036302
复制相似问题