在安装之前我是先克隆了3个虚拟机的,由于我使用的是创建完整克隆,所以我的3个克隆机的ip地址和maste一样都是192.168.128.140。
所以我要先在3个克隆的虚拟机内部使用如下命令进行ip地址的配置,注意克隆机的ip地址不能和master一样。
vi /etc/sysconfig/network-scripts/ifcfg-ens33
同理配置node2和node3的ip地址,由于我之前配过了,所以我直接使用ip addr查询ip地址
由于xshell可以复制粘贴,所以接下来的操作,我都是在xshell中进行的。并且建立3个克隆机的xshell连接,分别命名为slave01、slave02、slave03。
下面对主机名进行修改:
1、首先对于master节点:
在xshell中输入如下命令:
vi /etc/sysconfig/network
然后在文件中输入如下两行代码,然后按esc,:wq保存退出就完成了master主机名的修改:
NETWORKING=yes
HOSTNAME=mas673
2、对于slave1节点,先使用vi /etc/sysconfig/network进入文件进行如下配置:
3、对于slave2节点,先使用vi /etc/sysconfig/network进入文件进行如下配置:
4、对于slave3节点,先使用vi /etc/sysconfig/network进入文件进行如下配置:
然后再使用如下命令进行域名映射,四台主机都需要修改。
vi /etc/hosts
1、对于master节点,进入文件后添加命令,然后保存退出:
192.168.128.140 mas673 mas673.centos.com
192.168.128.141 slave01 slave01.centos.com
192.168.128.142 slave02 slave02.centos.com
192.168.128.143 slave03 slave03.centos.com
2、对于slave01节点,复制粘贴一样的命令进入文件,添加命令:
vi /etc/hosts
192.168.128.140 mas673 mas673.centos.com
192.168.128.141 slave01 slave01.centos.com
192.168.128.142 slave02 slave02.centos.com
192.168.128.143 slave03 slave03.centos.com
3、对于slave02节点同样的操作:
4、对于slave03进行相同的操作:
到此就完成了四台主机的映射。这个映射方便我们四台主机之间的访问,我们可以在master主机中输入命令验证是否成功。
在master中输入命令ping slave01即可验证:
上图结果表示成功ping通。同样可以ping其他节点,如图表示成功ping通,不需要再输入ip地址进行相互之间的连接了:
重启虚拟机后,上述配置永久生效。
输入命令reboot,可以重启虚拟机。
由于Hadoop的节点众多,所以一般在主节点启动从节点,此时就需要程序自动在主节点登录到从节点中,如果不能免密就每次都要输入密码,非常麻烦。
所以接下来我将进行免密登陆的设置。
首先,在四台机器下执行如下命令,然后一直敲回车,直至结束进程:
ssh-keygen -t rsa
1、对于master节点:
2、对于slave01节点:
3、对于slave02节点:
然后拷贝公钥到mas673,继续对四台虚拟机输入同一命令:
ssh-copy-id mas673
1、对于master主机,以后我就称master主机为mas673。这里需要注意的是,命令中的mas673是我前面设置的主机名,所以设置不同这里也需要相应的改变。
2、对于slave01节点:
3、对于slave02节点:
接下来就是另一个操作了,复制第一台机器也就是mas673的认证到其他机器上。
在mas673里面分别输入如下命令:
scp /root/.ssh/authorized_keys slave01:/root/.ssh
scp /root/.ssh/authorized_keys slave02:/root/.ssh
scp /root/.ssh/authorized_keys slave03:/root/.ssh
最后结果展现成这样就说明成功实现了免密登录。
使用如下命令分别连接3个克隆机:
ssh mas673
ssh slave01
ssh slave02
ssh slave03
下面我只展示了是否能够在mas673里面免密连接slave01,大家最好使用命令在所有的里面试验一下看是否成功。
有些虚拟机这里的localhost会变成slave01,而有些不会,但是通过查询ip地址可以查看是否成功进入slave01.显然我这里已经成功从mas673里面进入了slave01。
以上就是虚拟机的克隆、主机的配置以及免密登录的全部实现过程了。