Hadoop安装教程_分布式集群

安装前的准备

伪分布式的设置

首先,需要对一台机器进行单机和伪分布式的设置及验证,可以参考单机伪分布式设置

集群的规划

选择典型的集群规划,即一台Master,两台Slave的设置。
主机名及局域网IP配置如下:

主机名角色IP
Master主机192.168.1.108
Slave1从机1192.168.1.106
Slave2从机2192.168.1.107

集群的初始设置

对于集群中的任意主机和从机都需要完成如下配置:
1. 网络配置
2. SSH无密码登陆
3. java及apache环境设置

网络配置

首先,默认每个机器都已经能够连上互联网,有自己的ip

$ ifconfig #查看ip及网关
$ ping www.baidu.com

$ vim /etc/hostname #修改主机名

Master

$ vim /etc/hosts #修改主机名与IP的映射

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.108 Master
192.168.1.106 Slave1
192.168.1.107 Slave2

$ ping Master
$ ping Slave1
$ ping Slave2

需要注意的是,上述配置只表示了主机的配置,对应的从机也需要设置相应的配置及验证。

SSH无密码登陆

这里的要求是Master和Slave1、Slave2可以相互无密码ssh登陆。
下面以Master无密码登陆Slave1举例配置。
同样地,还需要配置Master~Slave2、Slave1~Master、Slave2~Master。

$ cd ~/.ssh                      # 如果没有该目录,先执行一次ssh localhost
$ ssh-keygen -t rsa              # 生成的密钥保存为.ssh/id_rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys #将本机的公匙在本机添加授权
$ ssh Master                     # 免密码登陆本机验证
$ scp ~/.ssh/id_rsa.pub hadoop@Slave1:/home/hadoop/ #将本机的公匙给Slave1
$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys #将本机的公匙在Slave1添加授权
$ ssh Slave1                     # 免密码登陆Slave1验证

java及apache环境设置

这里可以参考单机伪分布式设置

安装流程

主机的安装

主机的安装,主要在原来伪分布式的基础上,修改如下5个配置文件。

1.文件slaves

$ vim etc/hadoop/slaves

Slave1
Slave2

2.文件core-site.xml(注意原来的localhost这里变成了Master)

$ vim etc/hadoop/core-site.xml

<property>
    <name>fs.defaultFS</name>
    <value>hdfs://Master:9000</value>
</property>
<property>
    <name>hadoop.tmp.dir</name>
    <value>file:/usr/local/hadoop/tmp</value>
    <description>Abase for other temporary directories.</description>
</property>

3.文件hdfs-site.xml(注意加了secondary,另外slave的个数变化了)

$ vim etc/hadoop/hdfs-site.xml
<property>
    <name>dfs.namenode.secondary.http-address</name>
    <value>Master:50090</value>
</property>
<property>
    <name>dfs.namenode.name.dir</name>
    <value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
    <name>dfs.datanode.data.dir</name>
    <value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
<property>
    <name>dfs.replication</name>
    <value>2</value>
</property>

4.文件mapred-site.xml(无变化)

$ cp etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml
$ vim etc/hadoop/mapred-site.xml

<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>

5.文件yarn-site.xml(注意增加了master)

$ vim etc/hadoop/yarn-site.xml

<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>Master</value>
</property>
<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>

集群的安装

配置好后,下面需要将Master上的hadoop文件夹复制到各个节点上。因为之前跑过伪分布式模式,所以建议切换到集群模式之前先删除临时文件。

$ cd /usr/local
$ rm -r ./hadoop/tmp
$ tar -zcf ./hadoop.tar.gz ./hadoop
$ scp ./hadoop.tar.gz Slave1:/home/hadoop
$ scp ./hadoop.tar.gz Slave2:/home/hadoop

然后在Slave1,Slave2上执行

$ cd ~
$ tar -zxf ~/hadoop.tar.gz -C /usr/local
$ chown -R hadoop:hadoop /usr/local/hadoop

效果与验证

下面,就可以在Master节点上启动hadoop

$ cd /usr/local/hadoop
$ bin/hdfs namenode -format 
$ sbin/start-dfs.sh
$ sbin/start-yarn.sh
$ jps #验证
$ bin/hdfs dfsadmin -report

应该能看到Master节点启动了NameNodeSecondrryNameNodeResourceManager进程。
Slave节点则启动了DataNodeNodeManager进程。
同时,登陆http://master:50070/查看相关状态

执行分布式实例与伪分布式相同

$ bin/hdfs dfs -mkdir -p /user/hadoop
$ bin/hdfs dfs -put etc/hadoop input 
$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar grep input output 'dfs[a-z.]+'
$ /usr/local/hadoop/sbin/mr-jobhistory-daemon.sh start historyserver #手动开启 jobhistory server
$ bin/hdfs dfs -cat output/*

关闭

$ sbin/stop-dfs.sh
$ sbin/stop-yarn.sh
$ sbin/stop-all.sh

安装注意


  1. 防火墙必须关闭
  2. 注意伪分布式与分布式集群配置文件的区别,主要在slavescore-site.xmlhdfs-site.xmlmapred-site.xmlyarn-site.xml的区别。
  3. 50070查看NameNode,8088查看ResorceManager。
  4. 常用命令

hdfs dfsadmin -report
hdfs namenode -format(需要实现删除tmp临时文件)
service iptables stop
service iptables status
查看log日志文件

模式切换

将主机的分布式模式改变成伪分布式模式。从机的不变。

  1. 将slaves中的Slave12变成Master
  2. 将hdfs文件中的从机个数改成1

参考资料

  1. hadoop集群
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值