集群配置

验证集群

总结


安装Hadoop

上传压缩包。

在hadoop用户下,新建一个apps目录,进入该目录。可以通过文件的属性中的安全选项卡找到完整路径,并复制,和安装jdk时一样,使用SecureCRT的sftp上传即可。

Hadoop中三台机器两免密登录中连接不成功的原因_上传

文件路径

解压在该目录下即可。

Hadoop中三台机器两免密登录中连接不成功的原因_大数据_02

解压

可以看到hadoop里面的内容,在sbin目录下有一些脚本,以后会用到。

Hadoop中三台机器两免密登录中连接不成功的原因_算法_03

hadoop的内容

  • vim ~/.bashrc
  • 在最后面加入以下语句:

export HADOOP_HOME=/home/hadoop/apps/hadoop-2.7.5
export PATH=Hadoop中三台机器两免密登录中连接不成功的原因_xml_04HADOOP_HOME/bin:$HADOOP_HOME/sbin

  • source ~/.bashrc(使新配置的环境变量生效)

Hadoop中三台机器两免密登录中连接不成功的原因_上传_05

配置hadoop

至此,母版虚拟机已经设置完毕,接下来将进行克隆与整体布局。

集群布局

集群布局
| 虚拟机名 | h1 | h2 | h3 |
| HostName | hadoop1 | hadoop2 | hadoop3 |
| ip | 192.168.74.121 | 192.168.74.122 | 192.168.74.123 |
| NameNode | √ | × | × |
| SecondryNameNode | × | √ | × |
| ResourceManager | × | × | √ |
| DataNode | √ | √ | √ |
| NodeManager | √ | √ | √ |

克隆

运行内存有限,建议3~4台,这里克隆三台。关闭母版虚拟机,以第一台为例,母版虚拟机上右键,选择管理,然后选择克隆。

Hadoop中三台机器两免密登录中连接不成功的原因_大数据_06

克隆第一台

依次克隆另外两台,分别命名为h2、h3。

网络连接

vi /etc/udev/rules.d/70-persistent-net.rules,以h1为例,将eth0所在行注释或删除,将eth1改为eth0,其他两台一样。

Hadoop中三台机器两免密登录中连接不成功的原因_hadoop_07

h1修改前

Hadoop中三台机器两免密登录中连接不成功的原因_上传_08

h1修改后

sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0,将HWADDR和UUID所在行删除或注释掉,修改IPADDR。

Hadoop中三台机器两免密登录中连接不成功的原因_上传_09

h1静态ip修改

sudo vi /etc/sysconfig/network,修改hostname,SecureCRT下方右键,可以对多个会话一起发命令,比较方便,三台虚拟机一起修改。

Hadoop中三台机器两免密登录中连接不成功的原因_xml_10

修改hostname

sudo vi /etc/hosts,修改主机映射,保存后,使用init 6命令重启网卡。

Hadoop中三台机器两免密登录中连接不成功的原因_xml_11

标题更改主机映射

也可以添加本机的主机映射,在SecureCRT和浏览器地址用主机名代替,更加方便。

Hadoop中三台机器两免密登录中连接不成功的原因_算法_12

本机主机映射

配置免密登录

为什么要配置免密登录?

Hadoop中三台机器两免密登录中连接不成功的原因_上传_13

未配置免密登录前

未配置免密登录前,在hadoop1登录hadoop2需要输入密码,这对以后的工作会产生很多麻烦。

在 hadoop 用户下,输入命令 ssh-keygen ,连按 3 次回车,之后你会发现,在/home/hadoop/.ssh 目录下生成了一对密钥。每台虚拟就都需要,使用发送所有对话框,输入一次就好,比较方便。

Hadoop中三台机器两免密登录中连接不成功的原因_大数据_14

生成密钥

再分别输入ssh-copy-id hadoop1、ssh-copy-id hadoop2、ssh-copy-id hadoop3。每次需要输入yes及密码。这样就会在每台虚拟机的.ssh/authorized_keys中存在三台虚拟机的密钥。

Hadoop中三台机器两免密登录中连接不成功的原因_上传_15

复制密钥

Hadoop中三台机器两免密登录中连接不成功的原因_上传_16

复制密钥成功

可以在任一台虚拟机,使用ssh 主机名的方式登录其他虚拟机,使用exit退出。

集群配置前先同步时间

  • date(查看时间)
  • sudo ntpdate ntp1.aliyun.com(与阿里云的同步)

Hadoop中三台机器两免密登录中连接不成功的原因_算法_17

同步时间

集群配置

需要配置的文件,如图中的画红勾的那些。你可以照着Hadoop官网所给提示来敲,也可以从我的百度网盘下载,直接上传覆盖(上传前记得修改文件为自己的路径、用户名等)。

Hadoop中三台机器两免密登录中连接不成功的原因_xml_18

hadoop的配置文件

core-site.xml的配置

指定了工作目录等,读者根据自己的用户名等进行修改。

Hadoop中三台机器两免密登录中连接不成功的原因_hadoop_19

core-site.xml的配置

hadoop-env.sh的配置

指定了jdk路径,读者根据自己的进行修改。

Hadoop中三台机器两免密登录中连接不成功的原因_hadoop_20

hadoop-env.sh的配置

hdf-site.xml的配置

指令了一些数据目录等,读者根据自己的进行修改。

Hadoop中三台机器两免密登录中连接不成功的原因_xml_21

hdf-site.xml的配置

mapred-site.xml的配置

hadoop自带的是.template结尾的,如果你不是上传的我的文件,是自己在vi/vim编辑器下编辑的,记得改后缀。