CN105049549A - 一种实现浮动ip地址自动漂移的方法和系统 - Google Patents
一种实现浮动ip地址自动漂移的方法和系统 Download PDFInfo
- Publication number
- CN105049549A CN105049549A CN201510484915.9A CN201510484915A CN105049549A CN 105049549 A CN105049549 A CN 105049549A CN 201510484915 A CN201510484915 A CN 201510484915A CN 105049549 A CN105049549 A CN 105049549A
- Authority
- CN
- China
- Prior art keywords
- floating
- address
- server
- finger daemon
- zookeeper
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5053—Lease time; Renewal aspects
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明涉及一种实现浮动IP地址自动漂移的方法,S1,在服务器集群中的每台服务器上安装守护进程;S2,多个守护进程同时在Zookeeper上竞争创建以浮动IP地址命名的动态节点;S3,成功创建动态节点的守护进程在其所属服务器的网卡上绑定浮动IP地址,执行S4;未成功创建动态节点的守护进程检测当前服务器的网卡上是否已经绑定浮动IP,如果是执行S5;如果否则执行S6;S4,守护进程检测当前服务器运作是否正常,如果是,则重复S4,如果否,则删除已经绑定的浮动IP地址,执行S6;S5,删除已经绑定的浮动IP地址,执行S6;S6,守护进程退出,等待下次启动。本发明通过由守护进程对唯一资源竞争,实现浮动IP在异常主机和正常主机间漂移。
Description
技术领域
本发明涉及计算机通信领域,特别涉及一种实现浮动IP地址自动漂移的方法和系统。
背景技术
服务器集群通过将相同功能的服务部署在多台主机上,一方面能够把服务压力平均分摊,一方面能够在一个主机的服务异常后,对应服务能力能被另外一台正常主机所替代。但是服务对外提供的形式一般为IP地址和端口号,于是服务主机异常后即使被正常主机接替,如果IP地址不切换,集群对外的服务依然是不可用的。所以一般会对一个集群的一个应用配置一个浮动IP地址,用此IP对外暴露服务。当一台主机对外提供服务时,浮动IP地址就需要绑定在此主机,而当此主机异常并被其他主机替代时,浮动IP也要转移到替代的主机上。
发明内容
本发明所要解决的技术问题是提供一种实现浮动IP地址自动漂移的方法和系统。
本发明解决上述技术问题的技术方案如下:一种实现浮动IP地址自动漂移的方法,
步骤1,在服务器集群中的每台服务器上安装守护进程;
步骤2,所述服务器集群中所有服务器的守护进程同时启动,守护进程在Zookeeper上竞争创建以浮动IP地址命名的动态节点;
步骤3,成功创建以浮动IP地址命名的动态节点的守护进程在其所属服务器的网卡上绑定浮动IP地址,执行步骤4;未成功创建以浮动IP地址命名的动态节点的守护进程检测当前服务器的网卡上是否已经绑定浮动IP,如果是执行步骤5;如果否则直接执行步骤6;
步骤4,守护进程检测当前服务器运作是否正常,如果是,则重复步骤4,如果否,则删除已经绑定的浮动IP地址,并执行步骤6;
步骤5,删除已经绑定的浮动IP地址,执行步骤6;
步骤6,守护进程退出,等待下次启动。
本发明的有益效果是:本发明通过在集群服务器上安装后台守护进程,并由守护进程通过集成Zookeeper形成对唯一资源(Zookeeper上以IP地址命名的动态节点)竞争过程,保证集群软件服务所用浮动IP地址在异常服务器主机和正常服务器主机间自动漂移,从而实现集群软件服务的高可用性。
本发明还提供一种实现浮动IP地址自动漂移的系统,包括守护进程模块;守护进程模块安装于服务器集群中的每台服务器上;守护进程模块,用于在Zookeeper上竞争创建以浮动IP地址命名的动态节点,在成功创建以浮动IP地址命名的动态节点的服务器的网卡上绑定浮动IP地址,并检测当前服务器运作是否正常,如果是,则继续检测服务器运作是否正常,如果否,则删除已经绑定的浮动IP地址,守护进程退出,等待下次启动;在未成功创建以浮动IP地址命名的动态节点的服务器上,检测当前服务器的网卡上是否已经绑定浮动IP,如果是,则删除已经绑定的浮动IP地址;如果否,则守护进程退出,等待下次启动。
附图说明
图1为本发明一种实现浮动IP地址自动漂移的方法流程图;
图2为本发明一种实现浮动IP地址自动漂移的系统模块关系示意图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
本发明在应用层实现主机集群浮动IP地址的主动漂移,以达到集群对外服务高可用的目的。目前集群内的主机都有自己独立IP地址,但对外服务提供只能提供一个固定的IP地址做服务IP,因此此服务IP需要能够自动在集群内主机间自动漂移,以做到一旦一台主机宕机异常后,集群提供服务对外的表现是可用的。
如图1所示,本发明提供了一种实现浮动IP地址自动漂移的方法,
步骤1,在服务器集群中的每台服务器上安装守护进程;
步骤2,所述服务器集群中所有服务器的守护进程同时启动,守护进程在Zookeeper上竞争创建以浮动IP地址命名的动态节点;
步骤3,成功创建以浮动IP地址命名的动态节点的守护进程在其所属服务器的网卡上绑定浮动IP地址,执行步骤4;未成功创建以浮动IP地址命名的动态节点的守护进程检测当前服务器的网卡上是否已经绑定浮动IP,如果是执行步骤5;如果否则直接执行步骤6;
步骤4,守护进程检测当前服务器运作是否正常,如果是,则重复步骤4,如果否,则删除已经绑定的浮动IP地址,并执行步骤6;
步骤5,删除已经绑定的浮动IP地址,执行步骤6;
步骤6,守护进程退出,等待下次启动。
本发明所述方法利用Zookeeper的数值唯一性特点,在其上无法建立同名节点,从而通过多台主机同时由守护进程创建同名节点,保证浮动IP被绑定的主机的唯一性。本发明所述方法还利用Zookeeper动态节点与进程的依赖特性,当守护进程发现集群当前服务主机的服务不可用,或当前服务主机宕机时,守护进程会主动退出,从而在Zookeeper上的动态节点被Zookeeper自动释放,以及时通知其他主机立刻绑定浮动IP地址接替失效的服务主机。另外,通过利用Zookeeper上动态节点自动删除特性,可以在集群范围内及时获知服务主机异常,并由集群内备用主机及时替换,从而保证集群服务的高可用性。
在步骤1之前还包括,搭建独立的Zookeeper服务器集群,并且在Zookeeper上根据服务器集群和服务器名称建立固定路径,比如/cluster01/serviceA。Zookeeper集群的高可用性由Zookeeper自身保证。
步骤1还包括,在服务器集群中的每台服务器上安装监听进程,监听进程每隔预定时间调度守护进程。
如图2所示,一种实现浮动IP地址自动漂移的系统,包括守护进程模块;守护进程模块安装于服务器集群中的每台服务器上;守护进程模块,用于在Zookeeper上竞争创建以浮动IP地址命名的动态节点,在成功创建以浮动IP地址命名的动态节点的服务器的网卡上绑定浮动IP地址,并检测当前服务器运作是否正常,如果是,则继续检测服务器运作是否正常,如果否,则删除已经绑定的浮动IP地址,守护进程退出,等待下次启动;在未成功创建以浮动IP地址命名的动态节点的服务器上,检测当前服务器的网卡上是否已经绑定浮动IP,如果是,则删除已经绑定的浮动IP地址;如果否,则守护进程退出,等待下次启动。
一种实现浮动IP地址自动漂移的系统,服务器集群为Zookeeper服务器集群,Zookeeper上根据服务器集群和服务器名称建立有固定路径。
一种实现浮动IP地址自动漂移的系统,还包括监听进程模块,监听进程模块安装于服务器集群中的每台服务器上,监听进程模块每隔预定时间调度守护进程模块。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种实现浮动IP地址自动漂移的方法,其特征在于,
步骤1,在服务器集群中的每台服务器上安装守护进程;
步骤2,所述服务器集群中所有服务器的守护进程同时启动,守护进程在Zookeeper上竞争创建以浮动IP地址命名的动态节点;
步骤3,成功创建以浮动IP地址命名的动态节点的守护进程在其所属服务器的网卡上绑定浮动IP地址,执行步骤4;未成功创建以浮动IP地址命名的动态节点的守护进程检测当前服务器的网卡上是否已经绑定浮动IP,如果是执行步骤5;如果否则直接执行步骤6;
步骤4,守护进程检测当前服务器运作是否正常,如果是,则重复步骤4,如果否,则删除已经绑定的浮动IP地址,并执行步骤6;
步骤5,删除已经绑定的浮动IP地址,执行步骤6;
步骤6,守护进程退出,等待下次启动。
2.根据权利要求1所述一种实现浮动IP地址自动漂移的方法,其特征在于,在步骤1之前还包括,搭建独立的Zookeeper服务器集群,并且在Zookeeper上根据服务器集群和服务器名称建立固定路径。
3.根据权利要求1所述一种实现浮动IP地址自动漂移的方法,其特征在于,步骤1还包括,在所述服务器集群中的每台服务器上安装监听进程,所述监听进程每隔预定时间调度守护进程。
4.一种实现浮动IP地址自动漂移的系统,其特征在于,包括守护进程模块;所述守护进程模块安装于服务器集群中的每台服务器上;
所述守护进程模块,用于在Zookeeper上竞争创建以浮动IP地址命名的动态节点,在成功创建以浮动IP地址命名的动态节点的服务器的网卡上绑定浮动IP地址,并检测当前服务器运作是否正常,如果是,则继续检测服务器运作是否正常,如果否,则删除已经绑定的浮动IP地址,守护进程退出,等待下次启动;在未成功创建以浮动IP地址命名的动态节点的服务器上,检测当前服务器的网卡上是否已经绑定浮动IP,如果是,则删除已经绑定的浮动IP地址;如果否,则守护进程退出,等待下次启动。
5.根据权利要求4所述一种实现浮动IP地址自动漂移的系统,其特征在于,所述服务器集群为Zookeeper服务器集群,所述Zookeeper上根据服务器集群和服务器名称建立有固定路径。
6.根据权利要求4所述一种实现浮动IP地址自动漂移的系统,其特征在于,还包括监听进程模块,所述监听进程模块安装于服务器集群中的每台服务器上,所述监听进程模块每隔预定时间调度守护进程模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510484915.9A CN105049549B (zh) | 2015-08-07 | 2015-08-07 | 一种实现浮动ip地址自动漂移的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510484915.9A CN105049549B (zh) | 2015-08-07 | 2015-08-07 | 一种实现浮动ip地址自动漂移的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105049549A true CN105049549A (zh) | 2015-11-11 |
CN105049549B CN105049549B (zh) | 2018-12-28 |
Family
ID=54455748
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510484915.9A Active CN105049549B (zh) | 2015-08-07 | 2015-08-07 | 一种实现浮动ip地址自动漂移的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105049549B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106776156A (zh) * | 2016-12-13 | 2017-05-31 | 东软集团股份有限公司 | 一种服务控制方法及装置 |
CN107086940A (zh) * | 2017-03-31 | 2017-08-22 | 北京奇艺世纪科技有限公司 | 一种单服务运行方法及装置 |
CN111131543A (zh) * | 2019-12-26 | 2020-05-08 | 北京浪潮数据技术有限公司 | 一种sdn多线程时序控制方法、系统、装置及可读存储介质 |
CN111447146A (zh) * | 2020-03-20 | 2020-07-24 | 上海中通吉网络技术有限公司 | 物理路由信息的动态更新方法、装置、设备和存储介质 |
CN111722883A (zh) * | 2020-06-12 | 2020-09-29 | 浪潮电子信息产业股份有限公司 | 一种接口地址的更新方法、装置和计算机可读存储介质 |
CN112003745A (zh) * | 2020-08-18 | 2020-11-27 | 北京浪潮数据技术有限公司 | 管理节点访问方法、装置及计算机可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060195561A1 (en) * | 2005-02-28 | 2006-08-31 | Microsoft Corporation | Discovering and monitoring server clusters |
CN103530200A (zh) * | 2012-07-04 | 2014-01-22 | 腾讯科技(深圳)有限公司 | 一种服务器热备份系统和方法 |
CN103595781A (zh) * | 2013-11-11 | 2014-02-19 | 华为技术有限公司 | 一种基于zookeeper的服务提供方法、第一服务器及系统 |
CN103618621A (zh) * | 2013-11-21 | 2014-03-05 | 华为技术有限公司 | 一种软件定义网络sdn的自动配置方法、设备及系统 |
CN103716182A (zh) * | 2013-12-12 | 2014-04-09 | 中国科学院信息工程研究所 | 一种面向实时云平台的故障检测与容错方法及系统 |
CN103747044A (zh) * | 2013-12-24 | 2014-04-23 | 汉柏科技有限公司 | 一种服务锁定方法及系统 |
-
2015
- 2015-08-07 CN CN201510484915.9A patent/CN105049549B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060195561A1 (en) * | 2005-02-28 | 2006-08-31 | Microsoft Corporation | Discovering and monitoring server clusters |
CN103530200A (zh) * | 2012-07-04 | 2014-01-22 | 腾讯科技(深圳)有限公司 | 一种服务器热备份系统和方法 |
CN103595781A (zh) * | 2013-11-11 | 2014-02-19 | 华为技术有限公司 | 一种基于zookeeper的服务提供方法、第一服务器及系统 |
CN103618621A (zh) * | 2013-11-21 | 2014-03-05 | 华为技术有限公司 | 一种软件定义网络sdn的自动配置方法、设备及系统 |
CN103716182A (zh) * | 2013-12-12 | 2014-04-09 | 中国科学院信息工程研究所 | 一种面向实时云平台的故障检测与容错方法及系统 |
CN103747044A (zh) * | 2013-12-24 | 2014-04-23 | 汉柏科技有限公司 | 一种服务锁定方法及系统 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106776156A (zh) * | 2016-12-13 | 2017-05-31 | 东软集团股份有限公司 | 一种服务控制方法及装置 |
CN107086940A (zh) * | 2017-03-31 | 2017-08-22 | 北京奇艺世纪科技有限公司 | 一种单服务运行方法及装置 |
CN107086940B (zh) * | 2017-03-31 | 2019-11-15 | 北京奇艺世纪科技有限公司 | 一种单服务运行方法及装置 |
CN111131543A (zh) * | 2019-12-26 | 2020-05-08 | 北京浪潮数据技术有限公司 | 一种sdn多线程时序控制方法、系统、装置及可读存储介质 |
CN111131543B (zh) * | 2019-12-26 | 2022-07-22 | 北京浪潮数据技术有限公司 | 一种sdn多线程时序控制方法、系统、装置及可读存储介质 |
CN111447146A (zh) * | 2020-03-20 | 2020-07-24 | 上海中通吉网络技术有限公司 | 物理路由信息的动态更新方法、装置、设备和存储介质 |
CN111722883A (zh) * | 2020-06-12 | 2020-09-29 | 浪潮电子信息产业股份有限公司 | 一种接口地址的更新方法、装置和计算机可读存储介质 |
CN112003745A (zh) * | 2020-08-18 | 2020-11-27 | 北京浪潮数据技术有限公司 | 管理节点访问方法、装置及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105049549B (zh) | 2018-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105049549A (zh) | 一种实现浮动ip地址自动漂移的方法和系统 | |
US10581674B2 (en) | Method and apparatus for expanding high-availability server cluster | |
CN106533805B (zh) | 一种微服务请求处理方法、微服务控制器及微服务架构 | |
JP6026705B2 (ja) | 更新管理システムおよび更新管理方法 | |
CN110990047B (zh) | 用于多个微服务架构的融合方法及装置 | |
CN106936618B (zh) | 一种数据采集方法和系统 | |
CN111290834A (zh) | 一种基于云管理平台实现业务高可用的方法、装置及设备 | |
CN103152419A (zh) | 一种云计算平台的高可用集群管理方法 | |
CN105897827A (zh) | 服务器节点、局域网服务器集群及其实现方法 | |
CN107005435B (zh) | 一种网络服务描述符上架方法及装置 | |
CN112948063B (zh) | 云平台的创建方法、装置、云平台以及云平台实现系统 | |
CN103312809A (zh) | 云平台中服务的分布式管理方法 | |
CN104935672A (zh) | 负载均衡服务高可用实现方法和设备 | |
CN107508694B (zh) | 一种集群内的节点管理方法及节点设备 | |
CN110391940A (zh) | 服务地址的响应方法、装置、系统、设备和存储介质 | |
CN113039763A (zh) | 使用nf之间的直接信令的nf服务消费者重启检测 | |
CN102420820A (zh) | 一种集群系统中的隔离方法和装置 | |
CN103607296A (zh) | 一种虚拟机故障处理方法和设备 | |
CN101262479B (zh) | 一种网络文件共享的方法、服务器和网络文件共享的系统 | |
US20140101320A1 (en) | Information processing system, control method, management apparatus and computer-readable recording medium | |
CN103188171A (zh) | 一种报文调度方法和设备 | |
CN103931138A (zh) | 可扩展的分布式多集群设备管理服务器架构及其操作的方法 | |
CN108271149B (zh) | 一种用户数据锚点迁移的方法、设备和系统 | |
CN103152420A (zh) | 一种避免Ovirt虚拟管理平台单点失效的方法 | |
KR101430570B1 (ko) | 분산 컴퓨팅 시스템 및 상기 분산 컴퓨팅 시스템에서의 장애 복구 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |