准备工具:Xshell7、xftp、VMware、Hadoop安装包、java安装包
版本:hadoop-2.6.0-cdh5.5.5.tar.gz、oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
找不到这俩资源的用我的安装包
链接:https://pan.baidu.com/s/14Smd27u8PFPWlujyUdxfBQ
提取码:h5oa
将hadoop和jdk安装包上传至虚拟机指定文件夹(/software)下
利用xftp在/usr目录下创建java文件夹
解压java压缩包到指定路径
rpm -ivh /software/oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm -C /usr/java
在根目录下创建hadoop文件夹,解压hadoop压缩包到指定路径
tar -zxvf /software/hadoop-2.6.0-cdh5.5.5.tar.gz -C /hadoop
配置java、Hadoop路径:
配置 /etc/profile文件:vi /etc/profile
按i进入编辑模式,移动光标至最下方,添加如下代码
export JAVA_HOME=/usr/java/jdk1.8.0_181-cloudera
export PATH=$JAVA_HOME/bin:$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin #添加java和hadoop环境变量
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export HADOOP_HOME=/hadoop/hadoop-2.6.0-cdh5.5.5
按esc退出编辑模式,输入 :wq 保存编辑(此处要输入英文冒号)
输入source /etc/profile 重启配置,使之生效
在线安装rsync
yum install rsync
安装ssh
yum install ssh
设置ssh免密
ssh localhost #检查是否设置免密,如果提示需要你输入密码,则说明没有配置免密
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys
到这里就配置成功了,可以再输入ssh localhost检查一遍
配置Hadoop
cd /hadoop/hadoop-2.6.0-cdh5.5.5/etc/hadoop
修改 core-site.xml
添加:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
:wq 保存(注意,这里最好不要使用xftp编辑文件,可能会出现修改不成功的问题,建议还是使用xshell进行编辑)
修改hdfs-site.xml
添加:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value> #一个节点
</property>
</configuration>
:wq 保存退出
这里就已经配置完了。
格式化(不要重复格式化 容易出错):
cd /hadoop/hadoop-2.6.0-cdh5.5.5/
bin/hdfs namenode -format
sbin/start-dfs.sh //启动hdfs,不要使用start-all.sh 使用spark容易报错
关闭防火墙:
systemctl stop firewalld
输入jps,查看是否正常启动,一般来说,出现namenode、datanode、secondarynode这几个就表示你的hadoop配置和格式化都没有问题
一些错误:
出现上面这种错误的时候,有一个可能的原因就是你前面的配置和格式化出错了,这个时候 需要你去检查你上面配置的两个文件,有可能是<>尖括号不匹配的问题,建议这里使用notepad++进行编辑,它会自动检查html语法错误的,再就是查看你添加的配置信息和你的路径是否符合,然后重新格式化,如果格式化之后启动hdfs还是报这个错,就将/hadoop/hadoop-2.6.0-cdh5.5.5/etc/hadoop下hadoop-env.sh文件重新设置java路径 export JAVA_HOME=/usr/java/jdk1.8.0_181-cloudera,然后重新格式化,再次启动hdfs。