Hadoop安装

Hadoop安装

1.安装前准备

需要起码三台虚拟机,分别设置为master/slave1/slave2

1.1前提配置

使用ipconfig命令查看各主机的ip信息(这里需要先将各虚拟机ip设置为静态ip)
再使用命令 sudo vim /etc/hosts,每台机子都要操作在这里插入图片描述
在这里插入图片描述
**(进入界面后按i键进行编辑,编辑完毕之后按下esc键后按冒号wq!来退出并保存操作)**也可以按shfit加zz,但是有时候会切输入法烦的不行
再创建两个目录

sudo mkdir /softwares
sudo mkdir /data

1.2配置jdk,防火墙

这里不多介绍,本站有很多教程。本手册的jdk是放在softwares目录下
关闭防火墙

sudo systemctl stop firewalld.service
sudo systemctl disable firewalld.service

检查防火墙状态

sudo systemctl status firewalld.service

确定关闭然后继续操作
在这里插入图片描述

2Hadoop配置

还是安装在softwares目录下,并且每台机子都要这样子操作
拷贝解压包到softwares目录下,如果使用x shell可以直接把压缩包放在这个目录下省去这一步

sudo cp /media/toolPackages/hadoop-3.2.1.tar.gz /softwares/

解压

sudo tar -zxvf hadoop-3.2.1.tar.gz

修改环境变量

sudo vim /etc/profile

在文件最后加上

export HADOOP_HOME=/softwares/hadoop-3.2.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin

刷新下使得配置生效

source /etc/profile

3在master主机上修改配置文件

3.1创建用户以及权限分配(每台机子都要)
用户创建

sudo useradd -g hadoop hdfs
sudo useradd -g hadoop yarn
sudo mkdir -p /var/log/hadoop/hdfs
sudo mkdir -p /data/hadoop/hdfs
sudo mkdir -p /var/log/hadoop/yarn

权限设置

sudo chown -R hdfs:hadoop /data/hadoop/hdfs
sudo chown -R hdfs:hadoop /var/log/hadoop/hdfs
sudo chown -R yarn:hadoop /var/log/hadoop/yarn

3.2修改hadoop-env.sh文件
切换目录,然后打开文件

cd /softwares/hadoop-3.2.1/etc/hadoop/
vim hadoop-env.sh

末位加上

export HADOOP_LOG_DIR=/var/log/hadoop/hdfs
export HADOOP_NAMENODE_OPTS="-server -Djava.net.preferIPv6Addresses=false -Djava.net.preferIPv4Stack=true -XX:+UseG1GC -Xmx128m"
export HADOOP_DATANODE_OPTS="-server -Djava.net.preferIPv6Addresses=false -Djava.net.preferIPv4Stack=true -Xms128m -Xmx128m"

3.3修改vim yarn-env.sh文件

vim yarn-env.sh
export HADOOP_LOG_DIR=/var/log/hadoop/yarn
export YARN_NODEMANAGER_OPTS="-Djava.net.preferIPv6Addresses=false -Djava.net.preferIPv4Stack=true -XX:+UseG1GC -Xmx256m"
export YARN_RESOURCEMANAGER_OPTS="-Djava.net.preferIPv6Addresses=false -Djava.net.preferIPv4Stack=true -XX:+UseG1GC -Xmx256m" 

3.4修改mapred-env.sh

vim mapred-env.sh
export MAPRED_HISTORYSERVER_OPTS="-Djava.net.preferIPv6Addresses=false -Djava.net.preferIPv4Stack=true -XX:+UseG1GC -Xmx64m"

3.5修改core-site.xml

vim core-site.xml
<!--configuration中内容修改如下,保存退出-->
<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:8020</value>
    </property>
    <property>
        <name>fs.trash.interval</name>
        <value>10080</value>
      </property>
</configuration>

3.6修改hdfs-site.xml

vim hdfs-site.xml
<!--configuration中内容修改如下,保存退出-->
<configuration>
    <property>
          <name>dfs.replication</name>
          <value>3</value>
    </property>
    <property>
          <name>dfs.http.address</name>
          <value>master:50070</value>
    </property>
    <property>
          <name>dfs.namenode.name.dir</name>
          <value>/data/hadoop/hdfs/namenode</value>
    </property>
    <property>
          <name>dfs.datanode.data.dir</name>
          <value>/data/hadoop/hdfs/datanode</value>
    </property>
    <property>
          <name>dfs.permissions.superusergroup</name>
          <value>hadoop</value>
    </property>
</configuration>

3.7修改yarn-site.xml

vim yarn-site.xml
<!--configuration中内容修改如下,保存退出-->
<configuration>
      <property>
        <name>yarn.acl.enable</name>
        <value>true</value>
      </property>
      <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>master</value>
      </property>
      <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>

3.8修改mapred-site.xml

vim mapred-site.xml
<!--configuration中内容修改如下,保存退出-->
<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
      </property>
      <property>
        <name>mapreduce.jobhistory.address</name>
        <value>master:10020</value>
      </property>
      <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value> master:19888</value>
      </property>
      <property>
        <name>yarn.app.mapreduce.am.env</name>
        <value>HADOOP_MAPRED_HOME=/softwares/hadoop-3.2.1</value>
      </property>
      <property>
        <name>mapreduce.map.env</name>
        <value>HADOOP_MAPRED_HOME=/softwares/hadoop-3.2.1</value>
      </property>
      <property>
        <name>mapreduce.reduce.env</name>
        <value>HADOOP_MAPRED_HOME=/softwares/hadoop-3.2.1</value>
      </property>
</configuration>

3.9修改works

vim workers
master
slave1
slave2

3.10将master节点配置好的文件发送到slave1和2

cd /softwares
scp -r hadoop-3.2.1/ slave1:/softwares/
scp -r hadoop-3.2.1/ slave2:/softwares/

4.启动
登录master节点,在softwares目录下

sudo su - root -c 'cd /softwares/hadoop-3.2.1/bin/;hdfs namenode -format'
sudo chown -R hdfs:hadoop /data/hadoop/hdfs/namenode

三台机子上执行

sudo su - hdfs
cd /softwares/hadoop-3.2.1/sbin/

master上

./hadoop-daemon.sh start namenode
./hadoop-daemon.sh start datanode

slave1上

./hadoop-daemon.sh start datanode

slave2

./hadoop-daemon.sh start datanode

4.1打开新的终端
三台机子上执行

sudo su - yarn
cd /softwares/hadoop-3.2.1/sbin/

master上

./yarn-daemon.sh start resourcemanager
./mr-jobhistory-daemon.sh start historyserver
./yarn-daemon.sh start nodemanager

slave1上

./yarn-daemon.sh start nodemanager

slave2

./yarn-daemon.sh start nodemanager

4.2查看运行的程序

jps

master主机
在这里插入图片描述
slave1和slave2
在这里插入图片描述

  • 8
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值