一、虚拟机中Linux的安装
hadoop-0.20.2.tar.gz只能在Linux中安装。
Hadoop相当于一个服务器,类似于Apache服务器的角色。我们可以在Linux上运行hadoop0.20.2。
二、Java的安装
Hadoop是基于Java开发的,,在Linux配置好Java环境。
https://blog.csdn.net/weixin_38883338/article/details/82079194
三、SSH的安装、配置
在Linux中安装SSH免登录认证,用于避免使用Hadoop时的权限问题。
SSH的安装命令:
sudo apt-get install ssh
ssh-keygen -t rsa
密码输入空
cd ~/.ssh
cat id_rsa.pub >> authorized_keys
ssh localhost
四、hadoop下载安装
http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-3.0.3/hadoop-3.0.3.tar.gz
http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-3.0.3/hadoop-3.0.3.tar.gz
sudo tar -zxf hadoop-3.0.3.tar.gz -C /usr/local # 解压到/usr/local中
cd /usr/local # 定位到/usr/local
sudo mv ./hadoop-3.0.3/ ./hadoop # 将文件夹名改为hadoop
sudo chown -R huyn ./hadoop # 修改文件权限
验证是否安装成功
cd /usr/local/hadoop
./bin/hadoop version
安装成功会显示版本
五、修改配置文件
sudo gedit ./etc/hadoop/core-site.xml
hadoop.tmp.dir
file:/usr/local/hadoop/tmp
Abase for other temporary directories.
fs.defaultFS
hdfs://localhost:9000
sudo gedit ./etc/hadoop/hdfs-site.xml
dfs.replication
1
dfs.namenode.name.dir
file:/usr/local/hadoop/tmp/dfs/name
dfs.datanode.data.dir
file:/usr/local/hadoop/tmp/dfs/data
dfs.http.address
localhost:50070
sudo gedit ./etc/hadoop/hadoop-env.sh
修改java环境变量(你安装的位置)
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_171
执行 NameNode 的格式化:
sudo ./bin/hdfs namenode -format
开启 NameNode 和 DataNode 守护进程
sudo ./sbin/start-dfs.sh
如果运行脚本报如下错误,
ERROR: Attempting to launch hdfs namenode as root
ERROR: but there is no HDFS_NAMENODE_USER defined. Aborting launch.
Starting datanodes
ERROR: Attempting to launch hdfs datanode as root
ERROR: but there is no HDFS_DATANODE_USER defined. Aborting launch.
Starting secondary namenodes [localhost.localdomain]
ERROR: Attempting to launch hdfs secondarynamenode as root
ERROR: but there is no HDFS_SECONDARYNAMENODE_USER defined. Aborting launch.
解决方案
(缺少用户定义而造成的)因此编辑启动和关闭
$ sudo vim sbin/start-dfs.sh
$ sudo vim sbin/stop-dfs.sh
顶部空白处
HDFS_DATANODE_USER=huyn
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=huyn
HDFS_SECONDARYNAMENODE_USER=huyn
再次开启 NameNode 和 DataNode 守护进程
sudo ./sbin/start-dfs.sh
启动完成后,可以通过命令 jps 来判断是否成功启动
关闭命令sbin/stop-dfs.sh
可以打开http://localhost:50070/查看 NameNode 和 Datanode 信息,还可以在线查看 HDFS 中的文件。