hadoop完全分布式集群虚拟机网络设置
前面准备跟着一个帖子把Hadoop设置好,结果网络一直弄不好,这里专门记录一下网络怎么搞,希望这次能成功,已经浪费一上午了。
背景是拷了别人的虚拟机,Hadoop已经安装好了,就是网络问题了,这个其实别人也已经设置好了,但是我的IP和人家不一样,就又无法联网了。
之前看帖子已经知道,编辑那里的网络配置是专门改三种方式的设置的,选择使用哪个方式是在开机之前设置,编辑那里是改不了的。
VMWare虚拟机下为Ubuntu 配置静态IP(NAT方式)ping通主机 https://www.cnblogs.com/liermao12/p/6079471.html
先跟着这篇做一下试试,刚好我也有每次分配动态IP的问题。
以下转载原文:
背景
在虚拟机下运行操作系统,尤其是Linux系统已经是非常常见的做法。有时你想在虚拟机下搭建一个(模拟)服务器来供主机访问,比如搭建一个telnet/ssh。此时你会发现,每次启动虚拟机,VMWare为虚拟机系统分配一个动态IP,这样每次去连接虚拟机的telnet时很不方便。如果设成静态IP就好了。
VMnet8和NAT
如果你的虚拟机是以NAT方式连入互联网的话,那么虚拟机的IP地址非配,网关以及互联网访问权限均由VMWare提供的叫做VMnet8虚拟网卡所提供。所以一切和设置静态IP有关的设置都可以从这里找到。通VMnet8虚拟网卡,主机可以访问虚拟机的IP,虚拟机可以连入主机的互联网连接连入外网。
确认VMnet8虚拟网卡已启用
在默认情况下,VMWare Workstation已经启用VMnet8虚拟网卡,Windows 7下,通过进入 控制面板>网络和Internet>网络和共享中心>更改适配器设置 可以查看该虚拟网卡的状态。如图1-1所示。
这个是我的电脑的图,得到IP地址和子网掩码。
得到可用IP范围、网关和子网掩码
在VMWare主界面,点击Edit>Virtual Network Editor菜单进入虚拟网卡参数设置界面(图1-2)。选择VMnet8条目,点击NAT Settings按钮后可以看到我们的VMWare Workstation为NAT连接的虚拟机设定的默认网关,此处为192.168.91.2,以及子网掩码,此处为255.255.255.0, 如图1-3所示。
这里是我的网关IP,子网IP和子网掩码。这个IP和子网IP和网关IP这三都是啥来着,网络的东西都忘完了。
点击DHCP Settings按钮,可以看到VMnet8为虚拟机分配的可用的子网IP范围,如图1-4所示。
这里是我的子网IP范围,192.168.29.128 -- 192.168.29.254
此处,我们的子网IP可用范围为192.168.91.128~192.168.91.254
OK,至此,所有我们需要的信息都已经获取到,这里汇总一下,
- 子网IP可用范围:192.168.91.128~192.168.91.254
- 子网掩码:255.255.255.0
- 网关: 192.168.91.2
下面开始进入Ubuntu虚拟机设置静态IP。
在Ubuntu 12.04.1中设置静态IP
1. 启动虚拟机Ubuntu系统,打开终端,利用如下命令打开并编辑网络接口配置文件:
sudo vi /etc/network/interfaces
2. 编辑文件如下:
说明
address是你要分配给你虚拟机的静态IP地址,可以从刚才我们找到的可用的子网IP范围中随便选择一个放在此处。
netmask是子网掩码
gateway是网关
注意:在相对较早的版本中,你需要设置/etc下的resolv.conf文件,并加入nameserver,这样才可以连接互联网。但在Ubuntu 12.04之后,已经不推荐这种方式了,因为无论你想该配置文件中设置什么值,重新启动之后都会被还原为初始状态。推荐的做法是直接在interfaces配置文件中加入dns-nameserver <网关IP>这一行。
这里是我修改过的结果。
3. 重启ubuntu的网卡
sudo /etc/init.d/networking restart
这里失败了,报错
[....] Restarting networking (via systemctl): networking.serviceJob for networking.service failed because the control process exited with error code. See "systemctl status networking.service" and "journalctl -xe" for details.
failed!
查到一个解决方案:https://segmentfault.com/q/1010000006678955/a-1020000006680639
https://www.jianshu.com/p/625de9911bfb
额 这里eth0是物理网卡,看来应该不太对。不敢改了都,这些都是改虚拟机Ubuntu的东西,还是找个Hadoop的教程好了。
还是看这个教程吧,针对Hadoop的 https://blog.****.net/gao1440156051/article/details/54412390
额,最后不敢改动这些了,先把那个文件eth0改回原来的了。
直接问了做这个的人,在网络设置里把IP啥改了就行了,完全不需要改配置文件这么麻烦。所以是用的NAT,得到子网IP的范围之后,把/etc/hosts 也改了就好。
早知道不费这么多事,直接问人家了,为啥我查到的教程都没有这么改的啊。