D001.8 Docker搭建Spark集群(實踐篇)

0x00 教程內(nèi)容

  1. 環(huán)境及資源準(zhǔn)備
  2. 生成容器
  3. 檢驗Hadoop與Spark

0x01 環(huán)境及資源準(zhǔn)備

1. 安裝Docker

請參考:D001.5 Docker入門(超級詳細基礎(chǔ)篇)的“0x01 Docker的安裝”小節(jié)

2. 準(zhǔn)備資源

a. 根據(jù)文末總結(jié)的文件目錄結(jié)構(gòu)迎捺,拷貝文章的資源,資源請參考:D001.6 Docker搭建Hadoop集群
b. 模仿Hadoop自己寫一份,或者后期關(guān)注代碼庫:
邵奈一的學(xué)習(xí)庫
c. Dockerfile參考文件

FROM ubuntu
MAINTAINER shaonaiyi shaonaiyi@163.com

ENV BUILD_ON 2017-11-16

RUN apt-get update -qqy

RUN apt-get -qqy install vim wget net-tools  iputils-ping  openssh-server
#添加JDK
ADD ./jdk-8u161-linux-x64.tar.gz /usr/local/
#添加hadoop
ADD ./hadoop-2.7.5.tar.gz  /usr/local/
#添加scala
ADD ./scala-2.11.8.tgz /usr/local/
#添加spark
ADD ./spark-2.2.0-bin-hadoop2.7.tgz /usr/local/
ENV CHECKPOINT 2019-01-14
#增加JAVA_HOME環(huán)境變量
ENV JAVA_HOME /usr/local/jdk1.8.0_161
#hadoop環(huán)境變量
ENV HADOOP_HOME /usr/local/hadoop-2.7.5
#scala環(huán)境變量
ENV SCALA_HOME /usr/local/scala-2.11.8
#spark環(huán)境變量
ENV SPARK_HOME /usr/local/spark-2.2.0-bin-hadoop2.7
#將環(huán)境變量添加到系統(tǒng)變量中
ENV PATH $SCALA_HOME/bin:$SPARK_HOME/bin:$HADOOP_HOME/bin:$JAVA_HOME/bin:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$PATH

RUN ssh-keygen -t rsa -f ~/.ssh/id_rsa -P '' && \
    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys && \
    chmod 600 ~/.ssh/authorized_keys
#復(fù)制配置到/tmp目錄
COPY config /tmp
#將配置移動到正確的位置
RUN mv /tmp/ssh_config    ~/.ssh/config && \
    mv /tmp/profile /etc/profile && \
    mv /tmp/masters $SPARK_HOME/conf/masters && \
    cp /tmp/slaves $SPARK_HOME/conf/ && \
    mv /tmp/spark-defaults.conf $SPARK_HOME/conf/spark-defaults.conf && \
    mv /tmp/spark-env.sh $SPARK_HOME/conf/spark-env.sh && \ 
    mv /tmp/hadoop-env.sh $HADOOP_HOME/etc/hadoop/hadoop-env.sh && \
    mv /tmp/hdfs-site.xml $HADOOP_HOME/etc/hadoop/hdfs-site.xml && \ 
    mv /tmp/core-site.xml $HADOOP_HOME/etc/hadoop/core-site.xml && \
    mv /tmp/yarn-site.xml $HADOOP_HOME/etc/hadoop/yarn-site.xml && \
    mv /tmp/mapred-site.xml $HADOOP_HOME/etc/hadoop/mapred-site.xml && \
    mv /tmp/master $HADOOP_HOME/etc/hadoop/master && \
    mv /tmp/slaves $HADOOP_HOME/etc/hadoop/slaves && \
    mv /tmp/start-hadoop.sh ~/start-hadoop.sh && \
    mkdir -p /usr/local/hadoop2.7/dfs/data && \
    mkdir -p /usr/local/hadoop2.7/dfs/name

RUN echo $JAVA_HOME
#設(shè)置工作目錄
WORKDIR /root
#啟動sshd服務(wù)
RUN /etc/init.d/ssh start
#修改start-hadoop.sh權(quán)限為700
RUN chmod 700 start-hadoop.sh
#修改root密碼
RUN echo "root:shaonaiyi" | chpasswd
CMD ["/bin/bash"]

0x02 生成容器

1. 生成樣本鏡像

a. 切換成root用戶(密碼:shaonaiyi)
su root

在這里插入圖片描述

b. 拷貝資源文件spark_sny_all進到docker_bigdata目錄(如有則不用創(chuàng)建)
mkdir docker_bigdata
在這里插入圖片描述

c. 生成樣本鏡像:shaonaiyi/spark
cd docker_bigdata/spark_sny_all
docker build -t shaonaiyi/spark .
此過程時間根據(jù)自己網(wǎng)絡(luò)情況與自己裝docker時的配置有關(guān)(10分鐘左右)
在這里插入圖片描述

出現(xiàn)下圖表示成功:


在這里插入圖片描述
2. 創(chuàng)建bigdata-spark網(wǎng)絡(luò)

a. 修改腳本權(quán)限
chmod 700 build_network.sh
b. 創(chuàng)建網(wǎng)絡(luò)
./build_network.sh
修改及創(chuàng)建后如圖:

在這里插入圖片描述

3. 啟動容器

a. 修改腳本權(quán)限
cd config
chmod 700 start_containers.sh
b. 啟動容器(映射的端口多的為master)
./start_containers.sh

在這里插入圖片描述

0x03 檢驗Hadoop與Spark

1. 啟動Hadoop與Spark

a. 查看啟動的容器(顯示跟剛剛一樣)
docker ps
b. 進入容器hadoop-master(可用自己的容器ID)
docker attach hadoop-master
c. 修改腳本執(zhí)行權(quán)限
ll
d. 啟動Hadoop集群
./start-hadoop.sh

在這里插入圖片描述

無報錯旦部,且有進程(如報錯可以重新生成容器試試):
在這里插入圖片描述

2. Web UI界面查看

a. 切換終端赔退,查看端口映射(可看到51070端口映射到docker的50070端口)
docker port hadoop-master

在這里插入圖片描述

b. 在我們的windows系統(tǒng)執(zhí)行(虛擬機的ip:port)
ps:自行修改ip
在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

2. 停止并刪除容器指令

a. 修改腳本權(quán)限
cd /home/shaonaiyi/docker_bigdata/spark_sny_all/config/
chmod 700 stop_containers.sh
b. 刪除容器
./stop_containers.sh
c. 查看執(zhí)行的容器(沒有則表示刪除成功)
docker ps

在這里插入圖片描述

0xFF 總結(jié)

  1. 如需要獲取資源到腥,可加微信:shaonaiyi888獲取最新消息
  2. 本文為搭建Spark與Hadoop集群的實踐篇邢滑,與上一篇有異曲同工之處:
    D001.7 Docker搭建Hadoop集群(實踐篇)
  3. 本次教程使用了ubuntu鏡像蹂午,可在docker hub官網(wǎng)搜索指定的版本:https://hub.docker.com/
  4. 后期會出教程:
    a. 在集群內(nèi)部傳統(tǒng)模式安裝HBase
    b. 使用Dockerfile方式安裝HBase

<font size="1">
ps:
本系列課程開發(fā)使用兩臺虛擬機:<br />
測試機ip為:192.168.128.128<br />
非測試機為:192.168.128.129<br />
有些時候使用測試機盈魁,有時候使用非測試機<br />
讀者請自行修改翔怎!<br />
</font><br />

作者簡介邵奈一

大學(xué)大數(shù)據(jù)講師、大學(xué)市場洞察者备埃、專欄編輯

公眾號姓惑、微博褐奴、CSDN邵奈一

本系列課均為本人:邵奈一 原創(chuàng),如轉(zhuǎn)載請標(biāo)明出處

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末于毙,一起剝皮案震驚了整個濱河市敦冬,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌唯沮,老刑警劉巖脖旱,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異介蛉,居然都是意外死亡萌庆,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門币旧,熙熙樓的掌柜王于貴愁眉苦臉地迎上來践险,“玉大人,你說我怎么就攤上這事吹菱∥〕妫” “怎么了?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵鳍刷,是天一觀的道長占遥。 經(jīng)常有香客問我,道長输瓜,這世上最難降的妖魔是什么瓦胎? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮尤揣,結(jié)果婚禮上搔啊,老公的妹妹穿的比我還像新娘。我一直安慰自己芹缔,他們只是感情好坯癣,可當(dāng)我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著最欠,像睡著了一般示罗。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上芝硬,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天蚜点,我揣著相機與錄音,去河邊找鬼拌阴。 笑死绍绘,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播陪拘,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼厂镇,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了左刽?” 一聲冷哼從身側(cè)響起捺信,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎欠痴,沒想到半個月后迄靠,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡喇辽,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年掌挚,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片菩咨。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡吠式,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出旦委,到底是詐尸還是另有隱情奇徒,我是刑警寧澤,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布缨硝,位于F島的核電站,受9級特大地震影響罢低,放射性物質(zhì)發(fā)生泄漏查辩。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一网持、第九天 我趴在偏房一處隱蔽的房頂上張望宜岛。 院中可真熱鬧,春花似錦功舀、人聲如沸萍倡。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽列敲。三九已至,卻和暖如春帖汞,著一層夾襖步出監(jiān)牢的瞬間戴而,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工翩蘸, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留所意,地道東北人。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像扶踊,于是被迫代替她去往敵國和親泄鹏。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,060評論 2 355

推薦閱讀更多精彩內(nèi)容