日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 互聯網 > Ubuntu12.04 64bit搭建Hadoop-2.2.0

Ubuntu12.04 64bit搭建Hadoop-2.2.0

來源:程序員人生   發布時間:2014-10-12 10:51:36 閱讀次數:3217次

一、準備工作:

  1. 集群安裝ubuntu12.04 64bit系統,配置各結點IP地址

  2. 開啟ssh服務,方便以后遠程登錄,命令sudo apt-get install openssh-server(無需重啟)

  3. 使用命令:ssh hadoop@192.168.0.125測試服務連接是否正常

  4. 設置無密鑰登錄:

    • 修改主機名:sudo vim /etc/hostname將各主機設置成相應的名字,如mcmaster、node1、node2...
    • 修改/etc/hosts文件:sudo vim /etc/hosts,建立master和各結點之間的ip和hostname映射關系:
      127.0.0.1 localhost 192.168.0.125 master 192.168.0.126 node2 192.168.0.127 node3
    • 打通各主機之間的無密鑰登錄(該操作在每個結點上都要進行):
      • 進入當前用戶目錄中的.ssh文件夾:cd ~/.ssh
      • ssh-keygen -t rsa之后一路回車(產生密鑰)
      • 將id_rsa.pub追加到授權的key中去:cat id_rsa.pub >> authorized_keys
      • 重啟ssh服務使其生效:service ssh restart
  5. 設置遠程無密碼登錄:由于有node2~node3多個子節點,所以需要將master的公鑰添加到各結點的authorized_keys中去,以實現master到各slave的無密鑰登錄。

    進入master的.ssh目錄,執行scp authorized_keys hadoop@node2:~/.ssh/authorized_keysmc_from_master
    進入node2的.ssh目錄,執行cat authorized_keys_from_master >> authorized_keys
    至此,可以在master上執行ssh node2進行無密碼登錄了,其他結點操作相同

  6. 安裝jdk,這里需要手動下載sun的jdk,不使用源中的openJDK.由于使用的是64bit ubuntu,所以需要下載64bit的jdkhttp://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

    • 將jdk解壓到文件夾/usr/lib/jvm/jdk1.7.0

    • 打開/etc/profile,追加如下信息:

      export JAVA_HOME=/usr/lib/jvm/jdk1.7.0 export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
    • 執行命令source /etc/profile使環境變量生效

    • 每個結點均如此設置,使用java -version進行驗證

  7. 關閉防火墻:ubuntu系統的iptables默認是關閉的,可通過命令sudo ufw status查看防火墻狀態

  8. 編譯hadoop-2.2.0 64bit.由于apache官網提供的hadoop可執行文件是32bit對于64bit的按照文件則需要用戶手動編譯生成。

    • 這些庫和包在編譯過程中都會用到,缺少的話會影響編譯,因此首先從源里將它們直接裝上

      sudo apt-get install g++ autoconf automake libtool cmake zlib1g-dev pkg-config libssl-dev
    • 另外還需要使用最新的2.5.0版本的protobuf:https://code.google.com/p/protobuf/downloads/list,解壓,依次執行如下命令安裝

      $ ./configure --prefix=/usr $ sudo make $ sudo make check $ sudo make install

      執行如下命令檢查一下版本:

      $ protoc --version libprotoc 2.5.0
    • 安裝配置maven:直接使用apt-get從源中安裝 sudo apt-get install maven

    • 編譯hadoop-2.2.0:進入如下頁面下載hadoop-2.2.0源代碼http://apache.fayea.com/apache-mirror/hadoop/common/hadoop-2.2.0/

      解壓到用戶目錄/home/hadoop/Downloads/ 進入hadoop-2.2.0執行編譯:

      $ tar -vxzf hadoop-2.2.0-src.tar.gz $ cd hadoop-2.2.0-src $ mvn package -Pdist,native -DskipTests -Dtar

      編譯過程中maven會自動解決依賴,編譯完成后,系統會提示一下信息:

      [INFO] BUILD SUCCESS [INFO] ------------------------------------------------ [INFO] Total time: 15:39.705s [INFO] Finished at: Fri Nov 01 14:36:17 CST 2013 [INFO] Final Memory: 135M/422M

      然后在以下目錄中可以獲取編譯完成的libhadoop:

      hadoop-2.2.0-src/hadoop-dist/target/hadoop-2.2.0

      出現問題:

      [ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] /home/hduser/code/hadoop-2.2.0-src/hadoop-common-project/hadoopauth/src/test/java/org/apache/hadoop/security/authentication/client/AuthenticatorTestCase.java:[88 ,11] error: cannot access AbstractLifeCycle [ERROR] class file for org.mortbay.component.AbstractLifeCycle not found /home/hduser/code/hadoop-2.2.0-src/hadoop-common-project/hadoopauth/src/test/java/org/apache/hadoop/security/authentication/client/AuthenticatorTestCase.java:[96 ,29] error: cannot access LifeCycle [ERROR] class file for org.mortbay.component.LifeCycle not found

      解決方案:需要編輯hadoop-common-project/hadoop-auth/pom.xml文件,添加以下依賴:

      <dependency> <groupId>org.mortbay.jetty</groupId> <artifactId>jetty-util</artifactId> <scope>test</scope> </dependency>

      再次執行命令編譯即可。

