前几天,兴起想仔细玩玩hbase,细细去研究一下,写了个小demo,从win7去连接另一台T510的ubuntu上的hbase.很简单的crud的操作程序,没有看出来什么问题,但是跑起来,硬是好像block住了,不往下执行,eclipse console没有打印任何信息,小红点还一直亮,纳闷之余,看到一些
Opening socket connection to server 192.168.0.xx/192.168.0.xx:2181. Will not attempt to authenticate using SASL (java.lang.SecurityException: 无法定位登录配置) 错误及 hadoop.native.lib is deprecated. Instead, use io.native.lib.available错误,以为是这二者造成的,网上找了n个贴子,试了n次,都毫无头绪,结果还是依然....
真是奇怪了,zookeeper都连上了,但连不到Hbase的master或region server. why?

换了一个本地虚拟机上的单节点伪分布下的hadoop,架上一个hbase-0.98.1-hadoop2跑起,win7下eclipse插件连接hdfs没问题,刷刷的/hbase目录出现了,hbase-site.xml配置好hbase.zookeeper.quorum指向新vm的本地域名,跑起,通了,刷刷的几秒执行完。。怪事,以后实例就直接vm上玩了。。。。

今天下血本败了台新笔记本,内存升到了16G,装了ubuntu server,把hadoop2,hbase,hive一通都配好,再将quorum指向此机子下的地址,之前的那个问题又来了。小红点一直没退,block住一动不动。奇怪奇怪。。。。

决定debug跟踪一看究竟。。。。
一路都跟着很正常,很轻易地连上了zookeeper,locateMeta地址,locate master的location,再到生成RPC的stub完全ok...但是并不是所有都ok....当执行到

RpcRetryingCaller.callWithRetries时,block住了,等了十几秒准备叉掉重来看上一步什么问题的时候。意外地,到了catch代码块,exception了,非常好,正是我想要的。。。。

