CN113746673A - 裸金属服务器ipxe的部署方法、装置、设备和介质 - Google Patents
裸金属服务器ipxe的部署方法、装置、设备和介质 Download PDFInfo
- Publication number
- CN113746673A CN113746673A CN202110975232.9A CN202110975232A CN113746673A CN 113746673 A CN113746673 A CN 113746673A CN 202110975232 A CN202110975232 A CN 202110975232A CN 113746673 A CN113746673 A CN 113746673A
- Authority
- CN
- China
- Prior art keywords
- server
- bare metal
- ipxe
- deployment
- tftp
- 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
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/14—Network analysis or design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5055—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
-
- 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
- H04L61/5014—Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例公开了一种裸金属服务器ipxe的部署方法、装置、设备和介质,预先在neutron网口为裸金属类型的情况下,调用OVN接口创建逻辑转换端口,基于逻辑转换端口将生成的流表传输至OVN;流表包含部署dhcp服务和指向tftp服务器的引导程序,裸金属服务器按照引导程序的指示执行下一步操作流程。预先将支持裸金属的ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量;在接收到裸金属服务器发送的部署指令的情况下,依据流表以及ipxe可执行程序,完成对裸金属服务器的ipxe部署,实现了在Neutron+OVN的网络架构下对裸金属服务器的ipxe部署。
Description
技术领域
本申请涉及服务器技术领域,特别是涉及一种裸金属服务器ipxe的部署方法、装置、设备和计算机可读存储介质。
背景技术
云计算管理平台(OpenStack)除了提供虚拟机的资源形态外,还提供裸金属(BareMetal)形态的计算资源。裸金属指的是没有安装操作系统的物理服务器。虚拟机占用宿主机的部分资源,而裸金属为独占式的计算资源,即以整台物理服务器的形式提供给用户,具有无虚拟化损耗、性能高、可靠性好的特点,适用于高性能计算、关键数据库等场景。
OpenStack中的裸金属服务(ironic),负责裸金属的生命周期管理,即从注册管理到系统的安装部署的整个状态流程的管理。ironic和OpenStack中的计算服务(nova)、OpenStack中的网络服务(neutron)、OpenStack中的镜像服务(glance)交互,可以实现将用户所选择的系统镜像部署到裸金属服务器的物理磁盘上。其中,nova为ironic对租户的呈现模块,nova服务调度选择裸金属,并交由ironic对裸金属进行部署。neutron用于为裸金属提供网络资源,包括裸金属部署节点PXE(preboot execute environment,预启动执行环境)、iPXE(开源的启动固件)时的动态主机配置协议(Dynamic Host ConfigurationProtocol,DHCP)以及用户所选择的租户网络。glance为裸金属提供镜像服务,ironic从glance拉取用户选择的用户镜像。
当前主流的网络架构为neutron对接OVN(OpenVirtualNetwork,软件SDN开源项目)提供一种软件SDN方案。OVN是OpenvSwitch项目组为OpenvSwitch开发的SDN控制器。在该方案下,裸金属的DHCP需要由Neutron+OVN管理下发的流表来提供,但是目前此方案在支持裸金属服务以及ipxe引导启动方面有很大欠缺,neutron对接ovn的插件不支持将裸金属pxe所使用的DHCP流表通过OVN下发至虚拟交换机(Open VSwitch,OVS)。OVN无法根据DHCP请求报文判断客户端(client)类型并返回不同DHCP option,从而导致无法打破无限循环链式加载(chainload)。并且OVN提供的DHCP中没有ipxe进行引导(boot)所需的siaddr字段。基于此,目前Neutron+OVN的网络架构无法实现对裸金属服务器的ipxe部署。
可见,如何在Neutron+OVN的网络架构下实现对裸金属服务器的ipxe部署,是本领域技术人员需要解决的问题。
发明内容
本申请实施例的目的是提供一种裸金属服务器ipxe的部署方法、装置、设备和计算机可读存储介质,可以在Neutron+OVN的网络架构下实现对裸金属服务器的ipxe部署。
为解决上述技术问题,本申请实施例提供一种裸金属服务器ipxe的部署方法,包括:
预先在neutron网口为裸金属类型的情况下,调用OVN接口创建逻辑转换端口,基于所述逻辑转换端口将生成的流表传输至OVN;其中,所述流表包含部署dhcp服务和指向tftp服务器的引导程序;
预先将支持裸金属的ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量;
在接收到所述裸金属服务器发送的部署指令的情况下,依据所述流表以及所述ipxe可执行程序,完成对所述裸金属服务器的ipxe部署。
可选地,所述预先在neutron网口为裸金属类型的情况下,调用OVN接口创建逻辑转换端口包括:
判断neutron网口对应的虚拟网口类型是否包含有裸金属类型;
若所述neutron网口对应的虚拟网口类型包含有裸金属类型,则调用OVN接口创建external类型的逻辑转换端口。
可选地,所述预先将ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量包括:
将所述ipxe可执行程序中tftp-server-ip设置为环境变量tftp-server;并将所述tftp-server调整为http服务器地址。
可选地,在所述将所述ipxe可执行程序中tftp-server-ip设置为环境变量tftp-server;并将所述tftp-server调整为http服务器地址之后还包括:
对调整后的ipxe可执行程序进行编译,并将编译后的ipxe可执行程序拷贝至所述tftp服务器的根目录下。
可选地,所述在接收到所述裸金属服务器发送的部署指令的情况下,依据所述流表以及所述ipxe可执行程序,完成对所述裸金属服务器的ipxe部署包括:
接收到所述裸金属发送的dhcp服务获取请求之后,向所述裸金属服务器部署dhcp服务,并向所述裸金属服务器反馈指向tftp服务器的提示信息;
接收到所述裸金属服务器向所述tftp服务器发送的程序拉取指令,拉取所述tftp服务器上部署的所述ipxe可执行程序,以便于所述裸金属依据所述ipxe可执行程序包含的指向http服务器地址的变量,访问所述http服务器;
接收到所述裸金属服务器向所述http服务器发送的文件拉取指令,从所述http服务器中拉取ipxe配置文件,以完成对所述裸金属服务器的ipxe部署。
本申请实施例还提供了一种裸金属服务器ipxe的部署装置,包括创建单元、传输单元、设置单元和部署单元;
所述创建单元,用于预先在neutron网口为裸金属类型的情况下,调用OVN接口创建逻辑转换端口;
所述传输单元,用于基于所述逻辑转换端口将生成的流表传输至OVN;其中,所述流表包含部署dhcp服务和指向tftp服务器的引导程序;
所述设置单元,用于预先将支持裸金属的ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量;
所述部署单元,用于在接收到所述裸金属服务器发送的部署指令的情况下,依据所述流表以及所述ipxe可执行程序,完成对所述裸金属服务器的ipxe部署。
可选地,所述创建单元用于判断neutron网口对应的虚拟网口类型是否包含有裸金属类型;若所述neutron网口对应的虚拟网口类型包含有裸金属类型,则调用OVN接口创建external类型的逻辑转换端口。
可选地,所述设置单元用于将所述ipxe可执行程序中tftp-server-ip设置为环境变量tftp-server;并将所述tftp-server调整为http服务器地址。
可选地,还包括编译单元和存储单元;
所述编译单元,用于对调整后的ipxe可执行程序进行编译;
所述存储单元,用于将编译后的ipxe可执行程序拷贝至所述tftp服务器的根目录下。
可选地,所述部署单元包括部署子单元、发送子单元、程序拉取子单元和文件拉取子单元;
所述部署子单元,用于接收到所述裸金属发送的dhcp服务获取请求之后,向所述裸金属服务器部署dhcp服务;
所述发送子单元,用于向所述裸金属服务器反馈指向tftp服务器的提示信息;
所述程序拉取子单元,用于接收到所述裸金属服务器向所述tftp服务器发送的程序拉取指令,拉取所述tftp服务器上部署的所述ipxe可执行程序,以便于所述裸金属依据所述ipxe可执行程序包含的指向http服务器地址的变量,访问所述http服务器;
所述文件拉取子单元,用于接收到所述裸金属服务器向所述http服务器发送的文件拉取指令,从所述http服务器中拉取ipxe配置文件,以完成对所述裸金属服务器的ipxe部署。
本申请实施例还提供了一种裸金属服务器ipxe的部署设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如上所述裸金属服务器ipxe的部署方法的步骤。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述裸金属服务器ipxe的部署方法的步骤。
由上述技术方案可以看出,预先在neutron网口为裸金属类型的情况下,调用OVN接口创建逻辑转换端口,基于逻辑转换端口将生成的流表传输至OVN;其中,流表包含部署dhcp服务和指向tftp服务器的引导程序。由于OVN无法根据DHCP请求报文判断client类型并返回不同DHCP option,为了打破无限循环chainload,可以预先将支持裸金属的ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量;在接收到裸金属服务器发送的部署指令的情况下,依据流表以及ipxe可执行程序,便可以完成对裸金属服务器的ipxe部署。在该技术方案中,通过创建逻辑转换端口,可以实现向OVN下发流表,OVN依赖该流表可以向裸金属服务器提供dhcp服务。并且流表中记载了引导程序,可以便于裸金属服务器按照引导程序的指示执行下一步操作流程,即从tftp服务器上拉取ipxe可执行程序。由于预先已经将ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量,因此裸金属服务器在获取到tftp服务之后,可以直接访问http服务器,从http服务器中获取ipxe配置文件,以完成ipxe的部署,实现了在Neutron+OVN的网络架构下对裸金属服务器的ipxe部署。并且该实现流程更加简单快捷,有效的提升了OVN下裸金属服务器的ipxe部署效率,节省了部署时间。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种裸金属服务器ipxe的部署方法的流程图;
图2为本申请实施例提供的一种云计算管理平台对接OVN时裸金属服务器ipxe部署的流程图;
图3为本申请实施例提供的一种裸金属服务器ipxe的部署装置的结构示意图;
图4为本申请实施例提供的一种裸金属服务器ipxe的部署设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。
本申请的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可包括没有列出的步骤或单元。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。
接下来,详细介绍本申请实施例所提供的一种裸金属服务器ipxe的部署方法。图1为本申请实施例提供的一种裸金属服务器ipxe的部署方法的流程图,该方法包括:
S101:预先在neutron网口为裸金属类型的情况下,调用OVN接口创建逻辑转换端口,基于逻辑转换端口将生成的流表传输至OVN。
其中,流表包含部署dhcp服务和指向tftp服务器的引导程序。
本申请实施例在Neutron+OVN的管理架构下,为了实现对裸金属服务器的ipxe部署,对裸金属服务器与OVN的交互流程(networking-ovn)以及ipxe的代码流程进行了优化。
传统方式中,neutron对接ovn的插件不支持将裸金属pxe所使用的DHCP流表通过OVN下发至OVS。在本申请实施例中,OVN指的是OVS和OVN的结合。OVS是一个单机软件,它并没有集群的信息,自己无法了解整个集群的虚拟网络状况,也就无法只通过自己来构建集群规模的虚拟网络。OVN就相当于是OVS的服务器,它提供了一个集中式的OVS控制器。
流表是OVN向裸金属服务器提供dhcp服务并且指示OVN执行流程的重要依据。在实际应用中,可以按照部署dhcp服务、部署tftp服务以及部署http服务的顺序执行。流表可以包含部署dhcp服务和指向tftp服务器的引导程序。
在本申请实施例中,为了使得neutron可以顺利将流表传输至OVN,在neutron网口为裸金属类型的情况下,可以调用OVN接口创建逻辑转换端口,基于逻辑转换端口将生成的流表传输至OVN。
neutron网口对应的虚拟网口类型多种多样,在具体实现中,可以先判断neutron网口对应的虚拟网口类型是否包含有裸金属类型;若neutron网口对应的虚拟网口类型包含有裸金属类型,则可以调用OVN接口创建external类型的逻辑转换端口。external类型的端口可以更好的支持流表的传输。
S102:预先将支持裸金属的ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量。
在Neutron+OVN的管理架构下,OVN无法像dnsmasq一样根据DHCP请求报文判断client类型并返回不同DHCP option以打破无限循环chainload。也即裸金属服务器在部署ipxe时,裸金属服务器在访问tftp服务器之后又会重新返回请求dhcp服务,从而一直处于无线循环的状态,无法正常访问存储有ipxe配置文件的http服务器。因此在本申请实施例中,为了实现对裸金属服务器的ipxe部署,进一步对ipxe的代码流程进行了优化,优化方式包括将支持裸金属的ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量。
在具体实现中,可以将ipxe可执行程序中tftp-server-ip设置为环境变量tftp-server;并将tftp-server调整为http服务器地址。
为了保证调整后的ipxe可执行程序的可以被直接调用,可以对调整后的ipxe可执行程序进行编译,并将编译后的ipxe可执行程序拷贝至tftp服务器的根目录下。
裸金属服务器在访问tftp服务器时,可以获取到ipxe可执行程序,依据ipxe可执行程序中包含的http服务器地址,可以实现对http服务器的访问,从而依据http服务器上存储的ipxe配置文件,完成ipxe的部署。
S103:在接收到裸金属服务器发送的部署指令的情况下,依据流表以及ipxe可执行程序,完成对裸金属服务器的ipxe部署。
在本申请实施例中,通过对networking-ovn进行优化,云计算管理平台的OVN接收到裸金属发送的dhcp服务获取请求之后,可以基于存储的流表向裸金属服务器部署dhcp服务,并向裸金属服务器反馈指向tftp服务器的提示信息。
裸金属服务器在接收到指向tftp服务器的提示信息之后,可以向tftp服务器发送的程序拉取指令,此时tftp服务器可以向裸金属服务器反馈ipxe可执行程序。由于预先对ipxe可执行程序进行了优化,将ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量,因此裸金属依据ipxe可执行程序包含的指向http服务器地址的变量,可以直接访问http服务器。
http服务器接收到裸金属服务器向http服务器发送的文件拉取指令,可以将ipxe配置文件反馈至裸金属服务器,以便于裸金属服务器完成对ipxe部署。
如图2所示为本申请实施例提供的一种云计算管理平台对接OVN时裸金属服务器ipxe部署的流程图,云计算管理平台的OVN是以OVN+OVS的形式呈现,OVS是一种以软件形式存在于虚拟网络中的交换机,OVS与OVN结合可以保证OVN功能的实现。裸金属服务器的ipxe部署流程可以划分为6个步骤,首先裸金属服务器可以向OVN+OVS发送dhcp服务获取请求,OVN+OVS接收到裸金属发送的dhcp服务获取请求之后,可以向裸金属服务器部署dhcp服务,并向裸金属服务器反馈指向tftp服务器的提示信息。裸金属服务器接收到指向tftp服务器的提示信息,便可以知道其下一步需要访问云计算管理平台中的tftp服务器,此时裸金属服务器可以向TFTP Server(tftp服务器)发送的程序拉取指令。在本申请实施例中,对于TFTP Server上存储的ipxe可执行程序进行了优化,使得其可以支持裸金属服务器。TFTPServer在接收到裸金属服务器发送的程序拉取指令,可以向裸金属服务器反馈ipxe可执行程序,裸金属服务器在完成tftp服务的部署之后,可以依据ipxe可执行程序中包含的指向http服务器地址的变量,执行从HTTP Server(http服务器)拉取ipxe配置文件的操作。ipxe配置文件包含部署ipxe所需的内核以及内存文件系统。裸金属服务器可以拉取ipxe配置文件中指定的内核及内存文件系统,从而实现ipxe的部署。
由上述技术方案可以看出,预先在neutron网口为裸金属类型的情况下,调用OVN接口创建逻辑转换端口,基于逻辑转换端口将生成的流表传输至OVN;其中,流表包含部署dhcp服务和指向tftp服务器的引导程序。由于OVN无法根据DHCP请求报文判断client类型并返回不同DHCP option,为了打破无限循环chainload,可以预先将支持裸金属的ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量;在接收到裸金属服务器发送的部署指令的情况下,依据流表以及ipxe可执行程序,便可以完成对裸金属服务器的ipxe部署。在该技术方案中,通过创建逻辑转换端口,可以实现向OVN下发流表,OVN依赖该流表可以向裸金属服务器提供dhcp服务。并且流表中记载了引导程序,可以便于裸金属服务器按照引导程序的指示执行下一步操作流程,即从tftp服务器上拉取ipxe可执行程序。由于预先已经将ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量,因此裸金属服务器在获取到tftp服务之后,可以直接访问http服务器,从http服务器中获取ipxe配置文件,以完成ipxe的部署,实现了在Neutron+OVN的网络架构下对裸金属服务器的ipxe部署。并且该实现流程更加简单快捷,有效的提升了OVN下裸金属服务器的ipxe部署效率,节省了部署时间。
此外,本申请实施例通过对networking-ovn进行优化以及对ipxe可执行程序进行优化,可以为实依赖于ipxe启动的一些功能打好基础,比如卷启动。
图3为本申请实施例提供的一种裸金属服务器ipxe的部署装置的结构示意图,包括创建单元31、传输单元32、设置单元33和部署单元34;
创建单元31,用于预先在neutron网口为裸金属类型的情况下,调用OVN接口创建逻辑转换端口;
传输单元32,用于基于逻辑转换端口将生成的流表传输至OVN;其中,流表包含部署dhcp服务和指向tftp服务器的引导程序;
设置单元33,用于预先将支持裸金属的ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量;
部署单元34,用于在接收到裸金属服务器发送的部署指令的情况下,依据流表以及ipxe可执行程序,完成对裸金属服务器的ipxe部署。
可选地,创建单元用于判断neutron网口对应的虚拟网口类型是否包含有裸金属类型;若neutron网口对应的虚拟网口类型包含有裸金属类型,则调用OVN接口创建external类型的逻辑转换端口。
可选地,设置单元用于将ipxe可执行程序中tftp-server-ip设置为环境变量tftp-server;并将tftp-server调整为http服务器地址。
可选地,还包括编译单元和存储单元;
编译单元,用于对调整后的ipxe可执行程序进行编译;
存储单元,用于将编译后的ipxe可执行程序拷贝至tftp服务器的根目录下。
可选地,部署单元包括部署子单元、发送子单元、程序拉取子单元和文件拉取子单元;
部署子单元,用于接收到裸金属发送的dhcp服务获取请求之后,向裸金属服务器部署dhcp服务;
发送子单元,用于向裸金属服务器反馈指向tftp服务器的提示信息;
程序拉取子单元,用于接收到裸金属服务器向tftp服务器发送的程序拉取指令,拉取tftp服务器上部署的ipxe可执行程序,以便于裸金属依据ipxe可执行程序包含的指向http服务器地址的变量,访问http服务器;
文件拉取子单元,用于接收到裸金属服务器向http服务器发送的文件拉取指令,从http服务器中拉取ipxe配置文件,以完成对裸金属服务器的ipxe部署。
图3所对应实施例中特征的说明可以参见图1所对应实施例的相关说明,这里不再一一赘述。
由上述技术方案可以看出,预先在neutron网口为裸金属类型的情况下,调用OVN接口创建逻辑转换端口,基于逻辑转换端口将生成的流表传输至OVN;其中,流表包含部署dhcp服务和指向tftp服务器的引导程序。由于OVN无法根据DHCP请求报文判断client类型并返回不同DHCP option,为了打破无限循环chainload,可以预先将支持裸金属的ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量;在接收到裸金属服务器发送的部署指令的情况下,依据流表以及ipxe可执行程序,便可以完成对裸金属服务器的ipxe部署。在该技术方案中,通过创建逻辑转换端口,可以实现向OVN下发流表,OVN依赖该流表可以向裸金属服务器提供dhcp服务。并且流表中记载了引导程序,可以便于裸金属服务器按照引导程序的指示执行下一步操作流程,即从tftp服务器上拉取ipxe可执行程序。由于预先已经将ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量,因此裸金属服务器在获取到tftp服务之后,可以直接访问http服务器,从http服务器中获取ipxe配置文件,以完成ipxe的部署,实现了在Neutron+OVN的网络架构下对裸金属服务器的ipxe部署。并且该实现流程更加简单快捷,有效的提升了OVN下裸金属服务器的ipxe部署效率,节省了部署时间。
图4为本申请另一实施例提供的裸金属服务器ipxe的部署设备的结构图,如图4所示,裸金属服务器ipxe的部署设备包括:存储器20,用于存储计算机程序;
处理器21,用于执行计算机程序时实现如上述实施例裸金属服务器ipxe的部署方法的步骤。
本实施例提供的裸金属服务器ipxe的部署设备可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的裸金属服务器ipxe的部署方法的相关步骤。另外,存储器20所存储的资源还可以包括操作系统202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作系统202可以包括Windows、Unix、Linux等。数据203可以包括但不限于流表、ipxe可执行程序等。
在一些实施例中,裸金属服务器ipxe的部署设备还可包括有显示屏22、输入输出接口23、通信接口24、电源25以及通信总线26。
本领域技术人员可以理解,图4中示出的结构并不构成对裸金属服务器ipxe的部署设备的限定,可以包括比图示更多或更少的组件。
可以理解的是,如果上述实施例中的裸金属服务器ipxe的部署方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、磁碟或者光盘等各种可以存储程序代码的介质。
基于此,本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上任意一项裸金属服务器ipxe的部署方法的步骤。
本发明实施例所述计算机可读存储介质的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
以上对本申请实施例所提供的一种裸金属服务器ipxe的部署方法、装置、设备和计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
以上对本申请所提供的一种裸金属服务器ipxe的部署方法、装置、设备和计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
Claims (10)
1.一种裸金属服务器ipxe的部署方法,其特征在于,包括:
预先在neutron网口为裸金属类型的情况下,调用OVN接口创建逻辑转换端口,基于所述逻辑转换端口将生成的流表传输至OVN;其中,所述流表包含部署dhcp服务和指向tftp服务器的引导程序;
预先将支持裸金属的ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量;
在接收到所述裸金属服务器发送的部署指令的情况下,依据所述流表以及所述ipxe可执行程序,完成对所述裸金属服务器的ipxe部署。
2.根据权利要求1所述的裸金属服务器ipxe的部署方法,其特征在于,所述预先在neutron网口为裸金属类型的情况下,调用OVN接口创建逻辑转换端口包括:
判断neutron网口对应的虚拟网口类型是否包含有裸金属类型;
若所述neutron网口对应的虚拟网口类型包含有裸金属类型,则调用OVN接口创建external类型的逻辑转换端口。
3.根据权利要求1所述的裸金属服务器ipxe的部署方法,其特征在于,所述预先将ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量包括:
将所述ipxe可执行程序中tftp-server-ip设置为环境变量tftp-server;并将所述tftp-server调整为http服务器地址。
4.根据权利要求3所述的裸金属服务器ipxe的部署方法,其特征在于,在所述将所述ipxe可执行程序中tftp-server-ip设置为环境变量tftp-server;并将所述tftp-server调整为http服务器地址之后还包括:
对调整后的ipxe可执行程序进行编译,并将编译后的ipxe可执行程序拷贝至所述tftp服务器的根目录下。
5.根据权利要求1至4任意一项所述的裸金属服务器ipxe的部署方法,其特征在于,所述在接收到所述裸金属服务器发送的部署指令的情况下,依据所述流表以及所述ipxe可执行程序,完成对所述裸金属服务器的ipxe部署包括:
接收到所述裸金属发送的dhcp服务获取请求之后,向所述裸金属服务器部署dhcp服务,并向所述裸金属服务器反馈指向tftp服务器的提示信息;
接收到所述裸金属服务器向所述tftp服务器发送的程序拉取指令,拉取所述tftp服务器上部署的所述ipxe可执行程序,以便于所述裸金属依据所述ipxe可执行程序包含的指向http服务器地址的变量,访问所述http服务器;
接收到所述裸金属服务器向所述http服务器发送的文件拉取指令,从所述http服务器中拉取ipxe配置文件,以完成对所述裸金属服务器的ipxe部署。
6.一种裸金属服务器ipxe的部署装置,其特征在于,包括创建单元、传输单元、设置单元和部署单元;
所述创建单元,用于预先在neutron网口为裸金属类型的情况下,调用OVN接口创建逻辑转换端口;
所述传输单元,用于基于所述逻辑转换端口将生成的流表传输至OVN;其中,所述流表包含部署dhcp服务和指向tftp服务器的引导程序;
所述设置单元,用于预先将支持裸金属的ipxe可执行程序中tftp服务器的地址设置为指向http服务器地址的变量;
所述部署单元,用于在接收到所述裸金属服务器发送的部署指令的情况下,依据所述流表以及所述ipxe可执行程序,完成对所述裸金属服务器的ipxe部署。
7.根据权利要求6所述的裸金属服务器ipxe的部署装置,其特征在于,所述创建单元用于判断neutron网口对应的虚拟网口类型是否包含有裸金属类型;若所述neutron网口对应的虚拟网口类型包含有裸金属类型,则调用OVN接口创建external类型的逻辑转换端口。
8.根据权利要求6或7所述的裸金属服务器ipxe的部署装置,其特征在于,所述部署单元包括部署子单元、发送子单元、程序拉取子单元和文件拉取子单元;
所述部署子单元,用于接收到所述裸金属发送的dhcp服务获取请求之后,向所述裸金属服务器部署dhcp服务;
所述发送子单元,用于向所述裸金属服务器反馈指向tftp服务器的提示信息;
所述程序拉取子单元,用于接收到所述裸金属服务器向所述tftp服务器发送的程序拉取指令,拉取所述tftp服务器上部署的所述ipxe可执行程序,以便于所述裸金属依据所述ipxe可执行程序包含的指向http服务器地址的变量,访问所述http服务器;
所述文件拉取子单元,用于接收到所述裸金属服务器向所述http服务器发送的文件拉取指令,从所述http服务器中拉取ipxe配置文件,以完成对所述裸金属服务器的ipxe部署。
9.一种裸金属服务器ipxe的部署设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如权利要求1至5任意一项所述裸金属服务器ipxe的部署方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任意一项所述裸金属服务器ipxe的部署方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110975232.9A CN113746673B (zh) | 2021-08-24 | 2021-08-24 | 裸金属服务器ipxe的部署方法、装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110975232.9A CN113746673B (zh) | 2021-08-24 | 2021-08-24 | 裸金属服务器ipxe的部署方法、装置、设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113746673A true CN113746673A (zh) | 2021-12-03 |
CN113746673B CN113746673B (zh) | 2023-03-24 |
Family
ID=78732525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110975232.9A Active CN113746673B (zh) | 2021-08-24 | 2021-08-24 | 裸金属服务器ipxe的部署方法、装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113746673B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114244703A (zh) * | 2022-02-24 | 2022-03-25 | 苏州浪潮智能科技有限公司 | 一种裸金属服务器检查及部署方法、装置、设备、介质 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104767649A (zh) * | 2015-04-30 | 2015-07-08 | 杭州华三通信技术有限公司 | 部署裸金属服务器的方法及装置 |
CN105204789A (zh) * | 2015-08-24 | 2015-12-30 | 北京金山安全软件有限公司 | 一种api调试日志打印方法及装置 |
CN106790467A (zh) * | 2016-12-10 | 2017-05-31 | 武汉白虹软件科技有限公司 | 一种云主机自动发现和自动部署的方法 |
CN106886483A (zh) * | 2015-12-16 | 2017-06-23 | 阿里巴巴集团控股有限公司 | 提供、获取终端应用日志的方法和装置 |
US20170250988A1 (en) * | 2016-02-25 | 2017-08-31 | Red Hat, Inc. | Access guards for multi-tenant logging |
CN107862198A (zh) * | 2017-11-17 | 2018-03-30 | 浪潮软件股份有限公司 | 一种访问验证方法、系统及客户端 |
WO2019084853A1 (zh) * | 2017-11-01 | 2019-05-09 | 华为技术有限公司 | 裸金属服务器的硬件属性发现方法和系统 |
CN110532065A (zh) * | 2019-09-02 | 2019-12-03 | 广州市品高软件股份有限公司 | 一种裸金属服务器的部署方法及装置 |
CN111162956A (zh) * | 2018-11-08 | 2020-05-15 | 优信数享(北京)信息技术有限公司 | 一种日志记录方法及装置 |
CN111585917A (zh) * | 2020-06-10 | 2020-08-25 | 广州市品高软件股份有限公司 | 一种裸金属服务器网络系统及其实现方法 |
US20200344326A1 (en) * | 2019-04-29 | 2020-10-29 | Hewlett Packard Enterprise Development Lp | Cloud controller providing architecture-based installations |
CN112395084A (zh) * | 2020-10-28 | 2021-02-23 | 安擎(天津)计算机有限公司 | 一种裸金属服务器的部署方法 |
CN112866017A (zh) * | 2021-01-08 | 2021-05-28 | 苏州浪潮智能科技有限公司 | 配置裸金属服务器bmc ip地址的方法、系统、介质及设备 |
CN114003559A (zh) * | 2020-07-28 | 2022-02-01 | 中移(苏州)软件技术有限公司 | 一种日志访问方法、装置、设备及计算机可读存储介质 |
-
2021
- 2021-08-24 CN CN202110975232.9A patent/CN113746673B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104767649A (zh) * | 2015-04-30 | 2015-07-08 | 杭州华三通信技术有限公司 | 部署裸金属服务器的方法及装置 |
CN105204789A (zh) * | 2015-08-24 | 2015-12-30 | 北京金山安全软件有限公司 | 一种api调试日志打印方法及装置 |
CN106886483A (zh) * | 2015-12-16 | 2017-06-23 | 阿里巴巴集团控股有限公司 | 提供、获取终端应用日志的方法和装置 |
US20170250988A1 (en) * | 2016-02-25 | 2017-08-31 | Red Hat, Inc. | Access guards for multi-tenant logging |
CN106790467A (zh) * | 2016-12-10 | 2017-05-31 | 武汉白虹软件科技有限公司 | 一种云主机自动发现和自动部署的方法 |
WO2019084853A1 (zh) * | 2017-11-01 | 2019-05-09 | 华为技术有限公司 | 裸金属服务器的硬件属性发现方法和系统 |
CN107862198A (zh) * | 2017-11-17 | 2018-03-30 | 浪潮软件股份有限公司 | 一种访问验证方法、系统及客户端 |
CN111162956A (zh) * | 2018-11-08 | 2020-05-15 | 优信数享(北京)信息技术有限公司 | 一种日志记录方法及装置 |
US20200344326A1 (en) * | 2019-04-29 | 2020-10-29 | Hewlett Packard Enterprise Development Lp | Cloud controller providing architecture-based installations |
CN110532065A (zh) * | 2019-09-02 | 2019-12-03 | 广州市品高软件股份有限公司 | 一种裸金属服务器的部署方法及装置 |
CN111585917A (zh) * | 2020-06-10 | 2020-08-25 | 广州市品高软件股份有限公司 | 一种裸金属服务器网络系统及其实现方法 |
CN114003559A (zh) * | 2020-07-28 | 2022-02-01 | 中移(苏州)软件技术有限公司 | 一种日志访问方法、装置、设备及计算机可读存储介质 |
CN112395084A (zh) * | 2020-10-28 | 2021-02-23 | 安擎(天津)计算机有限公司 | 一种裸金属服务器的部署方法 |
CN112866017A (zh) * | 2021-01-08 | 2021-05-28 | 苏州浪潮智能科技有限公司 | 配置裸金属服务器bmc ip地址的方法、系统、介质及设备 |
Non-Patent Citations (3)
Title |
---|
HYUNGRO LEE 等: ""big data benchmarks of high-performance storage systems on commercial bar metal clouds"", 《2019 IEEE 12TH INTERNATIONAL CONFERENCE ON CLOUD COMPUTING(CLOUD)》 * |
MINORU UEHARA: ""performance evaluation of lxc based educational cloud in a bare metal server"", 《2017 31ST INTERNATIONAL CONFERENCE ON ADVANCED INFORMATION NETWORKING AND APPLICATIONS WORKSHOPS(WAINA)》 * |
陈英达等: "云计算平台中裸金属物理服务器自动化批量部署方法研究", 《科技创新与应用》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114244703A (zh) * | 2022-02-24 | 2022-03-25 | 苏州浪潮智能科技有限公司 | 一种裸金属服务器检查及部署方法、装置、设备、介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113746673B (zh) | 2023-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7421511B2 (ja) | アプリケーションをデプロイするための方法及び装置、電子機器、読み取り可能な記憶媒体並びにコンピュータプログラム | |
EP3385835B1 (en) | Method and apparatus for configuring accelerator | |
EP3846024B1 (en) | Virtual machine management method and device for cloud platform | |
US9858105B1 (en) | Service for managing custom virtual machine images | |
US10684838B2 (en) | Dynamic application deployment | |
CN111669284B (zh) | OpenStack自动化部署方法、电子设备、存储介质及系统 | |
CN112035121B (zh) | 一种边缘应用部署方法及系统 | |
CN111198696B (zh) | 一种基于裸机服务器的OpenStack大规模部署方法和系统 | |
CN112486522A (zh) | 含智能网卡OpenStack裸机的部署方法及装置 | |
CN111475175B (zh) | 基于arm服务器的操作系统安装引导方法、装置及介质 | |
US20210042196A1 (en) | Data Migration For A Shared Database | |
CN114968477A (zh) | 容器热迁移方法及容器热迁移装置 | |
CN113746673B (zh) | 裸金属服务器ipxe的部署方法、装置、设备和介质 | |
CN109600439B (zh) | 基于微服务的PaaS平台的部署方法及PaaS平台 | |
CN110413328B (zh) | 一种网卡端口的pxe功能使能方法、装置及相关设备 | |
CN113419813B (zh) | 一种基于容器平台部署裸机管理服务的方法及装置 | |
CN107547277B (zh) | 一种虚拟化控制板实现方法及网络通信设备 | |
JP2021131897A (ja) | スケジューリング方法、装置、設備、記憶設備、及びプログラム | |
CN105933136A (zh) | 一种资源调度方法及系统 | |
CN109491762B (zh) | 容器状态控制方法及装置、存储介质、电子设备 | |
WO2021097683A1 (zh) | 安卓系统启动的方法、装置、设备及存储介质 | |
CN116069447A (zh) | 一种虚拟机numa拓扑生成方法、装置、设备、介质 | |
CN110782040A (zh) | 一种pytorch任务训练方法、装置、设备及介质 | |
CN113626137A (zh) | 一种支持多格式镜像的实现方法、装置、设备和介质 | |
CN115794132A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |