hadoop學習筆記(一)——hadoop安裝及測試
這幾天乘著工作之餘,學習了一下hadoop技術,跌跌撞撞的幾天,終於完成了一個初步的hadoop的安裝及測試,具體如下:
動力:工作中遇到的資料量太大,伺服器已經很吃力,sql語句執行老半天,故想用大資料技術來改善一下
環境:centos5.11+jdk1.7+hadoop2.5.2
1. 偽分佈安裝步驟
關閉防火牆
修改ip
修改hostname
設定ssh自動登入
安裝jdk
安裝hadoop
注:此部分涉及到的Linux操作部分可以再下面的連結中找到,Linux初級操作
2. 安裝jdk
用xftp把jdk安裝包放到/root/Downloads
tar xzvfjdk-7u67-linux-i586.tar.gz 解壓縮
vi/etc/profile 設定環境變數,新增如下3行內容
exportJAVA_HOME=/usr/local/jdk1.7
exportCLASSPATH=/usr/local/jdk1.7/lib
exportPATH=.:$JAVA_HOME/bin:$PATH
source /etc/profile 配置檔案立即生效
java –version 驗證是否設定成功
3. 安裝hadoop
用xftp把hadoop安裝包放到/root/Downloads
tar xzvf hadoop-2.5.2.tar.gz 解壓縮
vi /etc/profile 設定環境變數,新增並修改如下內容
export JAVA_HOME=/usr/local/jdk1.7
export HADOOP_HOME=/usr/local/hadoop2.5
export CLASSPATH=/usr/local/jdk1.7/lib
export PATH=.:$HADOOP_HOME/bin:$JAVA_HOME/bin:$PATH
source /etc/profile 配置檔案立即生效
hadoop version 驗證hadoop是否配置成功
4. 設定hadoop偽分佈模式
上面步驟安裝成功後,hadoop處於獨立模式即本機模式,本機模式用於開發階段測試除錯MapReduce程式。偽分佈模式用於在本機上模擬一個小規模的叢集。
修改$HADOOP_HOME/etc/hadoop下的5個配置檔案。
(1) 修改core-site.xml,設定namenode主機,hadoop檔案系統
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://hadoop:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop2.5/tmp</value>
</property>
</configuration>
(2) 修改hdfs-site.xml,設定資料塊副本數目
<configuration>
<property>
<name>dfs.name.dir</name>
<value>/usr/local/hadoop2.5/hdfs/name</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/usr/local/hadoop2.5/hdfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>
(3) 修改mapred-site.xml
[cp mapred-site.xml.template mapred-site.xml]
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
(4)修改hadoop-env.sh,設定JAVA_HOME
在hadoop-env.sh中新增,本機中jdk路徑
export JAVA_HOME=/usr/local/jdk1.7
(5)修改yarn-site.xml,包含MapReduce啟動的配置資訊。<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
5. 啟動hadoop
hdfs namenode –format 格式化HDFS檔案系統
注:第一,格式化之後jdk的路徑會變成相對路徑,需要到hadoop-env.sh中再改成絕對路徑;
第二,一定在hadoop安裝目錄的sbin目錄下執行格式化命令!
cd /usr/local/hadoop2.5/sbin 進入sbin目錄
start-dfs.sh,start-yarn.sh 啟動hadoop
jps 檢視Java程序
共涉及5個Java程序,如下圖所示:NodeManager、SecondaryNameNode、NameNode、DataNode、 ResourceManager;
6. 瀏覽器驗證
在windows系統中繫結Linux主機名和ip
修改C:\Windows\System32\drivers\etc下的host檔案
訪問hadoop:50070和hadoop:8088埠
7. 執行測試程式
使用新建的偽分散式平臺執行wordcount程式:
echo"Hello World.Hello hadoop." > hello.txt
hadoopfs -mkdir -p input 在hdfs系統上建立資料夾input
hadoopfs –ls 檢視資料夾是否建立成功
hadoopfs -put ../hello.txt input 將本地檔案上傳到hdfs
hadoopfs -ls input 檢視檔案是否上傳成功
hadoopjar ../share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.2.jar wordcountinput output 執行wordcount
hadoopfs -ls output 檢視執行之後產生的檔案
hadoopfs -cat output/part-r-00000 檢視執行結果
8.錯誤記錄
1. Q:Java HotSpot(TM) ClientVM warning: You have loaded library/usr/local/hadoop2.5/lib/native/libhadoop.so.1.0.0which might have disabled stack guard. The VM will try to fix the stack guardnow.
A:這個問題的錯誤原因會發生在64位的作業系統上,原因是從官方下載的hadoop使用的本地庫檔案都是基於32位編譯的,執行在64位系統上就會出現上述錯誤。
方案一:在64位系統上重新編譯hadoop;
方案二:在hadoop-env.sh,yarn-env.sh中新增下兩行:
Export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lib/native export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib" 9.感想 hadoop2.X跟hadoop1.X區別還是比較大的,可供查閱的資料方面1.x居多,故把自己學習hadoop2.5的過程分享出來,一方面方便自己查閱,另一方面讓其他人少走彎路 |
相關推薦
hadoop學習筆記(一)——hadoop安裝及測試
這幾天乘著工作之餘,學習了一下hadoop技術,跌跌撞撞的幾天,終於完成了一個初步的hadoop的安裝及測試,具體如下: 動力:工作中遇到的資料量太大,伺服器已經很吃力,sql語句執行老半天,故想用大
Hadoop學習筆記(一)----環境搭建之VMware虛擬機器安裝及建立CentOS
一、vmware安裝 準備好軟體包: 點選安裝vmware 下一步 下一步 下一步 下一步 下一步 點選安裝 安裝完畢: 點選桌面上的
學習筆記(一)-----Hadoop集群規劃及部署
war 偽分布式 節點集群 但是 系統 虛擬 .網絡 什麽 主機模式 1.什麽是Hadoop集群搭建所謂集群,就是一組通過網絡互聯的計算機,集群中的每一臺計算機稱作一個節點,Hadoop集群搭建就是在這個物理集群之上安裝部署Hadoop相關的軟件,然後對外提供大數據存儲和分
hadoop學習筆記 一
Hadoop 2.x * common * HDFS 儲存資料 NameNode 主從結構 * 儲存檔案系統的元資料,名稱空間namespace DataNode * 儲存資料 SecondaryNameNode * 輔助NameNode工作,合併兩個檔案
MongoDB學習筆記(一) MongoDB介紹及安裝
這是MongoDB的系列學習筆記的第一篇,主要介紹什麼是非關係型資料庫MongoDB,如何下載,去哪兒下載,又該怎麼正確的安裝等一系列問題。 一、前言 最近開始學習非關係型資料庫MongoDB,卻在部落格園上找不到比較系統的教程,很多資料都要去查閱英文網站,效率比較
Hadoop學習筆記一(通過Java API 操作HDFS,檔案上傳、下載)
package demo.hdfs; import java.util.Arrays; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.BlockLocation; impor
hadoop 學習(一) 安裝hadoop環境
hadoop 安裝使用需要依賴jdk的環境 首先安裝jdk1.8 並配置環境變數 解壓jdk後修改&
AWS學習筆記(一)--CLI基礎知識(測試)
ren rmi fault download 3-0 hot calling r.js getting Installing the AWS CLI Install the AWS CLI Using pip on linux1) Install python---Chec
hadoop學習筆記2---hadoop的三種運行模式
hadoop1、單機模式安裝簡單,在一臺機器上運行服務,幾乎不用做任何配置,但僅限於調試用途。沒有分布式文件系統,直接讀寫本地操作系統的文件系統。2、偽分布式模式在單節點上同時啟動namenode、datanode、jobtracker、tasktracker、secondary namenode等進程,模擬
hadoop學習筆記1---Hadoop體系介紹
hadoop1、NamenodeHDFS的守護進程記錄文件時如何分割成數據塊的,以及這些數據塊被存儲到哪些節點上對內存和I/O進行集中管理是個單點,發生故障將使集群崩潰2、Secondary Namenode監控HDFS狀態的輔助後臺程序每個集群都有一個與NameNode進行通訊定期保存HDFS元數據快照當N
tensorflow學習筆記一----------tensorflow安裝
all python 出現 版本 install chan highlight clas sta 2016年11月30日,tensorflow(https://www.tensorflow.org/)更新了0.12版本,這標誌著我們終於可以在windows下使用te
Spark學習筆記(一) Ubuntu安裝JDK和ssh
1. Hadoop的必要軟體環境 Java開發環境JDK ssh(安全外殼協議) 1.1 Ubuntu下安裝JDK 系統環境:ubuntu-18.04.1 JDK版本:1.8 1.1.1 從oracle官方下載jdk的包到本機
flink1.7學習筆記一之安裝篇
下載地址:https://mirrors.tuna.tsinghua.edu.cn/apache/flink/flink-1.7.0/flink-1.7.0-bin-hadoop28-scala_2.12.tgz 解壓:tar -zxvf flink-1.7.0-bin-hadoop2
MongoDB學習筆記一:下載安裝MongoDB
MongoDB學習筆記一:MongoDB的下載和安裝 這幾天準備學習一下MongoDB,就打算把學習到的寫部落格記錄下來 一、MongoDB的下載 2.到下載頁面選擇社群版本,下載對應的版本,我這邊是下載windows的64位。 3.等待下載完成。 二、
turtlebot2學習1-基礎包安裝及測試
由於turtlebot是在創客智造買的,很多地方都是參考創客智造的教程進行的,創客智造的教程建議用兩點電腦處在同一網路下操作turtlebot,但為了省事,我們僅用一臺筆記本控制turtlebot。 關於怎麼安裝支架,怎麼接線,以及作業系統的安裝這裡就不再贅述了。 *以下均基於Ubunt
[Hadoop] Hadoop學習筆記之Hadoop基礎
1 Hadoop是什麼? Google公司發表了兩篇論文:一篇論文是“The Google File System”,介紹如何實現分散式地儲存海量資料;另一篇論文是“Mapreduce:Simplified Data Processing on Large Clusters”,介紹如何對分散式大規模
Hadoop學習筆記—3.Hadoop RPC機制的使用
一、RPC基礎概念 1.1 RPC的基礎概念 RPC,即Remote Procdure Call,中文名:遠端過程呼叫; (1)它允許一臺計算機程式遠端呼叫另外一臺計算機的子程式,而不用去關心底層的網路通訊細節,對我們來說是透明的。因此,它經常用於分散式網路通訊中。 RPC協議假定某些傳輸
Hadoop學習筆記—6.Hadoop Eclipse外掛的使用
開篇:Hadoop是一個強大的並行軟體開發框架,它可以讓任務在分散式叢集上並行處理,從而提高執行效率。但是,它也有一些缺點,如編碼、除錯Hadoop程式的難度較大,這樣的缺點直接導致開發人員入門門檻高,開發難度大。因此,Hadop的開發者為了降低Hadoop的難度,開發出了Hadoop Eclipse外掛,它
caffe學習筆記1-win10安裝與測試mnist
windows下caffe的安裝有些麻煩,我折騰了一天終於安裝好caffe並且成功測試了mnist,在此期間遇到了不少坑,特此記錄一下。 安裝caffe caffe的安裝方式一直在變化,我安裝的時候發現不少部落格寫的東西已經有些過時了,所以建議大家在安裝的時
Python學習筆記(一):list屬性及方法淺析
列表學習。 List是python中的基本資料結構之一。建立一個列表的方法 L = [1,2,3,'a'] 通過help(list)檢視列表的屬性及方法。 >>> help(list) Help on class list in module builti