修改Hadoop配置文件

目录

安装JAVA

安装Hadoop

hadoop-env.sh

yarn-env.sh

core-site.xml

hdfs-site.xml

mapred-site.xml

yarn-site.xml

start-dfs.sh和stop-dfs.sh

start-yarn.sh和stop-yarn.sh

workers



安装JAVA(主节点)

使用命令,java -version,检查原本系统自带jdk

  1. 卸载自带jdk,命令:rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps
  2. 拖拽方式,上传安装包到Linux的/opt目录下:

使用cd命令进入/opt并解压文件到/opt下,命令:tar -xzvf jdk-8u221-linux-x64.tar.gz -C /opt

使用cd命令进入到jdk解压后文件夹,用pwd查看路径,并使用鼠标复制路径/opt/jdk1.8.0_221

在/etc/profile.d下创建一个my_env.sh,进行配置JAVA环境变量,命令:vi /etc/profile.d/my_env.sh(新文件)

重新启动profile,命令:source /etc/profile

验证java是否安装成功:java -version


安装Hadoop(主节点)

1.上传文件

2.使用cd命令进入文件所在路径,再解压安装,命令:tar -xzvf hadoop-3.1.3.tar.gz -C /usr/local

3.配置环境变量,同JAVA,在/etc/profile.d修改my_env.sh

4.使用cd命令,进入/usr/local/hadoop-3.1.3/etc/hadoop,配置vi hadoop-env.sh,在末尾加上2句

5.重启profile,命令:source /etc/profile

6.使用命令hadoop version检查是否安装成功


配置Hadoop文件(主节点)

进入Hadoop的配置目录,通常是 $HADOOP_HOME/etc/hadoop/,指令:cd $HADOOP_HOME/etc/hadoop/


hadoop-env.sh

设置JAVA_HOME,在/usr/local/hadoop-3.1.3/etc/hadoop/路径下,修改hadoop-env.sh文件,添加以下部分

export JAVA_HOME=/opt/jdk1.8.0_221

yarn-env.sh

在/usr/local/hadoop-3.1.3/etc/hadoop/

路径下,修改yarn-env.sh文件,在底部添加以下部分

在/usr/local/hadoop-3.1.3/etc/hadoop/路径下,修改yarn-env.sh文件,在底部添加以下部分

export JAVA_HOME=/opt/jdk1.8.0_221

core-site.xml

配置Hadoop的核心参数,如文件系统地址、端口等。进入/usr/local/hadoop-3.1.3/etc/hadoop/,修改core-site.xml文件,添加以下部分,注意,以下的master都是自己的主机名称(回顾:使用hostname查看自己的主机名称)

<configuration>

        <property>

                <name>fs.defaultFS</name>

                <value>hdfs://master:8020</value>

            </property>

        <property>

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

                <value>/var/log/hadoop/tmp</value>

        </property>

</configuration>

hdfs-site.xml

配置HDFS参数,如数据块大小、副本数量等。在/usr/local/hadoop-3.1.3/etc/hadoop/路径下,修改hdfs-site.xml文件,添加以下部分

<configuration>
        <property>
                <name>dfs.namenode.name.dir</name>
                <value>file:///data/hadoop/hdfs/name</value>
        </property>
        <property>
                <name>dfs.datanode.data.dir</name>
                <value>file:///data/hadoop/hdfs/data</value>
        </property>
(可以不写dfs.namenode.name.dir和dfs.datanode.data.dir配置,这样的话就不会额外定制name、data的路径,会使用core-site.xml的/var/log/hadoop/tmp的路径,如/var/log/hadoop/tmp/hdfs/name。但是偶尔不配置容易出现bug,因此这里还是建议配置)
        <property>
                <name>dfs.namenode.secondary.http-address</name>
                <value>master:50090</value>
        </property>

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

mapred-site.xml

配置MapReduce参数,如任务调度器类型等。在/usr/local/hadoop-3.1.3/etc/hadoop/路径下,修改mapred-site.xml文件,添加以下部分

<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=${HADOOP_HOME}</value>
        </property>
        <property>
                <name>mapreduce.map.env</name>
                <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
        </property>
        <property>
                <name>mapreduce.reduce.env</name>
                <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
        </property>
</configuration>

yarn-site.xml

配置YARN参数,如资源管理器地址、节点管理器地址等。在/usr/local/hadoop-3.1.3/etc/hadoop/路径下,修改yarn-site.xml文件,添加以下部分

<configuration>

<!-- Site specific YARN configuration properties -->

        <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>master</value>
        </property>
        <property>
                <name>yarn.resourcemanager.address</name>
                <value>${yarn.resourcemanager.hostname}:8032</value>
        </property>
        <property>
                <name>yarn.resourcemanager.scheduler.address</name>
                <value>${yarn.resourcemanager.hostname}:8030</value>
        </property>
        <property>
                <name>yarn.resourcemanager.webapp.address</name>
                <value>${yarn.resourcemanager.hostname}:8088</value>
        </property>
        <property>
                <name>yarn.resourcemanager.webapp.https.address</name>
                <value>${yarn.resourcemanager.hostname}:8090</value>
        </property>
        <property>
                <name>yarn.resourcemanager.resource-tracker.address</name>
                <value>${yarn.resourcemanager.hostname}:8031</value>
        </property>
        <property>
                <name>yarn.resourcemanager.admin.address</name>
                <value>${yarn.resourcemanager.hostname}:8033</value>
        </property>
        <property>
                <name>yarn.nodemanager.local-dirs</name>
                <value>/data/hadoop/yarn/local</value>
        </property>
        <property>
                <name>yarn.log-aggregation-enable</name>
                <value>true</value>
        </property>
        <property>
                <name>yarn.nodemanager.remote-app-log-dir</name>
                <value>/data/tmp/logs</value>
        </property>
        <property>
                <name>yarn.log.server.url</name>
                <value>http:///master:19888/jobhistory/logs</value>
                <description>URL for job history server</description>
        </property>
        <property>
                <name>yarn.nodemanager.vmem-check-enabled</name>
                <value>false</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>
        <property>
                <name>yarn.nodemanager.resource.memory-mb</name>
                <value>2048</value>
        </property>
        <property>
                <name>yarn.scheduler.minimum-allocation-mb</name>
                <value>512</value>
        </property>
        <property>
                <name>yarn.scheduler.maximum-allocation-mb</name>
                <value>4096</value>
        </property>
        <property>
                <name>mapreduce.map.memory.mb</name>
                <value>2048</value>
        </property>
        <property>
                <name>mapreduce.reduce.memory.mb</name>
                <value>2048</value>
        </property>
        <property>
                <name>yarn.nodemanager.resource.cpu-vcores</name>
                <value>1</value>
        </property>
</configuration>

start-dfs.sh和stop-dfs.sh

到/usr/local/hadoop-3.1.3/sbin/下,修改start-dfs.sh和stop-dfs.sh文件,在文件开头添加以下部分

HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs(鉴于会提示WARNING,把这句修改成HDFS_DATANODE_SECURE_USER=hdfs)
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root

start-yarn.sh和stop-yarn.sh

到/usr/local/hadoop-3.1.3/sbin/下,修改start-yarn.sh和stop-yarn.sh文件,在文件开头添加以下部分

YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root

workers

在/usr/local/hadoop-3.1.3/etc/hadoop/路径下,修改workers文件,改成以下部分(这里不添加master节点,因此后面启动时候master没有datanote,其他3个子节点会有datanote)

slave1
slave2
slave3

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值