博客
关于我
linux分布式安装hadoop1.2
阅读量:806 次
发布时间:2023-02-03

本文共 3116 字,大约阅读时间需要 10 分钟。

配置三台虚拟机的Hadoop环境

在三台虚拟机上配置Hadoop环境是一个典型的分布式计算项目,以下是详细的配置步骤。

一、配置环境

1. 准备三台虚拟机

配置主节点(master)和两台从属节点(slave1、slave2)。每台虚拟机预先安装了操作系统,接下来将进行硬件配置和网络设置。

2. 配置主节点网络设置

  • 查看当前使用网卡和IP地址

    dmesg | grep -i eth

    输出显示eth0接口使用 Bluetooth: BNEP (Ethernet Emulation),IP地址为192.168.182.138。

  • 设置静态IP地址

    修改/etc/sysconfig/network-scripts/ifcfg-eth0文件:

    vi /etc/sysconfig/network-scripts/ifcfg-eth0

    填写IPADDR、NETMASK、GATEWAY等参数:

    IPADDR=192.168.182.101NETMASK=255.255.255.0GATEWAY=192.168.182.255

    保存后, hostname 设置为 master,更新主机名:

    hostname master
  • 修改hosts文件

    /etc/hosts中添加以下内容:

    192.168.182.100 master192.168.182.101 slave1192.168.182.102 slave2

    确保所有节点互相识别。

  • 关闭防火墙

    停止并禁用iptables:

    service iptables stopchkconfig iptables off
  • 关闭SELinux

    修改/etc/selinux/config文件,将SELINUX设置为disabled:

    vi /etc/selinux/config

    修改内容为:

    SELINUX=disabled

    启用新的设置:

    setenforce 0

3. 配置从属节点网络设置

将slave1和slave2分别设置为IP地址192.168.182.102和192.168.182.103,主机名分别为slave1slave2,并完成类似的网络配置。

4. 用户创建

在三台主机上创建hadoop用户,并设置密码:

useradd hadooppasswd hadoop

二、配置无密码访问

1. 生成SSH密钥

在每台主机上生成SSH密钥并将公钥复制到其他主机:

ssh-keygen -t rsacat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

2. 复制公钥

将slave1和slave2上的authorized_keys文件复制到master:

scp ~/.ssh/authorized_keys master:~/.ssh/authorized_keys1scp ~/.ssh/authorized_keys master:~/.ssh/authorized_keys2

合并文件并复制回slave1和slave2:

cat authorized_keys1 >> authorized_keyscat authorized_keys2 >> authorized_keysscp ~/.ssh/authorized_keys slave1:~/.ssh/authorized_keysscp ~/.ssh/authorized_keys slave2:~/.ssh/authorized_keys

3. 验证权限

确保权限为600:

chmod 600 authorized_keys

三、配置Hadoop环境

1. 安装Hadoop

下载并解压Hadoop tar包到/home/hadoop目录:

tar xzvf hadoop-1.2.1-bin.tar.gzchown -R hadoop:hadoop hadoop-1.2.1

2. 配置Hadoop用户环境

/home/hadoop/.bashrc中添加以下内容:

export JAVA_HOME=/usr/java/jdk1.6.0_45export PATH=$PATH:$JAVA_HOME/binexport CLASSPATH=$CLASSPATH:$JAVA_HOME/lib

将该文件推送到slave1和slave2:

scp .bashrc slave1:~/.bashrcscp .bashrc slave2:~/.bashrc

3. 修改配置文件

1. core-site.xml

修改hadoop-1.2.1/conf/core-site.xml

vi hadoop-1.2.1/conf/core-site.xml

添加以下配置:

hadoop.tmp.dir
/home/hadoop/tmp
fs.default.name
hdfs://master:9000

2. hdfs-site.xml

修改hadoop-1.2.1/conf/hdfs-site.xml

vi hadoop-1.2.1/conf/hdfs-site.xml

添加以下配置:

dfs.data.dir
/home/hadoop/data
dfs.replication
2

3. mapred-site.xml

修改hadoop-1.2.1/conf/mapred-site.xml

vi hadoop-1.2.1/conf/mapred-site.xml

添加以下配置:

mapred.job.tracker
master:9001

4. 修改master文件

hadoop-1.2.1/conf/master文件中,修改节点信息:

vi hadoop-1.2.1/conf/master

添加节点信息:

slave1: slave2

4. 推送配置文件到从属节点

将master节点上的Hadoop配置文件推送到slave1和slave2:

scp -r ./hadoop-1.2.1 slave1:/home/hadoopscp -r ./hadoop-1.2.1 slave2:/home/hadoop

四、格式化HDFS并启动Hadoop

1. 格式化NameNode

在master节点上运行:

./hadoop namenode -format

2. 启动Hadoop集群

在master节点上运行:

./start-all.sh

3. 检查运行状态

通过jps命令查看进程:

jps
  • master节点应有NameNode、SecondaryNameNode、JobTracker。
  • slave1、slave2节点应有DataNode、TaskTracker。

4. 查看运行情况

  • HDFS健康检查:访问http://192.168.182.100:50070/dfshealth.jsp
  • JobTracker监控:访问http://192.168.182.100:50030/jobtracker.jsp

通过以上步骤,可以成功配置并运行Hadoop集群。

转载地址:http://exzfk.baihongyu.com/

你可能感兴趣的文章
Objective-C实现代理服务器(附完整源码)
查看>>
Objective-C实现以递归的形式MatrixExponentiation矩阵求幂算法 (附完整源码)
查看>>
Objective-C实现优先队列算法(附完整源码)
查看>>
Objective-C实现伽玛Gamma函数(附完整源码)
查看>>
Objective-C实现位置型pid算法(附完整源码)
查看>>
Objective-C实现低通滤波器(附完整源码)
查看>>
Objective-C实现使用数组实现约瑟夫环(附完整源码)
查看>>
Objective-C实现使用管道重定向进程输入输出(附完整源码)
查看>>
Objective-C实现倒计时(附完整源码)
查看>>
Objective-C实现借记款项功能(附完整源码)
查看>>
Objective-C实现关系矩阵A和B的乘积(附完整源码)
查看>>
Objective-C实现关系矩阵乘法(附完整源码)
查看>>
Objective-C实现关系矩阵乘法(附完整源码)
查看>>
Objective-C实现关键字移位字母表密码算法(附完整源码)
查看>>
Objective-C实现内存映射文件(附完整源码)
查看>>
Objective-C实现内存泄露检查(附完整源码)
查看>>
Objective-C实现内格尔·施雷肯伯格算法(附完整源码)
查看>>
Objective-C实现几何级数的总和算法 (附完整源码)
查看>>
Objective-C实现分块查找算法(附完整源码)
查看>>
Objective-C实现分块查找算法(附完整源码)
查看>>