hadoop 搭建之HDFS,MapReduce

hadoop分布式安裝(CENTOS7)

001 集群機器

主機 ip
master 10.13.7.43
slave01 10.13.7.40
slave02 10.13.7.41

1.修改主機名

hostnamectl set-hostname master     
其他機器按照同樣的方法修改主機名

2.修改hosts文件

vi /etc/hosts

配置如下:

127.0.0.1   localhost
10.13.7.43 master
10.13.7.40 slave01
10.13.7.41 slave02

010 SSH免密登錄

1.測試ssh能否連接到本機

ssh localhost

2.不能連接的話,下載openssh-server

yum -y install openssh-server

3.配置ssh免密登錄

ssh-keygen -t rsa -P ""
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

4.將master的公鑰發送到slave01和slave02,實現ssh免密登錄slave01和slave02

scp ~/.ssh/id_rsa.pub root@slave01:~/.ssh/
scp ~/.ssh/id_rsa.pub root@slave02:~/.ssh/

5.ssh 連接slave01和slave02,將master的公鑰添加到authorized_keys

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

6.測試master是否ssh免密登錄slave01和slave02

ssh slave01

011 安裝JAVA環境和Hadoop

1.安裝openJDK

yum -y install java-1.7.0-openjdk java-1.7.0-openjdk-devel

2.獲取JDK安裝路徑

rpm -ql java-1.7.0-openjdk-devel | grep '/bin/javac'
安裝路徑:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.131-2.6.9.0.el7_3.x86_64

3.添加JDK環境變量

vi /etc/profile

添加以下內容:

export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.131-2.6.9.0.el7_3.x86_64
覺得路徑長的話,可以修改路徑名。

4.生效環境變量

source /etc/profile

5.檢驗配置是否生效

java -version

6.安裝hadoop
可以通過清華源https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/下載hadoop,這里用的是hadoop 2.8.0版本,下載完之后,解壓文件

tar -zxvf hadoop-2.8.0.tar.gz -C /usr/local
cd /usr/local/
mv hadoop-2.8.0 hadoop

8.添加hadoop環境變量

vi /etc/profile

添加以下內容

export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

8.生效環境變量

source /etc/profile

9.測試配置是否生效

hadoop

100 配置hadoop集群

1.進入hadoop配置文件存放的目錄

cd /usr/local/hadoop/etc/hadoop

2.修改slave文件

vi slave

添加DATANODE的主機名
slave01
slave02
3.修改core-site.xml文件

vi core-site.xml

在< configuration>< /configuration>之間添加以下內容

 <property>
          <name>hadoop.tmp.dir</name>
          <value>file:/usr/local/hadoop/tmp</value>
          <description>Abase for other temporary directories.</description>
      </property>
      <property>
          <name>fs.defaultFS</name>
          <value>hdfs://master:9000</value>
 </property>

4.修改hdfs-site.xml文件

vi hdfs-site.xml
<property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
<property>
        <name>dfs.namenode.name.dir</name>
        <value>/usr/local/hadoop/tmp/dfs/name</value>
    </property>

5.復制mapred-site.xml.template,修改文件名為mapred-site.xml,并修改這個文件

cp mapred-site.xml.template mapred-site.xml
vi mapred-site.xml

在< configuration>< /configuration>之間添加以下內容

    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>

6.修改yarn-site.xml文件

vi yarn-site.xml

在< configuration>< /configuration>之間添加以下內容

      <property>
          <name>yarn.nodemanager.aux-services</name>
          <value>mapreduce_shuffle</value>
      </property>
      <property>
          <name>yarn.resourcemanager.hostname</name>
          <value>master</value>
      </property>

7.將master配置好的hadoop文件夾打包復制到各slave節點,master節點執行

cd /usr/local
tar -zcf hadoop.tar.gz ./hadoop
scp hadoop.tar.gz slave01:/usr/local
scp hadoop.tar.gz slave02:/usr/local

8.創建namenode臨時文件存放路徑,僅master節點執行

mkdir /usr/local/hadoop/tmp/dfs/name

8.在各slave節點解壓hadoop文件

cd /usr/local
tar -zxvf hadoop.tar.gz -C /usr/local

101 啟動hadoop集群

1.master主機執行啟動命令

hdfs namenode -format
start-all.sh

2.運行后,在master,slave01,slave02 執行jps命令,查看運行情況
maser:

slave01:

slave02:

ok!!!大功告成!!!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容