一种获取OS镜像的方法和相关设备与流程

未命名 07-12 阅读:94 评论:0

一种获取os镜像的方法和相关设备
技术领域
1.本技术实施例涉及计算机科学技术领域,尤其涉及一种获取os镜像的方法和相关设备。


背景技术:

2.随着计算机技术的不断发展,对计算设备(如服务器)部署操作系统(operating system,os)的应用场景越来越多。
3.一种基于云计算管理平台openstack中的ironic组件部署os的方法是通过ironic服务设备向待获取os的第一服务器提供os镜像,以使该第一服务器从ironic服务设备下载os镜像,并对获取到的os镜像进行安装部署。
4.然而,基于上述部署os的方法,当多台服务器需要并行部署os时,该多台服务器同时从该ironic服务设备中下载os镜像。此时,该多台服务器下载该os镜像的效率会受到该ironic服务设备的带宽影响,即:当多台服务器的数量较多时,由于该ironic服务设备的带宽较小,从而导致服务器获取该os镜像的效率较低。


技术实现要素:

5.本技术实施例提供一种获取os镜像的方法和相关设备,能够提高服务器获取该os镜像的效率。
6.为达到上述目的,本技术实施例采用如下技术方案:
7.第一方面,本技术实施例提供一种获取操作系统os镜像的方法,该方法包括:注册设备接收第一服务器发送的获取os的镜像地址的请求信息;其中,该注册设备中存储有os的多个镜像地址;该多个镜像地址中任意两个镜像地址不同;注册设备基于上述多个镜像地址各自对应的当前下载情况,从该多个镜像地址中,确定第一镜像地址;注册设备将上述第一镜像地址发送给第一服务器;其中,该第一镜像地址用于第一服务器从第一镜像地址获取os镜像。
8.本技术实施例是注册设备响应于第一服务器的请求信息,根据本地存储的多个镜像地址各自对应的当前下载情况,从多个镜像地址中,确定第一镜像地址,以使第一服务器从该第一镜像地址下载os镜像;相比于所有服务器从ironic服务设备下载os镜像的方法,当多个服务器基于上述本技术实施例提供的方法获取os镜像时,注册设备会根据该多个镜像地址各自的当前下载情况,从多个镜像地址中为该多个服务器确定不同的镜像地址,以使该多个服务器从不同的镜像地址下载os镜像,从而减少了多个服务器对某一个镜像地址所指示的服务器的带宽资源的占用,因此提高了下载os镜像的效率。
9.一种可能的实现方式中,上述第一镜像地址是上述多个镜像地址中当前下载量最小的镜像地址;或者第一镜像地址是该多个镜像地址中当前下载量小于第一阈值的镜像地址;其中,该当前下载量用于表征当前下载情况。
10.上述注册设备将上述多个镜像地址中,当前下载量最小的镜像地址确定为第一镜
像地址;或者,注册设备将上述多个镜像地址中,当前下载量小于第一阈值的镜像地址确定为第一镜像地址,从而使第一服务器从下载量较小的镜像地址下载os镜像,由于该第一镜像地址的带宽资源的占用率较低,因此,提高了第一服务器下载该os镜像的效率。
11.一种可能的实现方式中,上述注册设备将第一镜像地址发送给第一服务器之后,上述方法还包括:上述注册设备接收第一服务器发送的第二镜像地址,该第二镜像地址为上述第一服务器从第一镜像地址下载os镜像后,该第一服务器中存储os镜像的地址;上述注册设备存储第二镜像地址。
12.本技术实施例提供的方法在第一服务器下载os镜像之后,注册设备通过将第一服务器发送的第二镜像地址存储在本地,该上述第一服务器从第一镜像地址下载os镜像后,该第一服务器中存储os镜像的地址;以使注册设备存储的多个镜像地址中包括该第二镜像地址,后续待获取os镜像的服务器可以从该第二镜像地址下载os镜像,也就是说,第一服务器下载os镜像之后,注册设备将第一服务器作为一个新的镜像源,以供服务器从该镜像源获取os镜像,从而使多个服务器从多个镜像源下载os镜像,因此提高了下载os镜像的效率
13.一种可能的实现方式中,上述注册设备存储第二镜像地址,包括:当上述多个镜像地址中的当前下载量为零的镜像地址的数量小于或等于第二阈值时,该注册设备存储第二镜像地址。
14.上述注册设备在上述多个镜像地址中的当前下载量为零的镜像地址(简称:空闲镜像地址)的数量小于或等于第二阈值时,该注册设备才会存储第二镜像地址;也就是说,只有注册设备存储的多个镜像地址中的空闲镜像地址的数量较小,该注册设备才会将该第二镜像地址作为新的镜像源,以供其他服务器从该镜像源下载os镜像,从而减少上述多个镜像地址中的空闲镜像地址的数量,进而解决了因多个镜像地址中的空闲镜像地址的数量过多而导致注册设备中存储资源的浪费问题。
15.一种可能的实现方式中,上述方法还包括:注册设备接收第二服务器发送的获取os的镜像地址的请求信息;注册设备将第二镜像地址发送给第二服务器;其中,该第二镜像地址用于指示第二服务器从上述第一服务器获取os镜像,该第二镜像地址是上述注册设备存储的多个镜像地址中当前下载量最小的镜像地址。
16.第二方面,本技术实施例提供一种获取操作系统os镜像的方法,该方法包括:第一服务器向注册设备发送获取os的镜像地址的请求信息,其中,该注册设备中存储有os的多个镜像地址;该多个镜像地址中任意两个镜像地址不同;上述请求信息用于注册设备基于该多个镜像地址各自对应的当前下载情况,从上述多个镜像地址中,确定第一镜像地址,并向第一服务器发送第一镜像地址;第一服务器从第一镜像地址获取os镜像。
17.一种可能的实现方式中,上述第一镜像地址是上述多个镜像地址中当前下载量最小的镜像地址;或者该第一镜像地址是上述多个镜像地址中当前下载量小于第一阈值的镜像地址;其中,当前下载量用于表征当前下载情况。
18.一种可能的实现方式中,上述第一服务器向注册设备发送的获取os的镜像地址的请求信息,包括:上述第一服务器确定第一服务器的启动项为预执行环境pxe启动时,该第一服务器向上述注册设备发送该请求信息。
19.一种可能的实现方式中,上述第一服务器从第一镜像地址下载os镜像之后,该方法还包括:第一服务器向注册设备发送第二镜像地址,其中,第二镜像地址用于存储在注册
设备中,第二镜像地址为第一服务器从第一镜像地址下载os镜像后,第一服务器中存储os镜像的地址。
20.一种可能的实现方式中,多个镜像地址中包括第一类镜像地址和第二类镜像地址,上述第一服务器向注册设备发送第二镜像地址,包括:当上述第一镜像地址为第一类镜像地址时,该第一服务器向注册设备发送第二镜像地址。
21.相比于每个获取os镜像后的服务器均向注册设备发送第二镜像地址的方法,通过将注册设备中存储的os的多个镜像地址划分为第一类镜像地址和第二类镜像地址,只有当从第一类镜像地址下载os镜像后的服务器才会向注册设备发送第二镜像地址,从而减少了向注册设备发送第二镜像地址的服务器,进而解决了因向注册设备同时发送第二镜像地址的服务器的数量过多,而导致的注册设备发生宕机的问题。
22.一种可能的实现方式中,上述第一类镜像地址存储的os镜像包括目标服务,上述第二类镜像地址存储的该os镜像不包括上述目标服务,该第一服务器向注册设备发送第二镜像地址,包括:上述第一服务器运行目标服务,以向该注册设备发送上述第二镜像地址。
23.一种可能的实现方式中,在第一服务器从第一镜像地址获取os镜像之后,该方法还包括:当os镜像格式为光盘镜像文件iso格式时,该第一服务器安装os镜像中的os。
24.第三方面,本技术实施例提供了一种注册设备,该注册设备包括:收发单元和处理单元;收发单元用于接收第一服务器发送的获取os的镜像地址的请求信息;其中,注册设备中存储有os的多个镜像地址;多个镜像地址中任意两个镜像地址不同;处理单元用于基于多个镜像地址各自对应的当前下载情况,从多个镜像地址中,确定第一镜像地址;上述收发单元还用于将第一镜像地址发送给第一服务器;其中,第一镜像地址用于第一服务器从第一镜像地址获取os镜像。
25.一种可能的实现方式中,第一镜像地址是多个镜像地址中当前下载量最小的镜像地址;或者第一镜像地址是多个镜像地址中当前下载量小于第一阈值的镜像地址;其中,当前下载量用于表征当前下载情况。
26.一种可能的实现方式中,上述注册设备还包括存储单元;上述收发单元用于接收第一服务器发送的第二镜像地址,第二镜像地址为第一服务器从第一镜像地址获取os镜像后,第一服务器中存储os镜像的地址;上述存储单元用于存储第二镜像地址。
27.一种可能的实现方式中,上述存储单元用于当多个镜像地址中的当前下载量为零的镜像地址的数量小于或等于第二阈值时,存储第二镜像地址。
28.一种可能的实现方式中,上述收发单元用于接收第二服务器发送的获取os的镜像地址的请求信息;收发单元用于还用于将第二镜像地址发送给第二服务器;其中,第二镜像地址用于指示第二服务器从第一服务器获取os镜像,第二镜像地址是注册设备存储的多个镜像地址中当前下载量最小的镜像地址。
29.第四方面,本技术实施例提供了一种第一服务器,该第一服务器包括收发单元和存储单元;收发单元用于向注册设备发送获取os的镜像地址的请求信息,其中,注册设备中存储有os的多个镜像地址;多个镜像地址中任意两个镜像地址不同;请求信息用于注册设备基于多个镜像地址各自对应的当前下载情况,从多个镜像地址中,确定第一镜像地址,并向第一服务器发送第一镜像地址;存储单元从第一镜像地址获取os镜像。
30.一种可能的实现方式中,第一镜像地址是多个镜像地址中当前下载量最小的镜像
地址;或者第一镜像地址是多个镜像地址中当前下载量小于第一阈值的镜像地址;其中,当前下载量用于表征当前下载情况。
31.一种可能的实现方式中,上述第一服务器还包括处理单元,该处理单元用于确定第一服务器的启动项为预执行环境pxe启动,上述收发单元用于当处理单元用于确定第一服务器的启动项为预执行环境pxe启动时,向注册设备发送请求信息。
32.一种可能的实现方式中,收发单元还用于向注册设备发送第二镜像地址,其中,第二镜像地址用于存储在注册设备中,第二镜像地址为第一服务器从第一镜像地址下载os镜像后,第一服务器中存储os镜像的地址。
33.一种可能的实现方式中,收发单元用于当第一镜像地址为第一类镜像地址时,向注册设备发送第二镜像地址。
34.一种可能的实现方式中,上述处理单元还用于运行上述目标服务,已使上述收发单元向注册设备发送第二镜像地址。
35.一种可能的实现方式中,上述处理单元还用于当os镜像格式为光盘镜像文件iso格式时,安装os镜像中的os。
36.第五方面,本技术实施例提供一种注册设备,包括存储器和处理器,存储器与处理器耦合;存储器用于存储计算机程序代码,其中,计算机程序代码包括计算机指令;当计算机指令被处理器执行时,使得注册设备执行第一方面及其可能的实现方式中任意之一所述的方法。
37.第六方面,本技术实施例提供一种服务器,包括存储器和处理器,存储器与处理器耦合;存储器用于存储计算机程序代码,其中,计算机程序代码包括计算机指令;当计算机指令被处理器执行时,使得服务器执行第二方面及其可能的实现方式中任意之一所述的方法。
38.第七方面,本技术实施例提供一种计算机可读存储介质,其上存储有计算机指令,当计算机指令在计算设备上运行时,使得计算设备执行上述第一方面或第二方面及其可能的实现方式中任意之一所述的方法。
39.第八方面,本技术实施例提供一种计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面及其可能的实现方式中任意之一所述的方法。
40.第九方面,本技术实施例提供了一种计算机程序产品,包括计算机执行指令,当计算机执行指令在计算机上运行时,使得计算机执行上述第二方面提供的任意一种方法。
41.第十方面,本技术实施例提供一种获取os镜像系统,该系统中包括注册设备和服务器,注册设备用于执行上述第一方面及其可能的实现方式中任意之一所述的方法;服务器用于执行上述第二方面及其可能的实现方式中任意之一所述的方法。
42.第十一方面,本技术实施例提供一种计算设备,包括存储器和处理器,存储器与处理器耦合;存储器用于存储计算机程序代码,其中,计算机程序代码包括计算机指令;当计算机指令被处理器执行时,使得注册设备执行第一方面或第二方面及其可能的实现方式中任意之一所述的方法。
43.应当理解的是,本技术实施例的第三方面至第十一方面技术方案及对应的可能的实施方式所取得的有益效果可以参见上述对第一方面或第二方面及其对应的可能的实施方式的技术效果,此处不再赘述。
附图说明
44.图1为本技术实施例提供的一种获取os镜像的系统架构的示意图;
45.图2为本技术实施例提供的一种计算设备的架构示意图;
46.图3为本技术实施例提供的一种获取os镜像的方法流程示意图一;
47.图4为本技术实施例提供的一种注册os的镜像地址的方法流程示意图;
48.图5为本技术实施例提供的一种获取os镜像的方法流程示意图二;
49.图6为本技术实施例提供的一种注册设备结构示意图;
50.图7为本技术实施例提供的一种服务器的结构示意图。
具体实施方式
51.本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。
52.本技术实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一镜像地址和第二镜像地址等是用于区别不同的镜像地址,而不是用于描述镜像地址的特定顺序。
53.在本技术实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本技术实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
54.在本技术实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。例如,多个镜像地址是指两个或两个以上的镜像地址。
55.首先对本技术实施例提供的一种获取os镜像的方法和相关设备中涉及的一些概念做解释说明:
56.openstack:是一个开源的云计算管理平台项目,是一系列软件开源项目的组合。该项目用于为私有云和公有云提供可扩展的弹性的云计算服务。
57.ironic组件:openstack中的一个组件,该组件是一个针对裸机管理的子项目,主要能提供硬盘的磁盘阵列(redundant array of independent disks,raid)、硬盘分区、硬盘格式化、在硬盘上安装操作系统、在硬盘上安装驱动程序以及在硬盘上安装应用程序等功能。
58.dhcp:为动态主机配置协议(dynamic host configuration protocol,dhcp),具体是一个局域网的网络协议。指的是由服务器a(简称:dhcp设备)控制一段网际互连协议(internet protocol,ip)地址范围,当服务器b登录dhcp设备时就可以自动获得dhcp设备为其分配的ip地址和子网掩码。
59.镜像:是一种文件存储形式,是冗余的一种类型,一个磁盘上的数据在另一个磁盘上存在一个完全相同的副本即为镜像。
60.随着互联网技术的不断发展,对服务器部署os的应用场景越来越多。
61.一种基于openstack中的ironic组件部署os的方法包括:ironic服务设备控制第一服务器在启动项为预执行环境(preboot execution environment,pxe)启动的情况下进行重启;其中,该第一服务器在以pxe形式进行重启的过程中,第一服务器从dhcp设备获取
自身的ip,以使第一服务器可以和其他远程设备进行数据传输。然后,第一服务器向ironic服务设备发送获取os的镜像地址的请求信息;ironic服务设备响应于该请求信息,将本地存储的os镜像的地址(简称:目标镜像地址)发送给第一服务器,以使第一服务器从该目标镜像地址下载该os镜像,并对该os镜像进行安装部署。
62.然而,基于上述部署os的方法,当多台服务器需要并行部署os时,该多台服务器同时从该目标镜像地址所指示的ironic服务设备中下载os镜像。此时,该多台服务器下载该os镜像的效率会受到该ironic服务设备的带宽影响,即:当多台服务器的数量较多时,由于该ironic服务设备的带宽较小,从而导致服务器下载该os镜像的效率较低。
63.下面结合图1示例性的说明一种获取镜像os的系统架构,如图1所示,为本技术实施例提供的一种获取os镜像的系统架构的示意图,该系统中包括:注册设备101和多个服务器102。
64.注册设备101存储有os的多个镜像地址,且该多个镜像地址中任意两个镜像地址不同。该注册设备101在接收到服务器102发送的获取os的镜像地址的请求信息后,会基于本地存储的多个镜像地址各自对应的当前下载情况,从该多个镜像地址中,确定第一镜像地址,并将该第一镜像地址发送至服务器102。
65.服务器102是待获取os镜像的服务器,通过向注册设备101发送获取os的镜像地址的请求信息,获取注册设备104发送的第一镜像地址;并从该第一镜像地址获取os镜像。
66.可选的,上述注册设备101中包括:ironic服务单元1011和dhcp服务单元1012。
67.ironic服务设备101用于设置第一服务器102的启动项,其具体实现方式见下述s110的相关描述,此处不再赘述。
68.dhcp服务单元1012用于为上述服务器102分配ip地址,其具体包括:dhcp服务单元1012在获取服务器102发送的获取ip地址的请求后,为该服务器102分配ip地址,并将该分配好的ip地址发送给该服务器102。
69.需要说明的是,上述ironic服务单元1011和dhcp服务单元1012还可以是注册设备101以外的独立设备,具体本技术实施例不对上述ironic服务单元1011和dhcp服务单元1012的表现形式进行限定。
70.基于上述获取os镜像的系统架构,本技术实施例提供了一种获取os镜像的方法,该方法中注册设备根据本地存储的多个镜像地址各自对应的当前下载情况,从多个镜像地址中,确定第一镜像地址,并将该第一镜像地址发送给第一服务器,以使第一服务器从该第一镜像地址获取os镜像。相比于所有服务器均从ironic服务设备下载os镜像的方法,当多个服务器基于本技术实施例提供的方法获取os镜像时,注册设备会根据该多个镜像地址各自的当前下载情况,从多个镜像地址中为该多个服务器确定不同的镜像地址,以使该多个服务器从不同的镜像地址下载os镜像,从而减少了多个服务器对某一个镜像地址所指示的服务器的带宽资源的占用,因此提高了获取os镜像的效率。
71.需要说明的是,上述注册设备101和服务器102可以是计算机(如服务器)等具有处理和收发功能的计算设备。如图2所示,是本技术实施例提供的一种计算设备的硬件结构示意图,该计算设备可以是上述注册设备101,也可以是上述服务器102。该计算机设备的硬件部分主要包括带内控制器、带外控制器以及内存,软件部分主要包括带外管理模块、处理器固件以及操作系统(operating system,os)管理单元。其中,带外管理模块位于带外控制器
内,os管理单元位于带内控制器内,处理器固件可以位于带内控制器内(如图2所示),或者,处理器固件也可以位于带内控制器外的固件芯片(图2中未示出)内。该带内控制器可以为处理器(central processing unit,cpu)。其中,带外管理模块可以为非业务模块的管理单元。例如,带外管理模块可以通过专用的数据通道对计算机设备进行远程维护和管理,该带外管理模块是完全独立于计算机设备的操作系统之外,可以通过计算机设备的带外管理接口与bios和os(或os管理单元)进行通信。
72.示例性的,带外管理模块可以包括计算机设备外部的监控管理单元、带内控制器外的管理芯片中的管理系统、计算机设备bmc、或智能管理单元(intelligent management unit,imu)、系统管理模块(system management mode,smm)等。需要说明的,本技术实施例对带外管理模块的具体形式并不限定,以上仅为示例性说明。在下述实施例中,仅以带外管理模块为bmc为例进行说明。
73.示例性的,处理器固件(也称为处理器固件程序)可以为firmware、bios、管理引擎(management engine,me)、微码等固件。需要说明的,本技术实施例对处理器固件的具体形式并不限定,以上仅为示例性说明。在下述实施例中,仅以处理器固件为bios为例进行说明。
74.其中,内存,也称为内存储器或主存储器,该内存包括易失性存储器和非易失性存储器安装在计算机设备的主板上的内存插槽中,内存与内存控制器之间通过内存通道(channel)进行通信。
75.需要说明的,本技术实施例描述的系统架构以及应用场景是为了更加清楚的说明本技术实施例的技术方案,并不构成对于本技术实施例提供的技术方案的限定,本领域普通技术人员可知,随着系统架构的演变和新业务场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
76.本技术实施例提供的一种获取os镜像的方法,如图3所示,该方法包括:s110-s170。
77.s110、ironic服务设备将第一服务器的启动项设置为pxe启动。
78.上述第一服务器是待获取os镜像的服务器,如上述图1中的多个服务器102中的任意一个服务。
79.上述s110的具体实现包括:ironic服务设备调用第一服务器中的带外控制器(如bmc)接口,下电该第一服务器中的带内控制器,并将第一服务器的启动项设置为预执行环境(preboot execution environment,pxe)启动;此时,该第一服务器重启的过程中会执行下述步骤s120-s170。其中,关于上述第一服务器中的带外控制器和带内控制器具体描述参考上述图2的相关描述,此处不再赘述。
80.需要说明的时,上述s110还可以通过其他方式将第一服务器的启动项设置为pxe启动,例如:通过用户手动修改第一服务器的配置信息的方式;具体本技术实施例不对上述将第一服务器的启动项设置为pxe启动的具体实现方式进行限定。
81.s120、第一服务器从dhcp服务设备获取ip地址。
82.上述s120的具体实现包括:第一服务器向dhcp服务设备发送获取ip地址的请求信息,该dhcp服务设备响应于该请求信息后,向第一服务器发送dhcp服务设备为其分配的ip地址;以使该第一服务器可以和远程的其他设备进行数据传输。
83.s130、第一服务器向注册设备发送获取os的镜像地址的请求信息。
84.上述第一服务器是待获取os镜像的服务器;其中,该第一服务器发送的请求信息中包括第一服务器的ip地址。
85.需要说明的是,上述第一服务器可以通过与注册设备之间的有线链接向该注册设备发送上述请求信息,也可以通过与上述注册设备之间的无线链接向该注册设备发送上述请求信息,具体本技术实施例不对第一服务器向注册设备发送上述请求信息的具体实现方式进行限定。
86.在一种示例中,上述s130可以通过实时操作系统kernel和虚拟内存盘ramdisk实现,具体包括:第一服务器从ironic服务设备下载kernel和ramdisk;然后运行该kernel和ramdisk,以使ramdisk挂载在该kernel对应的系统下;然后,运行ramdisk中的目标服务,以使该第一服务器向注册发送上述请求信息。
87.应注意的是,上述s130的执行主体为上述第一服务器中的带内控制器,为了便于描述,将第一服务器中的带内控制器执行的动作简称为第一服务器执行的动作,后续不再赘述。
88.可选的,当上述第一服务器存在用于表征自身标识的ip地址,且第一服务器在运行过程中获取os镜像时,上述ironic服务设备和第一服务器并不需要执行上述s110-s120。
89.s140、注册设备接收获取os的镜像地址的请求信息。
90.上述注册设备中存储有os的多个镜像地址,其中,os的镜像地址是指存储os镜像的地址;上述多个镜像地址中任意两个镜像地址不同。上述注册设备中存储的os的多个镜像地址具体如下表1所示,其中,该os的第一个镜像地址为“192.168.2.12:8080/root”,该os的第二个镜像地址为“192.168.2.13:8080/root”,该os的第三个镜像地址为“192.168.2.14:8080/root”。
91.表1
92.编号os的镜像地址1192.168.2.12:8080/root2192.168.2.13:8080/root3192.168.2.14:8080/root
93.上述注册设备中存储的多个镜像地址的来源可以是:该多个镜像地址中一部分镜像地址是用户预设的,另一部分镜像地址是其他服务器在注册设备中注册的,具体注册方法见下述s210-s230。上述注册设备中存储的多个镜像地址的来源也可以是:该多个镜像地址全部是用于预设的。
94.需要说明的是,上述注册设备接收的请求信息仅用于指示需要从注册设备中获取os的一个镜像地址,并不会指定从注册设备中获取os的某个特定的镜像地址;也就是说,上述第一服务器只是向注册设备获取一个os的镜像地址,并会指定从注册设备上获取os镜像的某一个具体地址,而注册设备确定将多个镜像地址中的哪一个镜像地址发送给第一服务器是通过下述s150实现的,此处不再赘述。
95.应注意的是,上述s140的执行主体为上述注册设备中的带内控制器,为了便于描述,将注册设备中的带内控制器执行的动作简称为注册设备执行的动作,后续不再赘述。
96.s150、注册设备基于os的多个镜像地址各自对应的当前下载情况,从os的多个镜
像地址中,确定第一镜像地址。
97.上述os的多个镜像地址中的一个镜像地址(如:镜像地址a)对应的当前下载情况与该镜像地址a的当前下载量相关,其中,该镜像地址a的当前下载量为当前从镜像地址a下载os镜像的服务器的数量。
98.需要说明的是,注册设备会实时更新每一个镜像地址的当前下载量,例如:当服务器a从上述镜像地址a下载os镜像时,注册设备对该镜像地址a的当前下载量加1;当服务器a从镜像地址a下载完os镜像时,注册设备对该镜像地址a的当前下载量减1。
99.在第一种示例中,上述os的镜像地址(简称:镜像地址)对应的当前下载情况与该镜像地址的当前下载量的关系如下表2所示,该镜像地址对应的当前下载情况包括:低等等级、中等等级以及高等等级,其中,该低等等级、中等等级以及高等等级对应的镜像地址的当前下载量依次增大。当该镜像地址的当前下载量小于或等于第一预设值时,该镜像地址对应的当前下载情况为低等等级;当该镜像地址的当前下载量大于第一预设值,且该当前下载量小于或等于第二预设值时,该镜像地址对应的当前下载情况为中等等级;当该镜像地址的当前下载量大于第二预设值时,该镜像地址对应的当前下载情况为高等等级;其中,第一预设值小于第二预设值。
100.表2
101.镜像地址的当前下载情况镜像地址的当前下载量(count)低等等级count≤第一预设值中等等级第一预设值《count≤第二预设值高等等级count》第二预设值
102.需要说明的是,基于上述镜像地址对应的当前下载情况与该镜像地址的当前下载量的关系,此时,注册设备可以将当前下载情况为低等等级的镜像地址确定为第一镜像地址,或者注册设备将当前下载情况为中等等级的镜像地址确定为第一镜像地址,具体将哪个等级的镜像地址确定为第一镜像地址可以根据用户的预先设定来确定。
103.上述等级仅为一种示例,具体本技术实施例不对上述等级的具体划分进行限定。
104.在第二种示例中,上述镜像地址对应的当前下载情况与该镜像地址的当前下载量的关系可以是镜像地址的当前下载量用于表征该镜像地址的当前下载情况;也就是说,该镜像地址的当前下载量就是该镜像地址的当前下载情况,具体如下表3所示,镜像地址“192.168.2.12:8080/root”的当前下载量为0;镜像地址“192.168.2.13:8080/root”的当前下载量为1;镜像地址“192.168.2.14:8080/root”的当前下载量为2。
105.表3
106.编号os的镜像地址当前下载量1192.168.2.12:8080/root02192.168.2.13:8080/root13192.168.2.14:8080/root2
107.需要说明的是,基于上述在第二种示例中镜像地址对应的当前下载情况与该镜像地址的当前下载量的关系;此时,注册设备将上述多个镜像地址中,当前下载量最小的镜像地址192.168.2.12:8080/root确定为第一镜像地址;或者,注册设备将上述多个镜像地址中,当前下载量小于第一阈值(如:第一阈值为2)的镜像地址确定为第一镜像地址,从而使
第一服务器从下载量较小的镜像地址下载os镜像,由于该第一镜像地址所指示的设备的带宽资源的占用率较低,因此,提高了第一服务器下载该os镜像的效率。
108.示例性的,假设注册设备存储的多个镜像地址如上表3所示,注册设备将该多个镜像地址中当前下载量最小的镜像地址确定为第一镜像地址;那么,此时“192.168.2.12:8080/root”的当前下载量为0小于“192.168.2.13:8080/root”的当前下载量1和“192.168.2.14:8080/root”的当前下载量2;因此,将“192.168.2.12:8080/root”确定为第一镜像地址。
109.应注意的是,上述第一种示例或第二种示例中,当符合第一镜像地址条件的镜像地址包括多个时,注册设备可以通过随机的方式将该多个符合第一镜像地址条件的镜像地址中的任意一个镜像地址确定为第一镜像地址。例如:假设低等等级的镜像地址包括3个,当第一镜像地址为低等等级的镜像地址时,注册设备将低等等级的3个镜像地址中的任意一个镜像地址确定为第一镜像地址。注册设备还可以通过轮询的方式将该多个符合第一镜像地址条件的镜像地址中的一个镜像地址确定为第一镜像地址。具体本技术实施例如何从多个符合第一镜像地址条件的镜像地址中确定第一镜像地址的具体方法不进行限定。
110.在第三种示例中,上述镜像地址对应的当前下载情况与该镜像地址的当前带宽资源有关;注册设备选择当前带宽资源更多的镜像地址作为第一镜像地址。
111.s160、注册设备将第一镜像地址发送给第一服务器。
112.需要说明的是,上述s160实现方式与s130的实现方式类似,具体对于s160的具体描述可以参考上述对于s130的相关描述,此处不再赘述。
113.s170、第一服务器从第一镜像地址获取os镜像。
114.上述s170的具体实现方法包括:第一服务器基于简单文件传输协议(trivial file transfer protocol,tftp)从第一镜像地址下载os镜像的。
115.需要说明的是,上述os镜像的格式可以是光盘镜像文件iso格式,还可以是磁盘镜像文件qcow2格式;其中,当该os镜像格式为iso格式时,在上述s170之后,第一服务器安装该os镜像中的os,从而使第一服务器运行该os。当该os镜像格式为qcow2格式时,第一服务器不需要安装该os镜像,就可以直接运行该os镜像中的os。
116.上述注册设备响应于第一服务器的请求信息,根据本地存储的多个镜像地址各自对应的当前下载情况,从多个镜像地址中,确定第一镜像地址,以使第一服务器从该第一镜像地址下载os镜像;相比于所有服务器均从ironic服务设备下载os镜像的方法,当多个服务器基于上述本技术实施例提供的方法获取os镜像时,注册设备会根据该多个镜像地址各自的当前下载情况,从多个镜像地址中为该多个服务器确定不同的镜像地址,以使该多个服务器从不同的镜像地址下载os镜像,从而减少了多个服务器对某一个镜像地址所指示的服务器的带宽资源的占用,因此提高了下载os镜像的效率。
117.需要说明的是,上述s170之后,第一服务器可以将其上存储os镜像的地址注册为新的镜像地址,以供其他服务器从该第一服务器中下载os镜像。
118.基于此,本技术实施例还提供了一种注册os的镜像地址的方法,如图4所示,该方法具体包括:s210-s230。
119.s210、第一服务器向注册设备发送第二镜像地址。
120.上述第二镜像地址为上述s170中第一服务器从第一镜像地址获取os镜像后,该第
一服务器中存储该os镜像的地址。
121.示例性的,假设第一服务器的ip地址和端口号为“192.168.2.18:8081”;第一镜像地址为“192.168.2.12:8080/root”,上述第一服务器从该“192.168.2.12:8080/root”下载os镜像后将其存储在第一服务器的data文件夹中,此时,上述第二镜像地址为“192.168.2.18:8081/data”。
122.上述s210的方法是只要下载os镜像后的服务器均会向注册设备发送第二镜像地址,以使该注册设备存储该第二镜像地址,以供后续待获取os镜像的服务器从该第二镜像地址下载os镜像,然而,当向注册设备同时发送第二镜像地址的服务器的数量较多时,由于注册设备受本地带宽的限定,会导致注册设备接收第二镜像地址的效率降低,严重时会导致注册设备发生宕机。
123.基于此,在一种示例中,上述注册设备中存储的os的多个镜像地址包括第一类镜像地址和第二类镜像地址。当上述第一镜像地址为第一类镜像地址时,上述第一服务器执行上述s210向注册设备发送第二镜像地址;当上述第一镜像地址为第二类镜像地址时,上述第一服务器执行结束动作;也就是说,当上述第一镜像地址为第二类镜像地址时,上述第一服务器并不会执行上述s210向注册设备发送第二镜像地址的动作。
124.相比于每个获取os镜像后的服务器均向注册设备发送第二镜像地址的方法,通过将注册设备中存储的os的多个镜像地址划分为第一类镜像地址和第二类镜像地址,只有当从第一类镜像地址下载os镜像后的服务器才会向注册设备发送第二镜像地址,从而减少了向注册设备发送第二镜像地址的服务器,进而解决了因向注册设备同时发送第二镜像地址的服务器的数量过多,而导致的注册设备发生宕机的问题。
125.需要说明的是,上述将注册设备中存储的os的多个镜像地址划分为第一类镜像地址和第二类镜像地址的方法包括多种实现方式,具体如下:
126.在一种示例中,对该os的多个镜像地址用阿拉伯数字依次进行编号,其中任意两个镜像地址对应的编号不同;然后,将编号为奇数的镜像地址确定为第一类镜像地址,将编号为偶数的镜像地址确定为第二类镜像地址。
127.在另一种示例中,将上述多个镜像地址中预设的镜像地址确定为第一类镜像地址,将上述多个镜像地址中通过该s210-s230增加的镜像地址确定为第二类镜像地址。
128.应理解的是,上述注册设备在初始化时,该注册设备中至少包括一个预设的镜像地址作为原始镜像地址以供待获取os镜像的服务器从该原始镜像地址下载该os镜像。
129.需要说明的是,上述第一类镜像地址和第二镜像地址存储的os镜像也可以完全相同,也可以不同;当第一类镜像地址和第二镜像地址存储的os镜像不同时,具体体现为:上述第一类镜像地址存储的os镜像包括目标服务,上述第二类镜像地址存储的os镜像不包括目标服务;其中,上述s210具体可以是第一服务器运行该目标服务,该第一服务器在运行之后主动向注册设备发送上述第二镜像地址,也就是说,目标服务是用于主动向注册设备发送第二镜像地址的服务。
130.s220、注册设备接收第一服务器发送的第二镜像地址。
131.s230、注册设备存储第二镜像地址。
132.上述注册设备存储第二镜像地址,以使更新后的镜像地址集合(即:该注册设备中存储的os的多个镜像地址)中包括该第二镜像地址。也就是说,该第二镜像地址在注册设备
上存储之后,作为一个新的镜像地址,供后续待获取os镜像的服务器从该第二镜像地址下载os镜像。
133.示例性的,假设注册设备上的镜像地址集合如上表3所示,第二镜像地址为“192.168.2.18:8081/data”;将该第二镜像地址存储在注册设备上后,此时,该注册设备上的镜像地址集合如下表4所示包括“192.168.2.18:8081/data”和“192.168.2.18:8081/data”的当前下载量。
134.表4
135.编号os的镜像地址当前下载量1192.168.2.12:8080/root02192.168.2.13:8080/root13192.168.2.14:8080/root24192.168.2.18:8081/data0
136.上述s220-s230是注册设备将接收到的所有第二镜像地址均会存储在本地作为新的镜像地址。然而,当注册设备中存储的多个镜像地址的数量过多时,会使该注册设备中存储的镜像地址中存在多个当前下载量为0的空闲镜像地址,从而造成注册设备中的存储资源的浪费。
137.基于此,在一种示例中,注册设备在存储第二镜像地址时包括:注册设备确定本地存储的多个镜像地址中空闲镜像地址的数量,当该数量小于或等于第二阈值时,说明注册设备存储的多个镜像地址中的空闲镜像地址的数量较小,所以注册设备存储该第二镜像地址。当空闲镜像地址的数量大于第二阈值时,说明注册设备存储的多个镜像地址中的空闲镜像地址的数量较多,该注册设备不存储上述第二镜像地址,从而减少上述多个镜像地址中的空闲镜像地址的数量,进而解决了因多个镜像地址中的空闲镜像地址的数量过多而导致注册设备中存储资源的浪费问题。
138.本技术实施例提供的方法在第一服务器获取os镜像之后,注册设备通过将第一服务器发送的第二镜像地址存储在本地,该第二镜像地址是上述第一服务器从第一镜像地址获取os镜像后,该第一服务器中存储os镜像的地址;以使注册设备存储的多个镜像地址中包括该第二镜像地址,后续待获取os镜像的服务器可以从该第二镜像地址获取os镜像,也就是说,第一服务器获取os镜像之后,注册设备将第一服务器作为一个新的镜像源,以供后续服务器从该镜像源获取os镜像,从而使多个服务器从多个镜像源获取os镜像,因此提高了下载os镜像的效率。
139.可选的,结合图4,如图5所示,当第二服务器获取os镜像时,该方法还包括:s310-s330。
140.s310、第二服务器向注册设备发送获取os的镜像地址的请求信息。
141.上述第二服务器和上述第一服务器是上述图1所示多个服务器102中的不同服务器。
142.需要说明的是,上述s310的实现方式与s130的实现方式,具体对于s310的具体描述可以参考上述对于s130的相关描述,此处不再赘述。
143.s320、注册设备将本地存储的os的多个镜像地址中当前下载量最小的第二镜像地址发送给第二服务器。
144.需要说明的是,上述s230之后,该注册设备存储的os的多个镜像地址中包括第二镜像地址;由于该第二镜像地址是第一服务器刚存储入注册设备中的,所以该第二镜像地址的当前下载量为0。因此,将该第二镜像地址发送给第二服务器。
145.s330、第二服务器从第二镜像地址所指示的第一服务器获取os镜像。
146.需要说明的是,上述s330的实现方式与s170的实现方式,具体对于s330的具体描述可以参考上述对于s170的相关描述,此处不再赘述。
147.上述主要从方法的角度对本技术实施例提供的方案进行了介绍。为了实现上述功能,注册设备和第一服务器包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本技术能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
148.本技术实施例可以根据上述方法,示例性的对注册设备和第一服务器进行功能模块的划分,例如,注册设备和第一服务器分别可以包括对应各个功能划分的各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本技术实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
149.如图6示出了一种注册设备的结构示意图,该注册设备包括:收发单元110和处理单元120,其中,该收发单元110可以是图2所示的计算设备中的收发器(图2未示出);该处理单元120可以是图2的计算设备中的cpu。
150.收发单元110用于接收第一服务器发送的获取os的第一镜像地址的请求信息;例如执行上述方法实施例中的步骤s140。
151.处理单元120用于基于多个镜像地址各自对应的当前下载情况,从多个镜像地址中,确定第一镜像地址;例如执行上述方法实施例中的步骤s150。
152.收发单元110还用于将第一镜像地址发送给第一服务器;例如执行上述方法实施例中的步骤s160。
153.可选的,上述注册设备还包括:存储单元130,其中,该存储单元130可以是图2的计算设备中的内存。
154.上述收发单元110用于接收第一服务器发送的第二镜像地址;例如执行上述方法实施例中的步骤s220。
155.上述存储单元130用于存储第二镜像地址;例如执行上述方法实施例中的步骤s230。
156.可选的,上述存储单元130还用于当多个镜像地址中的当前下载量为零的镜像地址的数量小于或等于第二阈值时,存储第二镜像地址。
157.可选的,上述收发单元110用于接收第二服务器发送的获取os的镜像地址的请求信息;例如执行上述方法实施例中的步骤s310。
158.上述收发单元110还用于将本地存储的os的多个镜像地址中当前下载量最小的第二镜像地址发送给第二服务器例如执行上述方法实施例中的步骤s320。
159.关于上述可选方式的具体描述可以参见前述的方法实施例,此处不再赘述。此外,上述提供的任一种注册设备的解释以及有益效果的描述均可参考上述对应的方法实施例,不再赘述。
160.本技术实施例还提供了一种第一服务器的结构示意图,例如,该服务器可以是带内控制器,如图7所示,该服务器包括:收发单元210和存储单元220;其中,该收发单元210可以是图2所示的计算设备中的收发器(图2未示出);该存储单元220可以是图2的计算设备中的内存。
161.收发单元210用于向注册设备发送获取os的镜像地址的请求信息;例如执行上述方法实施例中的步骤s130。
162.存储单元220用于从第一镜像地址获取os镜像;例如执行上述方法实施例中的步骤s170。
163.可选的,上述第一服务器还包括:处理单元230;其中,该处理单元230可以是图2的计算设备中的cpu。
164.处理单元230用于确定第一服务器的启动项为预执行环境pxe启动。
165.收发单元210还用于当处理单元230确定第一服务器的启动项为预执行环境pxe启动时,向注册设备发送请求信息。
166.可选的,收发单元210还用于向注册设备发送第二镜像地址;例如执行上述方法实施例中的步骤s210。
167.可选的,收发单元210用于当第一镜像地址为第一类镜像地址时,向所述注册设备发送第二镜像地址。
168.可选的,处理单元230还用于运行目标服务,以使收发单元210向注册设备发送第二镜像地址。
169.可选的,处理单元230还用于当os镜像格式为光盘镜像文件iso格式时,安装os镜像中的os。
170.关于上述可选方式的具体描述可以参见前述的方法实施例,此处不再赘述。此外,上述提供的任一种第一服务器的解释以及有益效果的描述均可参考上述对应的方法实施例,不再赘述。
171.本技术实施例还提供了一种注册设备,包括存储器和处理器,存储器与处理器耦合;存储器用于存储计算机程序代码,其中,计算机程序代码包括计算机指令;当计算机指令被处理器执行时,使得注册设备执行上述图3-图5中注册设备执行的任意一种方法。
172.本技术实施例还提供了一种服务器,包括存储器和处理器,存储器与处理器耦合;存储器用于存储计算机程序代码,其中,计算机程序代码包括计算机指令;当计算机指令被处理器执行时,使得服务器执行上述图3-图5中第一服务器执行的任意一种方法。
173.本技术实施例还提供了一种计算机可读存储介质,其上存储有计算机指令,当计算机指令在计算设备上运行时,使得计算设备执行上述注册设备或第一服务器执行的任意方法。
174.关于上述提供的任一种计算机可读存储介质中相关内容的解释及有益效果的描述,均可以参考上述对应的实施例,此处不再赘述。
175.本技术实施例提供一种计算机程序产品,当其在计算机上运行时,使得计算机执
行上述注册设备执行的任意之一所述的方法。
176.本技术实施例提供另一种计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一服务器执行的任意之一所述的方法。
177.本技术实施例提供一种获取os镜像系统,该系统中包括注册设备和服务器,注册设备用于执行上述注册设备执行的任意之一所述的方法;服务器用于执行上述第一服务器执行的任意之一所述的方法。
178.本技术实施例还提供了一种包含指令的计算机程序产品,当该指令在计算机上运行时,使得计算机执行上述实施例中的任意一种方法。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本技术实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,dvd)、或者半导体介质(例如ssd)等。
179.应注意,本技术实施例提供的上述用于存储计算机指令或者计算机程序的器件,例如但不限于,上述存储器、计算机可读存储介质和通信芯片等,均具有非易失性(non-transitory)。
180.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机指令时,全部或部分地产生按照本技术实施例中的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,dsl))方式或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包括一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、磁盘、磁带)、光介质(例如,数字视频光盘(digital video disc,dvd))、或者半导体介质(例如固态硬盘(solid state drives,ssd))等。
181.通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
182.在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以
通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
183.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
184.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
185.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
186.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何在本技术揭露的技术范围内的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。

