日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

hadoop分布式搭建

發布時間:2025/7/25 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hadoop分布式搭建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
hadoop分布式搭建

一、首先是搞好master

  1、創建用戶組

    groupadd hadoop? 添加一個組

    useradd hadoop -g hadoop? 添加用戶

  2、jdk的安裝

    這里安裝的版本是jdk-7u9-linux-i586.tar.gz ,使用 tar -zsvf?jdk-7u9-linux-i586.tar.gz? -C /opt/? 命令將其解壓到/opt目錄下,并將解壓后的文件夾jdk-7u9-linux-i586改名為java.

    jdk安裝好就要配置環境變量了,使用vi /etc/profile命令編輯添加如下內容:

    export JAVA_HOME=/opt/java/jdk
    exprot PATH=$JAVA_HOME/bin:$PATH

    配置好之后要用命令source /etc/profile使配置文件生效,這樣jdk就安裝完畢了。安裝完之后不要忘了將所有者設置為hadoop。

使用命令chown -R hadoop:hadoop java/

  3.hadoop的安裝

    hadoop的版本是hadoop-0.20.2.tar.gz,也把它解壓到/opt目錄下面,改名為hadoop。

    hadoop也要設置環境變量,使用vi /etc/profile命令編輯添加如下內容:

    export HADOOP_HOME=/opt/hadoop

    export PATH=$HADOOP_HOME/bin:$PATH

    同樣也要執行source /etc/profile使配置文件生效,然后執行命令使用命令chown -R hadoop:hadoop hadoop/將其所有者改為hadoop

  4、修改地址解析文件/etc/hosts,加入

    192.168.137.110 master

    192.168.137.111 slave1

    192.168.137.112 slave2

  5、修改hadoop的配置文件

  首先切換到hadoop用戶,su hadoop

  ①修改hadoop目錄下的conf/hadoop-env.sh文件

    加入java的安裝路徑export JAVA_HOME=/opt/java/jdk

  ②把hadoop目錄下的conf/core-site.xml文件修改成如下:

1 <property>2 <name>hadoop.tmp.dir</name>3 <value>/hadoop</value>4 </property>5 <property>6 <name>fs.default.name</name>7 <value>hdfs://master:9000</value>8 </property>9 <property> 10 <name>dfs.name.dir</name> 11 <value>/hadoop/name</value> 12 </property>

  ③把hadoop目錄下的conf/ hdfs-site.xml文件修改成如下:

1 <property> 2 <name>dfs.replication</name> 3 <value>3</value> 4 </property> 5 <property> 6 <name>dfs.data.dir</name> 7 <value>/hadoop/data</value> 8 </property>

  ④把hadoop目錄下的conf/ mapred-site.xml文件修改成如下:

1 <property>2 <name>mapred.job.tracker</name> 3 <value>master:9001</value>4 </property>5 <property>6 <name>mapred.system.dir</name> 7 <value>/hadoop/mapred_system</value>8 </property>9 <property> 10 <name>mapred.local.dir</name> 11 <value>/hadoop/mapred_local</value> 12 </property>

  ⑤把hadoop目錄下的conf/ masters文件修改成如下:

    master

  ⑥把hadoop目錄下的conf/ slaves文件修改成如下:

    master

    slave1

    slave2

  6、復制虛擬機

   ???我使用Virtual Box的克隆功能,將主機master完全克隆兩份:slave1和slave2,并修改相應的主機名和IP地址,這樣就可以簡單地保持hadoop環境基本配置相同。

  7、SSH設置無密碼驗證

   ?? 切換到Hadoop用戶,在Hadoop家目錄下面創建.ssh目錄,并在master節點上生成密鑰對:ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa???。然后一直按[Enter]鍵,按默認的選項生成密鑰對保存在.ssh/id_rsa文件中。

    然后執行如下命令:

$ ssh ~/.ssh

$ cp id_rsa.pub authorized_keys

$ scp authorized_keys slave1:/home/hadoop/.ssh

$ scp authorized_keys slave2:/home/hadoop/.ssh

    執行遠程復制文件的時候記得要把slave1和slave2的防火墻關掉。復制完畢后記得要到slave1和slave2去修改該文件的權限。

從master向slave1和slave2發起SSH連接,第一次登錄時需要輸入密碼,以后就不需要了。

