0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

windows下虛擬機(jī)配置spark集群最強(qiáng)攻略!

電子工程師 ? 來源:lq ? 2019-01-29 10:58 ? 次閱讀

首先需要在windows上安裝vmware和ubuntu虛擬機(jī),這里就不多說了。

vmware下載地址:直接百度搜索,使用百度提供的鏈接下載,這里附上一個(gè)破解碼

5A02H-AU243-TZJ49-GTC7K-3C61N

ubuntu下載地址:http://cdimage.ubuntu.com/daily-live/current/

一路安裝下去,我一共裝了4臺(tái)虛擬機(jī),三臺(tái)用于構(gòu)建集群,一臺(tái)用于爬蟲,如圖所示:

這里,我們以slave2為例來說明一下虛擬機(jī)的網(wǎng)絡(luò)配置:

首先,將虛擬機(jī)的網(wǎng)絡(luò)設(shè)置設(shè)置為自定義,選擇VMnet8:

隨后,我們點(diǎn)擊VMWARE上的編輯-虛擬網(wǎng)絡(luò)編輯-右下角的更改設(shè)置,應(yīng)該有三個(gè)連接方式,這里我們把其他兩個(gè)移除,只剩下VMnet8:

隨后,點(diǎn)擊NAT設(shè)置,我們可以發(fā)現(xiàn)網(wǎng)關(guān)是192.168.75.2

接下來,我們要設(shè)置虛擬機(jī)的ip:點(diǎn)擊右上角的edit connectinos,設(shè)置Ipv4,如下圖所示:

隨后修改兩個(gè)文件:

修改interfaces文件

命令:sudo vim /etc/network/interfaces ( 如果沒有vim命令,使用sudo apt-get install vim進(jìn)行安裝):

修改resolv.conf文件

命令:sudo vim /etc/resolv.conf:

接下來重啟我們的網(wǎng)絡(luò)就可以啦:

命令:sudo /etc/init.d/networking restart(如果啟動(dòng)失敗,重啟虛擬機(jī)即可)

查看我們的ip,使用ifconfig命令,如果沒有安裝(使用sudo apt install net-tools 進(jìn)行安裝):

下載xshell,百度搜索xshell,使用百度提供的下載地址即可。

要想使用xshell的ssh方式訪問虛擬機(jī),首先要在虛擬機(jī)上安裝ssh服務(wù)

使用命令:sudo apt-get install openssh-server

隨后啟動(dòng)ssh服務(wù):sudo /etc/init.d ssh start

再次點(diǎn)擊VMWARE上的編輯-虛擬網(wǎng)絡(luò)編輯-右下角的更改設(shè)置,設(shè)置端口轉(zhuǎn)發(fā):

隨后打開xshell,新建連接:

設(shè)置用戶名和密碼:

隨后點(diǎn)擊連接即可,發(fā)現(xiàn)連接成功!

這里以修改主節(jié)點(diǎn)主機(jī)名稱為例,其他節(jié)點(diǎn)類似。

使用命令 : sudo vim /etc/hostname 查看當(dāng)前主機(jī)名,并修改為master:

重啟之后生效:

兩個(gè)從節(jié)點(diǎn)的主機(jī)依次修改為slave1,slave2

接下來,將主節(jié)點(diǎn)和兩個(gè)從節(jié)點(diǎn)的ip和主機(jī)名添加到hosts文件中,使用命令

sudo vim /etc/hosts

修改的結(jié)果為:

兩個(gè)從節(jié)點(diǎn)的hosts文件修改為同樣的結(jié)果,此時(shí)發(fā)現(xiàn)各虛擬機(jī)之間可以ping通。

接下來,需要讓主節(jié)點(diǎn)可以免驗(yàn)證的登錄到從節(jié)點(diǎn),從而在進(jìn)行任務(wù)調(diào)度時(shí)可以暢通無阻。

首先要在各個(gè)節(jié)點(diǎn)上生成公鑰和私鑰文件,這里以slave1節(jié)點(diǎn)進(jìn)行講解,其他節(jié)點(diǎn)操作方式完全相同。

我們首先要開啟ssh服務(wù),使用命令:sudo /etc/init.d/ssh start

隨后使用如下命令生成公鑰和私鑰文件:

ssh-keygen -t rsa -P ""

在所有節(jié)點(diǎn)上生成秘鑰文件之后,我們需要將從節(jié)點(diǎn)的公鑰傳輸給主節(jié)點(diǎn),使用命令:

cd ~/.ssh

scp id_rsa.pub sxw@master:~/.ssh/id_rsa.pub.slave1

隨后,在主節(jié)點(diǎn)下,將所有的公鑰信息拷貝到authorized_keys文件下:使用命令:

cd ~/.ssh

cat id_rsa.pub >> authorized_keys

cat id_rsa.pub.slave1 >> authorized_keys

cat id_rsa.pub.slave2 >> authorized_keys

接下來將authorized_keys文件復(fù)制到slave1和slave2節(jié)點(diǎn)目錄下:

scp authorized_keys sxw@slave1:~/.ssh/authorized_keys

scp authorized_keys sxw@slave2:~/.ssh/authorized_keys

接下來我們驗(yàn)證是否可以免密碼登錄:使用命令

ssh slave1

登陸成功,我們可以使用exit命令退出登錄

這里我們可以直接使用linux的命令下載jdk,當(dāng)然也可以在本地下載之后傳輸?shù)教摂M機(jī)中,這里我采用的是后者,因?yàn)槲腋杏X在主機(jī)上下載會(huì)比較快一些。到java官網(wǎng)中下載最新的jdk文件即可。

使用由于剛才我們配置了端口轉(zhuǎn)發(fā),因此我們可以使用winscp進(jìn)行文件傳輸:

傳輸文件到/home/sxw/Documents路徑下,直接將文件進(jìn)行拖拽即可:

隨后,在該路徑下,使用如下命令進(jìn)行解壓:

tar -zxvf 文件名

重命名jdk文件夾為jdk

隨后修改配置文件:

sudo vim /etc/profile

添加如下三行:export JAVA_HOME=/home/sxw/Documents/jdk

exportCLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH

exportPATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

使用source命令使修改生效,同時(shí)查看是否安裝成功

可以使用命令下載scala,不過我們?nèi)匀贿x擇在本地下載scala:下載地址:http://www.scala-lang.org/download/2.11.7.html

通過winscp傳入各虛擬機(jī)里,并使用如下命令進(jìn)行解壓:

tar -zxvf 文件名

重命名文件:

修改配置文件,增加以下兩行,并用source命令使修改生效:

檢查是否安裝成功:

可以看到scala已經(jīng)安裝成功了!

我們首先在主節(jié)點(diǎn)上配置好hadoop的文件,隨后使用scp命令傳輸?shù)綇墓?jié)點(diǎn)上即可。

同樣,我們?cè)趆adoop官網(wǎng)下載hadoop文件,通過winscp傳入主節(jié)點(diǎn),使用tar命令進(jìn)行解壓,并修改文件夾名為hadoop,這些這里暫且略過。

修改環(huán)境變量(所有節(jié)點(diǎn)都需要修改)并使用source命令使其生效:

接下來修改hadoop的配置文件:

(1)$HADOOP_HOME/etc/hadoop/hadoop-env.sh

修改JAVA_HOME 如下:

export JAVA_HOME=/home/sxw/Documents/jdk

(2)$HADOOP_HOME/etc/hadoop/slaves

修改salves里添加兩個(gè)從節(jié)點(diǎn)的名稱

slave1

slave2

(3)$HADOOP_HOME/etc/hadoop/core-site.xml

(4)$HADOOP_HOME/etc/hadoop/hdfs-site.xml

(5)$HADOOP_HOME/etc/hadoop/mapred-site.xml

首先使用如下命令生成mapred-site.xml文件:cp mapred-site.xml.template mapred-site.xml

隨后進(jìn)行修改:

(6)$HADOOP_HOME/etc/hadoop/yarn-site.xml

至此,hadoop的配置文件就修改完了,我們用scp命令將修改好的hadoop文件傳入到子節(jié)點(diǎn)即可

我們首先在主節(jié)點(diǎn)上配置好spark的文件,隨后使用scp命令傳輸?shù)綇墓?jié)點(diǎn)上即可。

同樣在spark官網(wǎng)下載最新的spark文件,并使用winscp傳入虛擬機(jī),使用tar命令進(jìn)行解壓,并重命名文件夾為spark。

添加spark到環(huán)境變量并使其生效:

接下來修改spark的配置文件:

(1)$SPARK_HOME/conf/spark-env.sh

首先使用如下命令生成spark-env.sh文件:

