时间同步 https://blog.csdn.net/weixin_45097166/article/details/103297057
三台配置好hosts文件
vim /etc/hosts
192.168.0.101 hadoop1
192.168.0.102 hadoop2
192.168.0.103 hadoop3
#hadoop1为主节点 namenode
#hadoop2和3为DataNode节点
三台机器要做好免密码互信
ssh-keygen -t dsa -P '' -f /root/.ssh/id_dsa
cd /root/.ssh
ssh-copy-id #加上主机名#
或者看这个网站https://blog.csdn.net/weixin_45097166/article/details/103300937
安装java
将jdk-8u45-linux-x64.tar安装包上传到/usr目录下
先确定是否已经有java安装过
rpm -qa|grep java
编写脚本删除自带的java
vim deljava.sh
#!/bin/bash
for i in `rpm -qa|grep java`
do
rpm -e $i --nodeps
done
ssh vim deljava.sh
#解压该压缩包
tar xzvf jdk-8u45-linux-x64.tar.gz
#改名
mv jdk1.8.0_45/ java
#配置环境变量
vim /etc/profile
#在尾部添加
export JAVA_HOME=/usr/java
export JRE_HOME=/usr/java/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin
#生成环境变量
source /etc/profile
#配置互信将sshUserSetup.sh脚本上传到/root目录下
sh sshUserSetup.sh -user root -hosts "自己的ip或者主机名" -advanced -noPromptPassphrase
执行命令 脚本名 -user 你需要互信的用户 -hosts “hadoop hadoop1 hadoop2 hadoop3” 不在校验yes
ssh 192.168.0.101 date
上传hadoop安装包到 hadoop-2.7.3.tar /usr/local下
tar xzvf hadoop-2.7.3.tar.gz
mv hadoop-2.7.3 hadoop
修改环境变量
vi /etc/profile
删掉export PATH=$PATH:$JAVA_HOME/bin
加入下面
export HADOOP_HOME=/usr/local/hadoop
#export HADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib:$HADOOP_PREFIX/lib/native"
export LD_LIBRARY_PATH=$HADOOP_HOME/lib/native
export HADOOP_COMMON_LIB_NATIVE_DIR=/usr/local/hadoop/lib/native
export HADOOP_OPTS="-Djava.library.path=/usr/local/hadoop/lib"
#export HADOOP_ROOT_LOGGER=DEBUG,console
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile
创建目录
mkdir -p /var/hadoop/tmp
配置HADOOP集群
修改hadoop配置文件
cd /usr/local/hadoop/etc/hadoop/
一 配置HADOOP环境文件
vim hadoop-env.sh
set nu 显示行号
第25行
export JAVA_HOME=${JAVA_HOME}
修改为
export JAVA_HOME=/usr/java
在两个中添加下列内容
vim core-site.xml
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop1:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/var/hadoop/tmp</value>
</property>
vim yarn-site.xml
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop3</value>
</property>
#添加DataNode主机名
vim slaves
hadoop2
hadoop3
namenode主机将配置好的hadoop拷贝到两台DataNode机器上
scp /usr/local/hadoop/etc/hadoop/* root@hadoop2:/usr/local/hadoop/etc/hadoop/
scp /usr/local/hadoop/etc/hadoop/* root@hadoop3:/usr/local/hadoop/etc/hadoop/
关闭警告
vim /usr/local/hadoop/etc/hadoop/log4j.properties
#加到最后
log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR
hadoop1格式化,启动hadoop
hdfs namenode –format
start-all.sh
以上出现hadoop3ResourceManager不起动 就在hadoop3窗口启动
start-yarn.sh
这是hadoop自带的一个小例子,pi是一个参数,可以用来验证Hadoop集群是否成功。
hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar pi 5 5