虚IP切换原理
来源:互联网 发布:兄弟连php培训费用 编辑:程序博客网 时间:2024/05/17 22:52
高可用性HA(High Availability)指的是通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非计划)所导致的停机时间,以提高系统和应用的可用性。HA系统是目前企业防止核心计算机系统因故障停机的最有效手段。
实现HA的方式,一般采用两台机器同时完成一项功能,比如数据库服务器,平常只有一台机器对外提供服务,另一台机器作为热备,当这台机器出现故障时,自动动态切换到另一台热备的机器。
怎么实现故障检测的那?
心跳,采用定时发送一个数据包,如果机器多长时间没响应,就认为是发生故障,自动切换到热备的机器上去。
怎么实现自动切换那?
虚IP。何为虚IP那,就是一个未分配给真实主机的IP,也就是说对外提供数据库服务器的主机除了有一个真实IP外还有一个虚IP,使用这两个IP中的任意一个都可以连接到这台主机,所有项目中数据库链接一项配置的都是这个虚IP,当服务器发生故障无法对外提供服务时,动态将这个虚IP切换到备用主机。
开始我也不明白这是怎么实现的,以为是软件动态改IP地址,其实不是这样,其实现原理主要是靠TCP/IP的ARP协议。因为ip地址只是一个逻辑地址,在以太网中MAC地址才是真正用来进行数据传输的物理地址,每台主机中都有一个ARP高速缓存,存储同一个网络内的IP地址与MAC地址的对应关系,以太网中的主机发送数据时会先从这个缓存中查询目标IP对应的MAC地址,会向这个MAC地址发送数据。操作系统会自动维护这个缓存。这就是整个实现的关键。
下边就是我电脑上的arp缓存的内容。
(192.168.1.219) at 00:21:5A:DB:68:E8 [ether] on bond0
(192.168.1.217) at 00:21:5A:DB:68:E8 [ether] on bond0
(192.168.1.218) at 00:21:5A:DB:7F:C2 [ether] on bond0
192.168.1.217、192.168.1.218是两台真实的电脑,
192.168.1.217为对外提供数据库服务的主机。
192.168.1.218为热备的机器。
192.168.1.217为虚IP。
大家注意红字部分,219、217的MAC地址是相同的。
再看看那217宕机后的arp缓存
(192.168.1.219) at 00:21:5A:DB:7F:C2 [ether] on bond0
(192.168.1.217) at 00:21:5A:DB:68:E8 [ether] on bond0
(192.168.1.218) at 00:21:5A:DB:7F:C2 [ether] on bond0
- 虚IP切换原理
- HA中虚IP自动切换的原理
- HA中虚IP自动切换的原理
- IP切换器
- 用批处理切换ip
- NetSetMan IP快速切换
- IP地址快速切换
- IP地址切换命令
- IP地址的切换
- 切换 IP/DNS 脚本
- 快速切换ip,dns
- netsh切换IP地址
- 《IP切换批处理》
- bat实现IP切换
- 快速切换IP地址
- 利用bat切换IP
- 多网口编程,IP切换
- IP切换器源码
- Flash图表组件 Open Flash Chart
- jquery之表单插件(关于上传文件)
- js 将color值rgb转化为16进制
- ASP.NET 中实现会话状态的基础
- 穿过已知点画平滑曲线(3次贝塞尔曲线)
- 虚IP切换原理
- 学习oracle第一天哈
- 各种iOS设备(iphone,itouch,ipad)通过自己架设的vpn服务器上网,抛开代理,使用VPN吧。
- 改造网络负载平衡
- 背包问题(空间优化)经典代码
- 制作安装程序的问题
- [Java] enum 枚举类型
- Eclipse Invalid project description Error
- 区别Java中堆与栈