1. 程式人生 > >大數據學習-1 在阿裏雲上集成6臺雲服務器

大數據學習-1 在阿裏雲上集成6臺雲服務器

可用 大學生 ble 1.8 結束 mapred acl check 時代

一.為什麽要大數據學習?

這是一個大數據的時代,一個企業只有掌握了大數據才能把握住市場的命脈,一個人掌握了大數據就可以比較輕松的向機器學習、人工智能等方向發展。所以我們有必要去掌握大數據的技術同時也關註大數據的發展趨勢,不能裹足不前。

二.關於本專題的學習

作為一個普通本科大學生,在校的大數據學習比較的“水”,普通大學嘛,大家都懂。在一個就是編程實戰方向上的東西本來就該靠自學,而不是靠別人去教。我覺得大數據的學習是一個緩慢的過程,需要半年的時間去學習。我想在大二結束差不多就可以完成大數據最基本的學習了。(看看明年暑假能不能去個公司實習一下:-))因為這也是我也是第一次學習大數據,這一系列文章是我的學習筆記而不是我的工作經歷總結,其中難免有部分錯誤,還望前輩們不嗇賜教。

三.在阿裏雲上安裝hadoop,同時集成6臺雲主機

3.1版本說明:1.Linux centos7

      2.Java jdk1.8

     3.Hadoop Hadoop2.7.3

3.2 安裝Java

在這裏我們使用的是Java 1.8,當然你也可以使用其他的版本,但是一定要是Linux版本的Java!

技術分享圖片我們下載的壓縮包格式,下載到本地後通過winscp上傳到阿裏雲上

下載鏈接 https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

我們在阿裏雲上的opt文件夾下創建Java文件夾和hadoop文件夾如圖

技術分享圖片

我們將我們的Java壓縮包放到Java文件夾中去。

然後進入該文件夾執行解壓操作

進入該文件夾 cd /opt/java

解壓操作 tar -zxvf jdk-8u 191-linux-x64.tar.gz (註意你自己的jdk版本號和你自己的文件名)

解壓完成後會看見一個文件夾如下

技術分享圖片

接下來我們呢就要去配置文件了

修改/etc/profile文件 使用命令符 vim /etc/profile

在文件的最後加上

export JAVA_HOME=/opt/java/jdk1.8.0_191 (註意你自己的版本號)
export PATH=$JAVA_HOME/bin:$PATH


export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
更改完後輸入命令命令符 Java、 javac、java -version

出現下面的字符說明安裝成功:

技術分享圖片 技術分享圖片 技術分享圖片

3.3實現6個機子ssh免密碼登錄

檢查機器名稱

輸入命令符 hostname 可以查看你們的機器名稱,如圖:
技術分享圖片如果你沒有改過你的hostname那麽應該是一個亂碼,那麽我們使用命令來修改主機名稱 hostname hserver1(1號一般為namenode)

其他的5臺服務器也是分別為hserver2、hserver3、hserver4、hserver5、hserver6(這幾個為datenode)

修改映射文件

輸入命令符vim /etc/hosts 將所有的服務器的主機ip地址和他們的hostname相對應

如圖:技術分享圖片

修改完成後我們檢查一下是否能夠發送成功。

ping -c 3 hserver2

技術分享圖片

這樣就說明成功了,當然剩下的5臺服務器也測試後成功了。

配置ssh文件

輸入命令 ssh-keygen -t rsa -P ‘‘

在過程中需要輸入回車

然後ls /root/.ssh/ 出現下圖

技術分享圖片

查看id_rsa.pub vim id_rsa.pub

技術分享圖片

我們將所有主機中的id_rsa.pub 文件中的公匙復制到一個文件中authorized_keys,然後將authorized_keys放置到/root/.ssh/文件夾下

查看authorized_keys vim authorized_keys 如下:

技術分享圖片

測試是否ssh配置成功

依次檢查ssh hserver2 、3、4、5、6

技術分享圖片第一次輸入一般會詢問鏈接 輸入yes

測試完後一定要關閉鏈接否者你在本機上的命令會在那一臺機子上執行,

命令符 exit 退出

3.4安裝hadoop

下載hadoop到本地然後上傳到阿裏雲上,解壓。資源網上都有可以去找 ,我這裏使用的Hadoop版本為2.7.3下面解壓後所有的路徑你們根據你們的版本去修改。

我們的將Hadoop的壓縮包放到/opt/hadoop/文件夾下:

然後我們進入該文件夾 cd /opt/hadoop/

接著執行 tar -xvf hadoop-2.7.3.tar.gz (註意你們的文件版本名)解壓文件

解壓完成後你會的得到一個文件夾

技術分享圖片

然後創建如下幾個文件夾

mkdir /root/hadoop

mkdir /root/hadoop/tmp

mkdir /root/hadoop/var

mkdir /root/hadoop/dfs

mkdir /root/hadoop/dfs/name

mkdir /root/hadoop/dfs/data

修改配置文件:

vim /opt/hadoop/hadoop-2.7.3/etc/hadoop/core-site.xml

