Hadoop2.4.1分散式安裝(詳細)
注意:第1,第2步每臺機器的安裝路徑要相同,第3步datanode機器不需要
編輯如下檔案:
etc/hadoop/hadoop-env.sh
etc/hadoop/yarn-env.sh
etc/hadoop/slaves
etc/hadoop/core-site.xml
etc/hadoop/hdfs-site.xml
etc/hadoop/mapred-site.xml
etc/hadoop/yarn-site.xml
1、 配置檔案:etc/hadoop/hadoop-env.sh
修改JAVA_HOME值(export JAVA_HOME=/usr/local/java/jdk1.6.0_38)
2、 配置檔案:etc/hadoop/yarn-env.sh
修改JAVA_HOME值(export JAVA_HOME=/usr/local/java/jdk1.6.0_38)
3、 配置檔案:etc/hadoop/slaves (這個檔案裡面儲存所有slave節點)
寫入以下內容:
hadoop2datanode1
hadoop2datanode2
hadoop2datanode3
hadoop2datanode4
hadoop2datanode5
4、 配置檔案:etc/hadoop/core-site.xml
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop2cluster</value> <!-- HDFS路徑 --> </property> <property> <name>io.file.buffer.size</name> <value>131072</value> <!--讀寫檔案的緩衝區大小 --> </property> <property> <name>hadoop.tmp.dir</name> <value>/home/${user.name}/tmp</value><!--零時目錄檔案 --> <description>Abase for other temporary directories.</description> </property> <property> <name>dfs.journalnode.edits.dir</name> <value>/home/${user.name}/journal/data</value> <!--JournalNode過程對峙邏輯狀況的路徑--> </property> <property> <name>ha.zookeeper.quorum</name> <value>10.0.1.68:2181,10.0.1.69:2181,10.0.1.70:2181</value> <!--zookeeper叢集地址--> </property> </configuration>
6、 配置檔案:etc/hadoop/hdfs-site.xml
<configuration> <property> <name>dfs.nameservices</name> <value>hadoop2cluster</value> <!--dfs聯盟NameServices包含那些叢集,如有多個叢集,用逗號分割 --> </property> <property> <name>dfs.ha.namenodes.hadoop2cluster</name> <value>nn1,nn2</value> <!--指定NameServices的hadoop2cluster下的namenode有nn1,nn2 --> </property> <property> <name>dfs.namenode.rpc-address.hadoop2cluster.nn1</name> <value>hadoop2namenode1:8020</value> <!--nn1的RPC地址 --> </property> <property> <name>dfs.namenode.rpc-address.hadoop2cluster.nn2</name> <value>hadoop2namenode2:8020</value> <!--nn2的RPC地址 --> </property> <property> <name>dfs.namenode.http-address.hadoop2cluster.nn1</name> <value>hadoop2namenode1:50070</value> <!--nn1的http地址 --> </property> <property> <name>dfs.namenode.http-address.hadoop2cluster.nn2</name> <value>hadoop2namenode2:50070</value> <!--nn2的http地址 --> </property> <property> <name>dfs.namenode.shared.edits.dir</name> <value>qjournal://hadoop2datanode1:8485;hadoop2datanode2:8485;hadoop2datanode3:8485;hadoop2datanode4:8485;hadoop2datanode5:8485/hadoop2cluster</value> <!--指定hadoop2cluster的NameNode共享edits檔案目錄時,使用JournalNode叢集資訊--> </property> <property> <name>dfs.ha.automatic-failover.enabled.hadoop2cluster</name> <value>true</value> <!-- hadoop2cluster啟動自動故障恢復--> </property> <property> <name>dfs.client.failover.proxy.provider.hadoop2cluster</name> <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value> <!--指定該實現類處理故障恢復 --> </property> <property> <name>dfs.ha.fencing.methods</name> <value>sshfence</value> <!--NameNode切換,使用ssh方式進行操作 --> </property> <property> <name>dfs.ha.fencing.ssh.private-key-files</name> <value>/home/hadoop/.ssh/id_rsa</value> <!--指定祕鑰位置 --> </property> <property> <name>dfs.namenode.name.dir</name> <value>/home/${user.name}/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/home/${user.name}/dfs/data</value> </property> <property> <name>dfs.replication</name> <value>3</value> <!--副本數 --> </property> <property> <name>dfs.webhdfs.enabled</name> <value>true</value> <!--web對hdfs操作 --> </property> <property> <name>dfs.permissions.enabled</name> <value>false</value> <!--是否許可權驗證 --> </property> </configuration>
7、 配置檔案:etc/hadoop/mapred-site.xml
cp mapred-site.xml.template mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobtracker.address</name>
<value>hadoop2namenode1:9101</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop2namenode1:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoop2namenode1:19888</value>
</property>
<property>
<name>mapreduce.app-submission.cross-platform</name>
<value>true</value>
</property>
</configuration>
8、 配置檔案:etc/hadoop/yarn-site.xml
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce_shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>hadoop2resourcemanager:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>hadoop2resourcemanager:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>hadoop2resourcemanager:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>hadoop2resourcemanager:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>hadoop2resourcemanager:8088</value>
</property>
<property>
<name>yarn.application.classpath</name>
<value>
%HADOOP_HOME%\etc\hadoop,
%HADOOP_HOME%\share\hadoop\common\*,
%HADOOP_HOME%\share\hadoop\common\lib\*,
%HADOOP_HOME%\share\hadoop\hdfs\*,
%HADOOP_HOME%\share\hadoop\hdfs\lib\*,
%HADOOP_HOME%\share\hadoop\mapreduce\*,
%HADOOP_HOME%\share\hadoop\mapreduce\lib\*,
%HADOOP_HOME%\share\hadoop\yarn\*,
%HADOOP_HOME%\share\hadoop\yarn\lib\*
</value>
</property>
</configuration>
yarn對外提供的web執行介面訪問地址:http://namenode:8088/
第六:拷貝檔案到datanode1,datanode2和datanode3
scp -r /usr/local/hadoop-2.4.1 [email protected]:/usr/local/
scp -r /usr/local/hadoop-2.4.1 [email protected]:/usr/local/
scp -r /usr/local/hadoop-2.4.1 [email protected]:/usr/local/
scp -r /usr/local/hadoop-2.4.1 [email protected]:/usr/local/
scp -r /usr/local/hadoop-2.4.1 [email protected]:/usr/local/
scp -r /usr/local/hadoop-2.4.1 [email protected]:/usr/local/
scp -r /usr/local/hadoop-2.4.1 [email protected]:/usr/local/
以下是啟動hadoop叢集:
第七:在每個Journalnode節點上hadoop2datanode1、hadoop2datanode2、hadoop2datanode3,hadoop2datanode4,hadoop2datanode5上分別執行命令:
sbin/hadoop-daemon.sh start journalnode 啟動journalnode 節點
sbin/hadoop-daemon.sh stop journalnode 關閉journalnode 節點
執行後,在每個節點在使用jps命令檢視到JournalNode(紅色標記)已經啟動,如:
[[email protected] hadoop-2.4.1]$ jps
6948 JournalNode
7297 Jps
注:執行bin/hdfs namenode -format命令必須啟動journalnode。如果連線不到8485(見journalnode配置)埠,namenode是不能被格式化的,錯誤如下:
14/07/24 09:06:15 INFO ipc.Client: Retrying connect to server: hadoop2datanode5/10.0.1.72:8485. Already tried 2 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS)
第八:在hadoop2namenode1格式化namenode
bin/hdfs namenode -format 格式化之前Journalnode啟動(超過半數)
否則報如下錯誤:
14/07/24 09:06:15 INFO ipc.Client: Retrying connect to server: hadoop2datanode5/10.0.1.72:8485. Already tried 2 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS)
第九:在hadoop2namenode1節點執行:bin/hdfs zkfc -formatZK
第十:啟動namenode
首先在hadoop2namenode1機器上啟動namenode:
sbin/hadoop-daemon.sh start namenode 啟動本機namenode
sbin/hadoop-daemon.sh start namenode 關閉本機namenode
在hadoop2namenode2機器上啟動standby namenode:
bin/hdfs namenode –bootstrapStandby(必須主節點(hadoop2namenode1)啟動才行),否則會報如下錯誤:
org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: Directory /home/hadoop/dfs/name is in an inconsistent state: storage directory does not exist or is not accessible.
sbin/hadoop-daemon.sh start namenode
最後,分別在hadoop2namenode1和hadoop2namenode2節點在使用jps命令檢視到NameNode(紅色標記)已經啟動,如:
[[email protected] hadoop-2.4.1]$ jps
9566 NameNode
10156 Jps
這時候,使用瀏覽器訪問 http://hadoop2namenode1:50070/dfshealth.jsp 和 http://hadoop2namenode2:50070/dfshealth.jsp 兩個URL都成功的話,證明NameNode啟動成功了。
第十一:啟動datanode
在hadoop2namenode1節點:
執行:sbin/hadoop-daemons.sh start datanode
[[email protected] hadoop-2.4.1]$ sbin/hadoop-daemons.sh start datanode
hadoop2datanode1: starting datanode, logging to /usr/local/hadoop-2.4.1/logs/hadoop-hadoop-datanode-hadoop2datanode1.out
hadoop2datanode2: starting datanode, logging to /usr/local/hadoop-2.4.1/logs/hadoop-hadoop-datanode-hadoop2datanode2.out
hadoop2datanode3: starting datanode, logging to /usr/local/hadoop-2.4.1/logs/hadoop-hadoop-datanode-hadoop2datanode3.out
hadoop2datanode4: starting datanode, logging to /usr/local/hadoop-2.4.1/logs/hadoop-hadoop-datanode-hadoop2datanode4.out
hadoop2datanode5: starting datanode, logging to /usr/local/hadoop-2.4.1/logs/hadoop-hadoop-datanode-hadoop2datanode5.out
最後,分別在五個datanode節點在使用jps命令可以看到DataNode啟動(紅色標記),如:
[[email protected] hadoop-2.4.1]$ jps
6365 Jps
6027 JournalNode
6108 DataNode
第十二:啟動YARN
在hadoop2resourcemanager節點,執行:sbin/start-yarn.sh
[[email protected] hadoop-2.4.1]$ sbin/start-yarn.sh
starting yarn daemons
starting resourcemanager, logging to /usr/local/hadoop-2.4.1/logs/yarn-hadoop-resourcemanager-hadoop2resourcemanager.out
hadoop2datanode4: starting nodemanager, logging to /usr/local/hadoop-2.4.1/logs/yarn-hadoop-nodemanager-hadoop2datanode4.out
hadoop2datanode1: starting nodemanager, logging to /usr/local/hadoop-2.4.1/logs/yarn-hadoop-nodemanager-hadoop2datanode1.out
hadoop2datanode2: starting nodemanager, logging to /usr/local/hadoop-2.4.1/logs/yarn-hadoop-nodemanager-hadoop2datanode2.out
hadoop2datanode3: starting nodemanager, logging to /usr/local/hadoop-2.4.1/logs/yarn-hadoop-nodemanager-hadoop2datanode3.out
hadoop2datanode5: starting nodemanager, logging to /usr/local/hadoop-2.4.1/logs/yarn-hadoop-nodemanager-hadoop2datanode5.out
最後,分別在五個datanode節點在使用jps命令可以看到resourcemanager程序NodeManager(紅色標記)已經啟動,如:
[[email protected] hadoop-2.4.1]$ jps
7147 Jps
6973 NodeManager
6776 JournalNode
6867 DataNode
1705 QuorumPeerMain #這個是zookeeper節點
第十三:啟動ZooKeeperFailoverController
分別兩個namenode所在機器hadoop2namenode1和hadoop2namenode2啟動:
sbin/hadoop-daemon.sh start zkfc 啟動
sbin/hadoop-daemon.sh stop zkfc 停止
在hadoop2namenode1和hadoop2namenode2執行jps命令可以看到DFSZKFailoverController(紅色標記)已經啟動檢視:
[[email protected] hadoop-2.4.1]$ jps
10227 Jps
9566 NameNode
9787 DFSZKFailoverController
第十四:在hadoop2namenode1節點啟動JobHistoryServer
啟動日誌服務(檢視mapreduce歷史):JobHistoryServer
sbin/mr-jobhistory-daemon.sh start historyserver啟動
sbin/mr-jobhistory-daemon.sh stop historyserver停止
在hadoop2namenode1執行jps命令可以看到JobHistoryServer(紅色標記)已經啟動檢視:
[[email protected] hadoop-2.4.1]$ jps
9566 NameNode
9787 DFSZKFailoverController
10345 Jps
10302 JobHistoryServer
相關啟動命令:
yarn-daemon.sh start resourcemanager
yarn-daemon.sh start nodemanager
hadoop-daemon.sh start namenode
hadoop-daemon.sh start datanode
hadoop-daemon.sh start secondarynamenode
殺死某個正在執行的Job : hadoop job -kill job_201005310937_0053
檢視叢集狀態:./bin/hdfs dfsadmin –report
檢視檔案塊組成: ./bin/hdfsfsck / -files -blocks
檢視HDFS: http://namenode:50070
檢視RM: http://namenode:8088
第十五:執行hadoop程式
[[email protected] .ssh]$ ./hadoop jar /home/hadoop/project/hadoop-1.0.jar com.fish.hadoop.WordCount
相關推薦
Hadoop2.4.1分散式安裝(詳細)
注意:第1,第2步每臺機器的安裝路徑要相同,第3步datanode機器不需要 編輯如下檔案: etc/hadoop/hadoop-env.sh etc/hadoop/yarn-env.sh etc/hadoop/slaves etc/hadoop/core-site.xml etc/hadoop/hdfs
VS2005下編譯、安裝Net-snmp 5.4.1.2手記(原創)
VS2005下編譯、安裝Net-snmp 5.4.1.2手記 by Flyfish <[email protected]>2008-09-08:=======================================================
mysql編譯安裝(詳細)(轉載)
所有 man 同時 wget borde ins s參數 set sysconf mysql編譯安裝(詳細) 一、編譯安裝MySQL前的準備工作 安裝編譯源碼所需的工具和庫 yum install gcc gcc-c++ ncurses-dev
最新版Eclipse下載及安裝(詳細)
Eclipse是JavaWeb開發最常用的工具,下面詳細介紹一下如何下載安裝最新版Eclipse。 一、Eclipse下載 1.輸入網址:https://www.eclipse.org/downloads/ 我們會到官網中找到如下的下載按鈕,但預設下載的是Windows作業系統的64位,
C# EMGU 3.4.1學習筆記(八)示例程式:霍夫圓變換HoughCircles函式
霍夫圓變換的基本思路是認為影象上每一個非零畫素點都有可能是一個潛在的圓上的一點,跟霍夫線變換一樣,也是通過投票,生成累積座標平面,設定一個累積權重來定位圓。 在笛卡爾座標系中圓的方程為: 其中(a,b)是圓心,r是半徑,也可以表述為: 即: 所以在ab
C# EMGU 3.4.1學習筆記(二)XML和YAML檔案的寫入
以下是《OpenCV3程式設計入門》中5.6.3的示例程式的C# + EMGU 3.4.1版,和C++程式相比,有如下幾點不同: 1. 使用Matrix<>儲存多維陣列,多維陣列的各維需要使用{}擴起來,之間用逗號分隔; 2. C#中無法使用<<和
SpringMVC 4.1 新特性(一)JSONP的支援
為了啟用@ResponseBody和ResponseEntity方法的JSONP支援,需宣告一個@ControllerAdvice的bean,它擴充套件了AbstractJsonpResponseBod
Spark偽分散式安裝(一)
筆者是在已安裝好的偽分散式Hadoop環境下安裝的Spark。虛擬機器環境為:centos7。 Hadoop版本號為: [centosm@centosm spark]$ hadoop version Hadoop 2.7.2 一、Spark偽分散式安裝
ThreadPoolExecutor裡面4種拒絕策略(詳細)
ThreadPoolExecutor類實現了ExecutorService介面和Executor介面,可以設定執行緒池corePoolSize,最大執行緒池大小,AliveTime,拒絕策略等。常用構造方法:ThreadPoolExecutor(int corePoolSiz
【機器學習】Windows +Anaconda3(python3.5)+opencv3.4.1 安裝(2)
Windows +Anaconda3(python3.5)+opencv3.4.1 安裝(2) 原文參考:https://www.cnblogs.com/
sqoop-1.4.7安裝(一)
(一):簡介和環境說明 sqoop是apache旗下一款“Hadoop和關係資料庫伺服器之間傳送資料”的工具。 匯入資料:MySQL,Oracle匯入資料到Hadoop的HDFS、HIVE、HBASE等資料儲存系統; 匯出資料:從Hadoop的檔案系統中匯出資料到關係資料庫
ubuntu 安裝 pytorch (ubuntu16.04+pytorch0.4.1+python2.7+cuda8.0)
這裡使用pip安裝pytorch,我試過cuda安裝,和電腦的配置沒相容,沒有安裝成功,後來發現使用pip安裝很簡單方便,就是用pip安裝 首先進入pytorch官網,往下拉會看到不同的安裝選項 根據自
詳細圖解mongodb 3.4.1 win7x64安裝
個數 問題 存在 vertica ext 安裝服務 img value 數據庫管理 詳細圖解,記錄 win7 64 安裝mongo數據庫的過程。安裝的版本是 MongoDB-win32-x86_64-2008plus-ssl-3.4.1-signed。 我下載的源文件:m
windows64系統下安裝 redis服務 (詳細)
sta 保存數據 card class 再看 exe track ttl -c Linux下Redis安裝鏈接 : 轉到 redis是一個key-value存儲系統。和Memcached類似,它支持存儲的value類型相對更多,包括string(字符串)、list
spring boot 1.5.4 集成devTools(五)
springboot springboot1.5.4 springboot整合jsp springboot之web開發 springboot熱部署devtools 上一篇:spring boot 1.5.4 整合JSP(四)1.1 Spring Boot集成devToolssprin
spring boot 1.5.4 統一異常處理(九)
springboot springboot1.5.4 springboot整合springdatajpa springboot集成jdbctemplate springboot異常處理 上一篇:springboot 1.5.4 配置文件詳解(八) 1 Spring Boot統一異
kubernetes 1.8 高可用安裝(五)
k8s 1.8 calico 網絡5安裝網絡組件calico安裝前需要確認kubelet配置是否已經增加--network-plugin=cni如果沒有配置就加到kubelet配置文件裏Environment="KUBELET_NETWORK_ARGS=--network-plugin=cni --cni-
1.4 配置備份策略(Policy)
所有 nes 需求 console ive bubuko 進入 AR mon 1.1 配置備份策略(Policy) 一個備份策略由四部分組成。 Attributes(屬性) Policy是否Active
VS2017 + opencv 3.4.1 配置 簡記 (window 64位)
step1 下載opencv: 下載地址 下載完畢後點擊解壓得到 將 D:\cv1012\opencv\build\x64\vc15\bin 新增到環境變數 step2 下載VS2017:
Centos6.10下Open-falcon的分散式安裝(虛擬機器偽分散式)和前端介面安裝
官方文件地址,還在開發階段,文件部分有點亂 https://book.open-falcon.org/zh_0_2/distributed_install/ 偽分散式安裝,只有一臺虛擬機器,重在學習每個元件 1 環境準備 1.1 配置epel源 必備操作,很多軟體官方源沒有