hadoop集群环境搭建笔记

Hadoop安装笔记
1.本次安装的是hadoop集群环境,使用的是vmware虚拟机和centos等,安装步骤在博客内这篇文件中:
http://blog.csdn.net/huoyunshen88/article/details/8938289




我使用同网段不同集群安装的虚拟机,保证每个虚拟机如图本机一样可以相互通信。
由于我安装了一次centos,所以其他机器的虚拟机是复制这个centos的,密码账号相同


1)安装ssh和sshd
sshd是centos中提供的ssh服务,不用安装。

2)master 生成ssh密钥与公钥
首先把在hadoop master的机器上生成密钥与公钥,把公钥复制到slave机器上,slave机可以无密码信任访问master机了。
[root@master ~]#  ssh-keygen -t rsa
输入默认提示保存秘钥的目录如:/root/.ssh/id_rsa
[root@master ~]# ls /root/.ssh/id_rsa
id_rsa  id_rsa.pub  目录中生成密钥文件id_rsa和公钥文件id_rsa.pub;
输入用户密码默认为空。
生成通信秘钥:
[root@master ~]# cat id_rsa.pub >> authorized_keys  
把这个授权文件拷贝到slave机器上,就可以让他们互信了。

[hadoop@master ~]$scp authorized_keys 10.132.30.249:/home/root/.ssh/      

[hadoop@master ~]$

#把本机的文件放置到slave机(10.132.30.249)文件目录下,确保远程目录存在

slave 生成ssh密钥与公钥


再在hadoop slave的机器上生成密钥与公钥,如上操作,就可以实现master机无密码访问slave了。
第二次生成要小心不要覆盖从master机拷贝过来的授信文件authorized_keys,所以生成时重命名,复制到master后,mv掉之前master生成的生成文件authorized_keys
[root@slave1 ~]# scp authorized_keys1 10.132.30.48:/root/.ssh/
注意:对与root用户如上配置既正确,对应hadoop其他用户等,
[hadoop@master .ssh]$ chmod 644 authorized_keys
这一步非常关键,必须保证authorized_keys只对其所有者有读写权限,其他人不允许有写的权限,否则SSH是不会工作的。


3)为了方便两台机器的访问,修改系统配置文件的主机名称,以后可以使用域名访问.
配置文件格式说明
一般/etc/hosts 的内容一般有如下类似内容:
127.0.0.1 localhost.localdomain localhost
[root@master ~]# hostname    //查看机器名
[root@master ~]# hostname -i //查看本机器名对应的ip地址 
在master和slave的hosts文件中配置主机名和对应的ip。
具体需要修改  /etc/hosts文件,主机名查询静态表,添加如下内容:
127.0.0.1 localhost.localdomain localhost   #注意不要修改三部分解释: 127.0.0.1:网络IP地址; localhost.localdomain:主机名或域名;  localhost:主机名别名;
10.132.30.249  com.slave1       slave1      #
10.132.30.48   com.master       master 
修改 /etc/sysconfig/network 配置文件
vi /etc/sysconfig/network    
添加本机的ip地址即可如
master 机10.132.30.249 
做完所有操作,重启机器,可以使用主机名ping通,也发现etc/sysconfig/network 配置文件的本机IP被修改为机器名称了.

3).权限配置
3.1)建立用户组
[root@master ~]# groupadd hadoop
3.2)建立用户
[root@master ~]# adduser hadoop -g hadoop
3.3)添加权限
vi /etc/sudoers
在文件中添加如下:
hadoop  ALL=(ALL:ALL) ALL


3.4)修改hadoop文件夹用户名,用户组
[root@slave1 ~]# chown -R hadoop:hadoop /opt/hadoop/


4).安装,配置hadoop
添加hadoop-env.sh环境变量 ,如果是windows编译,记得转码,修改可执行权限
export JAVA_HOME=/usr/java/jdk1.7.0_09/

修改hadoop几个重要的配置文件,注意编码格式为utf-8,


如果将hadoop-env.sh用Windows下的编辑软件编辑以后,使用dos2unix工具修正下,在conf/目录下执行“dos2unix hadoop-env.sh”就OK了。

export HADOOP_HOME=/opt/hadoop/hadoop-1.0.4/
export PATH=$PATH:$HADOOP_HOME/bin
core-site.xml
<configuration>     
<property>  
  <name>fs.default.name</name>  
  <value>hdfs://localhost:9000</value>  
</property>  
<property>
  <name>hadoop.tmp.dir</name>
<value>/hadoop</value>
</property>
</configuration> 

hdfs-site.xml
<configuration>
   <property>
<name>dfs.replication</name>
<value>1</value>
    </property>
</configuration>


mapred-site.xml
<configuration>       
    <property>    
         <name>mapred.job.tracker</name>    
         <value>localhost:9001</value>    
    </property>    
</configuration>  


5).启动hadoop
[hadoop@master bin]$ ./hadoop namenode -format
* start-all.sh 启动所有的Hadoop守护。包括namenode, datanode, jobtracker, tasktrack
* stop-all.sh 停止所有的Hadoop
* start-mapred.sh 启动Map/Reduce守护。包括Jobtracker和Tasktrack
* stop-mapred.sh 停止Map/Reduce守护
* start-dfs.sh 启动Hadoop DFS守护.Namenode和Datanode
* stop-dfs.sh 停止DFS守护


SSH节点互信参考文章:http://blog.csdn.net/yangning5850/article/details/7547813
主机修改名称参考文章:http://blog.csdn.net/LinuxZhouYing/article/details/7278429
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值