Hadoop集群完全分布式安装与配置

本文详细介绍如何在CentOS 6.5环境下使用Hadoop 1.1.2版本搭建包含一个Master节点和两个Slave节点的Hadoop集群。文章涵盖配置hosts文件、关闭防火墙、建立hadoop运行账号、配置SSH免密码登录、JDK安装配置、Hadoop安装及配置等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境:
CentOS6.5, Hadoop1.1.2, jdk1.6
三台Linux虚拟机:
192.168.190.100:
hostname:vm1
规划:master节点


192.168.190.101
hostname:vm2
规划:slave节点1


192.168.190.102
hostname:vm3
规划:slave节点2


一、配置hosts文件

#所有节点都修改/etc/hosts,使彼此之间都能把主机名解析为ip
1. 执行命令 vi /etc/hosts
2. 增加以下内容:
192.168.190.100 vm1
192.168.190.101 vm2
192.168.190.102 vm3


二、关闭防火墙

#关闭所有节点上的防火墙服务
1. service iptables stop #关闭服务
2. chkconfig iptables off #关闭开机启动项


三、建立hadoop运行账号

#在所有节点上都建立运行hadoop的专用账户hadoop
1. 执行命令 useradd -d /usr/hadoop -m hadoop #创建hadoop用户
2. 执行命令 passwd hadoop  #修改hadoop用户密码


四、配置ssh免密码接入

#在所有节点上都需要配置ssh免密码接入
A、ssh配置
1. 用hadoop账号登陆 #必须以hadoop账号登陆
2. 执行命令 ssh-keygen -t rsa 
3. 执行命令 cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys

B、分发ssh公钥
1. 合并各个节点上的~/.ssh/authorized_keys文件 #复制粘贴到一个文件authorized_keys
2. 拷贝合并后的authorized_keys文件到各个节点的~/.ssh目录下


五、JDK安装配置

#在所有节点上安装相同版本的JDK
1. 从windows上传jdk-6u24-linux-i586.bin文件到CentOS的/usr/hadoop/local目录下
2. 执行命令 chmod u+x jdk-6u24-linux-i586.bin #授予该文件执行权限
3. 执行命令 ./jdk-6u24-linux-i586.bin #解压缩.bin文件
4. 执行命令 mv jdk-6u24-linux-i586 jdk  #重命名
5. 设置JDK环境变量
      vi /etc/profile
 增加以下两句:
 export JAVA_HOME=/usr/hadoop/local/jdk
 export PATH=.:$JAVA_HOME/bin:$PATH
 执行命令 source /etc/profile


六、安装hadoop

#在NameNode节点上安装
1. 从windows上传hadoop-1.1.2.tar.gz文件到CentOS的/usr/hadoop/local目录下
2. 执行命令 tar -zxvf hadoop-1.1.2.tar.gz #解压缩
3. 执行命令 mv hadoop-1.1.2 hadoop  #重命名
4. 设置Hadoop环境变量
      vi /etc/profile
 增加以下两句:
 export HADOOP_HOME=/usr/hadoop/local/hadoop
 export PATH=.:$HADOOP_HOME/bin:$PATH
 执行命令 source /etc/profile 


七、配置hadoop

#在namenode上配置hadoop
1. 修改hadoop/conf/hadoop-env.sh文件
增加以下内容:
export JAVA_HOME=/usr/hadoop/local/jdk

2. 修改hadoop/conf/core-site.xml文件
增加以下内容:
<configuration>
  <property>
     <name>fs.default.name</name>
     <value>hdfs://vm1:9000</value>
  </property>
  <property>
     <name>hadoop.tmp.dir</name>
     <value>/usr/hadoop/local/hadoop/tmp</value>
  </property>
</configuration>

3. 修改hadoop/conf/hdfs-site.xml文件
增加以下内容:
<configuration>
  <property>
     <name>dfs.replication</name>
     <value>2</value>
  </property>
  <property>
     <name>dfs.permissions</name>
     <value>false</value>
  </property>
</configuration>

4. 修改hadoop/conf/mapred-site.xml文件
增加以下内容:
<configuration>
  <property>
     <name>mapred.job.tracker</name>
     <value>vm1:9001</value>
  </property>
</configuration>

5. 修改hadoop/conf/masters
增加以下内容:
vm1

6. 修改hadoop/conf/slaves
增加以下内容:
vm2
vm3


八、向各节点复制hadoop

#将NameNode节点上配置好的hadoop目录复制到其余各个节点
1. 执行命令 scp -r /usr/hadoop/local/hadoop vm2:/usr/hadoop/local  #复制hadoop到vm2节点
2. 执行命令 scp -r /usr/hadoop/local/hadoop vm3:/usr/hadoop/local  #复制hadoop到vm3节点


九、格式化namenode

#在NameNode节点上执行hadoop格式化
1. 执行命令 hadoop namenode -format


十、hadoop启动与停止

#在NameNode节点上操作即可,其余节点自动启动
启动hadoop:
执行命令 start-all.sh

停止hadoop:
执行命令 stop-all.sh


十一、查看hadoop启动进程

#可通过以下两种方式查看:
1. 执行命令 jps #查看java进程, Master节点启动进程NameNode, SecondaryNameNode, JobTracker; Slave节点启动进程 DataNode, TaskTracker
2. 通过浏览器查看 
      http://vm1:50070  #NameNode监控页面
      http://vm1:50030  #JobTracker监控页面


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值