CN112260850B - 一种基于openstack创建高可用网络的方法及系统 - Google Patents

一种基于openstack创建高可用网络的方法及系统 Download PDF

Info

Publication number
CN112260850B
CN112260850B CN202010952608.XA CN202010952608A CN112260850B CN 112260850 B CN112260850 B CN 112260850B CN 202010952608 A CN202010952608 A CN 202010952608A CN 112260850 B CN112260850 B CN 112260850B
Authority
CN
China
Prior art keywords
network
availability
event
created
openstack
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
Application number
CN202010952608.XA
Other languages
English (en)
Other versions
CN112260850A (zh
Inventor
周恒�
秦海中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202010952608.XA priority Critical patent/CN112260850B/zh
Publication of CN112260850A publication Critical patent/CN112260850A/zh
Application granted granted Critical
Publication of CN112260850B publication Critical patent/CN112260850B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请公开了一种基于openstack创建高可用网络的方法及系统,该方法包括:创建高可用网络时,在openstack平台增加网络的属性;通过在原始数据表中增加字段,更新高可用网络的数据库;在openstack平台中增加插件,利用插件进行事件监听,事件包括:创建网络事件、删除网络事件、修改网络事件以及网络查看。该系统包括:网络属性扩展模块、数据库更新模块和插件模块。通过本申请,能够有效提高高可用网络的稳定性、灵活性,从而适应复杂的物理网络环境,提高用户体验。

Description

一种基于openstack创建高可用网络的方法及系统
技术领域
本申请涉及云计算网络配置技术领域,特别是涉及一种基于openstack创建高可用网络的方法及系统。
背景技术
在云计算网络配置中,通常会创建高可用网络,也就是HA网络。例如:当openstack开启路由HA后,在创建一个路由时,首先检查当前项目是否存在HA网络,如果不存在,则需要去创建一个HA网络。
目前创建HA网络的方法,通常是采用配置的方法,且只在创建路由时自动创建,即通过配置限定和设置HA网络。采用配置的方法创建ha网络时,如果用户指定了配置项l3_ha_network_type和l3_ha_network_physical_name,则可以按照相应参数进行创建网络。未指定参数时,则按照租户网络配置进行创建网络。
然而,目前采用配置的方法创建HA网络的过程中,当用户指定的租户网络是vlan,且计划创建vxlan类型的网络时,可以通过配置l3_ha_network_type,设置为vxlan网络,当用户有特殊需求需要指定vni号时,由于openstack平台不支持,则无法实现。用户创建vlan网络指定一些其他参数,例如MTU时,也无法实现。因此,目前创建HA网络的方法只能通过配置设置网络类型和所使用的物理网络,网络参数设置的灵活性较差。且用户对所创建的HA网络没有操作权限,可以随意进行删除和修改,使得HA网络的稳定性较差。
发明内容
本申请提供了一种基于openstack创建高可用网络的方法及系统,以解决现有技术中创建高可用网络的方法,使得高可用网络的灵活性较差和稳定性较差的问题。
为了解决上述技术问题,本申请实施例公开了如下技术方案:
一种基于openstack创建高可用网络的方法,所述方法包括:
创建高可用网络时,在openstack平台增加网络的属性,所述属性用于标记所创建的网络是否为高可用网络,且所述属性的操作权限设定为超级管理员;
通过在原始数据表中增加字段,更新高可用网络的数据库,所述原始数据表中包括项目与高可用网络的一一对应关系,所述字段用于标记高可用网络的生成方式,所述高可用网络的生成方式包括:用户主动创建生成和创建路由时自动生成;
在openstack平台中增加插件,利用所述插件进行事件监听,所述事件包括:创建网络事件、删除网络事件、修改网络事件以及网络查看。
可选地,当所述事件为创建网络事件时,利用所述插件进行事件监听的方法,包括:
在创建网络前,监听资源网络的BEFORE_CREATE事件;
在创建的网络信息写入数据库前,监听资源网络的PRECOMMIT_CREATE事件。
可选地,所述在创建网络前,监听资源网络的BEFORE_CREATE事件,包括:
获取BEFORE_CREATE事件;
根据BEFORE_CREATE事件的创建参数,判断待创建的网络是否为高可用网络;
如果待创建的网络为高可用网络,判断待创建网络的操作者是否为超级管理员;
如果待创建的网络不是高可用网络,流程结束;
如果待创建网络的操作者为超级管理员,根据BEFORE_CREATE事件的项目编号查询数据库,判断当前项目是否已有相匹配的高可用网络;
如果待创建网络的操作者不是超级管理员,抛出异常禁止创建网络;
如果当前项目已有相匹配的高可用网络,抛出异常禁止创建网络;
如果当前项目没有相匹配的高可用网络,继续创建网络。
可选地,所述在创建的网络信息写入数据库前,监听资源网络的PRECOMMIT_CREATE事件,包括:
获取PRECOMMIT_CREATE事件;
根据PRECOMMIT_CREATE事件的创建参数,判断待创建的网络是否为高可用网络;
如果待创建的网络为高可用网络,将PRECOMMIT_CREATE事件的项目信息、网络信息和增加的字段插入到数据库中,所述项目信息包括项目编号;
如果待创建的网络不是高可用网络,返回重新获取PRECOMMIT_CREATE事件。
可选地,当所述事件为删除网络事件时,利用所述插件进行事件监听的方法,包括:
获取BEFORE_DELETE事件;
根据所述BEFORE_DELETE事件的网络信息查询数据库,判断待删除网络是否为高可用网络,所述网络信息中包括网络ID;
如果待删除网络是高可用网络,判断待删除网络的操作者是否为超级管理员;
如果待删除网络不是高可用网络,流程结束;
如果待删除网络的操作者是超级管理员,删除网络;
如果待删除网络的操作者不是超级管理员,抛出异常禁止删除网络。
可选地,当所述事件为修改网络事件时,利用所述插件进行事件监听的方法,包括:
获取BEFORE_UPDATE事件;
根据所述BEFORE_UPDATE事件的原始网络信息,查询数据库,判断待修改网络是否为高可用网络;
如果待修改网络是高可用网络,判断待修改网络的操作者是否为超级管理员;
如果待修改网络不是高可用网络,流程结束;
如果待修改网络的操作者是超级管理员,对网络进行更新;
如果待修改网络的操作者不是超级管理员,抛出异常禁止更新网络。
可选地,当所述事件为网络查看时,利用所述插件进行事件监听的方法,包括:
注册扩展资源网络;
接收扩展资源应用调用;
判断进行网络查看的操作者是否为超级管理员;
如果进行网络查看的操作者是为超级管理员,遍历每个网络,根据网络的ID查询数据库,判断当前网络是否为高可用网络;
如果进行网络查看的操作者不是超级管理员,返回原有网络信息列表;
如果当前网络是高可用网络,在当前网络的网络属性中加入高可用网络标记;
返回更新后的网络信息列表;
如果当前网络不是高可用网络,在当前网络的网络属性中加入非高可用网络标记。
可选地,所述方法还包括:
根据当前项目所关联的高可用网络,删除当前项目的路由。
一种基于openstack创建高可用网络的系统,所述系统包括:
网络属性扩展模块,用于创建高可用网络时,在openstack平台增加网络的属性,所述属性用于标记所创建的网络是否为高可用网络,且所述属性的操作权限设定为超级管理员;
数据库更新模块,用于通过在原始数据表中增加字段,更新高可用网络的数据库,所述原始数据表中包括项目与高可用网络的一一对应关系,所述字段用于标记高可用网络的生成方式,所述高可用网络的生成方式包括:用户主动创建生成和创建路由时自动生成;
插件模块,用于在openstack平台中增加插件,利用所述插件进行事件监听,所述事件包括:创建网络事件、删除网络事件、修改网络事件以及网络查看。
可选地,所述系统中还包括有路由删除模块,用于根据当前项目所关联的高可用网络,删除当前项目的路由。
本申请的实施例提供的技术方案可以包括以下有益效果:
本申请提供一种基于openstack创建高可用网络的方法,该方法在创建高可用网络时,在openstack平台增加网络的属性,用于标记所创建的网络是否为高可用网络,以便于后续针对高可用网络进行相关设置和管理。还包括通过在原始数据表中增加字段,更新高可用网络的数据库,利用字段标记高可用网络的生成方式,使得本方案能够兼容用户主动创建高可用网络和自动生成高可用网络两种情况,有利于提高本申请的兼容性和灵活性。本实施例中创建高可用网络的方法还包括在openstack平台中增加插件,利用所述插件进行事件监听,通过插件对不同事件进行监听,能够确保高可用网络在创建、删除、修改和查看等操作过程的可控性,确保只有超级管理员可以进行删除、修改等操作,有利于避免误操作,从而提高高可用网络的稳定性。本实施例通过在openstack平台增加网络的属性和插件,能够实现超级管理员主动调用接口创建高可用网络,从而更加有针对性地监听高可用网络涉及到的资源、网络以及路由的相关事件,能够对相关事件进行有效约束,有利于提高高可用网络的稳定性。且本实施例中基于openstack部署的云平台来实现,能够丰富用户的操作内容,从而适应复杂的物理网络环境,有利于提高网络参数设置的灵活性,提高用户体验。
本申请还提供一种基于openstack创建高可用网络的系统,该系统主要包括:网络属性扩展模块、数据库更新模块和插件模块。通过网络属性扩展模块的设置,能够在openstack平台增加网络的属性,标记当前所创建的网络是否为高可用网络,从而有针对性地对高可用网络进行管理。通过数据库更新模块更新模块,在原始数据表中增加字段从而更新高可用网络的数据库,对高可用网络的生成方式进行标记,使得本方案能够兼容用户主动创建高可用网络和自动生成高可用网络两种情况,有利于提高本申请的兼容性和灵活性。插件模块的设置,能够充分利用插件对不同的事件进行监听,确保高可用网络在创建、删除、修改和查看等操作过程的可控性,确保只有超级管理员可以进行删除、修改等操作,避免或大大降低误操作的概率,从而提高高可用网络的稳定性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的一种基于openstack创建高可用网络的方法的流程示意图;
图2为本申请实施例所提供的一种基于openstack创建高可用网络的系统的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
为了更好地理解本申请,下面结合附图来详细解释本申请的实施方式。
实施例一
参见图1,图1为本申请实施例所提供的一种基于openstack创建高可用网络的方法的流程示意图。由图1可知,本实施例中基于openstack创建高可用网络的方法,主要包括如下过程:
S1:创建高可用网络时,在openstack平台增加网络的属性。
本实施例中所增加的网络的属性用于标记所创建的网络是否为高可用网络,且属性的操作权限设定为超级管理员。高可用网络即HA(high available,高可用)网络。
根据步骤S1,用户可以在创建网络时设置属性net:ha,通过该属性来标记所创建的网络是否是HA网络。通过openstack扩展的方式,使得创建网络资源时,允许传入属性net:ha。对于新扩展名称,本发明定义为net_ha,实际应用中,扩展时可能还需要其他字段,如描述、别名等,本方案不做详细约定,实施时自定义字符串即可。本发明只约定,设置属性增加资源networks的属性。
本实施例基于openstack机制,不依赖于底层CPU架构,只要是openstack适用的架构都可以应用本申请中的方法,例如:X86架构、ARM架构等。
另外,本实施例中所增加的属性的操作权限设定为超级管理员,即:允许超级管理员按照资源进行筛选,获取网络的字段信息,这种方式,有利于降低误操作概率,大大提高高可用网络的稳定性。
S2:通过在原始数据表中增加字段,更新高可用网络的数据库。
其中,原始数据表中包括项目与高可用网络的一一对应关系,所增加的字段用于标记高可用网络的生成方式,高可用网络的生成方式包括:用户主动创建生成和创建路由时自动生成。
根据步骤S2,在创建高可用网络时,可以在原有标记每个项目对应的HA网络的数据表中增加字段,用于区分是用户主动创建的HA网络,还是创建路由时自动创建的HA网络,后续根据该字段做不同动作设计。用户主动创建生成的高可用网络也就是管理员主动创建的高可用网络。本实施例中用于变更的数据表具体为ha_router_networks,在创建高可用网络前,该数据表中原先记录有每个项目所对应的HA网络的网络ID,一个项目与一个网络ID相匹配。本实施例中增加字段后的数据表如下表1所示,由表1可知,可以采用增加一列信息的方式,将字段加入数据表ha_router_networks中。
Figure BDA0002677526400000061
表1增加字段后的数据表ha_router_networks
继续参见图1可知,本实施例中创建高可用网络的方法,还包括步骤S3:在openstack平台中增加插件,利用插件进行事件监听。
其中,待监听的事件包括:创建网络事件、删除网络事件、修改网络事件以及网络查看。根据事件的不同,步骤S3有不同的实现方式。
第一种情况:当事件为创建网络事件时,利用插件进行事件监听的方法,包括如下过程:
S131:在创建网络前,监听资源网络的BEFORE_CREATE事件。
BEFORE_CREATE事件即:创建前事件。
具体地,步骤S131又包括:
S1311:获取BEFORE_CREATE事件。
S1312:根据BEFORE_CREATE事件的创建参数,判断待创建的网络是否为高可用网络。
如果待创建的网络为高可用网络,执行步骤S1313:判断待创建网络的操作者是否为超级管理员。
如果待创建的网络不是高可用网络,流程结束。
如果待创建网络的操作者为超级管理员,执行步骤S1314:根据BEFORE_CREATE事件的项目编号查询数据库,判断当前项目是否已有相匹配的高可用网络。
如果待创建网络的操作者不是超级管理员,抛出异常禁止创建网络。
如果当前项目已有相匹配的高可用网络,执行步骤S1315:抛出异常禁止创建网络。
如果当前项目没有相匹配的高可用网络,执行步骤S1316:继续创建网络。
本实施例中监听网络创建事件时,可以采用设置网络的net:ha=True的方法,来指定创建的网络为HA网络。由以上步骤S1311-S1316可知,本实施例中监听资源网络的BEFORE_CREATE事件时,该事件会在创建NETWORK(网络)前调用,插件接收到时间后,先检查创建参数中是否设置了net:ha=True。然后判断操作者是否为超级管理员,如果是,按照当前项目,查询数据表ha_router_networks,按照项目编号查询,确定当前项目是否已经有HA网络,如果已经有HA网络,抛出异常禁止创建。如果无HA网络,继续原有创建网络流程。
S132:在创建的网络信息写入数据库前,监听资源网络的PRECOMMIT_CREATE事件。
PRECOMMIT_CREATE事件即:提交前事件。
S1321:获取PRECOMMIT_CREATE事件。
S1322:根据PRECOMMIT_CREATE事件的创建参数,判断待创建的网络是否为高可用网络。
S1323:如果待创建的网络为高可用网络,将PRECOMMIT_CREATE事件的项目信息、网络信息和增加的字段插入到数据库中,项目信息包括项目编号。
S1324:如果待创建的网络不是高可用网络,返回重新获取PRECOMMIT_CREATE事件。
由以上步骤S1321-S1324可知,监听资源NETWORK的PRECOMMIT_CREATE事件时,该事件会在即将写入数据库前调用,插件接收到事件后,检查是否设置了net:ha=True,如果未设置,不做任何处理。如果设置了,将项目信息、网络信息、admin_create=1,插入到数据表ha_router_networks中。通过这些操作,该网络将被标记成HA网络。
第二种情况:当事件为删除网络事件时,利用插件进行事件监听的方法包括:
S231:获取BEFORE_DELETE事件。
S232:根据BEFORE_DELETE事件的网络信息查询数据库,判断待删除网络是否为高可用网络,网络信息中包括网络ID。
S233:如果待删除网络是高可用网络,判断待删除网络的操作者是否为超级管理员。
如果待删除网络不是高可用网络,流程结束。
S234:如果待删除网络的操作者是超级管理员,删除网络。
如果待删除网络的操作者不是超级管理员,抛出异常禁止删除网络。
通过步骤S231-S234,能够有效防止其他用户从非正常途径获取HA网络的网络ID,进行网络删除操作,还能避免普通用户误删除HA网络。
第三种情况:当事件为修改网络事件时,利用插件进行事件监听的方法包括:
S331:获取BEFORE_UPDATE事件。
S332:根据BEFORE_UPDATE事件的原始网络信息,查询数据库,判断待修改网络是否为高可用网络。
S333:如果待修改网络是高可用网络,判断待修改网络的操作者是否为超级管理员。
如果待修改网络不是高可用网络,流程结束。
S334:如果待修改网络的操作者是超级管理员,对网络进行更新。
S335:如果待修改网络的操作者不是超级管理员,抛出异常禁止更新网络。
第四种情况:当事件为网络查看时,利用插件进行事件监听的方法,包括:
S431:注册扩展资源网络。
S432:接收扩展资源应用调用。
S433:判断进行网络查看的操作者是否为超级管理员。
S434:如果进行网络查看的操作者是为超级管理员,遍历每个网络,根据网络的ID查询数据库,判断当前网络是否为高可用网络。
如果进行网络查看的操作者不是超级管理员,返回原有网络信息列表。
S435:如果当前网络是高可用网络,在当前网络的网络属性中加入高可用网络标记。
S436:返回更新后的网络信息列表。
S437:如果当前网络不是高可用网络,在当前网络的网络属性中加入非高可用网络标记。
需要注意的是,本实施例中步骤S1-S3并没有固定的先后顺序,实际应用中可以根据具体情况调整执行顺序。
进一步地,本实施例中基于openstack创建高可用网络的方法,还包括步骤S4:根据当前项目所关联的高可用网络,删除当前项目的路由。
本实施例中删除路由时,默认删除本项目关联的HA网络。如果是超级管理员主动创建的HA网络,在删除路由时,不再删除本项目关联的ha网络。保证超级管理员主动创建的ha网络,只有主动调用接口删除时,才会被删除。
具体地,查询路由所属项目关联的ha网络时,获取ha_router_networks数据表中的admin_create字段,如果是1,表示超级管理员主动创建,不进行删除操作。如果admin_create=0,进行删除网络操作。
实施例二
参见图2,图2为本申请实施例所提供的一种基于openstack创建高可用网络的系统的结构示意图。由图2可知,本实施例中基于openstack创建高可用网络的系统,主要包括:网络属性扩展模块、数据库更新模块和插件模块。
其中,网络属性扩展模块,用于创建高可用网络时,在openstack平台增加网络的属性,属性用于标记所创建的网络是否为高可用网络,且属性的操作权限设定为超级管理员。数据库更新模块,用于通过在原始数据表中增加字段,更新高可用网络的数据库,原始数据表中包括项目与高可用网络的一一对应关系,字段用于标记高可用网络的生成方式,高可用网络的生成方式包括:用户主动创建生成和创建路由时自动生成。插件模块,用于在openstack平台中增加插件,利用插件进行事件监听,事件包括:创建网络事件、删除网络事件、修改网络事件以及网络查看。
插件模块包括:创建网络事件监听单元、删除网络事件监听单元、修改网络事件监听单元以及网络查看单元。其中,创建网络事件监听单元,用于当事件为创建网络事件时,利用所述插件进行事件监听;删除网络事件监听单元,用于当事件为修改网络事件时,利用所述插件进行事件监听;修改网络事件监听单元,用于当事件为修改网络事件时,利用所述插件进行事件监听;网络查看单元,用于当事件为网络查看时,利用插件进行事件监听的方法。
进一步地,创建网络事件监听单元又包括:BEFORE_CREATE事件监听子单元和PRECOMMIT_CREATE事件监听子单元。其中,EFORE_CREATE事件监听子单元,用于在创建网络前,监听资源网络的BEFORE_CREATE事件。PRECOMMIT_CREATE事件监听子单元,用于在创建的网络信息写入数据库前,监听资源网络的PRECOMMIT_CREATE事件。
进一步地,本实施例基于openstack创建高可用网络的系统中还包括有路由删除模块,用于根据当前项目所关联的高可用网络,删除当前项目的路由。
该实施例中基于openstack创建高可用网络的系统的工作原理和工作方法,在图1所示的实施例中已经详细阐述,在此不再赘述。
以上所述仅是本申请的具体实施方式,使本领域技术人员能够理解或实现本申请。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种基于openstack创建高可用网络的方法,其特征在于,所述方法包括:
创建高可用网络时,在openstack平台增加网络的属性,所述属性用于标记所创建的网络是否为高可用网络,且所述属性的操作权限设定为超级管理员;
通过在原始数据表中增加字段,更新高可用网络的数据库,所述原始数据表中包括项目与高可用网络的一一对应关系,所述字段用于标记高可用网络的生成方式,所述高可用网络的生成方式包括:用户主动创建生成和创建路由时自动生成;
在openstack平台中增加插件,利用所述插件进行事件监听,所述事件包括:创建网络事件、删除网络事件、修改网络事件以及网络查看。
2.根据权利要求1所述的一种基于openstack创建高可用网络的方法,其特征在于,当所述事件为创建网络事件时,利用所述插件进行事件监听的方法,包括:
在创建网络前,监听资源网络的BEFORE_CREATE事件;
在创建的网络信息写入数据库前,监听资源网络的PRECOMMIT_CREATE事件。
3.根据权利要求2所述的一种基于openstack创建高可用网络的方法,其特征在于,所述在创建网络前,监听资源网络的BEFORE_CREATE事件,包括:
获取BEFORE_CREATE事件;
根据BEFORE_CREATE事件的创建参数,判断待创建的网络是否为高可用网络;
如果待创建的网络为高可用网络,判断待创建网络的操作者是否为超级管理员;
如果待创建的网络不是高可用网络,流程结束;
如果待创建网络的操作者为超级管理员,根据BEFORE_CREATE事件的项目编号查询数据库,判断当前项目是否已有相匹配的高可用网络;
如果待创建网络的操作者不是超级管理员,抛出异常禁止创建网络;
如果当前项目已有相匹配的高可用网络,抛出异常禁止创建网络;
如果当前项目没有相匹配的高可用网络,继续创建网络。
4.根据权利要求2所述的一种基于openstack创建高可用网络的方法,其特征在于,所述在创建的网络信息写入数据库前,监听资源网络的PRECOMMIT_CREATE事件,包括:
获取PRECOMMIT_CREATE事件;
根据PRECOMMIT_CREATE事件的创建参数,判断待创建的网络是否为高可用网络;
如果待创建的网络为高可用网络,将PRECOMMIT_CREATE事件的项目信息、网络信息和增加的字段插入到数据库中,所述项目信息包括项目编号;
如果待创建的网络不是高可用网络,返回重新获取PRECOMMIT_CREATE事件。
5.根据权利要求1所述的一种基于openstack创建高可用网络的方法,其特征在于,当所述事件为删除网络事件时,利用所述插件进行事件监听的方法,包括:
获取BEFORE_DELETE事件;
根据所述BEFORE_DELETE事件的网络信息查询数据库,判断待删除网络是否为高可用网络,所述网络信息中包括网络ID;
如果待删除网络是高可用网络,判断待删除网络的操作者是否为超级管理员;
如果待删除网络不是高可用网络,流程结束;
如果待删除网络的操作者是超级管理员,删除网络;
如果待删除网络的操作者不是超级管理员,抛出异常禁止删除网络。
6.根据权利要求1所述的一种基于openstack创建高可用网络的方法,其特征在于,当所述事件为修改网络事件时,利用所述插件进行事件监听的方法,包括:
获取BEFORE_UPDATE事件;
根据所述BEFORE_UPDATE事件的原始网络信息,查询数据库,判断待修改网络是否为高可用网络;
如果待修改网络是高可用网络,判断待修改网络的操作者是否为超级管理员;
如果待修改网络不是高可用网络,流程结束;
如果待修改网络的操作者是超级管理员,对网络进行更新;
如果待修改网络的操作者不是超级管理员,抛出异常禁止更新网络。
7.根据权利要求1所述的一种基于openstack创建高可用网络的方法,其特征在于,当所述事件为网络查看时,利用所述插件进行事件监听的方法,包括:
注册扩展资源网络;
接收扩展资源应用调用;
判断进行网络查看的操作者是否为超级管理员;
如果进行网络查看的操作者是为超级管理员,遍历每个网络,根据网络的ID查询数据库,判断当前网络是否为高可用网络;
如果进行网络查看的操作者不是超级管理员,返回原有网络信息列表;
如果当前网络是高可用网络,在当前网络的网络属性中加入高可用网络标记;
返回更新后的网络信息列表;
如果当前网络不是高可用网络,在当前网络的网络属性中加入非高可用网络标记。
8.根据权利要求1-7中任一所述的一种基于openstack创建高可用网络的方法,其特征在于,所述方法还包括:
根据当前项目所关联的高可用网络,删除当前项目的路由。
9.一种基于openstack创建高可用网络的系统,其特征在于,所述系统包括:
网络属性扩展模块,用于创建高可用网络时,在openstack平台增加网络的属性,所述属性用于标记所创建的网络是否为高可用网络,且所述属性的操作权限设定为超级管理员;
数据库更新模块,用于通过在原始数据表中增加字段,更新高可用网络的数据库,所述原始数据表中包括项目与高可用网络的一一对应关系,所述字段用于标记高可用网络的生成方式,所述高可用网络的生成方式包括:用户主动创建生成和创建路由时自动生成;
插件模块,用于在openstack平台中增加插件,利用所述插件进行事件监听,所述事件包括:创建网络事件、删除网络事件、修改网络事件以及网络查看。
10.根据权利要求9所述的一种基于openstack创建高可用网络的系统,其特征在于,所述系统中还包括有路由删除模块,用于根据当前项目所关联的高可用网络,删除当前项目的路由。
CN202010952608.XA 2020-09-11 2020-09-11 一种基于openstack创建高可用网络的方法及系统 Active CN112260850B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010952608.XA CN112260850B (zh) 2020-09-11 2020-09-11 一种基于openstack创建高可用网络的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010952608.XA CN112260850B (zh) 2020-09-11 2020-09-11 一种基于openstack创建高可用网络的方法及系统

Publications (2)

Publication Number Publication Date
CN112260850A CN112260850A (zh) 2021-01-22
CN112260850B true CN112260850B (zh) 2022-06-07

Family

ID=74231948

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010952608.XA Active CN112260850B (zh) 2020-09-11 2020-09-11 一种基于openstack创建高可用网络的方法及系统

Country Status (1)

Country Link
CN (1) CN112260850B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009074084A1 (fr) * 2007-12-04 2009-06-18 Huawei Technologies Co., Ltd. Procédé de traitement de données d'enregistrement, et dispositif et système de traitement de données
CN105009166A (zh) * 2012-12-26 2015-10-28 谷歌公司 在网络中分配成就标志
CN105183561A (zh) * 2015-09-02 2015-12-23 浪潮(北京)电子信息产业有限公司 一种资源分配方法和系统
CN107632885A (zh) * 2017-09-26 2018-01-26 郑州云海信息技术有限公司 组件间的回调管理方法和装置
CN108768744A (zh) * 2018-06-13 2018-11-06 郑州云海信息技术有限公司 一种对云平台创建网络的管理方法和装置
CN111343011A (zh) * 2020-02-16 2020-06-26 苏州浪潮智能科技有限公司 一种云管理平台融合Openstack网络控制方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009074084A1 (fr) * 2007-12-04 2009-06-18 Huawei Technologies Co., Ltd. Procédé de traitement de données d'enregistrement, et dispositif et système de traitement de données
CN105009166A (zh) * 2012-12-26 2015-10-28 谷歌公司 在网络中分配成就标志
CN105183561A (zh) * 2015-09-02 2015-12-23 浪潮(北京)电子信息产业有限公司 一种资源分配方法和系统
CN107632885A (zh) * 2017-09-26 2018-01-26 郑州云海信息技术有限公司 组件间的回调管理方法和装置
CN108768744A (zh) * 2018-06-13 2018-11-06 郑州云海信息技术有限公司 一种对云平台创建网络的管理方法和装置
CN111343011A (zh) * 2020-02-16 2020-06-26 苏州浪潮智能科技有限公司 一种云管理平台融合Openstack网络控制方法及系统

Also Published As

Publication number Publication date
CN112260850A (zh) 2021-01-22

Similar Documents

Publication Publication Date Title
US10362063B2 (en) Policy enforcement in a secure data file delivery system
JP4864333B2 (ja) ソフトウェアの脆弱性の悪用を防止するように通信をフィルタ処理するための方法およびシステム
US6317742B1 (en) Method and apparatus for controlling software access to system resources
US8656161B2 (en) Information sharing system, information sharing method, group management program and compartment management program
DE60115072T3 (de) System und verfahren zum unterschreiben eines software-kodes
US9544288B2 (en) Messaging gateway
US8065368B2 (en) Configuring templates for an application and network management system
US20090063584A1 (en) Versioning management
CA2485062A1 (en) Security-related programming interface
US8650288B2 (en) Runtime usage analysis for a distributed policy enforcement system
CN112040013B (zh) 用于页面路由的方法、计算设备和计算机存储介质
US10891357B2 (en) Managing the display of hidden proprietary software code to authorized licensed users
US11463544B1 (en) Administration of services executing in cloud platform based datacenters
US8387877B2 (en) Systems and methods for the secure control of data within heterogeneous systems and networks
US11968203B2 (en) Administration of services executing in cloud platform based datacenters using token with data structure
CN111901317B (zh) 一种访问控制策略处理方法、系统和设备
CN111182060A (zh) 报文的检测方法及装置
CN111585956A (zh) 一种网址防刷验证方法与装置
CN104852955A (zh) 一种数据处理方法及系统
CN112260850B (zh) 一种基于openstack创建高可用网络的方法及系统
US20190020546A1 (en) Extensible plug-n-play policy decision framework for network devices using ahead of time compilation
CN113541987A (zh) 一种更新配置数据的方法和装置
CN114996554A (zh) 数据库的查询方法、装置、存储介质及电子设备
EP2354941A1 (en) Mainframe injection component and method for manipulating data packets communicated between emulators and mainframes
JP2022007690A (ja) ネットワークサービスシステム、ネットワーク管理方法およびコンピュータプログラム

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