CentOS 6.4下CDH4集群安装(2)

三、CDH4集群部署

1.集群环境

选择5台物理PC机,构建Hadoop集群;

操作系统均为CentOS 6.4;

集群包括5个节点:1个Master,4个Slave节点

注:节点之间可以局域网连接,使用静态IP,相互ping通;也可以不用静态IP,直接使用外网分配的固定的IP;以静态为例:

机器

 

主机名

 

192.168.12.10

 

Master

 

192.168.12.11

 

Slave01

 

192.168.12.12

 

Slave02

 

192.168.12.13

 

Slave03

 

192.168.12.14

 

Slave04

 

2.配置过程

1)修改主机名(分别在每个节点主机上修改)

# hostname Master # vim /etc/sysconfig/network  修改为:

HOSTNAME = Master  其他机器分别做相应的设置,修改为:Slave01、Slave02、Slave03、Slave04

注:设置后重启机器

2)修改hosts文件(所以机器上做相同的配置)

# vim /etc/hosts  在文件中添加配置:

192.168.12.10 Master192.168.12.11 Slave01192.168.12.12 Slave02192.168.12.13 Slave03192.168.12.14 Slave04 注:可以在其他所有机器上进行上述相同的配置,或者用scp命令将Master修改后的文件复制到其他机器上

# scp /etc/hosts root@192.168.12.11:/etc/hosts

3)配置SSH无密码登陆(主要工作在Master一台机器上完成即可)

附:SSH无密码登陆原理简介:

首先,在Master上生成一个密钥对,包括一个公钥和一个私钥,并将公钥复制到所有的Slave上;

当Master通过SSH连接Slaver时,Slave会生成一个随机数并用Master的公钥对随机数进行加密,并发送给Master;

Master收到加密后用私钥进行解密,并将解密数回送给Slave,Slave确认解密数无误后允许Master不输入密码就可以进行连接

u配置Master无密码登陆所有Slave(在Master上操作)

具体过程如下:

ØMaster机器上生成密码对

# ssh –keygen –t rsa -P生成无密码密钥对,询问保存路径时直接回车采用默认的路径;

生成的密钥对为:id_rsa和id_rsa.pub ;默认在 /root/.ssh 目录下

ØMaster节点上配置,将id_rsa.pub追加到授权的key中去

# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keysØ修改authorized_keys权限

# chmod 600 ~/.ssh/authorized_keys  权限的设置非常重要,因为不安全的设置,会不能使用RSA功能

Ø修改SSH配置文件

# vim /etc/ssh/sshd_config修改前:

#RSAAuthentication yes # 启用RSA 认证

#PubkeyAuthentication yes # 启用公钥私钥配对认证方式

# AuthorizedKeysFile .ssh/authorized_keys # 公钥文件路径(和上面生成的文件同)

修改后:

RSAAuthenticationyes # 启用RSA 认证

PubkeyAuthenticationyes # 启用公钥私钥配对认证方式

AuthorizedKeysFile.ssh/authorized_keys # 公钥文件路径(和上面生成的文件同)

Ø重启SSH服务

# service sshd restartØ验证是否成功

# ssh MasterØ将公钥复制到所有Slave机器上

# scp ~/.ssh/id_rsa.pub 远程用户名@远程服务器 IP:~/

以Slave01为例:

# scp ~/.ssh/id_rsa.pub root@192.168.12.11:~/l登陆到Slave01机器上

# ssh 192.168.12.11  需要输入root密码,进入Slave01机器,因为现在Master还不能无密码登陆Slave01

l在root目录下建立.ssh文件夹

# mkdir ~/.ssh  这一步并不是必须的,如果已有.ssh目录,则不需要建立

l修改文件夹“.ssh”的用户权限

# chmod 700 ~/.sshl追加到授权文件“authorized_keys”

# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys l修改权限

# chmod 600 ~/.ssh/authorized_keysl修改Slave01上的SSH配置文件

# vim /etc/ssh/sshd_config修改前:

#RSAAuthentication yes # 启用RSA 认证

#PubkeyAuthentication yes # 启用公钥私钥配对认证方式

# AuthorizedKeysFile .ssh/authorized_keys # 公钥文件路径(和上面生成的文件同)

修改后:

RSAAuthenticationyes # 启用RSA 认证

PubkeyAuthenticationyes # 启用公钥私钥配对认证方式

AuthorizedKeysFile.ssh/authorized_keys # 公钥文件路径(和上面生成的文件同)

l重启SSH服务

# service sshd restartl删除掉复制过来的“id_rsa.pub”文件

# rm ~/id_rsa.publ验证Master到Slave01的无密码登陆

从Slave01回到Master机器:

# ssh 192.168.12.10需要输入root密码,进入Master机器,因为现在Slave01还不能无密码登陆Master

在Master下登陆Slave01:

# ssh Slave01 看是否可以成功进行无密码登陆

注:同样的方法,从Master登陆Slave02、Slave03、Slave04进行同样的操作

u配置所有Slave无密码登陆Master(在Slave机器上操作,也可由Master登陆到Slave进行操作)

步骤和Master无密码登陆所有Slave一样,即把所有Slave的公钥追加到Master的“.ssh”文件夹下的“authorized_keys”中

以Slave01为例:(在Slave01上操作)

Ø创建Slave01自己的公钥和私钥,

# ssh –keygen –t rsa -P  生成无密码密钥对,询问保存路径时直接回车采用默认的路径;

生成的密钥对为:id_rsa和id_rsa.pub ;默认在 /root/.ssh 目录下

Ø将id_rsa.pub追加到Slave01自己的authorized_keys中去

# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keysØ重启SSH服务

# service sshd restartØ验证是否成功

# ssh Slave01Ø将Slave01的公钥复制到Master机器上

# scp ~/.ssh/id_rsa.pub root@192.168.12.10:~/l登陆到Master机器上

# ssh 192.168.12.10  需要输入root密码,进入Master机器,因为现在Slave01不能无密码登陆Master

l在root目录下建立.ssh文件夹

# mkdir ~/.ssh  这一步并不是必须的,如果已有.ssh目录,则不需要建立

l修改文件夹“.ssh”的用户权限

# chmod 700 ~/.sshl将复制来的公钥追加到Master授权文件“authorized_keys”中

# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys l删除掉复制过来的“id_rsa.pub”文件

# rm ~/id_rsa.publ验证Slave01到Master的无密码登陆

从Master回到Slave01机器:

# ssh Slave01  无需输入root密码进入Slave01机器,因为Master已经可以无密码登陆Slave01

在Slave01下登陆Master:

# ssh Master  看是否可以成功进行无密码登陆

注:同样的方法,在Slave02、Slave03、Slave04进行同样的操作

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/35f15cf7c22f12f6311b45ba3f161206.html