try {
beforeCall();
callable.prepare(tries != 0); // if called with false, check table status on ZK
return callable.call();
} catch (Throwable t) {
if (LOG.isTraceEnabled()) {
LOG.trace("Call exception, tries=" + tries + ", retries=" + retries + ", retryTime=" +
(EnvironmentEdgeManager.currentTimeMillis() - this.globalStartTime) + "ms", t);
}

得到debug中e的message信息如下:
org.apache.hadoop.net.ConnectTimeoutException: 20000 millis timeout while waiting for channel to be ready for connect. ch : java.nio.channels.SocketChannel[connection-pending remote=hadoop/192.168.0.105:50578]

开心及气愤并存着,它这个鬼level是trace的,完全没有打印告知咱,若不是debug一回,深埋的小石头咱发现不了啊,顿时眼泪都流没了。。。。

咱比较笨,到这里,还没有立马想到为什么会连到105, 105是我的T510机器的IP,第一反应,难道locate时候会cache数据写到文件中,查看了project也没有生成任何hbaes相关的文件,再回头看,region server的域名。。。hadoop.....
oh...查看hosts文件,正是IP 105映射着hadoop.真相大白了。。。

那些Will not attempt to authenticate using SASL (java.lang.SecurityException: 无法定位登录配置) 错误没关紧要。
事实是这样的:
1.hbase connection 是RPC的关键。connection通过查zookeeper来获取master地址,也通过zk获取meta的地址,再通过meta获取对应region server的地址。通过根据这些location信息,结合相关的操作获取stub.再通过stub发送网络包进行远程请求调用。。而获取到的location都是从hbase server(zk)中返回的,它是集群中的域名或地址,生成stub的时候,是我们本地拿到这个location去请求server.
所以要保持win7的域名解析和集群中的域名解析要一致。学习过程中,我们还是好好地规范一下我们的环境吧,
小小的问题,大大的折腾。。。anyhow ,还是有一点点收获吧。

转载于:https://www.cnblogs.com/bdifn/p/3776137.html

Windwos下连远程linux Hbase小问题相关推荐

  1. winserver下oracle好运维吗,在Windows 客户端下备份远程Linux服务器上的Oracle数据库...

    1.在Windows上安装Oracle客户端软件(比如:win32_11gR1_client版本最好跟服务器Oracle版本相同) 系统运维  www.osyunwei.com  温馨提醒:qihan ...

  2. windows下putty 连接linux远程管理

    一:PUtty介绍 PuTTY 的官方网站:http://www.chiark.greenend.org.uk/~sgtatham/putty/,截止到 2007年6月,发布的最高稳定版本是 0.6. ...

  3. 用crt连接远程linux,在windows下secureCRT远程安全连接linux

    最近由于要学习linux操作系统,感觉在虚拟机里面切来切去的操作有点麻烦,想一下,有没有工具能够解决刚才说的问题呢,我试着用两种方法来解决,一种可以用putty这个工具,学网络技术的人可能会认识.还有 ...

  4. VNC:Linux下的远程遥控专家

    VNC:Linux下的远程遥控专家 蓝森林 http://www.lslnet.com 2001年2月14日 09:35 作 者: panda 在微软Windows操作系统中的远程控制工具软件非常多, ...

  5. zkcli远程连接_zookeeper部署在远程linux下。本地测试联通性一直报CONNECTIONLOSS(-4)错。...

    阿里云部署了一个zookeeper,在本地windos系统中使用zkCli.cmd可以进行远程连接,但是在idea中的小程序无法连接到远程的zookeeper.报CONNECTIONLOSS(-4)错 ...

  6. Xming + PuTTY 在Windows下远程Linux主机使用图形界面的程序

    Xming + PuTTY 在Windows下远程Linux主机使用图形界面的程序 一.原理     Linux/Unix的X Window具有网络透明性.X Window系统里有一个统一的Serve ...

  7. linux下php远程连接mysql_Linux下PHP远程连接Oracle数据库 | 系统运维

    说明: Web服务器环境:CentOS 5.8 32位+Nginx 1.2.3+Mysql 5.5.27+php 5.3.16 Web服务器IP:192.168.21.149 php源码编译目录:/u ...

  8. windows下 VScode+CMake+Linux远程调试

    本文在这个基础上(跳过makefile):在Windows上使用VSCode远程链接到Linux上开发并调试C++程序_yizhiniu_xuyw的专栏-CSDN博客d​开发环境配置成功,记个流水账L ...

  9. Linux操作系统下实现远程开机

    Linux操作系统下实现远程开机 实现远程开机的条件,要满足以下两条:首先,这个被远程开机的机器必需是在局域网内,并且你知道这台机器的MAC地址:其次,你的网卡支持网络唤醒功能,当然,现在大部分网卡都 ...

最新文章

  1. 编译安装Ruby 1.9.3 安装CentOS
  2. java:BIO, NIO
  3. 构建根文件系统之busybox(一)浅析
  4. 第10章 评价分类结果
  5. C#通过获取快捷方式指向目标的小示例触碰WMI
  6. oo第三次博客-JML规格
  7. D1net阅闻:Google发布了能理解人类语言的云服务
  8. APP自动化测试-Appium日志分析
  9. 你真的会用 VS Code 的 Ctrl、Shift和Alt吗?高效易用的快捷键:多光标、跳转引用等轻松搞定
  10. 欧几里得的尺规(三等分一个线段)
  11. NettyMina (转)
  12. 电子电路仿真软件中文版_一个电子工程师的自我修养
  13. IP地址归属地查询算法
  14. 如何使用计算机远程电脑,如何远程控制电脑?手把手教你一个简单办法
  15. 【架构师实践课】单体和微服务怎么选?单体到微服务怎么转?
  16. CAD批量打图精灵入门教程--CAD批量打印、CAD批量转PDF
  17. 计算机应用基础(第二版)周南岳,微波电子自旋共振实验中需要将样品谐振腔调节为驻波模式...
  18. 颠覆平庸 在技术上持续精进
  19. 《数据结构》实验——顺序结构与链表
  20. A* 第k短路详解 (详尽)

热门文章

  1. 企业网络推广下的B站二次上市:致力于造就国内最具活力和创造力的内容社区...
  2. 修改aconda镜像服务器,Jupyter安装链接aconda的实现方法
  3. java cmd copy_使用Java中的cmd复制文件的问题
  4. 南达科他州立大学计算机科学,关于举行南达科他州立大学Srinivas Janaswamy博士学术报告的通知...
  5. java 追加写入hdfs_java操作之HDFS-创建-删除目录-读写文件-追加写文件
  6. php绕后,php函数处理,绕来绕去?
  7. c#将字符串转换为数组_pandas入门: 时间字符串转换为年月日
  8. 一行代码快速搞定Flowable断点下载(上)
  9. php7 mongodb 分组 排序 查询
  10. angular分页插件tm.pagination