1. 程式人生 > >Yarn Web頁面 8088 埠在Windows瀏覽器無法訪問

Yarn Web頁面 8088 埠在Windows瀏覽器無法訪問

問題描述

      配置好Hadoop的Namenode節點、secondarynode節點和datanode節點之後,配置hadoop /etc目錄下的mapred-site.xml、yarn-site.xml檔案,配置完成之後,啟動resourcemanager、nodemanager。其中,yarn-site.xml配置如下:

  <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
        <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>localhost.localdomain</value>
        </property>

      jps檢視可以看到都啟動成功。但是windows下輸入下面的訪問地址,提示訪問超時頁面找不到。

http://192.168.175.123:8088

其中192.168.175.123為虛擬機器地址,8088為yarn管理頁面的預設埠

 問題解決

      0. 檢視8088埠是否開啟。如下,可以看到8088埠已經開啟

          檢視某個埠程序的命令:lsof -i:埠號,可以用來檢視8088埠是否為JAVA開啟。 

[[email protected] hadoop-2.8.5]$ lsof -i:8088
COMMAND  PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    3303 hadoop  234u  IPv6  45723      0t0  TCP hadoop.fang.com:radan-http (LISTEN)

     1、Windows瀏覽器訪問提示連線超時。問題出在需要關閉虛擬機器的防火牆。不同版本的linux關閉方法不同。Centos 7 關閉方法如下:設定成永久關閉即可。此時在windows瀏覽器訪問提示connection refused,而不再是連線超時。

  • 臨時關閉防火牆systemctl stop firewalld
  • 永久防火牆開機自關閉systemctl disable firewalld
  • 臨時開啟防火牆systemctl start firewalld
  • 防火牆開機啟動systemctl enable firewalld
  • 檢視防火牆狀態systemctl status firewalld

     2.netstat -nltp檢視埠啟用情況,如下圖,可以看到8088埠(yarn介面)和50070埠(hadoop介面)都是掛載127.0.0.1的ip下面。因此,只能夠本機訪問此埠。所以問題就出在這裡。需要將埠掛載虛擬機器ip下面才可以。首先修改yarn-site.xml的hostname引數配置,修改成自己的一個域名,或者直接寫成虛擬機器IP。我的配置成了hadoop.fang.com.如果配置成域名的話,就需要在/etc/hosts加上域名解析。操作如下

[[email protected] hadoop]# netstat -nltp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:35115           0.0.0.0:*               LISTEN      9344/java           
tcp        0      0 0.0.0.0:9868            0.0.0.0:*               LISTEN      8816/java           
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 127.0.0.1:8020        0.0.0.0:*               LISTEN      8467/java           
tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      1203/dnsmasq        
tcp        0      0 127.0.0.1:50070       0.0.0.0:*               LISTEN      8467/java           
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      972/sshd            
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      971/cupsd           
tcp        0      0 127.0.0.1:8088        0.0.0.0:*               LISTEN      9048/java           
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1086/master         
tcp        0      0 0.0.0.0:13562           0.0.0.0:*               LISTEN      9344/java           
tcp        0      0 127.0.0.1:8030        0.0.0.0:*               LISTEN      9048/java           
tcp        0      0 127.0.0.1:8031        0.0.0.0:*               LISTEN      9048/java           
tcp        0      0 127.0.0.1:8032        0.0.0.0:*               LISTEN      9048/java           
tcp        0      0 127.0.0.1:8033        0.0.0.0:*               LISTEN      9048/java           
tcp        0      0 0.0.0.0:8040            0.0.0.0:*               LISTEN      9344/java           
tcp        0      0 0.0.0.0:8042            0.0.0.0:*               LISTEN      9344/java           
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::22                   :::*                    LISTEN      972/sshd            
tcp6       0      0 ::1:631                 :::*                    LISTEN      971/cupsd           
tcp6       0      0 ::1:25                  :::*                    LISTEN      1086/master

 注:netstat命令用來列印Linux中網路系統的狀態資訊,可讓你得知整個Linux系統的網路情況。

   -n或--numeric:直接使用ip地址,而不通過域名伺服器;     
   -l或--listening:顯示監控中的伺服器的Socket;
   -t或--tcp:顯示TCP傳輸協議的連線狀況;
   -p或--programs:顯示正在使用Socket的程式識別碼和程式名稱;

yarn-site.xml配置如下: 

<configuration>

<!-- Site specific YARN configuration properties -->
	<property>
		<name>yarn.nodemanager.aux-services</name>
		<value>mapreduce_shuffle</value>
	</property>
	<property>
		<name>yarn.resourcemanager.hostname</name>
		<value>hadoop.fang.com</value>
	</property>
</configuration>

      /etc/hosts配置如下。一定將域名配置成虛擬機器本IP地址才可以。

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
192.168.175.123 hadoop.fang.com

注:命令 curl -I http地址 :可以在虛擬機器內部檢視某個http連線返回的http頭資訊。

[[email protected] hadoop-2.8.5]$ curl -I http://192.168.175.123:50070
HTTP/1.1 200 OK
Cache-Control: no-cache
Expires: Thu, 27 Sep 2018 05:49:48 GMT
Date: Thu, 27 Sep 2018 05:49:48 GMT
Pragma: no-cache
Expires: Thu, 27 Sep 2018 05:49:48 GMT
Date: Thu, 27 Sep 2018 05:49:48 GMT
Pragma: no-cache
Content-Type: text/html; charset=utf-8
X-FRAME-OPTIONS: SAMEORIGIN
Expires: Thu, 27 Sep 2018 05:49:48 GMT
Date: Thu, 27 Sep 2018 05:49:48 GMT
Pragma: no-cache
Expires: Thu, 27 Sep 2018 05:49:48 GMT
Date: Thu, 27 Sep 2018 05:49:48 GMT
Pragma: no-cache
X-FRAME-OPTIONS: SAMEORIGIN
Last-Modified: Mon, 10 Sep 2018 03:58:15 GMT
Content-Length: 1079
Accept-Ranges: bytes