cpspark-env.sh.template spark-env.sh

隨后進(jìn)行修改:

(2)$SPARK_HOME/conf/slaves

首先使用如下命令生成slaves文件:

cpslaves.template slaves

隨后進(jìn)行修改:

至此,spark的配置文件就修改完了,我們用scp命令將修改好的spark文件傳入到子節(jié)點(diǎn)即可,不要忘記修改子節(jié)點(diǎn)的環(huán)境變量

首先我們編寫一個(gè)啟動(dòng)腳本:

可以看到,hadoop的啟動(dòng)需要兩個(gè)命令,分別啟動(dòng)dfs和yarn,傳統(tǒng)的start-all.sh已經(jīng)被棄用。而spark的啟動(dòng)只需要一個(gè)命令。

啟動(dòng)的結(jié)果如下圖所示:

隨后我們?cè)倬帉懸粋€(gè)關(guān)閉集群的腳本:

我們?cè)?home/sxw/Documents下建立一個(gè)wordcount.txt文件

文件內(nèi)容如下圖:

到hadoop的bin路徑下執(zhí)行如下三條命令:

hadoopfs-mkdir-p/Hadoop/Inputhadoopfs-putwordcount.txt/Hadoop/Inputhadoopjar/home/sxw/Documents/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jarwordcount/Hadoop/Input/Hadoop/Output

可以看到我們的hadoop再進(jìn)行運(yùn)算了:

使用如下命令查看運(yùn)算結(jié)果,發(fā)現(xiàn)我們的期望的結(jié)果正確輸出:

hadoop fs -cat/Hadoop/Output/*

hadoop配置成功!

我們直接利用spark-shell 進(jìn)行測(cè)試,編寫幾條簡(jiǎn)單額scala語句:

到spark的bin路徑下執(zhí)行./spark-shell命令進(jìn)入scala的交互模式,并輸入如下幾條scala語句:

valfile=sc.textFile("hdfs://master:9000/Hadoop/Input/wordcount.txt")valrdd=file.flatMap(line=>line.split("")).map(word=>(word,1)).reduceByKey(_+_)rdd.collect()rdd.foreach(println)

可以看到,我們的spark集群成功搭建!

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11342

    瀏覽量

    210216
  • 虛擬機(jī)
    +關(guān)注

    關(guān)注

    1

    文章

    931

    瀏覽量

    28374

原文標(biāo)題:windows下虛擬機(jī)配置spark集群最強(qiáng)攻略!

文章出處:【微信號(hào):atleadai,微信公眾號(hào):LeadAI OpenLab】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Anaconda之tensorflow:深度學(xué)習(xí)之Anaconda安裝tensorflow正確運(yùn)行之史上最強(qiáng)攻略

    Anaconda之tensorflow:深度學(xué)習(xí)之Anaconda安裝tensorflow正確運(yùn)行之史上最強(qiáng)攻略
    發(fā)表于 12-21 10:40

    MYZR虛擬機(jī)功能演示

    ncurses-dev1.3常用功能演示1.3.1在Windows虛擬機(jī)系統(tǒng)之間復(fù)制文件安裝并配置開發(fā)環(huán)境安裝并運(yùn)行虛擬機(jī)系統(tǒng)建議使用我們提供的
    發(fā)表于 12-27 15:04

    電子書:電源設(shè)計(jì)最強(qiáng)攻略, 帶你全面掌握設(shè)計(jì)竅門

    `本期電子發(fā)燒友《電源設(shè)計(jì)最強(qiáng)攻略, 帶你全面掌握設(shè)計(jì)竅門》為你搜集電源相關(guān)設(shè)計(jì)資料,從電源的緩啟動(dòng)電路設(shè)計(jì)及原理,到各類電源電路的設(shè)計(jì)細(xì)節(jié)技巧,加深你對(duì)電源的理解,讓你的電路設(shè)計(jì)如虎添翼!目錄1
    發(fā)表于 07-10 13:42

    虛擬機(jī)Ubuntu18 64位系統(tǒng)虛擬機(jī)配置方法

    宿主機(jī)(host) :虛擬機(jī)Ubuntu18 64位系統(tǒng)虛擬機(jī)配置:1.添加兩個(gè)磁盤是為了將系統(tǒng)和代碼分開,這樣的好處在于可以將代碼盤掛載到其它虛擬機(jī)上使用2.安裝兩個(gè)網(wǎng)卡是因?yàn)槟繕?biāo)
    發(fā)表于 11-08 09:03

    求一種基于集群的技術(shù)和基于虛擬機(jī)重啟的技術(shù)

    什么是IBM Power Systems的地理分散彈性?災(zāi)難恢復(fù)和高可用性(HA)解決方案主要基于兩種技術(shù):基于集群的技術(shù)和基于虛擬機(jī)重啟的技術(shù)。 群集高可用性和災(zāi)難恢復(fù)解決方案通常會(huì)部署冗余的硬件
    發(fā)表于 12-29 06:23

    云環(huán)境虛擬機(jī)集群系統(tǒng)動(dòng)態(tài)負(fù)載均衡機(jī)制

    針對(duì)傳統(tǒng)的物理集群系統(tǒng)無法靈活應(yīng)對(duì)大型互聯(lián)網(wǎng)應(yīng)用的問題,提出一種云環(huán)境虛擬機(jī)集群的綜合負(fù)載均衡機(jī)制。該方法首先定期地采集集群
    發(fā)表于 01-24 15:13 ?0次下載

    主機(jī)windows+ubuntu虛擬機(jī)聯(lián)網(wǎng)傳輸實(shí)例

    主機(jī)windows+ubuntu虛擬機(jī) 文件傳輸用 主機(jī)與虛擬機(jī)傳輸文件告別命令行
    的頭像 發(fā)表于 07-27 16:12 ?3864次閱讀
    主機(jī)<b class='flag-5'>windows</b>+ubuntu<b class='flag-5'>虛擬機(jī)</b>聯(lián)網(wǎng)傳輸實(shí)例

    虛擬機(jī):Ubuntu配置Android Studio的步驟

    虛擬機(jī):Ubuntu配置Android Studio的步驟
    的頭像 發(fā)表于 06-22 09:43 ?2860次閱讀

    虛擬機(jī):Ubuntu配置gitweb的步驟

    虛擬機(jī):Ubuntu配置gitweb的步驟
    的頭像 發(fā)表于 06-22 16:30 ?2649次閱讀
    <b class='flag-5'>虛擬機(jī)</b>:Ubuntu<b class='flag-5'>配置</b>gitweb的步驟

    虛擬機(jī):Ubuntu的基本配置

    虛擬機(jī):Ubuntu的基本配置的基本配置
    的頭像 發(fā)表于 06-22 16:52 ?3127次閱讀

    虛擬機(jī):為icescrum 配置MySQL

    虛擬機(jī):為icescrum 配置MySQL
    的頭像 發(fā)表于 06-22 16:57 ?2165次閱讀
    <b class='flag-5'>虛擬機(jī)</b>:為icescrum <b class='flag-5'>配置</b>MySQL

    虛擬機(jī):Hadoop集群的搭建

    虛擬機(jī):Hadoop集群的搭建
    的頭像 發(fā)表于 07-01 13:03 ?3234次閱讀
    <b class='flag-5'>虛擬機(jī)</b>:Hadoop<b class='flag-5'>集群</b>的搭建

    虛擬機(jī):Hadoop集群配置

    虛擬機(jī):Hadoop集群配置
    的頭像 發(fā)表于 07-01 14:14 ?2822次閱讀

    如何使用windows10遠(yuǎn)程連接虛擬機(jī)桌面

    本文介紹了如何使用 windows10 遠(yuǎn)程連接虛擬機(jī)桌面(已使用遠(yuǎn)程連接工具連接了虛擬機(jī),如 xshell),親測(cè)可用,不懂的地方歡迎交流!
    的頭像 發(fā)表于 07-12 11:18 ?3008次閱讀

    Hyper-V創(chuàng)建虛擬機(jī)配置IP等網(wǎng)絡(luò)配置原理(Linux、Windows為例)

    ,Linux虛擬機(jī)網(wǎng)絡(luò)不通,默認(rèn)沒有設(shè)置本地網(wǎng)絡(luò)配置。而 Windows11虛擬機(jī)卻可以。研究了原因,解決辦法總結(jié)如下:
    的頭像 發(fā)表于 12-09 10:24 ?1811次閱讀
    Hyper-V創(chuàng)建<b class='flag-5'>虛擬機(jī)</b><b class='flag-5'>配置</b>IP等網(wǎng)絡(luò)<b class='flag-5'>配置</b>原理(Linux、<b class='flag-5'>Windows</b>為例)