溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何在window上使用VirtualBox搭建Ubuntu15.04全分布Hadoop2.7.1集群

發(fā)布時(shí)間:2021-11-10 18:18:10 來源:億速云 閱讀:132 作者:柒染 欄目:云計(jì)算

今天就跟大家聊聊有關(guān)如何在window上使用VirtualBox搭建Ubuntu15.04全分布Hadoop2.7.1集群,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

先給大家看看配置好的集群截圖:

如何在window上使用VirtualBox搭建Ubuntu15.04全分布Hadoop2.7.1集群

注意(default是docker的,大家不用管,下面四臺(tái)才是,其中Ubuntu_0是master,Ubuntu_1,2,3是slave節(jié)點(diǎn))

一.新建虛擬機(jī),配置基礎(chǔ)java環(huán)境,配置網(wǎng)絡(luò)訪問

    下載Ubuntu15.04,打開VirtualBox,新建Ubuntu虛擬機(jī),用戶名linux1,不截圖了,內(nèi)存選1G就夠了

    接下來,下載并安裝JDK:

    下載:去官網(wǎng)下載對(duì)應(yīng)版本的JDK,我這里是jdk-8u60-linux-x64.tar.gz

    新建安裝目錄:

sudo mkdir /usr/local/java

    解壓JDK:

sudo tar xvf ~/Downloads/jdk-8u60-linux-x64.tar.gz -C  /usr/local/java

    設(shè)置全局環(huán)境變量:

sudo gedit ~/.bashrc

    文件末尾添加:

export JAVA_HOME=/usr/local/java/jdk1.8.0_60  
export JRE_HOME=${JAVA_HOME}/jre  
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  
export PATH=${JAVA_HOME}/bin:$PATH

    驗(yàn)證:新開終端,輸入java驗(yàn)證(當(dāng)前終端內(nèi)不生效)

    接下來,配置網(wǎng)絡(luò)(為啥要配置:因?yàn)槟愦畹氖羌?,用的是集群的服?wù),肯定想除了集群以外的機(jī)器能訪問,而不是像網(wǎng)上那些人省事,直接在master上安裝Eclipse,進(jìn)行開發(fā),這樣是不對(duì)的,舉個(gè)例子,我的宿主機(jī)是Windows,用VirtualBox搭的集群,我想在windows上使用Eclipse進(jìn)行編程,使用集群的Hadoop服務(wù),我可不想在master上安裝Eclipse開發(fā),雖然會(huì)省掉不少錯(cuò)誤解決的麻煩事,但是是不對(duì)的!服務(wù)就是要遠(yuǎn)程調(diào)用的)

    設(shè)置第一個(gè)網(wǎng)卡:NAT可以使虛擬機(jī)使用宿主機(jī)的IP上網(wǎng),這樣,你的虛擬機(jī)就可以缺什么軟件就安什么了,方便!

    如何在window上使用VirtualBox搭建Ubuntu15.04全分布Hadoop2.7.1集群

    接下來設(shè)置第二個(gè)網(wǎng)卡:這使得宿主機(jī)能夠ping通虛擬機(jī)

    如何在window上使用VirtualBox搭建Ubuntu15.04全分布Hadoop2.7.1集群

    

二.克隆虛擬機(jī)

    選中第一臺(tái)ubuntu_0(一定要關(guān)閉它),你會(huì)發(fā)現(xiàn)右側(cè)的綿羊如何在window上使用VirtualBox搭建Ubuntu15.04全分布Hadoop2.7.1集群(你應(yīng)該知道為啥是綿羊吧)圖標(biāo)是可以點(diǎn)擊的,我現(xiàn)在用著集群呢,懶得關(guān),索性找張別人的圖,點(diǎn)開后的樣子是這樣的:

如何在window上使用VirtualBox搭建Ubuntu15.04全分布Hadoop2.7.1集群

注意要重置網(wǎng)卡設(shè)置,命名隨便了。我一共clone了3個(gè)虛擬機(jī),名字分別是Ubuntu_1,Ubuntu_2,Ubuntu_3,“完全復(fù)制”,一直點(diǎn)確定。

