Ubuntu14(64位) 集群环境下安装Hadoop2.4

  • 经过前边的积累,今天最终实现了集群环境下部署Hadoop。并成功执行了官方的样例。
工作例如以下:
  • 两台机器:
  1. NameNode:上网小本,3G内存。机器名:YP-X100e,IP:192.168.101.130。
  2. DataNode:虚拟机,Win7下载VMWare10中虚拟Ubuntu14,虚拟机器名:ph-v370,IP:192.168.101.110
  3. 确保可互相ping通,依照机器名和IP配置各自机器的/etc/hosts文件和/etc/hostname文件。我的hosts配置内容例如以下
127.0.0.1 localhost
192.168.101.130 YP-X100e
192.168.101.110 ph-v370

  • 安装环境,请參考
  1. Ubuntu14下Hadoop开发<1> 基础环境安装
  2. Ubuntu14下Hadoop开发<2> 编译64位Hadoop2.4
  • 配置各种配置信息,请參考
  1. Hadoop 2.4.0全然分布式平台搭建、配置、安装
  2. Setting up a Single Node Cluster.
  • 注意事项:
        A:主从机的ssh设置,主机中在终端中输入
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
复制文件到从节点
scp authorized_keys ph-v370:~/.ssh/
刚開始我一直失败的原因是用户不一致,导致一直无法登陆ssh。后来我新建了hadoop用户。并授予hadoop目录的权限
useradd -m hadoop
passwd hadoop
chown hadoop:hadoop hadoop-2.4.0
又一次用hadoop的用户进行操作就能够了(包含启动hadoop服务等,最好都是用这个用户)
B:运行start-dfs.sh。子节点报异常“WARNorg.apache.hadoop.hdfs.server.datanode.DataNode: Problem connecting to server:YP-X100e/192.168.101.130:9000
这里有一个卡点,须要改动主节点的hosts文件。凝视掉127.0.1.1这行,你能够在凝视之前运行
netstat -an | grep 9000
你会看到9000port被127.0.1.1占用,所以会出现异常
       C:格式化文件系统的命令应该是
hdfs namenode -format
       D:Hadoop的服务和Yarn的服务须要单独启动
start-dfs.sh
start-yarn.sh
       E:在主节点配置好全部的配置文件,直接都复制到从节点就可以
       F:跟做单节点样例的时候不同,我在复制文件的时候须要制定确切的路径,如这个:
原来直接运行
$ bin/hdfs dfs -put etc/hadoop input
如今须要运行
$ bin/hdfs dfs -put etc/hadoop /user/chenph/input
       G:查进程使用命令是:PS -ef | grep ‘搜索内容’,杀进程是:kill -s 9 进程号。查看防火墙是:sudo ufw status
       H:可訪问主节点查看Hadoop的状态http://YP-X100e:50070。下图可看到,有一个活动的从节点,也就是我的虚拟机中的那个Ubuntu





原文地址:https://www.cnblogs.com/blfshiye/p/5137111.html