二、安裝配置hadoop-2.2.0

  1. 在mcmaster上建立Cloud文件夾,并將hadoop-2.2.0拷貝到該文件夾下

    $ cd ~ $ mkdir Cloud $ cp ....
  2. 編輯~/.bashrc文件,加入如下內容:

    export HADOOP_PREFIX="/home/hadoop/Cloud/hadoop-2.2.0" export PATH=$PATH:$HADOOP_PREFIX/bin export PATH=$PATH:$HADOOP_PREFIX/sbin export HADOOP_MAPRED_HOME=${HADOOP_PREFIX} export HADOOP_COMMON_HOME=${HADOOP_PREFIX} export HADOOP_HDFS_HOME=${HADOOP_PREFIX} export YARN_HOME=${HADOOP_PREFIX}

    保存退出,然后source ~/.bashrc,使之生效

  3. 需要修改如下文件:
    core-site.xml: hadoop core的配置項,例如hdfs和mapreduce常用的I/O設置等
    mapred-site.xml: mapreduce守護進程的配置項,包括jobtracker和tasktracker
    hdfs-site.xml: hdfs守護進程配置項
    yarn-site.xml: yarn守護進程配置項
    masters: 記錄運行輔助namenode的機器列表
    slaves: 記錄運行datanode和tasktracker的機器列表

  4. 在hadoop-2.2.0/etc/hadoop目錄中依次編輯如上所述的配置文件,若未找到mapred-site.xml文件,可自行創建,其中core-site.xml、mapred-site.xml、hdfs-site.xml、yarn-site.xml為配置文件:
    core-site.xml:

    <configuration> <property> <name>io.native.lib.avaliable</name> <value>true</value> </property> <property> <name>fs.default.name</name> <value>hdfs://mcmaster:9000</value> <final>true</final> </property> <property> <name>hadoop.tmp.dir</name> <value>/home/hadoop/Cloud/workspace/tmp</value> </property> </configuration>

    hdfs-site.xml:

    <configuration> <property> <name>dfs.replication</name> <value>3</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/home/hadoop/Cloud/workspace/hdfs/data</value> <final>true</final> </property> <property> <name>dfs.namenode.dir</name> <value>/home/hadoop/Cloud/workspace/hdfs/name</value> </property> <property> <name>dfs.datanode.dir</name> <value>/home/hadoop/Cloud/workspace/hdfs/data</value> </property> <property> <name>dfs.webhdfs.enabled</name> <value>true</value> </property> </configuration>

    mapred-site.xml:

    <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapreduce.job.tracker</name> <value>hdfs://mcmaster:9001</value> <final>true</final> </property> <property> <name>mapreduce.map.memory.mb</name> <value>1536</value> </property> <property> <name>mapreduce.map.java.opts</name> <value>-Xmx1024M</value> </property> <property> <name>mapreduce.reduce.memory.mb</name> <value>3072</value> </property> <property> <name>mapreduce.reduce.java.opts</name> <value>-Xmx2560M</value> </property> <property> <name>mapreduce.task.io.sort.mb</name> <value>512</value> </property> <property> <name>mapreduce.task.io.sort.factor</name> <value>100</value> </property> <property> <name>mapreduce.reduce.shuffle.parallelcopies</name> <value>50</value> </property> <property> <name>mapreduce.system.dir</name> <value>/home/hadoop/Cloud/workspace/mapred/system</value> <final>true</final> </property> <property> <name>mapreduce.local.dir</name> <value>/home/hadoop/Cloud/workspace/mapred/local</value> <final>true</final> </property> </configuration>

    yarn-site.xml:

    <configuration> <property> <name>yarn.resourcemanager.address</name> <value>mcmaster:8080</value> </property> <property> <name>yarn.resourcemanager.scheduler.address</name> <value>mcmaster:8081</value> </property> <property> <name>yarn.resourcemanager.resource-tracker.address</name> <value>mcmaster:8082</value> </property> <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> </configuration>

    slaves:

    node2 node3

    在hadoop-2.2.0/etc/hadoop目錄下的hadoop-env.sh中添加如下內容,另外在yarn-env.sh中填充相同的內容:

    export HADOOP_PREFIX=/home/hadoop/Cloud/hadoop-2.2.0 export HADOOP_COMMON_HOME=${HADOOP_PREFIX} export HADOOP_HDFS_HOME=${HADOOP_PREFIX} export PATH=$PATH:$HADOOP_PREFIX/bin export PATH=$PATH:$HADOOP_PREFIX/sbin export HADOOP_MAPRED_HOME=${HADOOP_PREFIX} export YARN_HOME=${HADOOP_PREFIX} export HADOOP_CONF_HOME=${HADOOP_PREFIX}/etc/hadoop export YARN_CONF_DIR=${HADOOP_PREFIX}/etc/hadoop export JAVA_HOME=/usr/lib/jvm/jdk1.7.0
  5. 將配置完成的hadoop分發到各結點:

    $ scp ~/Cloud/hadoop-2.2.0 node2:~/Cloud/ $ ...
  6. 進入mcmaster的hadoop根目錄下,格式化namenode,隨后啟動集群:

    $ cd hadoop-2.2.0 $ bin/hdfs namenode -format $ sbin/start-all.sh

    可以使用jps命令產看守護進程是否啟動


  7. 登錄192.168.0.1258088可產看資源管理頁面

