CN111683145B - 客户端设备的配置方法、客户端设备、电子设备和介质 - Google Patents
客户端设备的配置方法、客户端设备、电子设备和介质 Download PDFInfo
- Publication number
- CN111683145B CN111683145B CN202010515474.5A CN202010515474A CN111683145B CN 111683145 B CN111683145 B CN 111683145B CN 202010515474 A CN202010515474 A CN 202010515474A CN 111683145 B CN111683145 B CN 111683145B
- Authority
- CN
- China
- Prior art keywords
- client device
- server
- operating system
- file
- module
- 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
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- 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
- G06F9/4406—Loading of operating system
-
- 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]
-
- 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/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
-
- 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/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Abstract
本公开提供了一种由客户端设备执行的客户端设备的配置方法,包括:获取操作系统内核;通过所述操作系统内核,请求挂载第一服务器中的目标文件夹,其中,所述目标文件夹包括至少一个配置文件;从所述至少一个配置文件中确定与所述客户端设备匹配的目标配置数据;以及根据所述目标配置数据,对所述客户端设备进行配置。本公开还提供了一种客户端设备、一种电子设备以及一种介质。
Description
技术领域
本公开涉及一种客户端设备的配置方法、客户端设备、电子设备和介质。
背景技术
ARM架构,曾称进阶精简指令集机器(Advanced RISC Machine)更早称作AcornRISC Machine,是一个精简指令集(RISC)处理器架构。ARM处理器广泛使用在嵌入式系统设计领域,具有低耗电节能的优点。
近几年,越来越多的公司推出了基于ARM平台的服务器。ARM平台服务器由于CPU采用的是ARM架构,不同于x86架构,因此原本适用于x86服务器的各种批量配置方法失效,因此需要提出一种适用于ARM平台的服务器批量配置的方法。
发明内容
本公开的一个方面提供了一种由客户端设备执行的客户端设备的配置方法,包括:
可选地,所述获取操作系统内核包括:向第二服务器发送分配请求,以使所述第二服务器为所述客户端设备分配IP地址并向所述客户端设备发送引导文件的网络位置;根据所分配的IP地址,向与所述网络位置对应的第三服务器发送第一获取请求,以使所述第三服务器向所述客户端设备发送所述引导文件;以及根据所述引导文件,向所述第三服务器发送第二获取请求,以使所述第三服务器向所述客户端设备发送所述操作系统内核。
可选地,所述客户端设备包括内部存储器;所述通过所述操作系统内核,请求挂载第一服务器中的目标文件夹,包括:在客户端设备的内部存储器中加载所述操作系统内核;以及通过已加载的操作系统内核,向所述第一服务器发送挂载请求,以挂载所述第一服务器中的目标文件夹。
可选地,所述从所述至少一个配置文件中确定与所述客户端设备匹配的目标配置数据,包括:获取所述客户端设备的标识;以及从所述至少一个配置文件中确定与所述标识对应的至少一个配置项,作为所述目标配置数据。
可选地,所述根据所述目标配置数据,对所述客户端设备进行配置,包括:根据所述目标配置数据,对所述客户端的硬盘阵列、基本输入输出系统、智能平台管理接口地址中的至少一个进行配置。
可选地,所述目标文件夹还包括操作系统的镜像文件;所述方法还包括:针对所述镜像文件执行还原操作,以在所述客户端设备中安装所述操作系统。
本公开的另一个方面提供了一种客户端设备,包括:获取模块,用于获取操作系统内核;挂载模块,用于通过所述操作系统内核,请求挂载第一服务器中的目标文件夹,其中,所述目标文件夹包括至少一个配置文件;确定模块,用于从所述至少一个配置文件中确定与所述客户端设备匹配的目标配置数据;以及配置模块,用于根据所述目标配置数据,对所述客户端设备进行配置。
可选地,所述获取模块包括:分配请求子模块,用于向第二服务器发送分配请求,以使所述第二服务器为所述客户端设备分配IP地址并向所述客户端设备发送引导文件的网络位置;第一获取请求子模块,用于根据所分配的IP地址,向与所述网络位置对应的第三服务器发送第一获取请求,以使所述第三服务器向所述客户端设备发送所述引导文件;以及第二获取请求子模块,用于根据所述引导文件,向所述第三服务器发送第二获取请求,以使所述第三服务器向所述客户端设备发送所述操作系统内核。
可选地,所述客户端设备包括内部存储器;所述挂载模块包括:
加载子模块,用于在客户端设备的内部存储器中加载所述操作系统内核;以及挂载请求子模块,用于通过已加载的操作系统内核,向所述第一服务器发送挂载请求,以挂载所述第一服务器中的目标文件夹。
可选地,所述确定模块,具体用于:获取所述客户端设备的标识;以及从所述至少一个配置文件中确定包含所述标识的配置文件,作为所述目标配置数据。
可选地,所述配置模块,具体用于:根据所述目标配置数据,对所述客户端的硬盘阵列、基本输入输出系统、智能平台管理接口地址中的至少一个进行配置。
可选地,所述目标文件夹还包括操作系统的镜像文件;所述客户端设备还包括:还原模块,用于针对所述镜像文件执行还原操作,以在所述客户端设备中安装所述操作系统。
本公开的另一个方面提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上所述的方法。
本公开的另一方面提供了一种计算机可读存储介质,存储有计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
本公开的另一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
根据本公开的实施例,上述方法可以适用于基于ARM平台的服务器,并且可以通过多台ARM服务器分别执行该方法,实现对多台ARM服务器的批量配置,解决了如何对大规模的ARM服务器进行配置的问题。
附图说明
为了更完整地理解本公开及其优势,现在将参考结合附图的以下描述,其中:
图1示意性示出了根据本公开的实施例的由客户端设备执行的客户端设备的配置方法的应用场景;
图2示意性示出了根据本公开的实施例的由客户端设备执行的客户端设备的配置方法的流程图;
图3示意性示出了根据本公开的实施例的获取操作系统内核的流程图;
图4示意性示出了根据本公开的实施例的请求挂载第一服务器中的目标文件夹的流程图;
图5示例性示出了根据本公开另一实施例的由客户端设备执行的客户端设备的配置方法的流程图;
图6示例性示出了根据本公开另一实施例的由客户端设备执行的客户端设备的配置方法的流程图;
图7示意性示出了根据本公开的实施例的客户端设备的框图;
图8示意性示出了根据本公开的实施例的获取模块的框图;
图9示意性示出了根据本公开的实施例的挂载模块的框图;
图10示意性示出了根据本公开另一实施例的客户端设备的框图;以及
图11示意性示出了根据本公开实施例的适于实现上文描述的方法的计算机系统的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
附图中示出了一些方框图和/或流程图。应理解,方框图和/或流程图中的一些方框或其组合可以由计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而这些指令在由该处理器执行时可以创建用于实现这些方框图和/或流程图中所说明的功能/操作的装置。本公开的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本公开的技术可以采取存储有指令的计算机可读存储介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。
本公开的实施例提供了一种由客户端设备执行的客户端设备的配置方法以及能够应用该方法的客户端设备。该方法包括获取操作系统内核;通过操作系统内核,请求挂载第一服务器中的目标文件夹,其中,目标文件夹包括至少一个配置文件;从至少一个配置文件中确定与客户端设备匹配的目标配置数据;以及根据目标配置数据,对客户端设备进行配置。
图1示意性示出了根据本公开的实施例的由客户端设备执行的客户端设备的配置方法的应用场景。需要注意的是,图1所示仅为可以应用本公开实施例的场景的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,该应用场景包括至少一个客户端设备110、DHCP(Dynamic HostConfiguration Protocol,动态主机配置协议)服务器120、TFTP(Trivial File TransferProtocol,简单文件传输协议)服务器130和NFS(Network File System,网络文件系统)服务器140。
其中,客户端设备110例如可以为基于ARM架构的电子设备,并且客户端设备110内配置有支持PXE(Preboot eXecution Environment,预启动执行环境)启动的网卡。客户端设备110例如包括但不限于服务器、笔记本电脑、台式电脑等等。
DHCP服务器120可以用于响应于来自客户端设备110的IP地址分配请求,为客户端设备110分配IP地址,并向客户端设备110发送所分配的IP地址和引导文件的网络位置。
TFTP服务器130可以用于响应于来自客户端设备110的文件获取请求,通过TFTP协议向客户端设备110传输相应的文件。例如,响应于来自客户端设备110的引导文件获取请求,通过TFTP协议向客户端设备110发送引导文件。
NFS服务器140可以用于向客户端设备110提供公共文件系统,使客户端设备110可以通过网络远程访问该公共文件系统,获取其中的文件。该公共文件系统例如可以包括配置文件、操作系统镜像文件等文件。
需要说明的是,根据本公开的实施例,DHCP服务器120、TFTP服务器130和NFS服务器140是根据服务器所能提供的服务而作出的划分。DHCP服务器120、TFTP服务器130和NFS服务器140的既可以为三个不同的服务器或服务器集群,也可以为同一个服务器或服务器集群。例如,可以由一个PXE(Preboot eXecution Environment,预启动执行环境)服务器同时充当DHCP服务器120、TFTP服务器130和NFS服务器140的角色,向客户端设备提供DHCP、TFTP和NFS服务。
应该理解,图1中的客户端设备和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的客户端设备和服务器。
图2示意性示出了根据本公开的实施例的由客户端设备执行的客户端设备的配置方法的流程图。
如图2所示,该方法包括操作S210~S240。
更具体地,在操作S210,获取操作系统内核。
根据本公开的实施例,操作系统内核可以用于提供任务、线程、交互进程通信(IPC,Inter-Process Communication)以及内存管理等必要的服务。操作系统内核例如可以为Linux的内核。
根据本公开的实施例,为了后续将操作系统内核加载至内存中运行,可以预先将操作系统内核制作成RAMOS(内存操作系统)的形式。
图3示意性示出了根据本公开的实施例的获取操作系统内核的流程图。
如图3所示,操作S210例如可以包括操作S311~S313。
其中,在操作S311,向第二服务器发送分配请求,以使第二服务器为客户端设备分配IP地址并向客户端设备发送引导文件的网络位置。
根据本公开的实施例,第二服务器例如可以为DHCP服务器。客户端设备可以向DHCP服务器发送IP地址分配请求,DHCP服务器可以响应于来自客户端设备的IP地址分配请求,为客户端设备分配IP地址,并向客户端设备发送所分配的IP地址和引导文件的网络位置。
在操作S312,根据所分配的IP地址,向与网络位置对应的第三服务器发送第一获取请求,以使第三服务器向客户端设备发送引导文件。
根据本公开的实施例,第三服务器例如可以为TFTP服务器。客户端设备可以根据所分配的IP地址,与网络位置对应的第三服务器发送引导文件获取请求,第三服务器可以响应于来自客户端设备的引导文件获取请求,通过TFTP协议向客户端设备发送引导文件。
在操作S313,根据引导文件,向第三服务器发送第二获取请求,以使第三服务器向客户端设备发送操作系统内核。
根据本公开的实施例,操作S313例如可以包括执行引导文件,然后在引导文件的引导下,从第三服务器处获取操作系统内核。
在操作S220,通过操作系统内核,请求挂载第一服务器中的目标文件夹。
其中,目标文件夹包括至少一个配置文件。配置文件例如可以为配置模板。
根据本公开的实施例,当待部署的客户端设备有多个时,可以将所有待部署的客户端设备的配置数据统一存储至一个配置文件中,也可以将所有待部署的客户端设备分成m组(m为大于1的整数),每组包括至少一个服务器,然后分别将每组服务器的配置数据存储至一个配置文件中,得到m个配置文件。示例性地,本实施例中,将所有待部署的客户端设备的配置数据存储至一个配置文件中。
图4示意性示出了根据本公开的实施例的请求挂载第一服务器中的目标文件夹的流程图。
如图4所示,操作S220例如可以包括操作S421~S422。
其中,在操作S421,在客户端设备的内部存储器中加载操作系统内核。
根据本公开的实施例,内部存储器即内存。可以通过引导文件的引导,将操作系统内核加载到客户端设备的内存中并启动该操作系统内核。
在操作S422,通过已加载的操作系统内核,向第一服务器发送挂载请求,以挂载(mounting)第一服务器中的目标文件夹。
根据本公开的实施例,通过挂载第一服务器中的目标文件夹,使得客户端设备可以通过文件系统访问第一服务器存储设备中的目标文件夹。
在操作S230,从至少一个配置文件中确定与客户端设备匹配的目标配置数据。
根据本公开的实施例,操作S230例如可以包括获取客户端设备的标识,从至少一个配置文件中确定与标识对应的至少一个配置项,作为目标配置数据。其中,标识例如可以包括序列号。
在操作S240,根据目标配置数据,对客户端设备进行配置。
根据本公开的实施例,可以预先在配置文件中存储客户端设备的各个配置项的参数值。其中,配置项例如可以包括硬盘阵列配置、BIOS(Basic Input Output System,基本输入输出系统)配置、IPMI(Intelligent Platform Management Interface,智能平台管理接口)地址等。在确定与客户端匹配的目标配置数据后,可以根据该目标配置数据,对客户端设备的中硬盘阵列、BIOS、IPMI地址的至少一个进行配置。示例性地,本实施例中,对客户端设备的中硬盘阵列、BIOS、IPMI地址均进行设置。
需要说明的是,除了硬盘阵列、BIOS、IPMI地址之外,配置文件中还可以存储其他配置项的参数值,相对应地,还可以根据这些参数值对客户端设备除了硬盘阵列、BIOS、IPMI地址之外的其他配置项进行配置,本公开对此不作具体的限定。
根据本公开的实施例,上述方法可以适用于基于ARM平台的服务器,并且可以通过多台ARM服务器分别执行该方法,实现对多台ARM服务器的批量配置,解决了如何对大规模的ARM服务器进行配置的问题。
图5示例性示出了根据本公开另一实施例的由客户端设备执行的客户端设备的配置方法的流程图。
如图5所示,除了操作S210~240,该方法还包括操作S550。
更具体地,在操作S550,针对镜像文件执行还原操作,以在客户端设备中安装操作系统。
根据本公开的实施例,可以预先在目标文件夹中存储操作系统的镜像文件。通过获取所挂载的目标文件夹中的镜像文件,对镜像文件进行还原,以将镜像文件所包含的操作系统安装至客户端设备中。
根据本公开的实施例,镜像文件所包含的操作系统例如可以为定制化的操作系统。该定制的操作系统可以集成用户所需的软件、服务、脚本等。通过在客户端设备中还原该镜像文件,从而将定制的操作系统安装在客户端设备中,其中预置的软件、服务、脚本等可以直接使用,免去了相应的安装过程,更方便。
根据本公开的实施例,通过上述方法,可以同时对多台客户端设备进行配置和安装操作系统,从而提高了客户端设备的批量部署速度,可快速完成客户端设备的交付工作。
下面参考图6,结合具体实施例对图2~图5所示的方法做进一步说明。本领域技术人员可以理解,以下示例实施例仅用于理解本公开,本公开并不局限于此。
示例性地,本实施例中,客户端设备为PXE客户端,由PXE服务器充当DHCP服务器、TFTP服务器和NFS服务器的角色,向客户端设备提供DHCP、TFTP和NFS服务。
图6示例性示出了根据本公开另一实施例的由客户端设备执行的客户端设备的配置方法的流程图。如图6所示,在操作S601,PXE客户端向DHCP服务器请求分配IP地址。
在操作S602,DHCP服务器根据PXE客户端的请求,为PXE客户端分配IP地址,将所分配的IP地址和bootstrap文件的网络位置发送给PXE客户端。其中,bootstrap文件中包括引导文件bootx64.efi。
在操作S603,PXE客户端根据IP地址和引导文件的位置,向TFTP服务器请求发送bootstrap文件。
在操作S604,TFTP服务器根据PXE客户端的请求,向PXE客户端发送bootstrap文件。
在操作S605,PXE客户端执行bootstrap文件中的bootx64.efi。
在操作S606,PXE客户端向TFTP服务器请求发送GRUB文件。其中,GRUB(GRandUnified Bootloader)是一个多重操作系统启动管理器,可以用来引导不同系统。
在操作S607,TFTP服务器根据PXE客户端的请求,向PXE客户端发送GRUB文件。
在操作S608,PXE客户端向TFTP服务器请求发送RAMOS。示例性地,本实施例中,操作系统为定制化的CentOS(一种Linux发行版本),RAMOS包括该CentOS的操作系统内核。
在操作S609,TFTP服务器根据PXE客户端的请求,向PXE客户端发送RAMOS。
在操作S610,PXE客户端接收RAMOS后,在内存中加载并启动该RAMOS。
在操作S611,PXE客户端中的RAMOS会向NFS服务器请求挂载image文件夹。其中,image文件夹包括配置模板list.ini和操作系统的镜像。其中,list.ini中存放了这一批需要进行批量部署的客户端的信息、配置数据等,包括机器序列号,操作系统需求,硬盘阵列需求,硬盘容量需求,IPMI需配置的地址信息等。
在操作S612,NFS服务器根据PXE客户端的请求,同意挂载image文件夹。
在操作S613,PXE客户端中的RAMOS自动执行配置工具脚本auto.sh,以获取当前机器的序列号,并根据该序列号在image文件夹中的list.ini中查找该序列号。若在list.ini中找到该序列号,则可以根据该序列号所对应的配置数据进行下一步的自动配置,否则报错。根据匹配到的配置数据对PXE客户端的磁盘阵列、BIOS、IPMI地址等配置项进行配置。然后从image文件夹中获取所需的操作系统镜像,还原安装该操作系统镜像。在还原安装完成后,PXE客户端执行关机操作以交付用户使用。
图7示意性示出了根据本公开的实施例的客户端设备的框图。
如图7所示,客户端设备700包括获取模块710、挂载模块720、确定模块730和配置模块740。该客户端设备700可以执行上面参考图2~图4描述的方法。
具体地,获取模块710,用于获取操作系统内核。
挂载模块720,用于通过操作系统内核,请求挂载第一服务器中的目标文件夹,其中,目标文件夹包括至少一个配置文件。
确定模块730,用于从至少一个配置文件中确定与客户端设备匹配的目标配置数据。
配置模块740,用于根据目标配置数据,对客户端设备进行配置。
图8示意性示出了根据本公开的实施例的获取模块的框图。
如图8所示,获取模块710包括分配请求子模块811、第一获取请求子模块812和第二获取请求子模块813。
具体地,分配请求子模块811,用于向第二服务器发送分配请求,以使第二服务器为客户端设备分配IP地址并向客户端设备发送引导文件的网络位置。
第一获取请求子模块812,用于根据所分配的IP地址,向与网络位置对应的第三服务器发送第一获取请求,以使第三服务器向客户端设备发送引导文件。
第二获取请求子模块813,用于根据引导文件,向第三服务器发送第二获取请求,以使第三服务器向客户端设备发送操作系统内核。
根据本公开的实施例,可以同时对多台客户端设备进行配置和安装操作系统,从而提高了客户端设备的批量部署速度,可快速完成客户端设备的交付工作。
图9示意性示出了根据本公开的实施例的挂载模块的框图。
如图9所示,挂载模块720包括加载子模块921和挂载请求子模块922。
具体地,加载子模块921,用于在客户端设备的内部存储器中加载操作系统内核。
挂载请求子模块922,用于通过已加载的操作系统内核,向第一服务器发送挂载请求,以挂载第一服务器中的目标文件夹。
根据本公开的实施例,确定模块,具体用于:获取客户端设备的标识;以及从至少一个配置文件中确定与标识对应的至少一个配置项,作为目标配置数据。根据本公开的实施例,配置模块,具体用于:根据目标配置数据,对客户端的硬盘阵列、基本输入输出系统、智能平台管理接口地址中的至少一个进行配置。
图10示意性示出了根据本公开另一实施例的客户端设备的框图。
如图10所示,除了获取模块710、挂载模块720、确定模块730和配置模块740之外,客户端设备1000还包括还原模块1050,用于针对镜像文件执行还原操作,以在客户端设备中安装操作系统。
根据本公开的实施例,该客户端设备700可以执行上面参考图5描述的方法。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,获取模块710、挂载模块720、确定模块730、配置模块740和还原模块1050中的任意多个可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,获取模块710、挂载模块720、确定模块730、配置模块740和还原模块1050中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,获取模块710、挂载模块720、确定模块730、配置模块740和还原模块1050中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图11示意性示出了根据本公开实施例的适于实现上文描述的方法的计算机系统的方框图。图11示出的计算机系统仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图11所示,计算机系统1100包括处理器1110以及计算机可读存储介质1120。该计算机系统1100可以执行根据本公开实施例的方法。
具体地,处理器1110例如可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器1110还可以包括用于缓存用途的板载存储器。处理器1110可以是用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
计算机可读存储介质1120,例如可以是非易失性的计算机可读存储介质,具体示例包括但不限于:磁存储装置,如磁带或硬盘(HDD);光存储装置,如光盘(CD-ROM);存储器,如随机存取存储器(RAM)或闪存;等等。
计算机可读存储介质1120可以包括计算机程序1121,该计算机程序1121可以包括代码/计算机可执行指令,其在由处理器1110执行时使得处理器1110执行根据本公开实施例的方法或其任何变形。
计算机程序1121可被配置为具有例如包括计算机程序模块的计算机程序代码。例如,在示例实施例中,计算机程序1121中的代码可以包括一个或多个程序模块,例如包括1121A、模块1121B、……。应当注意,模块的划分方式和个数并不是固定的,本领域技术人员可以根据实际情况使用合适的程序模块或程序模块组合,当这些程序模块组合被处理器1110执行时,使得处理器1110可以执行根据本公开实施例的方法或其任何变形。
根据本发明的实施例,获取模块710、挂载模块720、确定模块730、配置模块740和还原模块1050中的至少一个可以实现为参考图11描述的计算机程序模块,其在被处理器1110执行时,可以实现上面描述的相应操作。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
尽管已经参照本公开的特定示例性实施例示出并描述了本公开,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本公开的精神和范围的情况下,可以对本公开进行形式和细节上的多种改变。因此,本公开的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。
Claims (10)
1.一种由客户端设备执行的客户端设备的配置方法,适用于基于ARM平台的服务器,所述方法包括:
获取操作系统内核,所述操作系统内核被预先制作成适用于ARM架构的内存操作系统RAMOS的形式;
通过所述操作系统内核,请求挂载第一服务器中的目标文件夹,其中,所述目标文件夹包括至少一个配置文件;
从所述至少一个配置文件中确定与所述客户端设备匹配的目标配置数据,其中,所述至少一个配置文件中包括与多个待部署客户端设备各自匹配的配置数据,所述多个待部署客户端设备被配置为各自获取所述RAMOS进行配置;以及
根据所述目标配置数据,对所述客户端设备进行配置,其中,包括:根据所述目标配置数据,通过所述RAMOS对所述客户端的硬盘阵列、基本输入输出系统、智能平台管理接口地址中的至少一个进行自动配置:
所述方法还包括:
通过所述RAMOS针对所述目标文件夹中用户定制化操作系统的镜像文件执行还原操作,以在所述客户端设备中安装所述用户定制化操作系统,其中预置的软件、服务或脚本中至少一个适于被直接使用。
2.根据权利要求1所述的方法,其中,所述获取操作系统内核包括:
向第二服务器发送分配请求,以使所述第二服务器为所述客户端设备分配IP地址并向所述客户端设备发送引导文件的网络位置;
根据所分配的IP地址,向与所述网络位置对应的第三服务器发送第一获取请求,以使所述第三服务器向所述客户端设备发送所述引导文件;以及
根据所述引导文件,向所述第三服务器发送第二获取请求,以使所述第三服务器向所述客户端设备发送所述操作系统内核。
3.根据权利要求1所述的方法,其中,所述客户端设备包括内部存储器;所述通过所述操作系统内核,请求挂载第一服务器中的目标文件夹,包括:
在客户端设备的内部存储器中加载所述操作系统内核;以及
通过已加载的操作系统内核,向所述第一服务器发送挂载请求,以挂载所述第一服务器中的目标文件夹。
4.根据权利要求1所述的方法,其中,所述从所述至少一个配置文件中确定与所述客户端设备匹配的目标配置数据,包括:
获取所述客户端设备的标识;以及
从所述至少一个配置文件中确定与所述标识对应的至少一个配置项,作为所述目标配置数据。
5.一种客户端设备,适用于基于ARM平台的服务器,所述设备包括:
获取模块,用于获取操作系统内核,所述操作系统内核被预先制作成适用于ARM架构的内存操作系统RAMOS的形式;
挂载模块,用于通过所述操作系统内核,请求挂载第一服务器中的目标文件夹,其中,所述目标文件夹包括至少一个配置文件;
确定模块,用于从所述至少一个配置文件中确定与所述客户端设备匹配的目标配置数据,其中,所述至少一个配置文件中包括与多个待部署客户端设备各自匹配的配置数据,所述多个待部署客户端设备被配置为各自获取所述RAMOS进行配置;以及
配置模块,用于根据所述目标配置数据,对所述客户端设备进行配置,其中具体用于:根据所述目标配置数据,通过所述RAMOS对所述客户端的硬盘阵列、基本输入输出系统、智能平台管理接口地址中的至少一个进行自动配置;
所述客户端设备还包括:
还原模块,用于通过所述RAMOS针对所述目标文件夹中用户定制化操作系统的镜像文件执行还原操作,以在所述客户端设备中安装所述操作系统,其中预置的软件、服务或脚本中至少一个适于被直接使用。
6.根据权利要求5所述的客户端设备,其中,所述获取模块包括:
分配请求子模块,用于向第二服务器发送分配请求,以使所述第二服务器为所述客户端设备分配IP地址并向所述客户端设备发送引导文件的网络位置;
第一获取请求子模块,用于根据所分配的IP地址,向与所述网络位置对应的第三服务器发送第一获取请求,以使所述第三服务器向所述客户端设备发送所述引导文件;以及
第二获取请求子模块,用于根据所述引导文件,向所述第三服务器发送第二获取请求,以使所述第三服务器向所述客户端设备发送所述操作系统内核。
7.根据权利要求5所述的客户端设备,其中,所述客户端设备包括内部存储器;所述挂载模块包括:
加载子模块,用于在客户端设备的内部存储器中加载所述操作系统内核;以及
挂载请求子模块,用于通过已加载的操作系统内核,向所述第一服务器发送挂载请求,以挂载所述第一服务器中的目标文件夹。
8.根据权利要求5所述的客户端设备,其中,所述确定模块,具体用于:获取所述客户端设备的标识;以及从所述至少一个配置文件中确定与所述标识对应的至少一个配置项,作为所述目标配置数据。
9.一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个计算机程序,
其中,当一个或多个计算机程序被一个或多个处理器执行时,使得一个或多个处理器实现权利要求1至4中任一项的方法。
10.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现权利要求1至4中任一项的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010515474.5A CN111683145B (zh) | 2020-06-08 | 2020-06-08 | 客户端设备的配置方法、客户端设备、电子设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010515474.5A CN111683145B (zh) | 2020-06-08 | 2020-06-08 | 客户端设备的配置方法、客户端设备、电子设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111683145A CN111683145A (zh) | 2020-09-18 |
CN111683145B true CN111683145B (zh) | 2023-04-28 |
Family
ID=72435596
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010515474.5A Active CN111683145B (zh) | 2020-06-08 | 2020-06-08 | 客户端设备的配置方法、客户端设备、电子设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111683145B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114816571B (zh) * | 2022-04-15 | 2023-06-16 | 西安广和通无线通信有限公司 | 外挂闪存的方法、装置、设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110870019A (zh) * | 2017-10-16 | 2020-03-06 | 因美纳有限公司 | 用于训练深层卷积神经网络集合的半监督学习 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2912523B1 (fr) * | 2007-02-09 | 2009-07-10 | Liard Xavier | Procede permettant de simuler le fonctionnement d'un dispositif ayant une architecture et un processeur determines a l'aide d'un autre dispositif connecte a un reseau informatique. |
CN104639378A (zh) * | 2015-03-10 | 2015-05-20 | 浪潮集团有限公司 | 一种基于pxe的服务器自动化部署方法 |
CN106911729B (zh) * | 2015-12-22 | 2021-03-30 | 中电科技(北京)有限公司 | 一种适用于国产处理器的操作系统远程安装方法 |
CN109144607A (zh) * | 2018-08-06 | 2019-01-04 | 成都知道创宇信息技术有限公司 | 一种大规模服务器自动部署和配置方法 |
CN109992311B (zh) * | 2019-03-25 | 2022-07-29 | 新华三技术有限公司 | 操作系统的启动方法、装置、存储介质及客户端 |
CN110673860B (zh) * | 2019-09-24 | 2023-06-16 | 南京先进计算产业发展有限公司 | 智能云数据中心建设与运营部署系统及方法 |
-
2020
- 2020-06-08 CN CN202010515474.5A patent/CN111683145B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110870019A (zh) * | 2017-10-16 | 2020-03-06 | 因美纳有限公司 | 用于训练深层卷积神经网络集合的半监督学习 |
Also Published As
Publication number | Publication date |
---|---|
CN111683145A (zh) | 2020-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7953793B2 (en) | Distributed preboot execution environment (PXE) server booting | |
EP3317762B1 (en) | Methods and apparatus for software lifecycle management of a virtual computing environment | |
US9465625B2 (en) | Provisioning of operating environments on a server in a networked environment | |
US20040193867A1 (en) | Configurabel network boot management for hetergenous boot options | |
US7440998B2 (en) | Provisioning for a modular server | |
US8245022B2 (en) | Method and system to support ISCSI boot through management controllers | |
US20100325410A1 (en) | System and method for management and installation of operating system images for computers | |
US10917291B2 (en) | RAID configuration | |
CN104572372A (zh) | 一种服务器性能测试环境搭建系统及方法 | |
US20110296159A1 (en) | Pxe server and electronic device and method of diskless booting electronic device | |
CN110908753A (zh) | 一种智能融合的云桌面服务器、客户端及系统 | |
CN107547274B (zh) | 多网口聚合方法及装置 | |
US20160253501A1 (en) | Method for Detecting a Unified Extensible Firmware Interface Protocol Reload Attack and System Therefor | |
CN106873970B (zh) | 一种操作系统的安装方法和装置 | |
CN103677962B (zh) | 基于虚拟化技术的桌面交付设备的实现系统及方法 | |
CN111857956A (zh) | 虚拟机启动方法及设备 | |
CN111683145B (zh) | 客户端设备的配置方法、客户端设备、电子设备和介质 | |
WO2018146671A1 (en) | Dynamically adaptive cloud computing infrastructure | |
CN112256351B (zh) | Feign组件的实现方法、微服务调用方法及装置 | |
US7284120B2 (en) | Method and system for allowing a system under test (SUT) to boot a plurality of operating systems without a need for local media | |
CN107659621B (zh) | 一种raid控制卡配置方法及装置 | |
WO2017004269A1 (en) | Methods and apparatus for software lifecycle management of a virtual computing environment | |
US11847611B2 (en) | Orchestrating and automating product deployment flow and lifecycle management | |
CN115033299A (zh) | 一种生产测试系统启动的方法与终端 | |
CN113973126A (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 |