Hadoop集群安装部署

一、所需环境和准备工作

1.三台服务器:master、slave1、slave2

修改每台服务器的hosts文件

[root@master ~]# vim /etc/hosts

添加内容:

192.168.1.100    master 
192.168.1.101    slave1 
192.168.1.102    slave2

重启服务器,使修改生效。

2.每台服务器都需要安装jdk

在官网下载jdk安装包:jdk-8u172-linux-x64.tar.gz

解压:

[root@master ~]# tar -zxvf jdk-8u172-linux-x64.tar.gz

将解压后的文件夹移动到相应的路径,并添加环境变量:

[root@master ~]# mv jdk1.8.0_172 /home/java
[root@master ~]# vim /etc/profile

添加如下内容:

JAVA_HOME=/usr/local/java/jdk1.8.0_172
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH

使修改生效:

[root@master ~]# source /etc/profile

检查是否安装成功:

[root@master ~]# java -version
java version "1.8.0_172"
Java(TM) SE Runtime Environment (build 1.8.0_172-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.172-b11, mixed mode)

3.设置免密登录

在三个节点分别执行如下命令:

[root@master ~]# ssh-keygen -t rsa 

不断的按回车键,生成id_rsa(私钥)和id_rsa.pub(公钥)。

将slave1和slave2节点的id_rsa.pub文件复制到master节点:

[root@master ~]# scp root@slave1:/root/.ssh/id_rsa.pub /root/.ssh/id_rsa.pub-slave1
[root@master ~]# scp root@slave2:/root/.ssh/id_rsa.pub /root/.ssh/id_rsa.pub-slave2

将三个id_rsa.pub文件内容合并到authorized_keys中:

[root@master ~]# cd .ssh
[root@master .ssh]# cat id_rsa.pub  id_rsa.pub-slave1  id_rsa.pub-slave2 > authorized_keys

将master节点的authorized_keys文件复制到另外两个节点的.ssh文件夹下:

#在slave1节点
[root@slave1 ~]# scp root@master:/root/.ssh/authorized_keys  /root/.ssh

#在slave2节点
[root@slave2 ~]# scp root@master:/root/.ssh/authorized_keys  /root/.ssh

检查是否能够成功免密登录:在任意节点执行ssh master、ssh slave1、ssh slave2,都不需要输入密码。

二、安装hadoop集群

1.在官网下载安装包:https://hadoop.apache.org/releases.html

2.解压:

[root@master ~]# tar -zxvf hadoop-2.9.0.tar.gz -C /home

3.在/home/hadoop-2.9.0目录下,创建tmp和dfs两个文件夹,在dfs文件夹下创建name和data文件夹。

4.修改core-site.xml

[root@master hadoop-2.9.0]# cd etc/hadoop/
[root@master hadoop]# vim core-site.xml 
<configuration>
    <!-- 指定HDFS老大(namenode)的通信地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:9000</value>
    </property>
    <!-- 指定hadoop运行时产生文件的存储路径 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/home/hadoop-2.9.0/tmp</value>
    </property>
</configuration>

5.修改hadoop-env.sh

修改为自己jdk的安装路径。

6.修改hdfs-site.xml

<configuration>
    <!-- 设置namenode的http通讯地址 -->
    <property>
        <name>dfs.namenode.http-address</name>
        <value>master:50070</value>
    </property>

    <!-- 设置secondarynamenode的http通讯地址 -->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>slave1:50090</value>
    </property>

    <!-- 设置namenode存放的路径 -->
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/home/hadoop-2.9.0/dfs/name</value>
    </property>

    <!-- 设置hdfs副本数量 -->
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
    <!-- 设置datanode存放的路径 -->
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/home/hadoop-2.9.0/dfs/data</value>
    </property>
</configuration>

7.修改mapred-site.xml

<configuration>
 <!-- 通知框架MR使用YARN -->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

8.修改yarn-site.xml

<configuration>

<!-- Site specific YARN configuration properties -->
 <!-- 设置 resourcemanager 在哪个节点-->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>master</value>
    </property>

    <!-- reducer取数据的方式是mapreduce_shuffle -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>

    <property>
         <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
         <value>org.apache.hadoop.mapred.ShuffleHandler</value>
    </property>
</configuration>

9.修改slaves文件

master节点修改为:

slave1
slave2

slave1和slave2节点修改为:

localhost

10.添加环境变量

[root@master ~]# vim /etc/profile

添加内容:

#hadoop
export HADOOP_HOME=/home/hadoop-2.9.0
export PATH=$PATH:$HADOOP_HOME/bin

使修改内容生效:

[root@master ~]# source /etc/profile

11.格式化namenode:

在bin目录下执行

[root@master bin]# ./hdfs namenode -format

12.启动hadoop:

在sbin目录下

[root@master sbin]# sh start-all.sh

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值