技术特征:
1.一种获取操作系统os镜像的方法,其特征在于,包括:注册设备接收第一服务器发送的获取os的镜像地址的请求信息;其中,所述注册设备中存储有所述os的多个镜像地址;所述多个镜像地址中任意两个镜像地址不同;所述注册设备基于所述多个镜像地址各自对应的当前下载情况,从所述多个镜像地址中,确定第一镜像地址;所述注册设备将所述第一镜像地址发送给所述第一服务器;其中,所述第一镜像地址用于所述第一服务器从所述第一镜像地址获取所述os镜像。2.根据权利要求1所述的方法,其特征在于,所述第一镜像地址是所述多个镜像地址中当前下载量最小的镜像地址;或者所述第一镜像地址是所述多个镜像地址中当前下载量小于第一阈值的镜像地址;其中,所述当前下载量用于表征所述当前下载情况。3.根据权利要求2所述的方法,其特征在于,所述注册设备将所述第一镜像地址发送给所述第一服务器之后,所述方法还包括:所述注册设备接收所述第一服务器发送的第二镜像地址,所述第二镜像地址为所述第一服务器从所述第一镜像地址获取所述os镜像后,所述第一服务器中存储所述os镜像的地址;所述注册设备存储所述第二镜像地址。4.根据权利要求3所述的方法,其特征在于,所述注册设备存储所述第二镜像地址,包括:当所述多个镜像地址中的当前下载量为零的镜像地址的数量小于或等于第二阈值时,所述注册设备存储所述第二镜像地址。5.根据权利要求3所述的方法,其特征在于,所述方法还包括:所述注册设备接收第二服务器发送的获取所述os的镜像地址的请求信息;所述注册设备将所述第二镜像地址发送给所述第二服务器;其中,所述第二镜像地址用于指示所述第二服务器从所述第一服务器获取所述os镜像时,所述第二镜像地址是所述注册设备存储的多个镜像地址中当前下载量最小的镜像地址。6.一种获取操作系统os镜像的方法,其特征在于,包括:第一服务器向注册设备发送获取os的镜像地址的请求信息,其中,所述注册设备中存储有所述os的多个镜像地址;所述多个镜像地址中任意两个镜像地址不同;所述请求信息用于所述注册设备基于所述多个镜像地址各自对应的当前下载情况,从所述多个镜像地址中,确定第一镜像地址,并向所述第一服务器发送所述第一镜像地址;所述第一服务器从所述第一镜像地址获取所述os镜像。7.根据权利要求6所述的方法,其特征在于,所述第一镜像地址是所述多个镜像地址中当前下载量最小的镜像地址;或者所述第一镜像地址是所述多个镜像地址中当前下载量小于第一阈值的镜像地址;其中,所述当前下载量用于表征所述当前下载情况。8.根据权利要求6或7所述的方法,其特征在于,所述第一服务器向注册设备发送获取os的镜像地址的请求信息,包括:所述第一服务器确定所述第一服务器的启动项为预执行环境pxe启动时,所述第一服
务器向所述注册设备发送所述请求信息。9.根据权利要求6-8任一项所述的方法,其特征在于,所述第一服务器从所述第一镜像地址获取所述os镜像之后,所述方法还包括:所述第一服务器向所述注册设备发送第二镜像地址,其中,所述第二镜像地址用于存储在所述注册设备中,所述第二镜像地址为所述第一服务器从所述第一镜像地址下载所述os镜像后,所述第一服务器中存储所述os镜像的地址。10.根据权利要求9所述的方法,其特征在于,所述多个镜像地址中包括第一类镜像地址和第二类镜像地址,所述第一服务器向所述注册设备发送第二镜像地址,包括:当所述第一镜像地址为所述第一类镜像地址时,所述第一服务器向所述注册设备发送所述第二镜像地址。11.根据权利要求10所述的方法,其特征在于,所述第一类镜像地址存储的所述os镜像包括目标服务,所述第二类镜像地址存储的所述os镜像不包括所述目标服务,所述第一服务器向所述注册设备发送所述第二镜像地址,包括:所述第一服务器运行所述目标服务,以向所述注册设备发送所述第二镜像地址。12.根据权利要求6-8任一项所述的方法,其特征在于,在所述第一服务器从所述第一镜像地址获取所述os镜像之后,所述方法还包括:当所述os镜像格式为光盘镜像文件iso格式时,所述第一服务器安装所述os镜像中的os。13.一种计算设备,其特征在于,包括存储器和处理器,所述存储器与所述处理器耦合;所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令;当所述计算机指令被所述处理器执行时,使得所述处理器执行如权利要求1至12中任一项所述的方法。

技术总结
本申请实施例提供一种获取OS镜像的方法和相关设备,涉及计算机科学技术领域,能够提高了获取OS镜像的效率。该方法包括:注册设备接收第一服务器发送的获取OS的镜像地址的请求信息;其中,该注册设备中存储有OS的多个镜像地址;该多个镜像地址中任意两个镜像地址不同;注册设备基于上述多个镜像地址各自对应的当前下载情况,从该多个镜像地址中,确定第一镜像地址;注册设备将上述第一镜像地址发送给第一服务器;其中,该第一镜像地址用于第一服务器从第一镜像地址获取OS镜像。务器从第一镜像地址获取OS镜像。务器从第一镜像地址获取OS镜像。


技术研发人员:包涵 万侃然 祝远
受保护的技术使用者:超聚变数字技术有限公司
技术研发日:2023.03.02
技术公布日:2023/7/11
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