实现真正的分布式的hadoop,并不是伪分布式的。
一、系统与配置
共准备2台机器搭建Hadoop集群。基于Ubuntu14.04,jdk1.6.0_45,Hadoop1.0.3版本,虚拟机使用VMware10.0
192.168.1.10 NameNode master (master)
192.168.1.20 DateNode slave1(Slave)
我的用户名就hadoop
接下来需要安装一些常用的软件:vim,ssh
view source print ?
1. sudo apt-get update
2. sudo apt-get install vim
3. sudo apt-get install ssh
首先修改本机IP
然后输入以下命令,修改hosts
view source print ?
1. sudo vim /etc/hosts
接下来设置ssh,实现无密码登陆,输入以下命令,生成秘钥
view source print ?
1. ssh-keygen -t rsa -P ""
一直按回车就会生成秘钥,然后 在.ssh目录中会生成id_rsa 和id_rsa.pub两个文件,这两个文件分别是SSH的私钥和公钥。
生成authorized_keys文件:cat id_rsa.pub >> authorized_keys实现无密码登陆本地localhost的ssh中,
二、安装hadoop和jdk
解压hadoop的压缩包,我的安装目录是/home/hadoop(这是用户名)/hadoop(这是文件夹)/
view source print ?
1. tar -zxvf hadoop1. 0.3 .ta
解压缩jdk的压缩包,命令类似上面,不过是将文件该名称,这里就不列出来了 然后下来是修改环境变量
view source print ?
1. sudo vim /etc/profile
2. export JAVA_HOME = /home/hadoop/hadoop/jdk1. .0_45
3. export PATH = $JAVA_HOME/bin:$PATH
4. export HADOOP_HOME = /home/hadoop/hadoop/hadoop- 1.0 .
5. export PATH = $JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH
别忘了执行 source /etc/profile,让路径立马生效
最后配置hadoop下的conf文件夹中的文件 修改hadoop-env.sh
修改core-site.xm
修改hdfs-site.xml
修改mapred-site.xml
修改masters,和slaves文件,在masters中只写master也就是上面提到的192.168.1.0 ,slaves中填写master和slave。
然后格式化namenode,在hadoop-1.0.3文件中写入下面命令
view source print ?
1. bin/hadoop namenode -format
对了这里一直没有提到slave的配置,其实特别简单,关闭当前的虚拟机,复制一份刚才的虚拟机文件,然后重亲起名,再次打开,修改用户名和ip就好了,我的Ubuntu名字是一样,只要不在一个盘里就行。
最后在master(用户名,也就是主节点的ubuntu)中输入以下命令,同样也是在hadoop-1.0.3的文件中
view source print ?
1. bin/start-all.sh
然后输入JPS查看java进程,如果出现以下5个进程,就表示成功(不包括jps)
可以查看网页
已经有两个节点,到此整个hadoop分布式的部署就完成了。
- 本文来自:Linux教程网