三.設(shè)置虛擬機(jī)靜態(tài)IP

    為啥要設(shè)置呢?虛擬機(jī)默認(rèn)是DHCP的,如果你搭建Hadoop集群,不能總是讓Hadoop集群所在的機(jī)器啟動(dòng)一次就換一次IP吧,那麻煩了。所以,設(shè)置靜態(tài)IP很有必要。

    我對(duì)網(wǎng)絡(luò)這塊迷糊,我就說我的方法了。

    下面的操作適用于所有4個(gè)虛擬機(jī)。

sudo gedit /etc/network/interfaces

    在

auto lo
iface lo inet loopback

    下加入:

auto eth2 #這是第二塊網(wǎng)卡
iface eth2 inet static
address 192.168.99.101 #在終端輸入ifconfig查看下,然后每臺(tái)機(jī)器這個(gè)地址最后一段(共四段)自增1(這四臺(tái)機(jī)器是101(用作master),100,102,103(這三個(gè)用作slave))
netmask 255.255.255.0 #ifconfig
gateway 10.0.2.2 # route查看,第一行就是

    靜態(tài)IP弄好了,接下來,就是設(shè)置主機(jī)名了。

    命令:

sudo gedit /etc/hostname

    命令:

sudo gedit /etc/hosts

    修改成需要的主機(jī)名(我這里是linux0-cloud,linux1-cloud,linux2-cloud,linux3-cloud),重啟?等下,還沒完事呢。

    接下來修改hosts文件:

    為什么要設(shè)置hosts,hosts是干嘛的,我的理解是,根據(jù)主機(jī)名找IP,所以呢,  

    修改所有虛擬機(jī)的hosts文件, 命令:sudo gedit /etc/hosts。設(shè)置為如圖所示:

如何在window上使用VirtualBox搭建Ubuntu15.04全分布Hadoop2.7.1集群

    以上操作四臺(tái)機(jī)器必須都應(yīng)用!好了,重啟吧!

四.安裝SSH,使得master可以無密碼登錄所有slave節(jié)點(diǎn)(不解釋原因)

    所有主機(jī)安裝ssh

    命令:

sudo apt-get install ssh

    在master節(jié)點(diǎn)上,

    命令:

ssh-keygen -t rsa -P ""
cat .ssh/id_rsa.pub >>.ssh/authorized_keys,

    使用ssh localhost查看是否能夠無密碼登錄

    下面會(huì)進(jìn)行master在無密碼情況下ssh連接到slave節(jié)點(diǎn)

    其他所有節(jié)點(diǎn)執(zhí)行命令:

ssh-keygen -t rsa -P ""

    接下來,只要將master的公鑰放到其它slave節(jié)點(diǎn)即可使用無密碼登錄ssh節(jié)點(diǎn)

    將master .ssh/authorized_keys使用scp命令拷貝到其它slave節(jié)點(diǎn)上,做到master訪問slave不需要密碼(如果slave訪問master,那么過程相反)

    在master上執(zhí)行命令:

scp .ssh/authorized_keys linux1@linux1-cloud:~/.ssh/authorized_keys
scp .ssh/authorized_keys linux1@linux2-cloud:~/.ssh/authorized_keys
scp .ssh/authorized_keys linux1@linux3-cloud:~/.ssh/authorized_keys

五.安裝Hadoop2.7.1

    下面先對(duì)master節(jié)點(diǎn)進(jìn)行配置,然后將配置好的文件復(fù)制到其余機(jī)器上

    在master上

    新建目錄,命令:mkdir ~/hadoop

    解壓hadoop,命令:tar xvf ~/Downloads/hadoop-2.7.1.tar.gz -C  ~/hadoop

    新建hdfs文件夾(不能使用sudo創(chuàng)建,權(quán)限問題):

mkdir ~/dfs
mkdir ~/dfs/name
mkdir ~/dfs/data
mkdir ~/tmp

    

    修改hadoop/hadoop-2.7.1/etc/hadoop/hadoop-env.sh配置文件 ,

