Mac上搭建Hadoop环境(1) — 虚拟机的安装及SSH免密设置

前言

准备在自己的MBP上搭建一个小的Hadoop集群玩玩,顺便看看会遇到什么坑。初步打算设置三个节点,其中将MBP设置为master节点,另外用虚拟机创建两个slave节点。
第一步的主要任务有:

  • 创建2个虚拟机
  • 设置静态ip
  • 设置ssh免密登陆

准备工作

  • Mac OS Sierra 10.12.6
  • Parallels Desktop 13.2.0

安装虚拟机

我选择的时PD里面提供的CentOS 7作为虚拟机。安装过程省略,

安装了两台虚拟机分别名为slave1和slave2

虚拟机网络设置

为了共享MBP的网络,需要对虚拟机的网络进行配置,请参考如何将Mac共享主机网络给虚拟机
我的配置如下

设置静态ip

分别在虚拟机中编辑 /etc/sysconfig/network-scripts/ifcfg-eth0, 添加IPADDR属性后重启即可. 当然也可以用UI界面直接设置。
例如我为salve1设置了IPADDR=192.168.100.4。 以下是我的配置:

[parallels@slave1 .ssh]$ cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth0
UUID=9410076c-bee9-4886-af6c-537c17bcfee0
DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.100.4

然后运行 service network restart 重启虚拟机网络

更新hosts文件

这里需要对全部三个节点的hosts进行更新,在 /etc/hosts 加入三台节点的host信息,例如,以下是我添加的代码:

#Hadoop Cluster
192.168.100.2 master
192.168.100.4 slave1
192.168.100.5 slave2

然后运行 service network restart 重启虚拟机网络

设置SSH免密

分别在三个节点上执行以下代码生成RSA密钥

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
ssh localhost

在Slave1上执行以下代码,将自己的公钥添加到其他两台节点的authorized_keys中

cat ~/.ssh/id_rsa.pub | ssh parallels@slave2'cat >> .ssh/authorized_keys && echo "Key copied"'

cat ~/.ssh/id_rsa.pub | ssh lestat@master 'cat >> .ssh/authorized_keys && echo "Key copied"'

在Slave2上执行以下代码

cat ~/.ssh/id_rsa.pub | ssh parallels@slave1'cat >> .ssh/authorized_keys && echo "Key copied"'

cat ~/.ssh/id_rsa.pub | ssh lestat@master 'cat >> .ssh/authorized_keys && echo "Key copied"'

在MBP上执行以下代码

cat ~/.ssh/id_rsa.pub | ssh parallels@slave1'cat >> .ssh/authorized_keys && echo "Key copied"'

cat ~/.ssh/id_rsa.pub | ssh lparallels@slave2 'cat >> .ssh/authorized_keys && echo "Key copied"'

测试

在MBP上登陆slave1虚拟机

lestat@Lestats-MBP:~$ ssh slave1
Last login: Sat Mar 23 21:51:15 2019
[parallels@slave1 ~]$

在slave1上登陆master (MBP)

[parallels@slave1 ~]$ ssh master
Last login: Sat Mar 23 21:25:13 2019 from 192.168.100.4
lestat@Lestats-MBP:~$ 

搞定!

原文地址:https://www.cnblogs.com/lestatzhang/p/10611299.html