CN115378808A - 一种使用iptables实现蓝绿发布的方法 - Google Patents
一种使用iptables实现蓝绿发布的方法 Download PDFInfo
- Publication number
- CN115378808A CN115378808A CN202210982033.5A CN202210982033A CN115378808A CN 115378808 A CN115378808 A CN 115378808A CN 202210982033 A CN202210982033 A CN 202210982033A CN 115378808 A CN115378808 A CN 115378808A
- Authority
- CN
- China
- Prior art keywords
- iptables
- service
- server
- green
- blue
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 17
- 238000001914 filtration Methods 0.000 claims description 14
- 230000002159 abnormal effect Effects 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 6
- 230000000694 effects Effects 0.000 claims description 5
- 238000005096 rolling process Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/085—Retrieval of network configuration; Tracking network configuration history
- H04L41/0859—Retrieval of network configuration; Tracking network configuration history by keeping history of different configuration generations or by rolling back to previous configuration versions
- H04L41/0863—Retrieval of network configuration; Tracking network configuration history by keeping history of different configuration generations or by rolling back to previous configuration versions by rolling back to previous configuration versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0889—Techniques to speed-up the configuration process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0236—Filtering by address, protocol, port number or service, e.g. IP-address or URL
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种使用iptables实现蓝绿发布的方法,涉及蓝绿发布技术领域,包括以下步骤:步骤一,新版本服务部署;工程师将新版本服务部署到需要更新的服务器上,新版本(9000端口)服务监听与旧版本(8080端口)不同的端口;步骤二,新版本服务加载,当将新版本服务部署到需要更新的服务器上后,启动服务器,加载完毕新版本服务,确保加载状态正常;步骤三,规则编写。本发明通过iptables转发流量方式,在不改变流量入口的方式下,可以只使用单台服务器的情况下实现蓝绿发布,可以更加节约服务器资源,缩减了一半的服务器资源,而且所有操作均在单台服务器上进行,可以大大减少操作的复杂程度,使得蓝绿发布更加简单便捷,减少操作人员的失误。
Description
技术领域
本发明涉及蓝绿发布技术领域,具体涉及一种使用iptables实现蓝绿发布的方法。
背景技术
蓝绿发布是目前最为常见的一种版本发布方式,利用蓝绿发布来对应用服务进行升级,不仅可以降低用户的感知度,而且,也可以实现应用服务的平滑升级效果,蓝绿发布是一种以可预测的方式进行应用发布的技术,目的是减少应用升级中服务中断的时间,应用平滑升级,目前最常见的蓝绿发布方式基本都是通过服务冗余来解决应用升级问题,即在生产环境准备两组相同的基础设施集群并在每组集群上部署相同应用服务,其中一组是活跃流量的配置(绿色环境),另外一组是待切的配置(蓝色环境),用户访问时,会把所有流量通过负载均衡路由到绿色环境的应用集群。当应用服务需要进行版本升级时,在蓝色环境中部署新版本的应用,测试通过后切断绿色环境的用户访问,并将所有外部流量通过负载均衡路由到蓝色环境的应用集群。使用蓝绿发布方式进行应用服务版本升级的好处在于运维人员可以始终在蓝色环境进行应用部署,即使出现问题也不会影响绿色环境的服务,如果流量切换后发现问题也可以在很短的时间内完成服务回滚,从而降低应用版本升级所带来的服务中断风险。
针对现有技术存在以下问题:
现有的蓝绿发布的方法在进行时需要启动一组新的虚拟机运行新版本的服务,在新版本服务启动后,将流量切换到新虚拟机的新服务上,这种方式不仅操作不够方便,而且还需要消耗多一组虚拟机资源。
发明内容
本发明提供一种使用iptables实现蓝绿发布的方法,以解决上述背景技术中提出的问题。
为解决上述技术问题,本发明所采用的技术方案是:
一种使用iptables实现蓝绿发布的方法,包括以下步骤:步骤一,新版本服务部署;工程师将新版本服务部署到需要更新的服务器上,新版本(9000端口)服务监听与旧版本(8080端口)不同的端口;步骤二,新版本服务加载,当将新版本服务部署到需要更新的服务器上后,启动服务器,加载完毕新版本服务,确保加载状态正常;步骤三,规则编写,工程师将一条新的iptables规则写进iptables里面;步骤四,运行检测,将运行新iptables规则的iptables进行运行,查看运行是否正常;步骤五,蓝绿发布,将运行正常的新版本服务器进行发布。
本发明技术方案的进一步改进在于:所述步骤一中的8080端口和9000端口为两个不同端口。
本发明技术方案的进一步改进在于:所述步骤三中iptables内容为-APREROUTING-p tcp-m tcp--dport 8080-j REDIRECT--to-ports 9000。
本发明技术方案的进一步改进在于:所述步骤三中iptables规则的作用是将访问服务器8080端口的流量转发到9000端口,iptables规则生效之后,用户可以通过访问服务器8080端口去访问新服务,这样工程师就可以完成不停机的服务更新操作,而且是新旧版本服务共存的蓝绿发布。
本发明技术方案的进一步改进在于:所述步骤三中的iptables是一个工作于用户空间的防火墙应用软件,是与3.5版本Linux内核集成的IP信息包过滤***,如果Linux***连接到因特网或LAN、服务器或连接LAN和因特网的代理服务器,则该***有利于在Linux***上更好地控制IP信息包过滤和防火墙配置。
本发明技术方案的进一步改进在于:所述步骤四中的运行检测的输出端信号连接有异常应对,所述异常应对的输出端信号连接有规则去除,所述规则去除的输出端与规则编写的输出端信号连接。
本发明技术方案的进一步改进在于:当新的iptables规则的iptables进行运行后,服务出现异常,需要紧急回滚,工程师只需要将刚才添加的规则去除,便可以让用户重新访问旧版本服务,完成服务回滚操作。
由于采用了上述技术方案,本发明相对现有技术来说,取得的技术进步是:
1、本发明提供一种使用iptables实现蓝绿发布的方法,通过新版本服务部署、新版本服务加载、规则编写、运行检测、异常应对、规则去除和蓝绿发布等步骤的相互配合下,工程师将新版本服务部署到需要更新的服务器上,新版本(9000端口)服务监听与旧版本(8080端口)不同的端口,当将新版本服务部署到需要更新的服务器上后,启动服务器,加载完毕新版本服务,确保加载状态正常,工程师将一条新的iptables规则写进iptables里面,将运行新iptables规则的iptables进行运行,查看运行是否正常,iptables内容为-APREROUTING-p tcp-m tcp--dport 8080-j REDIRECT--to-ports 9000,作用是将访问服务器8080端口的流量转发到9000端口,iptables规则生效之后,用户可以通过访问服务器8080端口去访问新服务,这样工程师就可以完成不停机的服务更新操作,而且是新旧版本服务共存的蓝绿发布,当新的iptables规则的iptables进行运行后,服务出现异常,需要紧急回滚,工程师只需要将刚才添加的规则去除,便可以让用户重新访问旧版本服务,完成服务回滚操作,通过iptables转发流量方式,在不改变流量入口的方式下,可以只使用单台服务器的情况下实现蓝绿发布,可以更加节约服务器资源,缩减了一半的服务器资源,而且所有操作均在单台服务器上进行,可以大大减少操作的复杂程度,使得蓝绿发布更加简单便捷,减少操作人员的失误。
附图说明
图1和图2为本发明的流程示意图。
具体实施方式
下面结合实施例对本发明做进一步详细说明:
实施例1
如图1-2所示,本发明提供了一种使用iptables实现蓝绿发布的方法,包括以下步骤:步骤一,新版本服务部署;工程师将新版本服务部署到需要更新的服务器上,新版本(9000端口)服务监听与旧版本(8080端口)不同的端口;步骤二,新版本服务加载,当将新版本服务部署到需要更新的服务器上后,启动服务器,加载完毕新版本服务,确保加载状态正常;步骤三,规则编写,工程师将一条新的iptables规则写进iptables里面;步骤四,运行检测,将运行新iptables规则的iptables进行运行,查看运行是否正常;步骤五,蓝绿发布,将运行正常的新版本服务器进行发布,所述步骤一中的8080端口和9000端口为两个不同端口,所述步骤三中iptables内容为-A PREROUTING-p tcp-m tcp--dport 8080-jREDIRECT--to-ports 9000,所述步骤三中iptables规则的作用是将访问服务器8080端口的流量转发到9000端口,iptables规则生效之后,用户可以通过访问服务器8080端口去访问新服务,这样工程师就可以完成不停机的服务更新操作,而且是新旧版本服务共存的蓝绿发布,所述步骤三中的iptables是一个工作于用户空间的防火墙应用软件,是与3.5版本Linux内核集成的IP信息包过滤***,如果Linux***连接到因特网或LAN、服务器或连接LAN和因特网的代理服务器,则该***有利于在Linux***上更好地控制IP信息包过滤和防火墙配置,所述步骤四中的运行检测的输出端信号连接有异常应对,所述异常应对的输出端信号连接有规则去除,所述规则去除的输出端与规则编写的输出端信号连接,当新的iptables规则的iptables进行运行后,服务出现异常,需要紧急回滚,工程师只需要将刚才添加的规则去除,便可以让用户重新访问旧版本服务,完成服务回滚操作。
在本实施例中,通过iptables转发流量方式,在不改变流量入口的方式下,可以只使用单台服务器的情况下实现蓝绿发布,对比现有技术,可以更加节约服务器资源,缩减了一半的服务器资源。而且所有操作均在单台服务器上进行,可以大大减少操作的复杂程度,使得蓝绿发布更加简单便捷,减少操作人员的失误。
下面具体说一下该使用iptables实现蓝绿发布的方法的工作原理。
如图1-2所示,工程师将新版本服务部署到需要更新的服务器上,新版本服务监听与旧版本不同的端口(假设旧版本是8080,则新版本就是9000),当新版本服务加载完毕,状态正常之后,工程师将一条新的iptables规则写进iptables里面,该规则内容为-APREROUTING-p tcp-m tcp--dport 8080-j REDIRECT--to-ports 9000,该规则的作用是将访问服务器8080端口的流量转发到9000端口,Iptables规则生效之后,用户可以通过访问服务器8080端口去访问新服务,这样工程师就可以完成不停机的服务更新操作,而且是新旧版本服务共存的蓝绿发布,如果此时新版本服务出现异常,需要紧急回滚,工程师只需要将刚才添加的规则去除,便可以让用户重新访问旧版本服务,完成服务回滚操作,通过iptables转发流量方式,在不改变流量入口的方式下,可以只使用单台服务器的情况下实现蓝绿发布,对比现有技术,可以更加节约服务器资源,缩减了一半的服务器资源。而且所有操作均在单台服务器上进行,可以大大减少操作的复杂程度,通过自动切换,使得蓝绿发布更加简单便捷,减少操作人员的失误,具有提升发布效率,降低操作风险,节约服务器资源的优点。
上文一般性的对本发明做了详尽的描述,但在本发明基础上,可以对之做一些修改或改进,这对于技术领域的一般技术人员是显而易见的。因此,在不脱离本发明思想精神的修改或改进,均在本发明的保护范围之内。
Claims (7)
1.一种使用iptables实现蓝绿发布的方法,其特征在于,包括以下步骤:
步骤一,新版本服务部署;工程师将新版本服务部署到需要更新的服务器上,新版本(9000端口)服务监听与旧版本(8080端口)不同的端口;
步骤二,新版本服务加载,当将新版本服务部署到需要更新的服务器上后,启动服务器,加载完毕新版本服务,确保加载状态正常;
步骤三,规则编写,工程师将一条新的iptables规则写进iptables里面;
步骤四,运行检测,将运行新iptables规则的iptables进行运行,查看运行是否正常;
步骤五,蓝绿发布,将运行正常的新版本服务器进行发布。
2.根据权利要求1所述的一种使用iptables实现蓝绿发布的方法,其特征在于:所述步骤一中的8080端口和9000端口为两个不同端口。
3.根据权利要求1所述的一种使用iptables实现蓝绿发布的方法,其特征在于:所述步骤三中iptables内容为-A PREROUTING-p tcp-m tcp--dport8080-j REDIRECT--to-ports9000。
4.根据权利要求1所述的一种使用iptables实现蓝绿发布的方法,其特征在于:所述步骤三中iptables规则的作用是将访问服务器8080端口的流量转发到9000端口,iptables规则生效之后,用户可以通过访问服务器8080端口去访问新服务,这样工程师就可以完成不停机的服务更新操作,而且是新旧版本服务共存的蓝绿发布。
5.根据权利要求1所述的一种使用iptables实现蓝绿发布的方法,其特征在于:所述步骤三中的iptables是一个工作于用户空间的防火墙应用软件,是与3.5版本Linux内核集成的IP信息包过滤***,如果Linux***连接到因特网或LAN、服务器或连接LAN和因特网的代理服务器,则该***有利于在Linux***上更好地控制IP信息包过滤和防火墙配置。
6.根据权利要求1所述的一种使用iptables实现蓝绿发布的方法,其特征在于:所述步骤四中的运行检测的输出端信号连接有异常应对,所述异常应对的输出端信号连接有规则去除,所述规则去除的输出端与规则编写的输出端信号连接。
7.根据权利要求1所述的一种使用iptables实现蓝绿发布的方法,其特征在于:当新的iptables规则的iptables进行运行后,服务出现异常,需要紧急回滚,工程师只需要将刚才添加的规则去除,便可以让用户重新访问旧版本服务,完成服务回滚操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210982033.5A CN115378808A (zh) | 2022-08-16 | 2022-08-16 | 一种使用iptables实现蓝绿发布的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210982033.5A CN115378808A (zh) | 2022-08-16 | 2022-08-16 | 一种使用iptables实现蓝绿发布的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115378808A true CN115378808A (zh) | 2022-11-22 |
Family
ID=84065205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210982033.5A Pending CN115378808A (zh) | 2022-08-16 | 2022-08-16 | 一种使用iptables实现蓝绿发布的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115378808A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020144256A1 (en) * | 2001-03-30 | 2002-10-03 | Navin Budhiraja | Method of deployment for concurrent execution of multiple versions of an integration model on an integration server |
CN106919418A (zh) * | 2017-01-22 | 2017-07-04 | 北京奇艺世纪科技有限公司 | 在线应用快速回滚的方法及装置 |
CN107153560A (zh) * | 2017-05-25 | 2017-09-12 | 微梦创科网络科技(中国)有限公司 | 版本升级方法、服务器和*** |
CN110471683A (zh) * | 2019-08-06 | 2019-11-19 | 上海浦东发展银行股份有限公司***中心 | 一种基于智能dns的容器云应用蓝绿发布方法 |
US10560372B1 (en) * | 2017-08-28 | 2020-02-11 | Amazon Technologies, Inc. | Request routing based on server software versions |
CN111352642A (zh) * | 2020-02-27 | 2020-06-30 | 厦门网宿有限公司 | 服务设备及服务软件升级的方法 |
CN111399855A (zh) * | 2020-03-09 | 2020-07-10 | 山东汇贸电子口岸有限公司 | 一种基于容器技术的自动化应用实例发布方法 |
CN114090022A (zh) * | 2021-11-30 | 2022-02-25 | 建信金融科技有限责任公司 | ***部署方法、装置、设备及计算机存储介质 |
-
2022
- 2022-08-16 CN CN202210982033.5A patent/CN115378808A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020144256A1 (en) * | 2001-03-30 | 2002-10-03 | Navin Budhiraja | Method of deployment for concurrent execution of multiple versions of an integration model on an integration server |
CN106919418A (zh) * | 2017-01-22 | 2017-07-04 | 北京奇艺世纪科技有限公司 | 在线应用快速回滚的方法及装置 |
CN107153560A (zh) * | 2017-05-25 | 2017-09-12 | 微梦创科网络科技(中国)有限公司 | 版本升级方法、服务器和*** |
US10560372B1 (en) * | 2017-08-28 | 2020-02-11 | Amazon Technologies, Inc. | Request routing based on server software versions |
CN110471683A (zh) * | 2019-08-06 | 2019-11-19 | 上海浦东发展银行股份有限公司***中心 | 一种基于智能dns的容器云应用蓝绿发布方法 |
CN111352642A (zh) * | 2020-02-27 | 2020-06-30 | 厦门网宿有限公司 | 服务设备及服务软件升级的方法 |
CN111399855A (zh) * | 2020-03-09 | 2020-07-10 | 山东汇贸电子口岸有限公司 | 一种基于容器技术的自动化应用实例发布方法 |
CN114090022A (zh) * | 2021-11-30 | 2022-02-25 | 建信金融科技有限责任公司 | ***部署方法、装置、设备及计算机存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5050059B2 (ja) | 仮想マシン内の分配されたハードウェア状態管理 | |
CN100445952C (zh) | 通信设备中软件版本升级的方法及装置 | |
US7389505B2 (en) | Method and apparatus for modifying software | |
CN111683109B (zh) | 一种微服务*** | |
CN102455936A (zh) | 集群的快速部署方法 | |
CN102238093B (zh) | 防止业务中断的方法和装置 | |
CA2325652A1 (en) | A method for intercepting network packets in a computing device | |
CN110471683B (zh) | 一种基于智能dns的容器云应用蓝绿发布方法 | |
US20020147823A1 (en) | Computer network system | |
CN106648863A (zh) | 一种安卓应用安装包、应用目标进程保活方法及*** | |
CN1979418A (zh) | 动态升级程序的方法 | |
EP2568690B1 (en) | Method for binding physical network ports, network card and communication system | |
US20140310730A1 (en) | Multiple interface support | |
US20050193388A1 (en) | Method, system and program product for controlling native applications using open service gateway initiative (OSGi) bundles | |
CN117120984A (zh) | 云计算平台上构建数据中心的多基层容错持续交付 | |
US20100293201A1 (en) | Nfs agent upgrade | |
WO2023109346A1 (zh) | 网络虚拟化服务***以及网络虚拟化服务器 | |
CN111966374A (zh) | 一种基于容器的能源控制器终端软件部署及管理方法 | |
CN115378808A (zh) | 一种使用iptables实现蓝绿发布的方法 | |
JP2002532784A (ja) | ネットワークドライバおよびソフトウェアのリモートインストールの方法および装置 | |
US7340738B2 (en) | Time optimized replacement of a software application | |
US7644189B2 (en) | Method for upgrading network server programming conditions, associated system and software product | |
CN101022636A (zh) | 设备升级方法及硬件设备 | |
US11405277B2 (en) | Information processing device, information processing system, and network communication confirmation method | |
CN115268929A (zh) | 一种支持轻交付部署的极简运维方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20221122 |