export JAVA_HOME=/usr/local/java/jdk1.8.0_60

    修改/etc/hadoop/slaves文件:

    如何在window上使用VirtualBox搭建Ubuntu15.04全分布Hadoop2.7.1集群

    修改/etc/hadoop/core-site.xml文件,

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://linux0-cloud:8020</value>
    </property>
    <property>
        <name>io.file.buffer.size</name>
        <value>131072</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/home/linux1/tmp</value>
        <description>Abase for other temporary   directories.</description>
    </property>
</configuration>

    修改/etc/hadoop/hdfs-site.xml文件,

<configuration>
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>linux0-cloud:9001</value>
        <description>
            這里使namenode同時(shí)作為secondary namenode,實(shí)際應(yīng)該設(shè)置其他機(jī)器的比如linux1-cloud:9001
            你可以訪問linux0-cloud:50070也可以訪問linux0-cloud:9001(或者其他比如:linux1-cloud:8001)查看hadoop概況(namenode們狀態(tài)是同步的)
        </description>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/home/linux1/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/home/linux1/dfs/data</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
    <property>
        <name>dfs.webhdfs.enabled</name>
        <value>true</value>
    </property>
</configuration>

    修改etc/hadoop/mapred-site.xml,

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>linux0-cloud:10020</value>
    </property>
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>linux0-cloud:19888</value>
    </property>
</configuration>

    

    修改yarn-site.xml文件,

<configuration>
    <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>
    <property>
        <name>yarn.resourcemanager.address</name>
        <value>linux0-cloud:8032</value>
    </property>
    <property>
        <name>yarn.resourcemanager.scheduler.address</name>
        <value>linux0-cloud:8030</value>
    </property>
    <property>
        <name>yarn.resourcemanager.resource-tracker.address</name>
        <value>linux0-cloud:8031</value>
    </property>
    <property>
        <name>yarn.resourcemanager.admin.address</name>
        <value>linux0-cloud:8033</value>
    </property>
    <property>
        <name>yarn.resourcemanager.webapp.address</name>
        <value>linux0-cloud:8088</value>
    </property>
</configuration>

    

    下面將hadoop復(fù)制到其它slave節(jié)點(diǎn):

    命令:

sudo scp -r ~/hadoop linux1@linux1-cloud:~/
sudo scp -r ~/hadoop linux1@linux2-cloud:~/
sudo scp -r ~/hadoop linux1@linux3-cloud:~/

    設(shè)置所有節(jié)點(diǎn)環(huán)境變量:

gedit ~/.bashrc

    添加:

export HADOOP_HOME=/home/linux1/hadoop/hadoop-2.7.1
export HADOOP_MAPRED_HOME=$HADOOP_HOME 
export HADOOP_COMMON_HOME=$HADOOP_HOME 
export HADOOP_HDFS_HOME=$HADOOP_HOME 
export YARN_HOME=$HADOOP_HOME 
export HADOOP_YARN_HOME=$HADOOP_HOME 
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop 
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop 
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native 
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

    應(yīng)用環(huán)境變量:

source ~/.bashrc

六.啟動(dòng)Hadoop

    首先格式化:

hdfs namenode -format

    啟動(dòng)hdfs: 

 start-dfs.sh

    啟動(dòng)yarn:

start-yarn.sh

如何在window上使用VirtualBox搭建Ubuntu15.04全分布Hadoop2.7.1集群

如何在window上使用VirtualBox搭建Ubuntu15.04全分布Hadoop2.7.1集群

如何在window上使用VirtualBox搭建Ubuntu15.04全分布Hadoop2.7.1集群

你也可以輸入192.168.99.101:50070訪問,不給你們截圖,宿主機(jī)瀏覽器有不少標(biāo)簽

看完上述內(nèi)容,你們對(duì)如何在window上使用VirtualBox搭建Ubuntu15.04全分布Hadoop2.7.1集群有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI