版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、偽分布式安裝Hadoop+zookeeper+hive+hbase安裝配置1. 安裝JDK,配置環(huán)境JAVA環(huán)境變量export PATH=$PATH:$JAVA_HOME/binexport CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/libexport PATH=$PATH:$HADOOP_INSTALL/bin77/jreexport CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH2.2.1.sudo tar -xzf hadoop-1.0.3.tar.gz2.2. 配置Ha
2、doop環(huán)境變量export HADOOP_INSTALL=/user/local/hadoop-1.0.3export PATH=$PATH:$HADOOP_INSTALL/bin激活profile文件:rootlocalhost etc# chmod +x profilerootlocalhost etc# source profilerootlocalhost etc# hadoop version2.3. 查看hadoop版本rootlocalhost # hadoop versionCompiled by hortonfo on Tue May 8 20:31:25 UTC 2012
3、From source with checksum e6b0c1e23dcf76907c5fecb4b832f3be輸入 hadoop version命令后輸入下圖,則安裝hadoop成功2.4. 修改配置文件a) hadoop-core-1.0.3.jarb) 去解壓后的hadoop-core-1.0.3文件夾下,復制文件core-default.xml,hdfs-default.xml,mapred-default.xml三個文件到hadoop-1.0.3/conf/下,刪除hadoop-1.0.3/conf/文件夾下的core-site.xml,hdfs-site.xml,mapred-
4、site.xml,將復制過來的三個文件的文件名中的default修改為sitec) 在hadoop-1.0.3文件夾同級創(chuàng)建文件夾hadoop,打開core-site.xml文件,修改屬性節(jié)點下的name節(jié)點為對應的value節(jié)點,修改為/user/local/$/hadoop/hadoop-$,這樣hadoop生成的文件會放入這個文件夾下.修改name節(jié)點為對應的value節(jié)點,修改為:9000/打開mapred-site.xml文件,修改property節(jié)點下name為對應的的value, 改為:localhost:90013. 安裝ssh1. 執(zhí)行命令
5、安裝ssh:sudo apt-get install ssh2. 基于空口令創(chuàng)建一個新SSH密鑰,以啟用無密碼登陸a) ssh-keygen -t rsa -P '' -f /.ssh/id_rsa執(zhí)行結(jié)果:b) cat /.ssh/id_rsa.pub >> /.ssh/authorized_keys3. 測試ssh localhost測試結(jié)果:輸入yes再次輸入ssh localhost:成功之后,就不需要密鑰4. 格式化HDFS文件系統(tǒng)輸入指令:hadoop namenode formatrootlocalhost # hadoop namenode form
6、at13/07/17 14:26:41 INFO namenode.NameNode: STARTUP_MSG: /*STARTUP_MSG: Starting NameNodeSTARTUP_MSG: args = formatSTARTUP_MSG: build = /repos/asf/hadoop/common/branches/branch-1.0 -r 1335192; compiled by 'hortonfo' on Tue May 8 20:31:25 UTC 2012*/Usage: java NameNode -f
7、ormat | -upgrade | -rollback | -finalize | -importCheckpoint13/07/17 14:26:41 INFO namenode.NameNode: SHUTDOWN_MSG: /*/5. 啟動和終止守護進程啟動和終止HDFS和MapReduce守護進程,鍵入如下指令啟動start-all.sh(start-dfs.sh,start-mapred.sh)出錯了,JAVA_HOME is not set hadoop-env.sh將紅線以內(nèi)部分注釋解開,修改為本機JAVA_HOME再次執(zhí)行啟動命令start-all.sh停止stop-all.
8、sh(stop-dfs.sh,stop-mapred.sh) 到此,hadoop就已經(jīng)安裝完成了6. Hadoop文件系統(tǒng)6.1. 查看hadoop所有塊文件執(zhí)行命令:hadoop fsck / -files blocks執(zhí)行結(jié)果:此結(jié)果顯示,hadoop文件系統(tǒng)中,還沒有文件可以顯示本機出錯,出錯原因:datanode沒有啟動,具體見evernote筆記。rootlocalhost # hadoop fsck / -files blocks13/07/17 14:44:15 ERROR security.UserGroupInformation: PriviledgedActionExcep
9、tion as:root cause:.ConnectException: Connection refusedException in thread "main" .ConnectException: Connection refused at .PlainSocketImpl.socketConnect(Native Method) at .PlainSocketImpl.doConnect(PlainSocketImpl.java:351) at .PlainSocketImpl.connectToAddress(PlainSocketImpl.java:211) a
10、t .PlainSocketImpl.connect(PlainSocketImpl.java:200) at .SocksSocketImpl.connect(SocksSocketImpl.java:366) at .Socket.connect(Socket.java:529) at .Socket.connect(Socket.java:478) at .NetworkClient.doConnect(NetworkClient.java:163) at .www.http.HttpClient.openServer(HttpClient.java:388) at .www.http.
11、HttpClient.openServer(HttpClient.java:523) at .www.http.HttpClient.<init>(HttpClient.java:227) at .www.http.HttpClient.New(HttpClient.java:300) at .www.http.HttpClient.New(HttpClient.java:317) at .tocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:970) at .tocol
12、.http.HttpURLConnection.plainConnect(HttpURLConnection.java:911) at .tocol.http.HttpURLConnection.connect(HttpURLConnection.java:836) at .tocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1172) at org.apache.hadoop.hdfs.tools.DFSck$1.run(DFSck.java:141) at org.apache.h
13、adoop.hdfs.tools.DFSck$1.run(DFSck.java:110) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:396) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1121) at org.apache.hadoop.hdfs.tools.DFSck.run(DFSck.jav
14、a:110) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79) at org.apache.hadoop.hdfs.tools.DFSck.main(DFSck.java:182)rootlocalhost # 6.2. 將文件復制到hadoop文件系統(tǒng)中a) 在hadoop文件系統(tǒng)中創(chuàng)建文件夾,執(zhí)行命令:hadoop fs -mkdir docsb) 復制本地文件到hadoop文件系統(tǒng)中執(zhí)行命令:ha
15、doop fs -copyFromLocal docs/test.txt :9000/user/docs/test.txtc) 復制hadoop文件系統(tǒng)中的文件回本地,并檢查是否一致復制:檢查結(jié)果若顯示兩個md5加密值相同,則文件內(nèi)容相同。 d) 查看HDFS文件列表執(zhí)行命令:hadoop fs ls執(zhí)行結(jié)果:e) 再次查看文件系統(tǒng)文件塊執(zhí)行命令:hadoop fsck / -files blocks執(zhí)行結(jié)果如圖: hdfs-site.xml文件,此處修改文件備份數(shù)量7. 安裝zookeeper7.1. 準備下載地址:7.2. 安裝zookeeper執(zhí)行命令:tar xzf z解壓安裝文件7.
16、3. 環(huán)境變量執(zhí)行sudo vim /etc/profile打開后加入export PATH=$PATH:$ZOOKEEPER_HOME/bin執(zhí)行命令 source /etc/profile 讓環(huán)境變量生效7.4. 配置zookeeper打開zookeeper /conf/zoo.cfg#以下是文件內(nèi)容#zookeeper基本時間單元(毫秒)tickTime=2000#zookeeper存儲持久數(shù)據(jù)的本地文件系統(tǒng)位置dataDir=/user/local/xxx/zookeeper#zookeeper用戶監(jiān)聽客戶端連接的端口clientPort=2181 #文件內(nèi)容結(jié)束將$ZOOKEEPER
17、_HOME/r復制到$HADOOP_INSTALL/lib目錄下?lián)Q到 zookeeper/bin/目錄下執(zhí)行./zkServer.sh start執(zhí)行./zkServer.sh status ,echo stat | nc q 1 localhost,echo stat | nc localhost 2181 查看狀態(tài)執(zhí)行 echo ruok | nc localhost 2181執(zhí)行結(jié)果為 imok 是I am ok的意思表示安裝并啟動成功關(guān)閉zookeeper./zkServer.sh stop8. 安裝Hive8.1. 準備hive-0.下載地址:8.2. 安裝hive執(zhí)行命令 tar
18、xzf hive-0.9.0.tar.gz解壓安裝文件8.3. 環(huán)境變量執(zhí)行sudo vim /etc/profile打開后加入export HIVE_HOME=/user/local/export PATH=$PATH:$HIVE_HOME/bin執(zhí)行命令 source /etc/profile 讓環(huán)境變量生效8.4. 配置hive進入$HIVE_HOME/bin下打開文件 hive-conf.sh插入三行export HIVE_HOME=dirname "$bin"關(guān)閉文件后執(zhí)行命令 ./hive shell 進入hive的shell模式執(zhí)行命令 “show table
19、s;”hive語句后面必須跟隨一個”;” 不然命令無法執(zhí)行,執(zhí)行結(jié)果如下:安裝成功Hive的語法和mysql的差不多,這里就不多寫了9. 安裝hbase9.1. 準備hbase-0.94下載地址:9.2. 安裝hbase執(zhí)行命令 tar xzf hbase-0.94z解壓安裝文件9.3. 環(huán)境變量執(zhí)行sudo vim /etc/profile打開后加入export HBASE_HOME=/user/local/export PATH=$PATH:$HBASE_HOME/bin執(zhí)行命令 source /etc/profile 讓環(huán)境變量生效9.4. 配置hbase9.4.1. 打開hbase/c
20、onf/hbase-env.sh 加入如下內(nèi)容export HBASE_MANAGERS_ZK=false修改HBASE_OPTS為:export HBASE_OPTS="$HBASE_OPTS -XX:+HeapDumpOnOutOfMemoryError -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode"9.4.2. 打開hbase/conf/hbase-site.xml加入如下內(nèi)容<configuration><property> <name>hbase.rootdir</name
21、> <value>hdfs:/localhost:9000/hbase</value></property><property> <name>hbase.cluster.distributed</name> <value>true</value></property><property><name>hbase.master</name><value>localhost:60000</value></property&
22、gt; <property> <name>hbase.master.port</name> <value>60000</value> <description>The port master should bind to.</description> </property></configuration>打開regionservers文件放入localhost將$HBASE_HOME/ 復制到$HADOOP_INSTALL/lib下重新啟動hadoop 執(zhí)行start-all.sh轉(zhuǎn)入h
23、base/bin/目錄下執(zhí)行./start-hbase.sh 腳本,啟動hbase9.4.3. 跟蹤日志進入hbase日志追蹤,進入$HBASE_HOME/logs,執(zhí)行命令:tail - f hbase-master.log如果啟動一直出現(xiàn)下圖所示日志,表示hadoop在安全模式下,需要關(guān)閉hadoop安全模式,9.4.4. 關(guān)閉hadoop安全模式命令:hadoop dfsadmin -safemode leave關(guān)閉后,hbase會將會正常啟動9.4.5. 啟動成功后執(zhí)行hbase shell進去shell模式下 執(zhí)行create test, data創(chuàng)建表。執(zhí)行結(jié)果如下:執(zhí)行l(wèi)ist查
24、詢表,執(zhí)行結(jié)果如下:這樣我們就安裝成功了9.5. HBase基本命令a) 常用命令創(chuàng)建表:Ø create 'table','family1','family2','familyN',執(zhí)行結(jié)果如下:table是表名稱, family(1N)為列族名稱, 每個列族下面可以有很多列。0 row(s) in 1.0660 seconds 標識此命令返回結(jié)果0行,執(zhí)行時間為1.0660秒。插入數(shù)據(jù):Ø put 'table', 'row', 'family1:column'
25、;, 'value'執(zhí)行結(jié)果如下:row為行名稱,family:column 代表名稱為famliy的列族下名稱為column的列,column為列名稱,value為此行此列的值刪除表之前必須先將表禁用,否則無法刪除,命令如下Ø disable 'table'Ø disable_all 't.*'刪除表Ø drop 'table'Ø drop_all 't.*'若不禁用表,直接執(zhí)行刪除, 會出現(xiàn)如下圖的執(zhí)行結(jié)果:此圖中紅線所括中的地方顯示異常信息,表示此table表現(xiàn)在在可用
26、狀態(tài),請先禁用它。所以我們刪除表之前必須執(zhí)行禁用。表可用命令Ø enable 'table'Ø enable_all 't.* '9.6. 其他命令b) 查看表信息Ø describe 'table'此圖中左側(cè)可以看出表信息, 表名稱,表列族名稱。右邊有enabled,true標識此表未禁用,若為false標識此表已禁用,凍結(jié)后可用上方的解除禁用命令解除。判斷表是否被禁用:Ø is_disabled 'table'判斷表是否可用:Ø is_enabled 'table
27、9;查看hbase中所有的表:Ø list 查看表中數(shù)據(jù)行數(shù)Ø count 'table'追加一個列族Ø alter 'table', 'famliy4', 'famliy5', 'famliyN'.10. hive結(jié)合hbase 使用10.1. 結(jié)合說明用hbase做數(shù)據(jù)庫,但由于hbase沒有類sql查詢方式,所以操作和計算數(shù)據(jù)非常不方便,于是整合hive,讓hive支撐在hbase數(shù)據(jù)庫層面 的 hql查詢.hive也即 做數(shù)據(jù)倉庫官方結(jié)合使用wiki地址Hive與HBase的整
28、合功能的實現(xiàn)是利用兩者本身對外的API接口互相進行通信,相互通信主要是依靠hive_hbase-handler.jar工具類 (Hive Storage Handlers),大致意思如圖所示10.2. 修改配置復制 $HBASE_HOME/ , $HBASE_HOME/-tests.jar和$ZOOKEEPER_HOME/ 三個文件到$HIVE_HOME/lib目錄下,刪除$HIVE_HOME/lib目錄下的hbase-0.92.0版本的jar包打開配置文件 $HIVE_HOME/conf/hive-site.xml 若此文件不存在,請自行創(chuàng)建新的,或者復制hive-default.xml 并
29、重命名為hive-site.xml,在底部添加如下內(nèi)容:<property><name>hive.querylog.location</name><value>/usr/local/hive/logs</value></property>在配置文件中查找 修改為hadoop倉庫hdfs:/localhost:9000/hive也可以使用本地目錄,如 /usr/local/hivedata/warehouse復制 $HIVE_HOME/conf/hive-site.xml 到 $HADOOP_INSTALL/conf目錄如果
30、不將此配置文件復制到該目錄下,將$HBASE_HOME/hbase-0.94.1.jar復制到$HADOOP_INSTALL/lib目錄下啟動hadoop ,hbase執(zhí)行命令:$ $HIVE_HOME/bin/hive auxpath $HIVE_HOME/lib/hive-hbase-handler-0.8.1.jar, $HIVE_HOME/lib/hbase-0.92.1.jar, $HIVE_HOME/lib/zookeeper-3.4.3.jar -hiveconf hbase.master=localhost:60000創(chuàng)建表:Ø CREATE TABLE hbase_
31、table_1(key int, value string) STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf1:val") TBLPROPERTIES ("" = "xyz");若出現(xiàn)下圖錯誤:則需要將$HBASE_HOME/lib/ 復制到 $HIVE_HOME/lib下面$ cp
32、$HBASE_HOME/lib/protobuf-java-2.4.0a.jar $HIVE_HOME/lib復制完后再次執(zhí)行創(chuàng)建表命令,執(zhí)行結(jié)果如下:創(chuàng)建成功后,退出hive 的shell 模式,進入hbase的shell模式執(zhí)行 $ $HBASE_HOME/bin/hbase shell , 進入后,執(zhí)行命令查詢表Ø list箭頭所指是剛才在 hive 模式下創(chuàng)建的后對應過來的表 xyz, 因為是剛創(chuàng)建的 所以這個表示空的,執(zhí)行:Ø scan 'xyz'執(zhí)行下個命令, 我們可以看到表的信息Ø describe 'xyz' 下來用
33、回到hive,執(zhí)行之前 進入hive shell模式的命令,進入后創(chuàng)建一張,Ø create table temp(a int, b string);導入一個文件的數(shù)據(jù)Ø LOAD DATA LOCAL INPATH '/tmp/test.txt' OVERWRITE INTO TABLE temp;將數(shù)據(jù)放入hbase_table_1中Ø insert overwrite table hbase_table_1 select a, b from temp limit 1;查詢數(shù)據(jù)Ø select * from hbase_table_1;結(jié)果如下:11. Eclipse結(jié)合MapReduce11.1. 準備Eclipse IDE version=3.7將復制到eclipse安裝目錄的Plugin目錄下啟動hadoop,start-all.sh啟動eclipse11.2. 配置MapReduce點擊菜單欄的Windowàpreferences àHadoop Map/Reduce配置hadoop目錄11.3. 打開MapReduce視圖打開IDE的WindowàShowViewàOther打開Map/Reduce Locations
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)員工轉(zhuǎn)正述職報告8篇
- 學習自我鑒定范文集合十篇
- 醫(yī)生年終工作總結(jié)7篇
- 某國際機場線工程施工組織設(shè)計
- 2025年部編版新教材語文一年級下冊第五單元教案
- 七年級語文的教學工作個人總結(jié)范文(33篇)
- 人教版2022年三年級語文期末復習-作文訓練(童話)B卷
- 2025年合成材料阻燃劑項目合作計劃書
- 攤位租賃協(xié)議書
- 2025年城市市容管理服務(wù)項目發(fā)展計劃
- 年產(chǎn)90000噸聚丁二烯工廠聚合工段的物料衡算
- 五年級省情禮儀心理健康綜合知識教案
- 2022年湖南生物機電職業(yè)技術(shù)學院教師招聘考試題庫及答案解析
- 衛(wèi)生部手術(shù)分級目錄(版)
- 《S7-1200-PLC-編程及應用技術(shù)》試題試卷及答案2套
- 內(nèi)科護理學消化系統(tǒng)試習題及答案
- 用人單位職業(yè)病危害現(xiàn)狀評價技術(shù)導則
- 中建一局質(zhì)量考核評價辦法
- 民辦非企業(yè)單位會計報表(會民非表010203)
- 口腔頜面系統(tǒng)解剖骨
- 川骨香-川古香手撕鴨配方及制作方法
評論
0/150
提交評論