<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    hengheng123456789

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      297 Posts :: 68 Stories :: 144 Comments :: 0 Trackbacks
    轉自:http://jeffxie.blog.51cto.com/1365360/295076
    雖然和GOOGLE的云計算框架相差很遠,但是基本能夠實現云框架還是可以的,我選擇了hadoop,最近這個框架在網絡上炒的很火,一部分IT高手加入了開發隊列,本人也不例外(不過我不是高手,只是一個很普通的系統架構師而已)
    好了廢話少說,直接切入主題吧
    首先使用了五臺機器來實現hadoop框架。
    IP依次為:
    192.168.1.199(master)
    192.168.1.200(slave)
    192.168.1.201(slave)
    192.168.1.202(slave)
    192.168.1.203(slave)
    以下是簡單結構:
     
     
    首先登錄119服務器
    [root@localhost ~]# uname -ar
    Linux localhost 2.6.18-92.el5 #1 SMP Tue Jun 10 18:49:47 EDT 2008 i686 i686 i386 GNU/Linux
    保證計算機名的全局唯一性:
    hadoop1. test.com -----192.168.1.203
    hadoop2. test.com -----192.168.1.202
    hadoop3. test.com -----192.168.1.201
    hadoop4. test.com -----192.168.1.200
    hadoop5. test.com -----192.168.1.199
     
    設置hostname
    Hostname hadoop5.test.com
    [root@localhost ~]# vi /etc/hosts
    127.0.0.1               localhost.localdomain localhos
    192.168.1.199                   hadoop5.test.com
    [root@localhost ~]# uname -ar
    Linux hadoop5.test.com 2.6.18-92.el5 #1 SMP Tue Jun 10 18:49:47 EDT 2008 i686 i686 i386 GNU/Linux
    [root@localhost ~]# vi /etc/sysconfig/network 
     
    NETWORKING=yes
    NETWORKING_IPV6=no
    #HOSTNAME=localhost.localdomain
    HOSTNAME=hadoop5.test.com
    GATEWAY=192.168.1.254
     
    OK了,已經修改過來了,其他機器也同樣的設置。
    為了方便,關閉防火墻:(5臺服務器都設置)
    [root@hadoop5 ~]# service iptables stop
    [root@hadoop5 ~]# chkconfig iptables off
    方便起見,創建hadoop用戶
    [root@hadoop5 ~]# useradd hadoop
    下載JDK最新版:
    http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/jdk-6u19-linux-i586.bin?BundledLineItemUUID=YTBIBe.nt_gAAAEnpTtSWvsx&OrderID=Ga5IBe.n.w4AAAEnmjtSWvsx&ProductID=8ihIBe.nLjEAAAEnh3cZVnKo&FileName=/jdk-6u19-linux-i586.bin
     
    全部放入/home/hadoop目錄。
    [root@localhost local]# cp jdk-6u19-linux-i586.bin /usr/local/
    [root@localhost local]# cd /usr/local/   
    [root@localhost local]# chmod +x ./jdk-6u19-linux-i586.bin
    [root@localhost local]#./jdk-6u19-linux-i586.bin    #執行
    一直按回車即可,然后輸入yes回車。
    [root@localhost local]# rm -rf jdk-6u19-linux-i586.bin
    [root@localhost local]# cd  /home/hadoop/
    [root@localhost hadoop]# vi /etc/profile
    在最下面加入:
     
    export JAVA_HOME=/usr/local/jdk1.6.0_19
    export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
    export PATH=$JAVA_HOME/lib:$JAVA_HOME/jre/bin:$PATH
    export HADOOP_HOME=/home/hadoop/hadoop-0.20.2
    export PATH=$PATH:$HADOOP_HOME/bin
     
    [root@localhost hadoop]# source /etc/profile
    現在我們修改hadoop的配置文件:0.20以上的配置和以前的配置有些是不同的,我們 0.20.2為例做東西
    [root@localhost conf]# pwd
    /home/hadoop/hadoop-0.20.2/conf
    [root@localhost conf]# vi  core-site.xml
    [root@localhost conf]# echo "export JAVA_HOME=/usr/local/jdk1.6.0_19" >>  hadoop-env.sh
    [root@localhost conf]# vi hdfs-site.xml
    [root@localhost conf]# vi mapred-site.xml

    添加slave地址
    vim /home/hadoop/hadoop-0.20.2/conf/slaves
    我的內容是:
    192.168.1.200
    192.168.1.201
    192.168.1.202
    192.168.1.203
    也可以用一下方法添加
    [root@localhost conf]# echo 192.168.1.199 > masters
    [root@localhost conf]# echo 192.168.1.200 > slaves
    [root@localhost conf]# echo 192.168.1.201 >> slaves 
    [root@localhost conf]# echo 192.168.1.202 >> slaves 
    [root@localhost conf]# echo 192.168.1.203 >> slaves 
    現在我們做無密碼的ssh登錄的設置:
    建立Master到每一臺SlaveSSH受信證書。由于Master將會通過SSH啟動所有Slave Hadoop,所以需要建立單向或者雙向證書保證命令執行時不需要再輸入密碼。在Master和所有的Slave機器上執行:ssh-keygen -t rsa
    執行此命令的時候,看到提示只需要回車。然 后就會在/root/.ssh/下面產生id_rsa.pub的證書文件,通過scpMaster機器上的這個文件拷貝 Slave上(記得修改名稱),例如:
    Scp root/.ssh/id_rsa.pub root@192.168.1.200:/root/.ssh/authorized_keys
    ,建立authorized_keys文件即可,可以打開這個文件看看,也就是rsa的公 鑰作為keyuser@IP作為value。此時可以試驗一下,從master sshslave已經不需要密碼了。由slave反向建立也是同樣。為什么要反向呢?其實如果一直都是Master啟動和關閉的話那么沒有必要建立反 向,只是如果想在Slave也可以關閉Hadoop就需要建立反向。
     
    [root@localhost .ssh]# scp /root/.ssh/id_rsa.pub root@192.168.1.200:/root/.ssh/authorized_keys
    root@192.168.1.200's password:
    id_rsa.pub                                                                                        100%  403     0.4KB/s   00:00   
    [root@localhost .ssh]# scp /root/.ssh/id_rsa.pub root@192.168.1.201:/root/.ssh/authorized_keys
    root@192.168.1.201's password:
    id_rsa.pub                                                                                        100%  403     0.4KB/s   00:00   
    [root@localhost .ssh]# scp /root/.ssh/id_rsa.pub root@192.168.1.202:/root/.ssh/uthorized_keys root@192.168.1.202's password:
    id_rsa.pub                                                                                        100%  403     0.4KB/s   00:00   
    [root@localhost .ssh]# scp /root/.ssh/id_rsa.pub root@192.168.1.203:/root/.ssh/authorized_keys
    root@192.168.1.203's password:
    id_rsa.pub                                                                                        100%  403     0.4KB/s   00:00  
     
    然后重啟SSHD服務
    [root@localhost .ssh]# service sshd restart
    Stopping sshd:                                             [  OK  ]
    Starting sshd:                                             [  OK  ]
     
    然后每臺服務器上都修改ssh的配置文件:/etc/ssh/sshd_config GSSAPIAuthentication的值設置為no
    這樣起到加速的作用,具體含義,自己看下ssh手冊。
     
    然后壓縮hadoop文件夾成為一個壓縮包
    [root@localhost hadoop]# cd /home/hadoop/
    [root@localhost hadoop]# tar zcvf hadoop-0.20.2.tar.gz hadoop-0.20.2
    依次傳送到slave服務器上
    [root@localhost hadoop]# scp hadoop-0.20.2.tar.gz root@192.168.1.200:/home/hadoop
    hadoop-0.20.2.tar.gz                                                                              100%   43MB  21.3MB/s   00:02   
    [root@localhost hadoop]# scp hadoop-0.20.2.tar.gz root@192.168.1.201:/home/hadoop
    hadoop-0.20.2.tar.gz                                                                              100%   43MB  14.2MB/s   00:03   
    [root@localhost hadoop]# scp hadoop-0.20.2.tar.gz root@192.168.1.203:/home/hadoop
    hadoop-0.20.2.tar.gz                                                                              100%   43MB  21.3MB/s   00:02   
    [root@localhost hadoop]# scp hadoop-0.20.2.tar.gz root@192.168.1.202:/home/hadoop
    hadoop-0.20.2.tar.gz 
    然后依次登錄slave服務器并解壓hadoop文件
    tar zxvf hadoop-0.20.2.tar.gz
     
    好,我們現在可以在master上執行如下命令:
    [root@localhost hadoop]# cd /home/hadoop/hadoop-0.20.2/bin/
    報了一堆錯誤
    總之意思就是說沒有jdk,后來仔細想想 ,確實忘記在slave上安裝jdk了。
    然后按照master上安裝jdk的步驟依次在slave上重復一次。
    所有機器都安裝完JDK之后,繼續到199主服務器上執行
    [root@localhost bin]# ./start-all.sh
    所有服務器執行成功.
    然后可以在瀏覽器上輸入http://192.168.1.199:50070/dfshealth.jsp
    查看master/slave的服務狀態了。
    不過有一點要注意一下,iptables可能限定了某些端口,所有方便起見,還是要關閉master/slave服務器上的iptables的。
    剩下就是開發事宜,我們下次再講,希望解占輝的文章對您有幫助,謝謝!
    參考文獻:
    作者:解占輝(jeffxie@gmail.com)  博客:jeffxie.blog.51cto.com
    posted on 2011-01-04 10:28 哼哼 閱讀(863) 評論(0)  編輯  收藏 所屬分類:
    主站蜘蛛池模板: 亚洲成色WWW久久网站| 亚洲另类少妇17p| 蜜臀91精品国产免费观看| 国产免费一区二区三区VR| 亚洲中文字幕成人在线| 精品亚洲永久免费精品| 亚洲经典在线观看| 亚洲欧美日韩综合俺去了| 无码人妻一区二区三区免费视频| 和老外3p爽粗大免费视频| 无码人妻丰满熟妇区免费| 男男AV纯肉无码免费播放无码| 在线播放免费人成视频在线观看| 亚洲国产高清精品线久久| 亚洲AV美女一区二区三区| 亚洲欧洲日本在线观看| 高清免费久久午夜精品| 最近免费视频中文字幕大全| 国产精品久久香蕉免费播放| 亚洲日本va在线视频观看| 亚洲人成在线免费观看| 黄人成a动漫片免费网站| 日本免费大黄在线观看| 毛片免费观看的视频| 丝袜熟女国偷自产中文字幕亚洲| 亚洲综合视频在线| 豆国产96在线|亚洲| 99热这里只有精品免费播放| 成人免费视频国产| 亚洲国产精品线在线观看| 亚洲色偷偷色噜噜狠狠99| 伊人免费在线观看高清版| 毛片a级毛片免费观看免下载| 国产精品亚洲玖玖玖在线观看| 亚洲白色白色永久观看| 一级一级一片免费高清| 久久天天躁狠狠躁夜夜免费观看| 亚洲精品视频久久久| 亚洲中文字幕一二三四区苍井空 | 国产精品亚洲成在人线| 亚洲精品国产综合久久久久紧|