安装环境:Centos7.5,只少2核4G
提前准备:Linux中要安装JDK8,Zookeeper-3.5.7
systemctl stop firewalld
systemctl disable firewalld
Hadoop集群中,主机名中尽量不要出现-或者_
vim /etc/hostname
将原来的主机名删除,添加自己指定的主机名
vim /etc/hosts
进入文件之后,除了127.0.0.1以及::1这开头的两行以外,其余的行全部删除
之后添加当前主机的IP 主机名,例如
10.10.153.69 hadoop01
vim /etc/selinux/config
将SELINUX属性的值改为disabled
reboot
ssh-keygen(回车之后,再根据三次提示直接按三次回车键)
ssh-copy-id主机名(回车之后,输入一次yes,然后在输入一次密码)
测试是否免密成功:ssh hadoop01
如果不需要密码,那么说明免密成功,那么输入logout
进入/home/software目录,来上传或者下载Hadoop。
cd /home/software/
tar -xvf hadoop-3.1.3.tar.gz
cd hadoop-3.1.3/etc/hadoop/
vim hadoop-env.sh
在文件中添加JAVA_HOME,值是JDK的安装路径
export JAVA_HOME=/home/software/jdk1.8
保存退出,重新生效这个文件
source hadoop-env.sh
vim core-site.xml
添加内容
<property>
<name>fs.default.name</name>
<value>hdfs://hadoop01:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/software/hadoop-3.1.3/tmp</value>
</property>
vim hdfs-site.xml
添加内容
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
vim mapred-site.xml
添加内容
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
vim yarn-site.xml
添加内容
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop01</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
vim workers ------- 注意,如果是在Hadoop2.X,那么这个文件是slaves
将原来的localhost删除掉,然后添加当前主机的主机名
vim /etc/profile
在文件末尾添加
export HADOOP_HOME=/home/software/hadoop-3.1.3
export PATH=PATH:HADOOP_HOME/bin:
保存退出,重新生效这个文件
source /etc/profile
通过hadoop version命令来确定配置是否有效
hadoop namenode -format
如果出现了Storage directory /home/software/hadoop-3.1.3/tmp/dfs/name has been successfully formatted.表示格式化成功
cd /home/software/hadoop-3.1.3/sbin/
vim start-dfs.sh
在文件头部添加
HDFS_DATANODE_USER=root
HDFS_DATANODE_SECURE_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
start-dfs.sh
NameNode
DataNode
SecondaryNameNode
vim start-yarn.sh
在文件头部添加
YARN_RESOURCEMANAGER_USER=root
HDFS_DATANODE_SECURE_USER=hdfs
YARN_NODEMANAGER_USER=root
start-yarn.sh
ResourceManager
NodeManager
1. 如果出现了Name or Service not known或者是UnknownHost之类的问题,那么检查hosts文件是否配置正确,或者是主机名是否写对
2. 如果出现了commandc not found,那么检查环境变量是否正确,或者修改完环境变量之后是否进行了source
查看namenode节点状态
hdfs haadmin -getServiceState nn1