配置环境:centos7、hadoop3.13,jdk1.8 ,ssh
官方配置文档:
http://hadoop.apache.org/docs/r3.1.3/hadoop-project-dist/hadoop-common/SingleCluster.html
官方提供配置:
etc/hadoop/core-site.xml:
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration>
etc/hadoop/hdfs-site.xml:
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>
hadoop-env.sh文件
export JAVA_HOME=java的安装路径
启动dfs、yarn时出现错误:需要配置用户变量
Starting resourcemanager
ERROR: Attempting to operate on yarn resourcemanager as root
ERROR: but there is no YARN_RESOURCEMANAGER_USER defined. Aborting operation.
Starting nodemanagers
ERROR: Attempting to operate on yarn nodemanager as root
ERROR: but there is no YARN_NODEMANAGER_USER defined. Aborting operation.
在hadoop3时,当以root身份启动时会报错,提示用户信息错误,不推荐以root身份控制集群。
解决方式有两种方式:方式一,将hadoop的安装路径文件的用户及用户组,从root改为一个普通用户,在切换到普通用户启动。
方式二:在启动文件start.dfs.sh, stop.dfs.sh, start.yarh.sh, stop.yarn.sh 上,手动配置上root可以控制集群:
在 start-dfs.sh,stop-dfs.sh 的文件中,增加:
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
在 start-yarn.sh,stop-yarn.sh 文件中,增加:
YARN_RESOURCEMANAGER_USER=root
ARN_RESOURCEMANAGER_USER=root
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
hdfs shell命令
hadoop fs 命令,查看可用的接口
hadoop fs -ls /
hadoop fs -put 文件 /..
hadoop fs -text /..文件路径
hadoop fs -mkdir /..