CN110166267B - 内容分发网络配置方法和系统、主控服务器和节点服务器 - Google Patents
内容分发网络配置方法和系统、主控服务器和节点服务器 Download PDFInfo
- Publication number
- CN110166267B CN110166267B CN201810149458.1A CN201810149458A CN110166267B CN 110166267 B CN110166267 B CN 110166267B CN 201810149458 A CN201810149458 A CN 201810149458A CN 110166267 B CN110166267 B CN 110166267B
- Authority
- CN
- China
- Prior art keywords
- configuration
- node server
- user
- server
- data
- 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.)
- Active
Links
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
-
- 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/084—Configuration by using pre-existing information, e.g. using templates or copying from other elements
- H04L41/0843—Configuration by using pre-existing information, e.g. using templates or copying from other elements based on generic templates
-
- 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/0876—Aspects of the degree of configuration automation
- H04L41/0886—Fully automatic configuration
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Automation & Control Theory (AREA)
- Information Transfer Between Computers (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开一种内容分发网络配置方法和系统、主控服务器和节点服务器。该方法包括:节点服务器以预定时间间隔查询节点服务器用户数据仓库中用户配置数据以及节点服务器配置模板库中配置模板是否有变更;在用户配置数据和配置模板中的至少一项有变更的情况下,节点服务器解析发生变更的用户配置数据和配置模板,生成相应模块的配置文件;节点服务器为每个模块加载对应的配置文件。本发明可以实现一种高效、灵活、自动化的异构配置生成及生效系统;本发明可以通过配置生成器的轮询机制,解决配置变更发现的问题。
Description
技术领域
本发明涉及内容分发网络领域,特别涉及一种内容分发网络配置方法和系统、主控服务器和节点服务器。
背景技术
CDN(Content Delivery Network,内容分发网络)包括不同运营商、不同地域的多个节点;每个节点、每个加速域名都需要不同的配置,其中,加速域名指的是CDN用户在CDN服务提供商配置的域名,该域名可被网民实际访问。
CDN网络的目的是通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络“边缘”,使用户可以就近取得所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。
对散布在全国乃至全球范围内的节点,如何高效、灵活、自动化的实现异构配置并生效,是CDN系统的核心技术之一。
传统CDN厂商在处理异构配置时,往往基于人工生成的异构配置,通过自动化上线系统,分发到各个CDN节点上。
另一相关方案则基于中控机和中继机的CDN业务自动配置系统,解决了跨地域、跨运营商数据安全和可靠传输的问题。
发明内容
申请人发现:现有的内容分发网络配置方案存在以下问题:
第一、由人工处理异构配置,配置维护困难,且容易造成运维事故。
第二、由中控机生成配置再分发到各个节点,数据传输量大,中控机计算压力大。
第三、用户配置、节点配置异构程度大,需要一种更灵活的配置生成方式。
鉴于以上技术问题,本发明提供了一种内容分发网络配置方法和系统、主控服务器和节点服务器,实现一种高效、灵活、自动化的异构配置的生成及生效方案。
根据本发明的一个方面,提供一种内容分发网络配置方法,包括:
节点服务器以预定时间间隔查询节点服务器用户数据仓库中用户配置数据以及节点服务器配置模板库中配置模板是否有变更;
在用户配置数据和配置模板中的至少一项有变更的情况下,节点服务器解析发生变更的用户配置数据和配置模板,生成相应模块的配置文件;
节点服务器为每个模块加载对应的配置文件。
在本发明的一些实施例中,所述节点服务器解析发生变更的用户配置数据和对应的配置模板,生成相应模块的配置文件包括:
节点服务器判断发生变更的用户配置数据和配置模板是否包括本节点服务器相关模块的用户配置数据或配置模板;
在发生变更的用户配置数据和配置模板包括本节点服务器相关模块的用户配置数据或配置模板的情况下,解析发生变更的本节点服务器相关模块的用户配置数据和配置模板,生成相应模块的配置文件。
在本发明的一些实施例中,所述内容分发网络配置方法还包括:
节点服务器上报本机配置状态信息到主控服务器,以便主控服务器汇总所有内容分发网络节点的配置状态信息并反馈给用户和运维人员。
在本发明的一些实施例中,所述内容分发网络配置方法还包括:
节点服务器用户数据仓库和主控服务器用户数据仓库保持同步,其中,主控服务器用户数据仓库存储内容分发网络用户配置的用户配置数据;主控服务器用户数据仓库在内容分发网络每个节点服务器上保持一份拷贝。
在本发明的一些实施例中,所述内容分发网络配置方法还包括:
节点服务器配置模板库和主控服务器配置模板库保持同步,其中,主控服务器配置模板库存储运维人员预先编写好的各个模块的配置模板,主控服务器配置模板库在内容分发网络每个节点服务器上保持一份拷贝。
根据本发明的另一方面,提供一种内容分发网络配置方法,包括:
主控服务器根据用户配置请求,生成用户配置数据并提交至主控服务器用户数据仓库;
主控服务器用户数据仓库在内容分发网络每个节点服务器上保持一份拷贝,以便节点服务器用户数据仓库与主控服务器用户数据仓库保持同步,并在用户配置数据变更的情况下,触发节点服务器解析变更的用户配置数据和对应的配置模板,生成新的配置文件。
在本发明的一些实施例中,所述内容分发网络配置方法还包括:
主控服务器配置模板库存储运维人员预先编写好的各个模块的配置模板;
主控服务器配置模板库在内容分发网络每个节点服务器上保持一份拷贝,以便节点服务器配置模板库与主控服务器配置模板库保持同步,并在配置模板变更的情况下,触发节点服务器解析变更的配置模板和对应的用户配置数据,生成新的配置文件。
根据本发明的另一方面,提供一种节点服务器,包括:
配置生成器,用于以预定时间间隔查询节点服务器用户数据仓库中用户配置数据以及节点服务器配置模板库中配置模板是否有变更;在用户配置数据和配置模板中的至少一项有变更的情况下,解析发生变更的用户配置数据和配置模板,生成相应模块的配置文件;以及为每个模块加载对应的配置文件;
节点服务器用户数据仓库,用于存储用户配置数据;
节点服务器配置模板库,用于存储配置模板。
在本发明的一些实施例中,所述节点服务器用于执行实现如上述任一实施例所述内容分发网络配置方法的操作。
根据本发明的另一方面,提供一种节点服务器,包括节点服务器存储器和节点服务器处理器,其中:
节点服务器存储器,用于存储指令;
节点服务器处理器,用于执行所述指令,使得所述节点服务器执行实现如上述任一实施例所述内容分发网络配置方法的操作。
根据本发明的另一方面,提供一种主控服务器,其特征在于,包括:
用户数据生成器,用于根据用户配置请求,生成用户配置数据并提交至主控服务器用户数据仓库;
主控服务器用户数据仓库,用于在内容分发网络每个节点服务器上保持一份拷贝,以便节点服务器用户数据仓库与主控服务器用户数据仓库保持同步,并在用户配置数据变更的情况下,触发节点服务器解析变更的用户配置数据和对应的配置模板,生成新的配置文件。
在本发明的一些实施例中,所述主控服务器还包括:
主控服务器配置模板库,用于存储运维人员预先编写好的各个模块的配置模板;在内容分发网络每个节点服务器上保持一份拷贝,以便节点服务器配置模板库与主控服务器配置模板库保持同步,并在配置模板变更的情况下,触发节点服务器解析变更的配置模板和对应的用户配置数据,生成新的配置文件。
根据本发明的另一方面,提供一种主控服务器,包括主控服务器存储器和主控服务器处理器,其中:
主控服务器存储器,用于存储指令;
主控服务器处理器,用于执行所述指令,使得所述主控服务器执行实现如上述任一实施例所述内容分发网络配置方法的操作。
根据本发明的另一方面,提供一种内容分发网络配置系统,包括如上述任一实施例所述的节点服务器、以及如上述任一实施例所述的主控服务器。
根据本发明的另一方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述指令被节点服务器处理器执行时实现如上述任一实施例所述的内容分发网络配置方法。
本发明可以实现一种高效、灵活、自动化的异构配置生成及生效系统;本发明可以通过配置生成器的轮询机制,解决配置变更发现的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明内容分发网络配置系统一些实施例的示意图。
图2为本发明内容分发网络配置系统另一些实施例的示意图。
图3为本发明节点服务器一些实施例的示意图。
图4为本发明主控服务器一些实施例的示意图。
图5为本发明内容分发网络配置方法一些实施例的示意图。
图6为本发明内容分发网络配置方法另一些实施例的示意图。
图7为本发明内容分发网络配置方法另一些实施例的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图1为本发明内容分发网络配置系统一些实施例的示意图。如图1所示,所述内容分发网络配置系统可以包括主控服务器1和至少一个节点服务器2,其中:
主控服务器1,用于根据用户配置请求,生成用户配置数据并提交至主控服务器用户数据仓库,其中主控服务器用户数据仓库在内容分发网络每个节点服务器上保持一份拷贝,主控服务器用户数据仓库与节点服务器用户数据仓库保持同步,以便在用户配置数据变更的情况下,触发节点服务器2解析变更的用户配置数据和对应的配置模板,生成新的配置文件。
节点服务器2,用于以预定时间间隔查询节点服务器用户数据仓库中用户配置数据以及节点服务器配置模板库中配置模板是否有变更;在用户配置数据和配置模板中的至少一项有变更的情况下,解析发生变更的用户配置数据和配置模板,生成相应模块的配置文件;并为每个模块加载对应的配置文件。
在本发明的一些实施例中,节点服务器2设置与CDN网络中每个CDN节点。CDN网络的每个CDN节点设置有多个节点服务器2。
其中,CDN节点指的是部署在不同运营商、不同地域的一个逻辑上的数据中心,一个CDN节点能够提供完整功能的CDN服务。而节点服务器指的是一个CDN节点内对外提供服务的实际物理设备。
基于本发明上述实施例提供的内容分发网络配置系统,可以使用配置模板和配置数据生成配置文件,从而解决了CDN节点和用户数据异构配置自动生成和生效的问题。本发明上述实施例可以通过配置生成器的轮询机制,解决了配置变更发现的问题。本发明上述实施例可以通过可编程的配置模板,解决了用户配置的灵活性问题。本发明上述实施例可以通过版本控制软件,解决了配置模板和用户配置数据传输问题。
图2为本发明内容分发网络配置系统另一些实施例的示意图。图2还给出了本发明一些实施例中节点服务器的示意图。与图1实施例相比,图2实施例中,节点服务器2可以包括节点服务器用户数据仓库21、节点服务器配置模板库22和配置生成器23,其中:
节点服务器用户数据仓库21,用于存储内容分发网络用户配置的用户配置数据。
在本发明的一些实施例中,节点服务器用户数据仓库21可以用于通过版本控制软件(包括但不限于git、svn等)主动和主控服务器用户数据仓库保持同步,其中,主控服务器用户数据仓库用于使用版本控制软件存储CDN用户配置的数据文件;主控服务器用户数据仓库在内容分发网络每个节点服务器(具体为内容分发网络各个CDN节点上的每节点服务器)上保持一份拷贝。
在本发明的一些实施例中,用户数据文件可以为预定的其它格式的数据文件。
在本发明的一些实施例中,节点服务器用户数据仓库21和主控服务器用户数据仓库可以使用其它版本的控制软件或分布式文件系统。
节点服务器配置模板库22,用于存储运维人员预先编写好的各个模块的配置模板。
在本发明的一些实施例中,节点服务器配置模板库22可以用于通过版本控制软件(包括但不限于git、svn等)主动和主控服务器配置模板库保持同步,其中,主控服务器配置模板库可以用于使用版本控制软件存储CDN用户配置的数据文件,主控服务器配置模板库在内容分发网络每个节点服务器上保持一份拷贝。
在本发明的一些实施例中,配置模板可以采用可编程的方式实现,其要素包括但不限于分支、循环、变量等。配置模板可根据节点信息、用户配置数据进行编程。
在本发明的一些实施例中,配置模板可以为采用预定格式的可编程语言。
在本发明的一些实施例中,节点服务器配置模板库22和主控服务器配置模板库可以使用其它版本的控制软件或分布式文件系统。
配置生成器23,用于以预定时间间隔查询(即定期轮询)节点服务器用户数据仓库21中用户配置数据以及节点服务器配置模板库22中配置模板是否有变更;在用户配置数据和配置模板中的至少一项有变更(即轮询到版本变更)的情况下,解析发生变更的用户配置数据和配置模板,生成相应模块的配置文件;以及为每个模块加载对应的配置文件,其中,所述模块指的是一组部署在一台或多台服务器上的可执行程序,这些可执行程序共同对外提供某一种服务。
基于本发明上述实施例提供的节点服务器,可以使用配置模板和配置数据生成配置文件,从而解决了CDN节点和用户数据异构配置自动生成和生效的问题。本发明上述实施例可以通过节点服务器的配置生成器的轮询机制,解决了配置变更发现的问题。本发明上述实施例可以通过可编程的配置模板,解决了用户配置的灵活性问题。本发明上述实施例可以通过版本控制软件,解决了配置模板和用户配置数据传输问题。
在本发明的一些实施例中,节点服务器的配置生成器23具体可以用于在用户配置数据和配置模板中的至少一项有变更的情况下,判断发生变更的用户配置数据和配置模板是否包括本节点服务器相关模块的用户配置数据或配置模板(即判断本机相关模块是否发生变更);在发生变更的用户配置数据和配置模板包括本节点服务器相关模块的用户配置数据或配置模板的情况下,解析发生变更的本节点服务器相关模块的用户配置数据和配置模板,生成相应模块的配置文件。
本发明上述实施例的各个节点服务器的配置生成器只负责对本服务器相关模块的配置进行自动生成和生效。相比中控即生成配置再分发给各个节点的方案,大大降低了中控机计算压力和数据传输量。本发明上述实施例提供了一种更高效、灵活、自动化的异构配置的生成及生效方案。
图3为本发明节点服务器一些实施例的示意图。如图3所示,图1或图2实施例中的节点服务器2可以包括节点服务器存储器28和节点服务器处理器29,其中:
节点服务器存储器28,用于存储指令。
节点服务器处理器29,用于执行所述指令,使得所述节点服务器的配置生成器执行实现如上述任一实施例所述的内容分发网络配置方法的操作。
基于本发明上述实施例提供的节点服务器,可以使用配置模板和配置数据生成配置文件,从而解决了CDN节点和用户数据异构配置自动生成和生效的问题。本发明上述实施例可以通过节点服务器的配置生成器的轮询机制,解决了配置变更发现的问题。本发明上述实施例可以通过可编程的配置模板,解决了用户配置的灵活性问题。本发明上述实施例可以通过版本控制软件,解决了配置模板和用户配置数据传输问题。
图2还给出了本发明一些实施例中主控服务器的示意图。如图2所示,主控服务器1可以包括主控服务器用户数据仓库11和用户数据生成器13,其中:
用户数据生成器13,用于通过对外接口(例如http接口)接收用户发出的配置请求;将用户的配置请求转为符合格式要求的用户配置数据文件,并提交至主控服务器用户数据仓库11。
主控服务器用户数据仓库11,用于使用版本控制软件(包括但不限于git、svn等)存储CDN用户配置的数据文件,在内容分发网络每个节点服务器上保持一份拷贝,以便节点服务器用户数据仓库与主控服务器用户数据仓库保持同步,并在用户配置数据变更的情况下,触发节点服务器解析变更的用户配置数据和对应的配置模板,生成新的配置文件。
在本发明的一些实施例中,用户数据文件可以为预定的其它格式的数据文件。
在本发明的一些实施例中,主控服务器用户数据仓库11和节点服务器用户数据仓库21可以使用其它版本的控制软件或分布式文件系统。
在本发明的一些实施例中,如图2所示,所述主控服务器1还可以包括主控服务器配置模板库,其中:
主控服务器配置模板库12,用于存储运维人员使用版本控制软件(包括但不限于git、svn等)预先编写好的各个模块的配置模板;在内容分发网络每个节点服务器上保持一份拷贝,以便节点服务器配置模板库与主控服务器配置模板库保持同步,并在配置模板变更的情况下,触发节点服务器解析变更的配置模板和对应的用户配置数据,生成新的配置文件。
在本发明的一些实施例中,配置模板可以采用可编程的方式实现,其要素包括但不限于分支、循环、变量等。配置模板可根据节点信息、用户配置数据进行编程。
在本发明的一些实施例中,配置模板可以为采用预定格式的可编程语言。
在本发明的一些实施例中,主控服务器配置模板库12和节点服务器配置模板库22可以使用其它版本的控制软件或分布式文件系统。
基于本发明上述实施例提供的主控服务器,可以通过可编程的配置模板,解决了用户配置的灵活性问题。本发明上述实施例可以通过版本控制软件,解决了配置模板和用户配置数据传输问题。
在本发明的一些实施例中,如图2所示,所述内容分发网络配置系统还可以包括配置状态收集器14,其中:
节点服务器的配置生成器还可以用于上报本机配置状态信息到配置状态收集器14。
配置状态收集器14,用于汇总所有内容分发网络节点的配置状态信息并反馈给用户和运维人员。
本发明上述实施例可以实现一种高效、灵活、自动化的异构配置生成及生效系统。本发明上述实施例可以通过配置状态收集器,解决了配置状态汇总的问题。
图4为本发明主控服务器一些实施例的示意图。如图4所示,图1或图2实施例中的主控服务器1包括主控服务器存储器18和主控服务器处理器19,其中:
主控服务器存储器18,用于存储指令。
主控服务器处理器19,用于执行所述指令,使得所述主控服务器执行实现如上述任一实施例所述内容分发网络配置方法的操作。
基于本发明上述实施例提供的主控服务器,可以实现一种高效、灵活、自动化的异构配置生成及生效系统。本发明上述实施例可以通过可编程的配置模板,解决了用户配置的灵活性问题。本发明上述实施例可以通过版本控制软件,解决了配置模板和用户配置数据传输问题。本发明上述实施例可以通过配置状态收集器,解决了配置状态汇总的问题。
图5为本发明内容分发网络配置方法一些实施例的示意图。优选的,本实施例可由本发明节点服务器执行。该方法包括以下步骤:
步骤51,节点服务器以预定时间间隔查询节点服务器用户数据仓库中用户配置数据以及节点服务器配置模板库中配置模板是否有变更。
步骤52,在用户配置数据和配置模板中的至少一项有变更的情况下,节点服务器解析发生变更的用户配置数据和配置模板,生成相应模块的配置文件。
在本发明的一些实施例中,步骤52具体可以包括:
步骤521,在用户配置数据和配置模板中的至少一项有变更的情况下,节点服务器判断发生变更的用户配置数据和配置模板是否包括本节点服务器相关模块的用户配置数据或配置模板。
步骤522,在发生变更的用户配置数据和配置模板包括本节点服务器相关模块的用户配置数据或配置模板的情况下,解析发生变更的本节点服务器相关模块的用户配置数据和配置模板,生成相应模块的配置文件。
步骤53,节点服务器为每个模块加载对应的配置文件。
基于本发明上述实施例提供的内容分发网络配置方法,可以使用配置模板和配置数据生成配置文件,从而解决了CDN节点和用户数据异构配置自动生成和生效的问题。本发明上述实施例可以通过节点服务器的配置生成器的轮询机制,解决了配置变更发现的问题。
图6为本发明内容分发网络配置方法另一些实施例的示意图。优选的,本实施例可由本发明内容分发网络配置系统执行。该方法包括以下步骤:
步骤61,主控服务器的用户数据生成器通过对外的http接口,接收用户发出的配置请求;将用户的配置请求转为符合格式要求的用户配置数据文件。
在本发明的一些实施例中,用户配置请求可以包括用户在各个节点使用的源站信息、用户配置的加速域名信息、下载速度信息、功能模块信息等配置信息中的至少一项,其中,源站指的是加速域名在未使用CDN服务之前,其对外提供服务的站点,一般可为一组物理IP或一个可解析的域名。
在本发明的一些实施例中,用户配置数据文件可以包括用户数据文件以及源站配置文件等文件中的至少一项。
步骤62,主控服务器的用户数据生成器将用户配置数据文件写入主控服务器用户数据仓库中,即,生成新版本用户配置数据文件并提交至主控服务器用户数据库。
在本发明的一些实施例中,主控服务器用户数据仓库可以用于使用版本控制软件(包括但不限于git、svn等)存储CDN用户配置的数据文件,同时在各个CDN节点的每台服务器上都有其一份拷贝;主控服务器用户数据仓库和节点服务器用户数据仓库保持同步。
步骤63,节点服务器的配置生成器通过版本控制软件提供的同步功能,定期轮询到用户数据版本的变更,触发配置生成。
步骤64,节点服务器的配置生成器读取节点服务器用户数据仓库中的用户数据和节点服务器配置模板仓库中的模板,解析模板的内容,生成对应的配置文件并存储到节点服务器配置模板仓库的指定目录。
在本发明的一些实施例中,主控服务器配置模板库可以用于使用版本控制软件(包括但不限于git、svn等)存储运维人员事先编写好的各个模块的配置模板;同用户数据仓库一样,主控服务器配置模板库在CDN各个节点的每台服务器上都有其一份拷贝,主控服务器配置模板库和节点服务器配置模板库保持同步。
在本发明的一些实施例中,配置模板可以采用可编程的方式实现,其要素包括但不限于分支、循环、变量等。配置模板可根据节点信息、用户配置数据进行编程。
步骤65,节点服务器的配置生成器触发配置文件对应的模块加载新配置文件,使得配置生效。
步骤66,节点服务器的配置生成器上报配置状态信息到主控服务器的配置状态收集器。
步骤67,主控服务器的配置状态收集器汇总所有CDN节点的配置状态信息并反馈给用户和运维人员。
本发明上述实施例可以使用配置模板和配置数据生成配置文件,从而解决了CDN节点和用户数据异构配置自动生成和生效的问题。本发明上述实施例可以通过节点服务器的配置生成器的轮询机制,解决了配置变更发现的问题。本发明上述实施例可以通过可编程的配置模板,解决了用户配置的灵活性问题。本发明上述实施例可以通过版本控制软件,解决了配置模板和用户配置数据传输问题。本发明上述实施例还可以通过配置状态收集器,解决了配置状态汇总的问题。
图7为本发明内容分发网络配置方法另一些实施例的示意图。优选的,本实施例可由本发明主控服务器执行。该方法包括以下步骤:
步骤71,主控服务器的用户数据生成器通过对外的http接口,接收用户发出的配置请求;将用户的配置请求转为符合格式要求的用户配置数据文件。
步骤72,主控服务器的用户数据生成器将用户配置数据文件写入主控服务器用户数据仓库中,即,生成新版本用户配置数据文件并提交至主控服务器用户数据库。
步骤73,主控服务器用户数据仓库在内容分发网络每个节点服务器上保持一份拷贝,以便节点服务器用户数据仓库与主控服务器用户数据仓库保持同步,并在用户配置数据变更的情况下,触发节点服务器解析变更的用户配置数据和对应的配置模板,生成新的配置文件。
步骤74,主控服务器配置模板库存储运维人员预先编写好的各个模块的配置模板。
步骤75,主控服务器配置模板库在内容分发网络每个节点服务器上保持一份拷贝,以便节点服务器配置模板库与主控服务器配置模板库保持同步,并在配置模板变更的情况下,触发节点服务器解析变更的配置模板和对应的用户配置数据,生成新的配置文件。
步骤76,主控服务器的配置状态收集器接收节点服务器的配置生成器上报的配置状态信息。
步骤77,主控服务器的配置状态收集器汇总所有CDN节点的配置状态信息并反馈给用户和运维人员。
本发明上述实施例可以通过可编程的配置模板,解决了用户配置的灵活性问题。本发明上述实施例可以通过版本控制软件,解决了配置模板和用户配置数据传输问题。本发明上述实施例可以通过配置状态收集器,解决了配置状态汇总的问题。
下面通过一个具体实施例详细阐述本发明。
假设有一个模块M,需要一份配置文件M.conf。模块M需要在CDN节点A使用源站S1,在CDN节点B使用源站S2,且有一个用户加速域名D,其下载限速配置为1MB/s,同时确定需要开启功能F1。
该具体实施例可以包括如下步骤:
1)运维人员编写源站配置文件pillar.tpl,如下:
{%if"Node-A"in host.Name%}
source:
-S1
{%endif%}
{%if"Node-B"in host.Name%}
source:
-S2
{%endif%}
2)运维人员编写模块M配置模板M.conf.tpl,如下:
source:{{pillar.source}}
{%if data.open_func_1=="yes"%}
open_func_1:on
{%else%}
open_func_1:off
{%endif%}
limit_rate:{{data.limit_rate}}
3)主控服务器的用户数据生成器生成用户数据文件(json格式)D.json,如下:
{"domain":"D","limit_rate":"1m","open_func_1":"yes"}
4)将生成的用户数据文件写入数据仓库中。
节点服务器的配置生成器轮询到用户数据发生变更,读取D.json、M.conf.tpl、pillar.tpl三个文件,解析配置模板M.conf.tpl和pillar.tpl,生成最终的配置文件M.conf如下:
source:S1
open_func_1:on
limit_rate:1m
5)节点服务器的配置生成器触发模块M重新加载配置文件M.conf。
6)节点服务器的配置生成器汇报本机状态给主控服务器的配置状态收集器。
7)主控服务器的配置状态收集器汇总所有CDN节点的配置状态信息,并将配置变更状态反馈给用户和运维人员。
本发明上述实施例可以使用配置模板和配置数据生成配置文件,从而解决了CDN节点和用户数据异构配置自动生成和生效的问题。
本发明上述实施例可以通过节点服务器的配置生成器的轮询机制,解决了配置变更发现的问题。本发明上述实施例可以通过可编程的配置模板,解决了用户配置的灵活性问题。本发明上述实施例可以通过版本控制软件,解决了配置模板和用户配置数据传输问题。本发明上述实施例还可以通过配置状态收集器,解决了配置状态汇总的问题。
根据本发明的另一方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如上述任一实施例所述的内容分发网络配置方法。
基于本发明上述实施例提供的计算机可读存储介质,可以使用配置模板和配置数据生成配置文件,从而解决了CDN节点和用户数据异构配置自动生成和生效的问题。本发明上述实施例可以通过节点服务器的配置生成器的轮询机制,解决了配置变更发现的问题。本发明上述实施例可以通过可编程的配置模板,解决了用户配置的灵活性问题。本发明上述实施例可以通过版本控制软件,解决了配置模板和用户配置数据传输问题。本发明上述实施例还可以通过配置状态收集器,解决了配置状态汇总的问题。
在上面所描述的主控服务器1和节点服务器2可以实现为用于执行本申请所描述功能的通用处理器、可编程逻辑控制器(PLC)、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件或者其任意适当组合。
至此,已经详细描述了本发明。为了避免遮蔽本发明的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (14)
1.一种内容分发网络配置方法,其特征在于,包括:
节点服务器以预定时间间隔查询节点服务器用户数据仓库中用户配置数据以及节点服务器配置模板库中配置模板是否有变更;
在用户配置数据和配置模板中的至少一项有变更的情况下,节点服务器判断发生变更的用户配置数据和配置模板是否包括本节点服务器相关模块的用户配置数据或配置模板;
在发生变更的用户配置数据和配置模板包括本节点服务器相关模块的用户配置数据或配置模板的情况下,节点服务器解析发生变更的本节点服务器相关模块的用户配置数据和配置模板,生成相应模块的配置文件;
节点服务器为每个模块加载对应的配置文件。
2.根据权利要求1所述的内容分发网络配置方法,其特征在于,还包括:
节点服务器上报本机配置状态信息到主控服务器,以便主控服务器汇总所有内容分发网络节点的配置状态信息并反馈给用户和运维人员。
3.根据权利要求1或2所述的内容分发网络配置方法,其特征在于,还包括:
节点服务器用户数据仓库和主控服务器用户数据仓库保持同步,其中,主控服务器用户数据仓库存储内容分发网络用户配置的用户配置数据;主控服务器用户数据仓库在内容分发网络每个节点服务器上保持一份拷贝。
4.根据权利要求1或2所述的内容分发网络配置方法,其特征在于,还包括:
节点服务器配置模板库和主控服务器配置模板库保持同步,其中,主控服务器配置模板库存储运维人员预先编写好的各个模块的配置模板,主控服务器配置模板库在内容分发网络每个节点服务器上保持一份拷贝。
5.一种内容分发网络配置方法,其特征在于,包括:
主控服务器根据用户配置请求,生成用户配置数据并提交至主控服务器用户数据仓库;
主控服务器用户数据仓库在内容分发网络每个节点服务器上保持一份拷贝,以便节点服务器用户数据仓库与主控服务器用户数据仓库保持同步,并在用户配置数据变更的情况下,判断发生变更的用户配置数据是否包括本节点服务器相关模块的用户配置数据,在发生变更的用户配置数据包括本节点服务器相关模块的用户配置数据的情况下,触发节点服务器解析发生变更的本节点服务器相关模块的用户配置数据,生成相应模块的配置文件。
6.根据权利要求5所述的内容分发网络配置方法,其特征在于,还包括:
主控服务器配置模板库存储运维人员预先编写好的各个模块的配置模板;
主控服务器配置模板库在内容分发网络每个节点服务器上保持一份拷贝,以便节点服务器配置模板库与主控服务器配置模板库保持同步,并在配置模板变更的情况下,判断发生变更的配置模板是否包括本节点服务器相关模块的配置模板,在发生变更的配置模板包括本节点服务器相关模块的配置模板的情况下,触发节点服务器解析发生变更的本节点服务器相关模块的配置模板,生成相应模块的配置文件。
7.一种节点服务器,其特征在于,包括:
配置生成器,用于以预定时间间隔查询节点服务器用户数据仓库中用户配置数据以及节点服务器配置模板库中配置模板是否有变更;在用户配置数据和配置模板中的至少一项有变更的情况下,判断发生变更的用户配置数据和配置模板是否包括本节点服务器相关模块的用户配置数据或配置模板;在发生变更的用户配置数据和配置模板包括本节点服务器相关模块的用户配置数据或配置模板的情况下,节点服务器解析发生变更的本节点服务器相关模块的用户配置数据和配置模板,生成相应模块的配置文件;以及为每个模块加载对应的配置文件;
节点服务器用户数据仓库,用于存储用户配置数据;
节点服务器配置模板库,用于存储配置模板。
8.根据权利要求7所述的节点服务器,其特征在于,所述节点服务器用于执行实现如权利要求1-4中任一项所述内容分发网络配置方法的操作。
9.一种节点服务器,其特征在于,包括节点服务器存储器和节点服务器处理器,其中:
节点服务器存储器,用于存储指令;
节点服务器处理器,用于执行所述指令,使得所述节点服务器执行实现如权利要求1-4中任一项所述的内容分发网络配置方法的操作。
10.一种主控服务器,其特征在于,包括:
用户数据生成器,用于根据用户配置请求,生成用户配置数据并提交至主控服务器用户数据仓库;
主控服务器用户数据仓库,用于在内容分发网络每个节点服务器上保持一份拷贝,以便节点服务器用户数据仓库与主控服务器用户数据仓库保持同步,并在用户配置数据变更的情况下,判断发生变更的用户配置数据是否包括本节点服务器相关模块的用户配置数据,在发生变更的用户配置数据包括本节点服务器相关模块的用户配置数据的情况下,触发节点服务器解析发生变更的本节点服务器相关模块的用户配置数据,生成相应模块的配置文件。
11.根据权利要求10所述的主控服务器,其特征在于,还包括:
主控服务器配置模板库,用于存储运维人员预先编写好的各个模块的配置模板;在内容分发网络每个节点服务器上保持一份拷贝,以便节点服务器配置模板库与主控服务器配置模板库保持同步,并在配置模板变更的情况下,判断发生变更的配置模板是否包括本节点服务器相关模块的配置模板,在发生变更的配置模板包括本节点服务器相关模块的配置模板的情况下,触发节点服务器解析发生变更的本节点服务器相关模块的配置模板,生成相应模块的配置文件。
12.一种主控服务器,其特征在于,包括主控服务器存储器和主控服务器处理器,其中:
主控服务器存储器,用于存储指令;
主控服务器处理器,用于执行所述指令,使得所述主控服务器执行实现如权利要求5或6所述的内容分发网络配置方法的操作。
13.一种内容分发网络配置系统,其特征在于,包括如权利要求7-9中任一项所述的节点服务器、以及如权利要求10-12中任一项所述的主控服务器。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如权利要求1-6中任一项所述的内容分发网络配置方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810149458.1A CN110166267B (zh) | 2018-02-13 | 2018-02-13 | 内容分发网络配置方法和系统、主控服务器和节点服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810149458.1A CN110166267B (zh) | 2018-02-13 | 2018-02-13 | 内容分发网络配置方法和系统、主控服务器和节点服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110166267A CN110166267A (zh) | 2019-08-23 |
CN110166267B true CN110166267B (zh) | 2023-05-30 |
Family
ID=67635354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810149458.1A Active CN110166267B (zh) | 2018-02-13 | 2018-02-13 | 内容分发网络配置方法和系统、主控服务器和节点服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110166267B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114002992A (zh) * | 2020-07-28 | 2022-02-01 | 华晨宝马汽车有限公司 | 配置plc和mes之间的连接的方法和设备 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8874724B2 (en) * | 2009-08-26 | 2014-10-28 | At&T Intellectual Property I, L.P. | Using a content delivery network for security monitoring |
CN101867613B (zh) * | 2010-06-08 | 2014-12-17 | 中兴通讯股份有限公司 | 一种内容分发cdn子系统以及数据同步的方法 |
CN103379097B (zh) * | 2012-04-18 | 2016-11-23 | 北京百度网讯科技有限公司 | Cdn业务自动配置系统及方法 |
WO2015104583A1 (en) * | 2014-01-08 | 2015-07-16 | Telefonaktiebolaget L M Ericsson (Publ) | Method, node and distributed system for configuring a network of cdn caching nodes |
US10701037B2 (en) * | 2015-05-27 | 2020-06-30 | Ping Identity Corporation | Scalable proxy clusters |
CN105871649A (zh) * | 2016-06-21 | 2016-08-17 | 上海帝联信息科技股份有限公司 | 节点服务器、服务端及其配置文件更新、更新控制方法 |
CN106657167B (zh) * | 2017-03-10 | 2020-05-26 | 联想(北京)有限公司 | 管理服务器、服务器集群、以及管理方法 |
CN107026758B (zh) * | 2017-04-14 | 2021-05-04 | 深信服科技股份有限公司 | 用于cdn业务更新的信息处理方法、信息处理系统及服务器 |
-
2018
- 2018-02-13 CN CN201810149458.1A patent/CN110166267B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110166267A (zh) | 2019-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108874558B (zh) | 分布式事务的消息订阅方法、电子装置及可读存储介质 | |
US10275278B2 (en) | Stream processing task deployment using precompiled libraries | |
US10761838B2 (en) | Generating unified and dynamically updatable application programming interface documentation from different sources | |
CN102130950B (zh) | 基于Hadoop集群的分布式监控方法 | |
EP3029568B1 (en) | Remote update of software components | |
US20150186507A1 (en) | Method system and computer readable medium for identifying assets in an asset store | |
US11086763B2 (en) | Asynchronous consumer-driven contract testing in micro service architecture | |
CN111666189A (zh) | 一种声明式可视化配置Prometheus监控告警的方法和系统 | |
US8839223B2 (en) | Validation of current states of provisioned software products in a cloud environment | |
CN103034540A (zh) | 分布式消息系统及其设备和协调方法 | |
CN109840298A (zh) | 大规模网络数据的多信息来源采集方法和系统 | |
CN107807859A (zh) | 一种FaaS框架及其工作方法、开发运维FaaS框架的系统 | |
CN103345386A (zh) | 一种软件生产方法、装置及运行系统 | |
CN112527459B (zh) | 一种基于Kubernetes集群的日志分析方法及装置 | |
US10768946B2 (en) | Edge configuration of software systems for manufacturing | |
WO2013032621A1 (en) | Data infrastructure for providing interconnectivity between platforms, devices, and operating systems | |
CN106411970A (zh) | 一种基于服务调用的故障处理方法、装置和系统 | |
US20230051622A1 (en) | Methods, apparatuses and computer program products for managing product feature release in a cloud-based computing environment | |
CN110597764B (zh) | 一种文件下载、版本管理方法及装置 | |
CN110166267B (zh) | 内容分发网络配置方法和系统、主控服务器和节点服务器 | |
Ataei et al. | NeoMycelia: A software reference architecturefor big data systems | |
US20210149709A1 (en) | Method and apparatus for processing transaction | |
US11169813B2 (en) | Policy handling for data pipelines | |
US10838843B1 (en) | Parsing hierarchical session log data for search and analytics | |
US20230195596A1 (en) | Cloud agnostic shared load testing platform |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |