虛擬化與云計(jì)算課程總結(jié)報(bào)告

前言

我們小組的做的內(nèi)容是在Docker上搭建Hadoop,并統(tǒng)計(jì)文件指定字符數(shù)量,我在CentOS云服務(wù)器上進(jìn)行這個(gè)實(shí)驗(yàn),由于服務(wù)器資源有限,最后我在本地Macbook上完成了這個(gè)實(shí)驗(yàn)
服務(wù)器配置:CentOS 7.2 64 位
本地主機(jī):MacBook Pro 13.3 MacOS 10.12

一、搭建Docker環(huán)境

1.1 安裝Docker

首先安裝Docker必要安裝包,使用命令:

yum install -y yum-utils device-mapper-persistent-data lvm2
圖片.png

由于系統(tǒng)自帶的yum沒有Docker-CE,所以我們要先增加Docker repo倉庫,使用命令:

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
圖片.png

使用 yum 安裝 Docker:

yum install -y docker-ce
圖片.png

安裝成功后,查看Docker版本

docker -v

啟動Docker

service docker start

設(shè)置開機(jī)啟動

chkconfig docker on
圖片.png
1.2 配置Docker

因?yàn)閲鴥?nèi)訪問 Docker Hub 較慢, 所以我使用騰訊云提供的國內(nèi)鏡像源, 加速訪問 Docker Hub,依次使用命令:

echo "OPTIONS='--registry-mirror=https://mirror.ccs.tencentyun.com'" >> /etc/sysconfig/docker
systemctl daemon-reload
service docker restart
1.3 測試Docker

拉取鏡像到服務(wù)器本地

docker pull centos

下載好的鏡像就會出現(xiàn)在鏡像列表里

docker images
圖片.png

這時(shí)我們可以在剛才下載的 CentOS 鏡像生成的容器內(nèi)操作了。
生成一個(gè) centos 鏡像為模板的容器并使用 bash shell

docker run -it centos /bin/bash

這個(gè)時(shí)候可以看到命令行的前端已經(jīng)變成了 [root@(一串 hash Id)] 的形式, 這說明我們已經(jīng)成功進(jìn)入了 CentOS 容器。


圖片.png

在容器內(nèi)執(zhí)行任意命令, 不會影響到宿主機(jī), 如下

mkdir -p /data/simple_docker

可以看到 /data 目錄下已經(jīng)創(chuàng)建成功了 simple_docker 文件夾,

ls /data

退出容器

exit

查看宿主機(jī)的 /data 目錄, 并沒有 simple_docker 文件夾, 說明容器內(nèi)的操作不會影響到宿主機(jī)

ls /data
圖片.png

以上說明我的Docker可以正常工作;

二、使用Hadoop

2.1.拉取Hadoop集群鏡像

鏡像是 Docker 的核心,可以通過從遠(yuǎn)程拉取鏡像即可配置好我們所需要的環(huán)境,我們這次需要的是 Hadoop 集群的鏡像。我直接使用kiwenlau的 Hadoop 集群鏡像以及其配置:

sudo docker pull kiwenlau/hadoop:1.0

拉取鏡像完成


圖片.png
2.2 克隆倉庫到當(dāng)前文件夾

首先安裝一下git工具:

yum install git
圖片.png

安裝完成


圖片.png

克隆倉庫到當(dāng)前文件夾:

git clone https://github.com/kiwenlau/hadoop-cluster-docker

克隆倉庫完成:


圖片.png
2.3 橋接網(wǎng)絡(luò)
sudo docker network create --driver=bridge hadoop
圖片.png
2.4 運(yùn)行容器
cd hadoop-cluster-docker
./start-container.sh
圖片.png

我使用了一個(gè)主節(jié)點(diǎn)兩個(gè)從節(jié)點(diǎn)

2.5 啟動Hadoop
./start-hadoop.sh
圖片.png
2.6 測試Word Count

Word Count 是一個(gè)測試 Hadoop 的 Shell 腳本,即計(jì)算文本中的單詞個(gè)數(shù);

./run-wordcount.sh
圖片.png

由于我的服務(wù)器內(nèi)存資源不足,所以沒有測試成功,于是我到本地來進(jìn)行測試。

三、本地使用Docker

3.1 下載Docker

由于在Linux服務(wù)器上測試識別,于是我在我的Macbook Pro上本地測試,在Docker官網(wǎng)下載Mac版Docker安裝包;


圖片.png

圖片.png
3.2 本地運(yùn)行Docker

下載完成后安裝、運(yùn)行Docker,打開Terminal,輸入docker

圖片.png

本地Docker安裝成功,之后再和Linux服務(wù)器一樣拉取鏡像、克隆倉庫、橋接網(wǎng)絡(luò)、運(yùn)行容器、啟動Hadoop,最后測試Word Count,這次可以運(yùn)算出結(jié)果了:


圖片.png

圖片.png

四、個(gè)人總結(jié)

在Docker環(huán)境下運(yùn)行Hadoop,過程雖然有些繁瑣,但最終還是解決了,所以經(jīng)常有人說,開發(fā)項(xiàng)目環(huán)境配置要花將近一半的時(shí)間,果真如此啊,要學(xué)習(xí)的東西還有很多啊!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容