环境配置
- 三台机器上都安装JDK环境: 上传JDK安装包,解压后配置环境变量即可
tar -zxvf OpenJDK8U-jdk_x64_linux_openj9_linuxXL_8u282b08_openj9-0.24.0.tar.gz -C /opt
vi /etc/profile
# 在文件下方添加
export JAVA_HOME=/opt/jdk8u282-b08
export JRE_HOME=/opt/jdk8u282-b08/jre
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
# 输入:wq!退出
source /etc/profile # 使用环境变量配置
- 安装Hadoop环境: 首先上传安装包,再解压至opt目录
tar -zxvf hadoop-2.9.2.tar.gz -C /opt
hadoop前提配置
- 配置master节点
首先进入安装目录, 编辑脚本:
cd /opt/hadoop-2.9.2/etc/hadoop
vi hadoop-env.sh
# 找到`# The java implementation to use. ...`, 编辑下面的为
export JAVA_HOME=/opt/jdk8u282-b08
继续编辑当前目录下的core-site.xml文件,指定HDFS的 NameNode的地址,value值是主机名加端口号,主机使用master节点的ip地址
vi core-site.xml
在configuration标签内添加:
<property>
<name>fs.default.name</name>
<value>hdfs://master_ip_here:9000</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master_ip_here:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadooptmp</value>
</property>
继续编辑当前目录下的hdfs-site.xml,指定hdfs保存数据的副本数量,伪分布式只有一个节点,所以value标签内填:1
vi hdfs-site.xml
在configuration标签内添加:
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>/home/hadoopname</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/hadoopdata</value>
</property>
继续配置 mapred-site.xml:从模板重命名来
mv mapred-site.xml.template mapred-site.xml # 新版本没有模板,直接编辑即可
vi mapred-site.xml
在configuration标签内添加:
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
继续配置 yarn-site.xml
vi yarn-site.xml
同上,告诉nodemanager获取数据的方式为shuffle
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
最后配置hadoop的环境变量
vi /etc/profile
# 底部添加
export HADOOP_HOME=/opt/hadoop-2.9.2
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
# 然后生效
source /etc/profile
配置免密登录
首先在master内输入ssh master # 需配置host才能直接master
然后
# 一步一步执行
cd .ssh
ssh-keygen -t rsa
cat id_rsa.pub >> authorized_keys
#测试免输入密码:
ssh master
开始hadoop初始化
- 格式化hadoop
# 进入hadoop安装目录:
cd /opt/hadoop-2.9.2/etc/hadoop/
# 格式化
hadoop namenode -format
- 启动hadoop,测试hdfs
cd /opt/hadoop-2.9.2/sbin/
./start-all.sh
- 测试hdfs命令:
hadoop fs -ls /
hadoop fs -mkdir /test
hadoop fs -ls /
注: 如果输入hdfs命令时connection refused,可以
# 1. 编辑core-site.xml,主机名可以改成localhost,端口是9000
# 2. 进opt/hadoop~/sbin,停止服务后重新格式化,再启动服务
./stop-all.sh
hadoop namenode -format # 之后输入Y
./start-all.sh