1. 程式人生 > >搭建Hadoop叢集的過程中的坑

搭建Hadoop叢集的過程中的坑

Hadoop預設埠表及用途

用途
9000 fs.defaultFS,如:hdfs://172.25.40.171:9000
9001 dfs.namenode.rpc-address,DataNode會連線這個埠
50070 dfs.namenode.http-address
50470 dfs.namenode.https-address
50100 dfs.namenode.backup.address
50105 dfs.namenode.backup.http-address
50090 dfs.namenode.secondary.http-address,如:172.25.39.166:50090
50091 dfs.namenode.secondary.https-address,如:172.25.39.166:50091
50020 dfs.datanode.ipc.address
50075 dfs.datanode.http.address
50475 dfs.datanode.https.address
50010 dfs.datanode.address,DataNode的資料傳輸埠
8480 dfs.journalnode.rpc-address
8481 dfs.journalnode.https-address
8032 yarn.resourcemanager.address
8088 yarn.resourcemanager.webapp.address,YARN的http埠
8090 yarn.resourcemanager.webapp.https.address
8030 yarn.resourcemanager.scheduler.address
8031 yarn.resourcemanager.resource-tracker.address
8033 yarn.resourcemanager.admin.address
8042 yarn.nodemanager.webapp.address
8040 yarn.nodemanager.localizer.address
8188 yarn.timeline-service.webapp.address
10020 mapreduce.jobhistory.address
19888 mapreduce.jobhistory.webapp.address
2888 ZooKeeper,如果是Leader,用來監聽Follower的連線
3888 ZooKeeper,用於Leader選舉
2181 ZooKeeper,用來監聽客戶端的連線
60010 hbase.master.info.port,HMaster的http埠
60000 hbase.master.port,HMaster的RPC埠
60030 hbase.regionserver.info.port,HRegionServer的http埠
60020 hbase.regionserver.port,HRegionServer的RPC埠
8080 hbase.rest.port,HBase REST server的埠
10000 hive.server2.thrift.port
9083 hive.metastore.uris

9 M+ I1 T; l# h4 r. }6 R: f; Z4 p
其中最常用的應該是50070和8088了,WEB介面中監控hdfs:0 _. `+ b2 Z# d6 g9 s
http://ip:50070/
WEB介面中監控任務執行狀況
) [; `- m& Q, t

在搭建hadoop叢集的時候 ,主要要注意的就是一下幾個方面:

1.linux環境的配置,包括關閉防火牆、配置master到slaves的無密碼ssh登入等

2.hadoop的安裝,所有的機器上的安裝路徑要完全相同,JAVA_HOME變數要在hadoop_env.sh檔案中重新設定,

還有{HADOOP_DIR}/etc/hadoop目錄下面的一堆配置檔案要配置好。

3.注意{HADOOP_DIR}/etc/hadoop 這個目錄下面沒有slaves檔案的話,就要手動建立一個該檔案。然後在裡面寫上作為datanode的節點的主機名eg:

cloud002

cloud003

cloud004

今天碰到了一個非常坑爹的問題,搞了好久,總算搞定了,問題是這樣的:

我在mac本機搭建了一個hadoop 的偽叢集,運行了一個job後,能通過yarn的8088埠看到job的執行情況。

但是在virtualbox虛擬機器中構建了一個包含四臺centos的hadoop完全分散式叢集,也能成功的執行一個job,但就是在yarn的8088埠上 看不到job的執行情況,各種查資料想辦法,就是百思不得其解,後來總算在StackOverflow上無意間看到一個人說道一句話,"job可能實在本地執行的,並沒有在叢集中執行",後來仔細檢查了配置檔案,終於被我發現了一個天大的疏忽,在mapred-site.xml檔案中,配置mapredduce的runner的時候,本來應該配置成yarn的:

<property>

    <name>mapreduce.framework.name</name>

    <value>yarn</value>

  </property>


而我不小心寫成了:

<property>

    <name>mapreduce.frame.name</name>

    <value>yarn</value>

  </property>

這個配置屬性名寫錯了,所以hadoop在執行job的時候還是以local作文runner來執行job的,並不是以yarn來執行job的。所以之前mac本機的偽叢集是可以在yarn的8088

埠上看到job的執行情況,但是在virtualbox中的完全分散式叢集中,卻不能通過yarn的8088埠看到job的執行情況。

不管是寫配置檔案還是 具體的專案程式碼的時候,都要萬分小心仔細,不然 像這樣不小心的疏忽可能造成巨大的坑,導致浪費大量的時間精力,而且像這種

由於自己寫錯導致的太垂直的問題,網上也很難找到答案,引以為戒,一定要用心!!

相關推薦

搭建Hadoop叢集過程

Hadoop預設埠表及用途 埠 用途 9000 fs.defaultFS,如:hdfs://172.25.40.171:9000 9001 dfs.namenode.rpc-address,DataNode會連線這個埠 50070 dfs.namenod

docker搭建Hadoop叢集

前提:jdk和ssh服務都已經安裝完成,如未完成,請參考博主所寫部落格 1、建立映象容器 -P將容器的所有埠對映到主機埠 docker run -itd -v /c/Users:/root/build -P -h master --name master --net mynetwork --

VMware虛擬機器搭建Hadoop叢集

