hadoop完全分佈式(雲服務器版)

  • 使用的是三臺雲服務器,兩臺騰訊雲,一臺華爲雲,使用的系統爲centos6.8
  • 遇到的坑有點多,所以記錄下來,防止自己忘記,也給大家一個參考

前期準備

hadoop和jdk的tar解壓
jdk和hadoop的環境變量配置
vim /etc/profile

##JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_144
export PATH=$PATH:$JAVA_HOME/bin
#export JAVA_HOME=/opt/module/jdk-11
#export PATH=$PATH:$JAVA_HOME/bin
##HADOOP_HOME
export HADOOP_HOME=/opt/module/hadoop-2.7.2
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
  • 特別注意的:在/etc/hosts設置本地解析時,本機雲服務器設置爲內網ip,其他爲公網ip
    在這裏插入圖片描述
    爲了同時更新方便,可使用集羣的腳本文件執行
  • 創建一個xsync的shell文件
#!/bin/bash
#1 獲取輸入參數個數,如果沒有參數,直接退出
pcount=$#
if((pcount==0)); then
echo no args;
exit;
fi

#2 獲取文件名稱
p1=$1
fname=`basename $p1`
echo fname=$fname

#3 獲取上級目錄到絕對路徑
pdir=`cd -P $(dirname $p1); pwd`
echo pdir=$pdir

#4 獲取當前用戶名稱
user=`whoami`

#5 循環
for((host=103; host<105; host++)); do
        echo ------------------- hadoop$host --------------
        rsync -rvl $pdir/$fname $user@hadoop$host:$pdir
done

集羣配置

添加jdk環境的文件

hadoop-env.sh
yarn-env.sh
mapred-env.sh

core-site.xml

<!-- 指定HDFS中NameNode的地址 -->
<property>
		<name>fs.defaultFS</name>
      <value>hdfs://hadoop102:9000</value>
</property>

<!-- 指定Hadoop運行時產生文件的存儲目錄 -->
<property>
		<name>hadoop.tmp.dir</name>
		<value>/opt/module/hadoop-2.7.2/data/tmp</value>
</property>

hdfs-site.xml

<property>
		<name>dfs.replication</name>
		<value>3</value>
</property>

<!-- 指定Hadoop輔助名稱節點主機配置 -->
<property>
      <name>dfs.namenode.secondary.http-address</name>
      <value>hadoop104:50090</value>
</property>

yarn-site.xml

<!-- Reducer獲取數據的方式 -->
<property>
		<name>yarn.nodemanager.aux-services</name>
		<value>mapreduce_shuffle</value>
</property>

<!-- 指定YARN的ResourceManager的地址 -->
<property>
		<name>yarn.resourcemanager.hostname</name>
		<value>hadoop103</value>
</property>

mapred-site.xml

<!-- 指定MR運行在Yarn上 -->
<property>
		<name>mapreduce.framework.name</name>
		<value>yarn</value>
</property>

格式化namenode

hadoop namenode -format

SSH無密登陸配置

  • 生產公鑰和私鑰

ssh-keygen -t rsa

在這裏插入圖片描述

  • 將公鑰拷貝到需要免密的服務器

ssh-copy-id [服務器ip]

記得設置slaves文件,同步配置

集羣啓動

hdfs啓動 / 關閉
start-dfs.sh / stop-dfs.sh
yarn啓動 / 關閉
start-yarn.sh / stop-yarn.sh

發佈了104 篇原創文章 · 獲贊 4 · 訪問量 7191
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章