<configuration>節點中寫入:

<property>

<name>hadoop.tmp.dir</name>

<value>/root/hadoop/tmp</value>

<description>Abase for other temporary directories.</description>

</property>

<property>

<name>fs.default.name</name>

<value>hdfs://hserver1:9000</value>

</property>

</configuration>
註意如果你的namenode的hostname不為hserver1你要改成你的namenode的hostname

vim /opt/hadoop/hadoop-2.7.3/etc/hadoop/hadoop-env.sh

將export JAVA_HOME=${JAVA_HOME}

修改為:

export JAVA_HOME=/opt/java/jdk1.8.0_191 (註意你自己的Java版本號)

vim /opt/hadoop/hadoop-2.7.3/etc/hadoop/hdfs-site.xml

<configuration>節點中寫入:

<property>

<name>dfs.name.dir</name>

<value>/root/hadoop/dfs/name</value>

<description>Path on the local filesystem where theNameNode stores the namespace and transactions logs persistently.</description>

</property>

<property>

<name>dfs.data.dir</name>

<value>/root/hadoop/dfs/data</value>

<description>Comma separated list of paths on the localfilesystem of a DataNode where it should store its blocks.</description>

</property>

<property>

<name>dfs.replication</name>

<value>2</value>

</property>

<property>

<name>dfs.permissions</name>

<value>false</value>

<description>need not permissions</description>

</property>

在該版本中,有一個名為mapred-site.xml.template的文件,復制該文件,然後改名為mapred-site.xml,命令是:

cp /opt/hadoop/hadoop-2.8.0/etc/hadoop/mapred-site.xml.template /opt/hadoop/hadoop-2.7.3/etc/hadoop/mapred-site.xml

vim /opt/hadoop/hadoop-2.7.3/etc/hadoop/mapred-site.xml

在<configuration>節點內加入配置:

<property>

<name>mapred.job.tracker</name>

<value>hserver1:49001</value>

</property>

<property>

<name>mapred.local.dir</name>

<value>/root/hadoop/var</value>

</property>

<property>

<name>mapreduce.framework.name</name>

<value>yarn</value>

</property>

vim /opt/hadoop/hadoop-2.7.3/etc/hadoop/slaves

加入你的datenode的hostname

如下圖:

技術分享圖片

vim /opt/hadoop/hadoop-2.7.3/etc/hadoop/yarn-site.xml

在<configuration>節點內加入配置

<property>

<name>yarn.resourcemanager.hostname</name>

<value>hserver1</value>

</property>

<property>

<description>The address of the applications manager interface in the RM.</description>

<name>yarn.resourcemanager.address</name>

<value>0.0.0.0:8032</value>

</property>

<property>

<description>The address of the scheduler interface.</description>

<name>yarn.resourcemanager.scheduler.address</name>

<value>0.0.0.0:8030</value>

</property>

<property>

<description>The http address of the RM web application.</description>

<name>yarn.resourcemanager.webapp.address</name>

<value>0.0.0.0:8088</value>

</property>

<property>

<description>The https adddress of the RM web application.</description>

<name>yarn.resourcemanager.webapp.https.address</name>

<value>0.0.0.0:8090</value>

</property>

<property>

<name>yarn.resourcemanager.resource-tracker.address</name>

<value>0.0.0.0:8031</value>

</property>

<property>

<description>The address of the RM admin interface.</description>

<name>yarn.resourcemanager.admin.address</name>

<value>0.0.0.0:8033</value>

</property>

<property>

<name>yarn.nodemanager.aux-services</name>

<value>mapreduce_shuffle</value>

</property>

<property>

<name>yarn.scheduler.maximum-allocation-mb</name>

<value>2048</value>

<discription>每個節點可用內存,單位MB,默認8182MB</discription>

</property>

<property>

<name>yarn.nodemanager.vmem-pmem-ratio</name>

<value>2.1</value>

</property>

<property>

<name>yarn.nodemanager.resource.memory-mb</name>

<value>2048</value>

</property>

<property>

<name>yarn.nodemanager.vmem-check-enabled</name>

<value>false</value>

</property>
四.初始化hadoop和執行hadoop

cd /opt/hadoop/hadoop-2.7.3/bin 進入文件夾

./hadoop namenode -format 初始化腳本

格式化成功後,可以在看到在/root/hadoop/dfs/name/目錄多了一個current目錄,而且該目錄內有一系列文件

在namenode上去執行啟動命令

cd /opt/hadoop/hadoop-2.8.0/sbin (進入文件夾)

./start-all.sh (執行命令)

過程中所有詢問輸入yes

五.測試hadoop是否成功

namenode的地址為39.105.201.218

關閉防火墻 systemctl stop firewalld.service 後

打開:

http://39.105.201.218:50090/(HDFS管理界面)

技術分享圖片


http://39.105.201.218:8088/ (cluster頁面)

技術分享圖片

參考文章 https://blog.csdn.net/pucao_cug/article/details/71698903

大數據學習-1 在阿裏雲上集成6臺雲服務器