詳細 完整分布模式安裝hadoop VirtualBox 3虛擬機


基礎設備

宿主機器:

CPUIntel® Core™ i5-2400 CPU @ 3.10GHz

內存:4G

硬盤:500G

操作系統:Win7 32Bit

Linux 版本:

CentOS-6.2-x86_64-minimal.iso

虛擬機版本

VirtualBox 4.2.0 RC1

計划安裝3CentOS虛擬機,實現完整分布式模式。

h1,h2,h3 分別內存為512M,硬盤容量為20G。


虛擬機配置

新建虛擬機。

內存預先設置為1G,安裝完成后調整為512M1G以上內存方可使用GUI安裝。

加載ISO光盤鏡像。

 

網絡方式使用 橋接網卡 最為簡單。

具體介紹:http://www.douban.com/group/topic/15558388/

配置完成后,直接啟動該虛擬機。

跳過光盤檢測。

下面是配置鍵盤與語言等選項,一路next下去,注意網絡配置畫面。

 

分區配置。

然后配置管理員密碼等。

完成安裝,重新啟動虛擬機。

正常登錄后,在shell命令中,輸入uname –r,查看Linux版本內核。

 

輸入ifconfig eth0 查看是否正常獲取IP地址,使用ping命令確認能否上網。

 

使用yum update -y命令將系統更新。(163下載的ISO自動在163的鏡像上下載。)

時間較長!

使用yum install –y wget 將下載工具安裝。

徹底關閉Linux中的Iptables

命令行中:service iptables stop && chkconfig iptables off

 

一般linux中都已經開啟了ssh功能。

下載隨意windows下的ssh客戶端,例如:XshellSecureCRT、PuTTY 、Xmanager等。

登錄后,使用此命令下載JAVA JDK

[root@h1 ~]# wget http://210.75.11.10/ jdk-7u7-linux-x64.rpm

[root@h1 ~]# rpm -ivh jdk-7u7-linux-x64.rpm

安裝JAVA JDK

 

配置系統環境變量。

[root@h1 ~]# vi /etc/profile

添加

JAVA_HOME=/usr/java/jdk1.7.0_07

PATH=$PATH:$JAVA_HOME/bin

CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar

export PATH JAVA_HOME CLASSPATH

[root@h1 ~]# java –version 測試是否成功。

新增運行的hadoop用戶,並配置密碼。

 

grid 添加到管理員組。

 

接下來,關閉本虛擬機。

halt –p


復制虛擬機

復制h1

C:\Program Files\Oracle\VirtualBox>VBoxManage clonehd "D:\Linux\CentOS\h1.vdi" "D:\Linux\CentOS\h2.vdi"

0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

Clone hard disk created in format 'VDI'. UUID: 74a09b9d-c4d8-4689-9186-87e34e4b5265

復制h3

C:\Program Files\Oracle\VirtualBox>VBoxManage clonehd "D:\Linux\CentOS\h1.vdi" "D:\Linux\CentOS\h3.vdi"

0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

Clone hard disk created in format 'VDI'. UUID: 110c9759-c9c3-4867-9721-3633dfe02384

將虛擬機文件添加到VirtualBox內。命名分別為h1h2h3

 

分別登錄3台虛擬機內,將IP地址與hostnamehosts修改正確,使之能互相ping通。

192.168.3.230 h1

192.168.3.231 h2

192.168.3.232 h3

vi /etc/hosts

復制的h2 h3同樣要做以下修改。

vi /etc/sysconfig/network

命令行中輸入hostname=h2 立即生效。

修改IP地址。

vi /etc/sysconfig/network-scripts/ifcfg-eth0

直接修改配置文件IPADDR和 HWADDR(抄VBOX上的MAC地址)還不能使網卡變更。

最簡單的解決辦法是直接刪除70-persistent-net.rules配置文件

rm -fr /etc/udev/rules.d/70-persistent-net.rules

reboot

重啟系統就ok了,系統會自動生成一個新的。

配置ssh互信

分別啟動h1h2h3虛擬機,互相ping確認是否能通。

然后分別使用grid用戶,正常登錄每台機器執行生成密鑰命令。

ssh-keygen –t rsa

回到h1主機上,使用跨主機的管道和重定向將h2,h3主機上的公鑰id_rsa.pub添加到h1上的authorized_keys文件中。

 

分別將通過

ssh h2 cat ~/.ssh/id_rsa.pub && ssh h3 cat ~/.ssh/id_rsa.pub

添加到

authorized_keys

完成后,authorized_keys文件變成了三大段。

然后分別scp 復制到h2,h3機器中。

scp authorized_keys grid@h2:~/.ssh/

驗證成功。

SSH互信配置完成。


配置hadoop下載hadoop

回到h1虛擬機內,使用wget 命令下載hadoop 0.20。(如果沒有安裝wget可以yum install –y wget安裝。)

wget http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-0.20.2/hadoop-0.20.2.tar.gz

使用Xshell操作會簡便很多,可以在windowslinux間復制。

 

解壓hadoop

[grid@h1 ~]$ tar zxvf hadoop-0.20.2.tar.gz

分別修改core-site.xmlhdfs-site以及mapred-site.xml

:wq保存退出。

[grid@h1 conf]$ vi mapred-site.xml

:wq保存退出。

[grid@h1 conf]$ vi hdfs-site.xml

:wq保存退出。

配置hadoop-env.sh文件

再次確認java jdk安裝在/usr/java/jdk1.7.0_07目錄下面。

[grid@h1 conf]$ vi hadoop-env.sh

:wq保存退出。

修改mastersslaves文件

 

分別存盤退出。

向各節點復制hadoop目錄

[grid@h1 ~]$ scp -r hadoop-0.20.2 h2:~/

[grid@h1 ~]$ scp -r hadoop-0.20.2 h3:~/

格式化分布式文件系統

格式化成功。

啟動守護進程

 

輸入一次yes后,無需再輸入。

檢測守護進程啟動情況

[grid@h1 hadoop-0.20.2]$ /usr/java/jdk1.7.0_07/bin/jps

jps工具查看java進程。

至此,hadoop完整分布式模式安裝完成。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM