分享

大数据集群【hadoop、hbase、spark、hive,zookeeper、storm等】故障排除之端口详解

pig2 发表于 2017-1-24 16:08:50 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 0 1440


在搭建集群的过程中,无论是hadoop、hbase、spark、hive,zookeeper、storm集群等,我们经常碰到访问被拒绝,总体来说是网络的问题。网络的问题又分为很多种:网络模式错误,防火墙,selinux,端口问题。

其它问题我们都是很好判断的,端口对于不是很熟悉Linux的人来说,还是有难度的。这里总结下端口。

1.如何测试端口是否是通的

1.telnet的含义:
远程登录


2.使用telnet判断
比如我们判断yarn的端口是否是通的。
  1. telnet master 8032
  2. Trying 192.168.1.10...
  3. Connected to master.
  4. Escape character is '^]'.
复制代码







如上图是通的。
如果是
  1. Connection refused
复制代码



则是不通的。这个可能原因,是集群没启动。
如果是因为防火墙的原因则是
  1. Trying 192.168.1.10...
  2. telnet: connect to address 192.168.1.10: No route to host
复制代码





2.端口是否被暂用

一个进程可以有多个端口,一个端口只能被一个进程暂用。查看端口被进程暂用的方法有很多。这里只说比较实用的。

1.使用lsof

lsof 的含义:sof(list open files)是一个列出当前系统打开文件的工具。
lsof -i:端口号查看某个端口是否被占用
  1. lsof -i:8032COMMAND  PID     USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
  2. java    3493 aboutyun  220u  IPv6  32517      0t0  TCP master:pro-ed (LISTEN)
复制代码



2.使用netstat

netstat的含义:Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。

使用netstat -anp|grep 8032

  1. sudo netstat -anp|grep 8032
  2. tcp6       0      0 192.168.1.10:8032       :::*                    LISTEN      3493/java
复制代码




3.端口是否被打开
端口的打开与关闭以及禁用端口之间的区别
如果某个进程使用了端口,那么就打开了该端口,杀掉进程,端口就关闭了。
同时我们想不用这个端口,也就是禁用端口,则可以通过防火墙
  1. "sudo iptables -A INPUT -p tcp --dport $PORT -j DROP"
  2. "sudo iptables -A OUTPUT -p tcp --dport $PORT -j DROP"
复制代码




没找到任何评论,期待你打破沉寂

关闭

推荐上一条 /2 下一条