三、運行實例測試程序

WordCount是最簡單的mapreduce測試程序,該程序的完整代碼可以在hadoop安裝包的"src/examples"目錄下找到,測試步驟如下:

  1. 創建本地示例文件
    在/home/hadoop/Downloads/下創建兩個示例文件test1.txt和test2.txt

    $ cd ~/Downloads $ echo "hello hadoop" > test1.txt $ echo "hello world" > test2.txt
  2. 在HDFS上創建輸入文件夾

    hadoop fs -mkdir /input
  3. 上傳本地文件到集群的input目錄

    hadoop fs -put test1.txt /input hadoop fs -put test2.txt /input
  4. 運行WordCount
    hadoop jar ~/Cloud/hadoop-2.2.0/share/mapreduce/hadoop-mapreduce-examples-2.2.0.jar wordcount /input /output
    如果配置正確的話,會在/output下輸出part-r-00000文件,該文件中保存這次執行的輸出結果
    注意:此處的輸出文件夾 /output必須在執行前不存在
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 日本精品在线视频 | 一区二区三区四区精品 | 亚洲视屏 | 午夜一区二区三区视频 | 久久av导航| 九九av | 欧美一区二区网站 | 欧美不卡一区二区三区 | 精品成人网 | 国产一区不卡 | 中文字幕视频在线观看 | av成人一区二区 | 91精品国产综合久久香蕉最新版 | 精品无码久久久久久国产 | 久久精品国产久精国产 | 日本a√在线观看 | 嫩草懂你 | 免费亚洲视频 | 99精品视频在线观看视频 | 国产亚洲二区 | 久久aⅴ乱码一区二区三区 蜜桃永久免费 | 欧美大片一区二区三区 | 精品亚洲一区二区 | 国产精品久久久久久久久久98 | 成人免费视频网站在线看 | 久久久久国产一区二区三区 | 日韩三级精品 | 久久中文精品 | 日韩一区二区在线免费观看 | jizzjizz在线观看 | 亚洲一区二区三区综合 | 日韩久久综合 | 久久国产精品影视 | 秋霞在线观看秋 | 久久青青草av | 久久机 | 国产伦精品一区二区三区精品视频 | 欧美日韩一区二区三区视频 | 91精品国产影片一区二区三区 | 日韩精品www | 精品国产欧美一区二区三区成人 |