$ ssh slave1

$ ssh slave2

我們只需要配置從master向slaves發起SSH連接不需要密碼就可以了,但這樣只能在master(即在主機master)啟動或關閉hadoop服務。

  8、運行hadoop

    使用Hadoop用戶,切換到hadoop/bin目錄下

    格式化分布式文件系統./hadoop namenode -format

    執行命令./start-all.sh啟動hadoop

    在master上執行jps命令查看運行的進程如下:

[hadoop@master hadoop]$ jps 3200 SecondaryNameNode 3271 JobTracker 3370 TaskTracker 3002 NameNode 3106 DataNode 5687 Jps

    在slave1和slave2上執行jps結果如下:

[hadoop@slave1 ~]$ jps 1477 DataNode 3337 Jps 1547 TaskTracker

    訪問http://master:50070可以查看分布式文件系統的狀態

  9、運行單詞統計程序

    WordCount是hadoop自帶的實例,統計一批文本文件中各單詞出現的資料,輸出到指定的output目錄中,輸出目錄如果已經存在會報錯。

$ cd /opt/hadoop $ hadoop fs -mkdir input $ hadoop fs -copyFromLocal /opt/hadoop/*.txt input/ $ hadoop jar hadoop-0.20.2-examples.jar wordcount input output $ hadoop fs -cat output/* #最后查看結果

運行結果如下:

13/06/16 19:32:26 INFO input.FileInputFormat: Total input paths to process : 4 13/06/16 19:32:26 INFO mapred.JobClient: Running job: job_201306161739_0002 13/06/16 19:32:27 INFO mapred.JobClient: map 0% reduce 0% 13/06/16 19:32:35 INFO mapred.JobClient: map 50% reduce 0% 13/06/16 19:32:36 INFO mapred.JobClient: map 100% reduce 0% 13/06/16 19:32:47 INFO mapred.JobClient: map 100% reduce 100% 13/06/16 19:32:49 INFO mapred.JobClient: Job complete: job_201306161739_0002 13/06/16 19:32:49 INFO mapred.JobClient: Counters: 18 13/06/16 19:32:49 INFO mapred.JobClient: Job Counters 13/06/16 19:32:49 INFO mapred.JobClient: Launched reduce tasks=1 13/06/16 19:32:49 INFO mapred.JobClient: Rack-local map tasks=2 13/06/16 19:32:49 INFO mapred.JobClient: Launched map tasks=4 13/06/16 19:32:49 INFO mapred.JobClient: Data-local map tasks=2 13/06/16 19:32:49 INFO mapred.JobClient: FileSystemCounters 13/06/16 19:32:49 INFO mapred.JobClient: FILE_BYTES_READ=179182 13/06/16 19:32:49 INFO mapred.JobClient: HDFS_BYTES_READ=363457 13/06/16 19:32:49 INFO mapred.JobClient: FILE_BYTES_WRITTEN=358510 13/06/16 19:32:49 INFO mapred.JobClient: HDFS_BYTES_WRITTEN=133548 13/06/16 19:32:49 INFO mapred.JobClient: Map-Reduce Framework 13/06/16 19:32:49 INFO mapred.JobClient: Reduce input groups=10500 13/06/16 19:32:49 INFO mapred.JobClient: Combine output records=10840 13/06/16 19:32:49 INFO mapred.JobClient: Map input records=8968 13/06/16 19:32:49 INFO mapred.JobClient: Reduce shuffle bytes=179200 13/06/16 19:32:49 INFO mapred.JobClient: Reduce output records=10500 13/06/16 19:32:49 INFO mapred.JobClient: Spilled Records=21680 13/06/16 19:32:49 INFO mapred.JobClient: Map output bytes=524840 13/06/16 19:32:49 INFO mapred.JobClient: Combine input records=47258 13/06/16 19:32:49 INFO mapred.JobClient: Map output records=47258 13/06/16 19:32:49 INFO mapred.JobClient: Reduce input records=10840

  運行該程序一定得注意將slave1和slave2的防火墻給關閉,否則會報異常的。

轉載于:https://www.cnblogs.com/yhl-yh/p/7145233.html

總結

以上是生活随笔為你收集整理的hadoop分布式搭建的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。