1、下載的軟體: VMware Workstation  Ubuntu  SUN-JDK  Hadoop,可到官網下載   2、安裝 VMwareWorkstation 虛擬機器,並建立 Master 虛擬主機(記住,先是建立一個虛擬機器,然後在這個基礎上進行clone,

阿里雲學生機搭建spark、hadoop叢集(踩之路)

伺服器:三臺阿里雲學生機(三個賬號,都在華南1c)系統:ubuntu一、通過外網ip登入伺服器需要修改安全組,出入方向都一樣,都加入這兩條。為何加這兩條後續慢慢說明。第一條安全組功能之一就是為了能夠本地ssh到伺服器。(網上第一條几乎所有的埠配置都是22/22,後續解釋為何改

hadoop安裝過程出現的錯誤

重新 ubuntu 嘗試 環境變量 項目 環境 usr 返回 內存不足 此次來記錄一下我在安裝Hadoop安裝過程中出現的錯誤,安裝過程參照慕課網林子雨教程進行安裝,在嘗試過程中出現的錯誤如下: 1.在安裝Ubuntu時,新建虛擬電腦時,並沒有在版本的輸入框中有Ubuntu

使用VMware搭建Hadoop叢集虛擬網路配置

使用NET模式,DNS地址就配置成閘道器的地址 NET虛擬網路配置   1、開啟VMware虛擬網路編輯器 編輯-->虛擬網路編輯器-->VMnet8-->更改設定     2、配置主機網路地址 &nb

centos7克隆及網路和主機名配置(VMware15搭建Hadoop叢集

1、克隆 選中右鍵,選擇紅色方框(虛擬機器必須關閉狀態) 2、選中現有快照,但如果沒有拍攝快照則無法選中(如果能選中,則可以忽略此步驟) 解決辦法: 一.選中需要克隆的虛擬機器右鍵點選 二.更改名稱,點選拍攝快照 三。如果不需要已經有了的快照,可以刪除了重新拍攝

hadoop安裝過程的問題

第一次配置檔案環境變數等都配置完後,開始執行偽分散式,報瞭如下圖所示的錯誤。 該錯誤重啟之後就沒用了。當我用jps去檢視執行的服務時,發現什麼都看不到,究其原因是因為當前使用者下沒有檢視許可權,切換到root執行jps就看到了。 第二個錯誤是用eclipse連hadoop的時候DFS連

配置NTP服務ntpd/ntp conf(搭建Hadoop叢集可參考)

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

centos7搭建hadoop叢集之xcall指令碼

在一些特定場景下,需要所有節點同時執行相同的命令,比如主機hadoop1執行ls命令,其他節點主機也同時執行ls命令,實現這種效果快捷方式一般有兩種: 1.使用工具,同一傳送執行命令,如SecureCRT,同時連線所有節點,在視窗下面可以直接輸入需要同時執行的命令。 優

centos7搭建hadoop叢集之rsync和xsync

文章記錄於各個伺服器(或者虛擬機器等)已經配置了ssh免密登入,可執行下面操作,未配置ssh免密登入,可參考:https://blog.csdn.net/yhblog/article/details/84029535 此文章是基於centos7minimal版本的,純淨系統,所以還

搭建Hadoop叢集看一篇成高手系列01】hadoop執行環境的搭建篇——虛擬機器準備

版權宣告:本文為博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/wx1528159409 目錄 1. 在VMware Workstation下安裝CentOs,新建虛擬機器並安裝VMtools 2. 修改虛擬機器IP,聯網並連線Xshell 3

Centos 6.5 搭建hadoop 叢集

-----本叢集搭建案例,以4節點為例進行搭建 1.JDK環境安裝(jdk-7u45-linux-x64.tar.gz 為例 下載地址: https://download.csdn.net/download/sq347216161/10308549) 1.1.上傳jdk安裝包 1.2.規

從零開始搭建hadoop叢集

創作不易,請勿抄襲,轉載請註明出處。如有疑問,請加微信 wx15151889890,謝謝。 [本文連結:]https://blog.csdn.net/wx740851326/article/details/https://blog.csdn.net/wx740851326/article

搭建Hadoop叢集環境時遇到的一些問題

最近在學習搭建hadoop叢集環境,在搭建的過程中遇到很多問題,在這裡做一些記錄。1. SSH相關的問題  問題一: ssh: connect to host localhost port 22: Connection refused  問題二: 遠端連線需要輸入密碼。  參照以下部落格即可解決:    Li

基於Centos7+Docker 搭建hadoop叢集

總體流程: 獲取centos7映象 為centos7映象安裝ssh 使用pipework為容器配置IP 為centos7映象配置java、hadoop 配置hadoop 1.獲取centos7映象 $ docker pull centos:7 //檢視當前已下載docke

本地搭建hadoop叢集--kylin的安裝(叢集部署)

kylin官方安裝文件 http://kylin.apache.org/cn/docs/install/configuration.html 總結: 1、關於麒麟高可用涉及負載均衡官網都說超出範圍了,安裝只考慮安裝的事情,其餘的先忽略 2、kylin在啟動的時候會自動檢測你本地h

本地搭建hadoop叢集--sqoop的安裝.1.4.7 使用db2

安裝 1、解壓tar包 2、進入conf目錄 3、修改配置檔案 cp -a sqoop-env-template.sh sqoop-env.sh vm sqoop-env.sh   export HADOOP_COMMON_HOME=/opt/mo

本地搭建hadoop叢集--hbase和zookeeper的安裝

zookeeper的安裝 1、解壓tar包 2、修改配置檔案 cd conf cp -a zoo_sample.cfg zoo.cfg vim zoo.cfg 配置 dataDir=/opt/module/zookeeper-3.4.12/data 以

本地搭建hadoop叢集-hive多節點訪問(hive2.3.3)

一、思路 1.安裝hadoop叢集。我這裡使用的是自己編譯的2.7.6 2.元資料使用mysql作為技術支撐 3.配置hive引數分發至各個節點 4.hive服務端啟動 5.各個節點hive客戶端訪問   二、mysql的安裝 rpm -q mysq