linux添加虚拟ip(手动vip和keepalived方式)

1,手动添加vip

1,ifconfig查看当前活动网卡。如:eth0

2,执行

ifconfig eth0:0 166.111.69.100 netmask 255.255.255.0 up

进行vip添加

3,执行ifconfig查看是否生效

4,测试 ping 166.111.69.100

5,写在/etc/rc.local里进行开机自动设置


2,第三方工具keepalived增加vip

1,下载与安装

下载:http://download.csdn.net/detail/u014749692/8396867

安装:

tar xf keepalived-1.2.12.tar.gz           
cd keepalived-1.2.12
./configure --prefix=/usr/local/keepalived
make &&  make install
cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/
cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
mkdir /etc/keepalived
cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/
cp /usr/local/keepalived/sbin/keepalived /usr/sbin/

2,配置:

vim 

/etc/keepalived/keepalived.conf 如下:
! Configuration File for keepalived

global_defs {
     notification_email {
     saltstack@163.com
   }
   notification_email_from dba@dbserver.com
   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id MySQL-HA
}

vrrp_instance VI_1 {
    state BACKUP
    interface eth1
    virtual_router_id 51
    priority 150
    advert_int 1
    nopreempt

    authentication {
    auth_type PASS
    auth_pass 1111
    }

    virtual_ipaddress {
        192.168.0.88
    }
}

红色区域为需要修改的地方:
notification_email :变更后通知的email
notification_email_from :发送email
router_id MySQL-HA :路由器组id,局域网中需要共享该vip的服务器,该配置要一致。
state BACKUP在keepalived中2种模式,分别是master->backup模式和backup->backup模式。这两种模式有很大区别。在master->backup模式下,一旦主库宕机,虚拟ip会自动漂移到从库,当主库修复后,keepalived启动后,还会把虚拟ip抢占过来,即使设置了非抢占模式(nopreempt)抢占ip的动作也会发生。在backup->backup模式下,当主库宕机后虚拟ip会自动漂移到从库上,当原主库恢复和keepalived服务启动后,并不会抢占新主的虚拟ip,即使是优先级高于从库的优先级别,也不会发生抢占。
interface eth1:具体网卡,通过ifconfig确认具体网卡。
priority 150:表示设置的优先级为150
nopreempt:非抢占模式
启动:
/etc/init.d/keepalived start ; tail -f /var/log/messages
显示如下表示成功:
Starting keepalived:                                       [  OK  ]
Apr 20 20:26:18 192 Keepalived_vrrp[9472]: Registering gratuitous ARP shared channel
Apr 20 20:26:18 192 Keepalived_vrrp[9472]: Opening file '/etc/keepalived/keepalived.conf'.
Apr 20 20:26:18 192 Keepalived_vrrp[9472]: Configuration is using : 62976 Bytes
Apr 20 20:26:18 192 Keepalived_vrrp[9472]: Using LinkWatch kernel netlink reflector...
Apr 20 20:26:18 192 Keepalived_vrrp[9472]: VRRP_Instance(VI_1) Entering BACKUP STATE
Apr 20 20:26:18 192 Keepalived_vrrp[9472]: VRRP sockpool: [ifindex(3), proto(112), unicast(0), fd(10,11)]
Apr 20 20:26:18 192 Keepalived_healthcheckers[9471]: Netlink reflector reports IP 192.168.80.138 added
Apr 20 20:26:18 192 Keepalived_healthcheckers[9471]: Netlink reflector reports IP 192.168.0.60 added
Apr 20 20:26:18 192 Keepalived_healthcheckers[9471]: Netlink reflector reports IP fe80::20c:29ff:fe9d:6a9e added
Apr 20 20:26:18 192 Keepalived_healthcheckers[9471]: Netlink reflector reports IP fe80::20c:29ff:fe9d:6aa8 added
Apr 20 20:26:18 192 Keepalived_healthcheckers[9471]: Registering Kernel netlink reflector
Apr 20 20:26:18 192 Keepalived_healthcheckers[9471]: Registering Kernel netlink command channel
Apr 20 20:26:18 192 Keepalived_healthcheckers[9471]: Opening file '/etc/keepalived/keepalived.conf'.
Apr 20 20:26:18 192 Keepalived_healthcheckers[9471]: Configuration is using : 7231 Bytes
Apr 20 20:26:18 192 kernel: IPVS: Registered protocols (TCP, UDP, AH, ESP)
Apr 20 20:26:18 192 kernel: IPVS: Connection hash table configured (size=4096, memory=64Kbytes)
Apr 20 20:26:18 192 kernel: IPVS: ipvs loaded.
Apr 20 20:26:18 192 Keepalived_healthcheckers[9471]: Using LinkWatch kernel netlink reflector...

测试:
1,ping命令测试。
2,一台服务器停止keepalived服务进行ip漂移测试。
如果失败,请考虑防火墙原因,参考url: http://blog.chinaunix.net/uid-20794884-id-5704461.html











keepalived是一个用于Linux系统的高可用性解决方案,它通过VRRP(Virtual Router Redundancy Protocol,虚拟路由器冗余协议)协议来实现高可用性服务。VRRP允许两个或多个节点共享一个虚拟IP地址(VIP),这样当主节点发生故障时,备份节点可以迅速接管流量,从而保证服务的连续性。 在非抢占模式下,当主节点因故障失去响应时,不会自动重新选举新的主节点。这意味着即使主节点恢复,也不会重新获得VIP的所有权,除非管理员手动介入。 配置keepalived实现非抢占模式同时主从节点都有虚拟VIP,你需要在keepalived的配置文件中设置`nopreempt`选项。以下是一个配置示例: ```conf vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 100 nopreempt advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.0.100 } } vrrp_instance VI_2 { state BACKUP interface eth0 virtual_router_id 51 priority 50 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.0.100 } } ``` 在这个配置中,两台机器都配置了相同的`virtual_router_id``virtual_ipaddress`,但只有主节点(MASTER)配置了高优先级(这里为100),备份节点(BACKUP)配置了低优先级(这里为50)。通过`nopreempt`选项,备份节点不会抢占VIP,即使它的优先级变高。这样,即使主节点恢复,备份节点也不会将VIP交给主节点。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值