在高并发和高可用的场景中,往往会搭建服务器集群,那么如何将多台服务器的IP映射成一个IP地址呢?本文就帮你搞定这个问题。
注意:我这里使用的操作系统为CentOS 6.x。
这里我们搭建两个虚拟机环境,IP地址分别为192.168.209.121和192.168.209.122,如下图所示:
在192.168.209.122上添加一个VIP地址为:192.168.209.22,执行如下命令:
ifconfig eth0:1 192.168.209.22 broadcast 192.168.209.255 netmask 255.255.255.0 up
eth0:1表示这个VIP绑定的目标网卡设备,192.168.209.22就是VIP的值,广播地址为192.168.209.255,子网掩码为:255.255.255.0,up表示立即启用这个VIP。 接着我们通过route命令,在路由表上添加对这个VIP的路由信息
route add -host 192.168.209.22 dev eth0:1
此时,我们在192.168.209.121这台虚拟机上执行ifconfig命令如下:
多了一张eth0:1网卡,说明VIP创建成功。 接下来,我们ping 192.168.209.22 如下图:
ping成功,说明我们的VIP创建测试成功。
注意:VIP信息在主机重启后会消失,所以我们最好是将创建VIP的命令写成一个脚本vip.sh,将脚本配置到环境变量和开机启动项: 脚本信息如下:
#!/bin/bash
ifconfig eth0:1 192.168.209.22 broadcast 192.168.209.255 netmask 255.255.255.0 up
route add -host 192.168.209.22 dev eth0:1
怎么样,整个过程是不是So Easy呢?