@frank-shaw
2015-11-03T20:41:27.000000Z
字数 2465
阅读 2556
Hadoop
之前都是使用的是动态IP,虽然简单,但是到了后来就很麻烦了。所以学着怎么使用静态IP,这样在伪分布的时候也比较容易操作。不会出错。
参考:http://www.2cto.com/os/201411/353085.html
首先检查一下当前虚拟机的网卡配置是否NAT模式。右击你的虚拟机,选择“设置”,查看你的网络链接模式是否是NAT模式。
虚拟机配置完成后,接着配置虚拟网卡vmware8。首先查看你的电脑下的cmd指令ipconfig下的vmnet8的ip地址是多少:
接着,进入虚拟网络编辑器
你会看到下面这幅图,选择VMnet8(我们需要的是NAT,所以需要配置这个网卡)。
点击NAT设置,可以看到一些有用的信息:
需要设置一下,这里子网掩码为255.255.255.0;网关为192.168.137.2。同时令子网ip为192.168.137.0。这个在接下来一起讲。点击确定即可。
回到上一个画面,接下来看看DHCP配置里面有什么东西。我们知道的是DHCP是动态配置ip地址(我之前就是这么设置为这个类型,在linux的某个文件下,挺简单)。点击DHCP设置:
注意,如果你的虚拟机系统要使用固定ip,则不能使用这里dhcp设定范围内的ip,不然会出现路由问题,会有异常。所以这里的开始IP地址和结束IP地址需要好好看,不要与之折叠了。就是说,这是NAT中动态分配ip地址的范围,静态设置的时候不要掺和进来。
例如,我配置的段是:192.168.137.128~192.168.137.254,那么,如果你设置主机网络时想固定ip,则需要使用192.168.137.3~192.168.137.127范围内的ip作为固定ip使用。如果你选择DHCP模式,则会随机分配192.168.137.128~192.168.137.254内的ip给你的虚拟系统,而有效期参考这里的配置。(有效期过后,会重新获取,虚拟系统的ip就会变更,安装集群建议使用固定ip)
设置完虚拟网卡,虚拟网卡还不能访问外部的网络,如果是NAT内部集群,其实可以不用连外网的。但是如果你的机器有需要上网,则需要将虚拟网卡放入共享网络列表中去。
打开你的网卡配置。我这里是用无线的,所以选无线网卡,如果你是有线或者宽带直连,请将你用来上网的网卡共享给虚拟网卡。
这样宿主机这端就设置好了。但是虚拟机内部还需要做一些修改。进入系统后,打开终端,并且换到root用户下。
修改网络配置文件:
#vi/etc/sysconfig/network-scripts/ifcfg-eno16777736
注意:BOOTPROTO要改为static,即静态ip模式
地址IPADDR,选择网段192.168.137.3~192.168.137.127之间的一个ip,理由前面虚拟网卡配置的地方已经说了。
NETMASK是子网掩码,也是跟之前配置的一样255.255.255.0
GATEWAY,默认网关,也是跟之前配置的一样192.168.137.2
这里DNS1(域名服务器)也选择是虚拟网关来充当。选择192.168.137.2
TYPE=Ethernet
BOOTPROTO=static
IPADDR=192.168.137.80
NETMASK=255.255.255.0
GATEWAY=192.168.137.2
DNS1=192.168.137.2
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
NAME=eno16777736
UUID=0624cd5b-087f-4c41-bd22-5d0a3417a084
DEVICE=eno16777736
ONBOOT=yes
接着修改域名服务器配置:
# vi /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.137.2
接着使得修改的网络配置生效,需要重启网卡。指令如下:
# systemctl restart network
# systemctl status network
我们可以查看一下我们是否已经配置好了,执行指令ifconfig,可以得到:
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.137.80 netmask 255.255.255.0 broadcast 192.168.137.255
inet6 fe80::20c:29ff:fe92:e059 prefixlen 64 scopeid 0x20<link>
inet6 fdf1:542f:21d4:5:20c:29ff:fe92:e059 prefixlen 64 scopeid 0x0<global>
ether 00:0c:29:92:e0:59 txqueuelen 1000 (Ethernet)
RX packets 418 bytes 43422 (42.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 211 bytes 21878 (21.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 140 bytes 12396 (12.1 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 140 bytes 12396 (12.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
可以看到,eno16777736网卡已经配置好了。