CN117149352A - 一种基于不同架构的云平台实现方法及设备 - Google Patents
一种基于不同架构的云平台实现方法及设备 Download PDFInfo
- Publication number
- CN117149352A CN117149352A CN202311085410.6A CN202311085410A CN117149352A CN 117149352 A CN117149352 A CN 117149352A CN 202311085410 A CN202311085410 A CN 202311085410A CN 117149352 A CN117149352 A CN 117149352A
- Authority
- CN
- China
- Prior art keywords
- cloud platform
- target architecture
- cloud
- target
- agent
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000006978 adaptation Effects 0.000 claims abstract description 21
- 238000012545 processing Methods 0.000 claims abstract description 17
- 238000012360 testing method Methods 0.000 claims abstract description 17
- 238000012795 verification Methods 0.000 claims abstract description 14
- 238000007499 fusion processing Methods 0.000 claims description 10
- 238000012986 modification Methods 0.000 claims description 4
- 230000004048 modification Effects 0.000 claims description 4
- 230000015654 memory Effects 0.000 description 17
- 238000007726 management method Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 238000004590 computer program Methods 0.000 description 4
- 230000005291 magnetic effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000009434 installation Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 239000004744 fabric Substances 0.000 description 2
- 238000011900 installation process Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012827 research and development Methods 0.000 description 2
- 241000531315 Avahi Species 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- 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/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- 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)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本申请的目的是提供一种基于不同架构的云平台实现方法及设备,通过基于云平台的依赖列表,在目标架构服务器的环境中安装云平台所需的依赖;将目标架构服务器添加至所述云平台;在云平台上创建目标架构服务器对应的云主机,使得在云平台Agent上,针对不同的架构对应配置不同的处理逻辑;对云平台Agent进行目标架构的初期适配;通过测试用例列表逐一对云平台的各相关功能进行是否正常使用的验证,若验证均通过,则指示所述云平台能在所述目标架构上正常运行;若验证不通过,则针对不同测试场景进行分析和修复,以完成目标架构在云平台的实现,实现了在不同架构上进行云平台的实现,以确保云平台支持在不同的目标架构服务器的芯片上正常运行。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种基于不同架构的云平台实现方法及设备。
背景技术
现有技术中,云平台以支持主流的X86芯片和国外的开源操作系统为主。随着近几年各个行业国产化转型的趋势,需要将云平台在国产化的芯片和操作系统上运行起来。
芯片上,大多数云平台仅支持普通X86架构有:Intel芯片、AMD芯片。国产X86架构有:海光芯片、兆芯芯片,ARM架构有:飞腾芯片、鲲鹏芯片,MIPS/LoongArch架构有:龙芯芯片,SW架构有:申威芯片,主流的芯片已经全部支持。HostOS上,已支持银河麒麟、统信UOS、openEuler、CentOS和Rocky Linux等操作系统。
发明内容
本申请的一个目的是提供一种基于不同架构的云平台实现方法及设备,实现了在不同架构上进行云平台的实现,以确保云平台支持在不同的目标架构服务器的芯片上正常运行。
根据本申请的一个方面,提供了一种基于不同架构的云平台实现方法,其中,该方法包括:
基于云平台的依赖列表,在目标架构服务器的环境中安装云平台所需的依赖;
将所述目标架构服务器添加至所述云平台,使得在云平台的管理节点中进行不区分架构的融合处理;
在所述云平台上创建所述目标架构服务器对应的云主机,使得在云平台Agent上,针对不同的架构对应配置不同的处理逻辑;
对云平台Agent进行目标架构的初期适配;
通过测试用例列表逐一对所述云平台的各相关功能进行是否正常使用的验证,若验证均通过,则指示所述云平台能在所述目标架构上正常运行;若验证不通过,则针对不同测试场景进行分析和修复,以完成目标架构在云平台的实现。
进一步地,上述方法中,所述基于云平台的依赖列表,在目标架构服务器的环境中安装云平台所需的依赖,包括:
判断云平台是否支持目标架构服务器的操作系统,
若是,则基于云平台的依赖列表,执行部署在目标架构服务器的环境中安装云平台所需的依赖的相关操作;
若执行部署的相关操作成功,则启动管理节点服务;
若所述管理节点服务正常启动成功,则完成目标架构服务器安装云平台所需的依赖。
进一步地,上述方法中,将所述目标架构服务器添加至所述云平台,使得在云平台的管理节点中进行不区分架构的融合处理,包括:
判断云平台是否已经支持目标物理主机上的操作系统,
若是,则执行软件安装、软件配置及Agent部署的操作;
若执行的操作均成功,则完成所述目标架构服务器添加至云平台。
进一步地,上述方法中,所述在所述云平台上创建所述目标架构服务器对应的云主机,使得在云平台Agent上,针对不同的架构对应配置不同的处理逻辑,包括:
配置云主机;
判断云平台的硬件资源是否满足预设资源条件;
若满足,则云平台针对用户配置定义对应云主机的描述文件;
根据定义好的描述文件,在云平台的硬件资源中进行备选物理机的匹配;
若备选物理机支持云主机的启动,则将支持云主机启动的备选物理机作为匹配的目标物理机,并在所述匹配的目标物理机上启动云主机;
若启动的云主机正常运行,则完成在所述云平台上创建所述目标架构服务器对应的云主机的操作。
进一步地,上述方法中,所述对云平台Agent进行目标架构的初期适配,包括:
当所述云平台Agent区分架构时,将Agent代码在目标架构中进行编译;
若编译成功,则完成所述云平台Agent的适配;
若编译存在问题,则针对编译中的问题代码进行对应的调试修改,以完成云平台Agent的适配。
根据本申请的另一个方面,还提供了一种非易失性存储介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行时,使所述处理器实现如上述基于不同架构的云平台实现方法。
根据本申请的另一个方面,还提供了一种基于不同架构的云平台实现设备,其中,该设备包括:
一个或多个处理器;
计算机可读介质,用于存储一个或多个计算机可读指令,
当所述一个或多个计算机可读指令被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述基于不同架构的云平台实现方法。
与现有技术相比,本申请通过基于云平台的依赖列表,在目标架构服务器的环境中安装云平台所需的依赖;将所述目标架构服务器添加至所述云平台,使得在云平台的管理节点中进行不区分架构的融合处理;在所述云平台上创建所述目标架构服务器对应的云主机,使得在云平台Agent上,针对不同的架构对应配置不同的处理逻辑;对云平台Agent进行目标架构的初期适配;通过测试用例列表逐一对所述云平台的各相关功能进行是否正常使用的验证,若验证均通过,则指示所述云平台能在所述目标架构上正常运行;若验证不通过,则针对不同测试场景进行分析和修复,以完成目标架构在云平台的实现,实现了在不同架构上进行云平台的实现,以确保云平台支持在不同的目标架构服务器的芯片上正常运行。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1示出根据本申请一个方面的一种基于不同架构的云平台实现方法的流程示意图;
图2示出根据本申请一个方面的一种基于不同架构的云平台实现方法中的在平台的管理节点中进行不区分架构的融合处理的示意图;
图3示出根据本申请一个方面的一种基于不同架构的云平台实现方法中的不同的架构对应配置不同的处理逻辑的框架图;
图4示出根据本申请一个方面的一种基于不同架构的云平台实现方法中的云平台部署多个Agent的示意图;
图5示出根据本申请一个方面的一种基于不同架构的云平台实现方法中的在目标架构服务器的环境中安装云平台所需的依赖的流程示意图;
图6示出根据本申请一个方面的一种基于不同架构的云平台实现方法中的将所述目标架构服务器添加至所述云平台的流程示意图;
图7示出根据本申请一个方面的一种基于不同架构的云平台实现方法中的在所述云平台上创建所述目标架构服务器对应的云主机的流程示意图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本申请作进一步详细描述。
在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
如图1所示,为本申请的一个方面提出的一种基于不同架构的云平台实现方法的流程示意图,该方法实现的计算机语言依赖云平台本身的开发语言,例如Java、Python、Golang以及Shell等。该方法包括步骤S11、步骤S12、步骤S13、步骤S14及步骤S15,其中,具体包括如下步骤:
步骤S11,基于云平台的依赖列表,在目标架构服务器的环境中安装云平台所需的依赖;
需要说明的是,目标架构包括但不限于X86架构、ARM架构、MIPS架构、LoongArch架构及SW架构等。
步骤S12,将所述目标架构服务器添加至所述云平台,使得在云平台的管理节点中进行不区分架构的融合处理;
步骤S13,在所述云平台上创建所述目标架构服务器对应的云主机,使得在云平台Agent上,针对不同的架构对应配置不同的处理逻辑;
步骤S14,对云平台Agent进行目标架构的初期适配;
步骤S15,通过测试用例列表逐一对所述云平台的各相关功能进行是否正常使用的验证,若验证均通过,则指示所述云平台能在所述目标架构上正常运行;若验证不通过,则针对不同测试场景进行分析和修复,以完成目标架构在云平台的实现。
在步骤S11中,进行部署前的准备工作,针对云平台的依赖列表,在目标架构服务器的环境,即在目标架构服务器的已经预装操作系统上安装云平台所必要的依赖,其中,具体依赖列表包括但不限于如下:
audit
autoconf
autogen
avahi
avahi-tools
bash-completion
bpftool
bridge-utils
bzip2
chrony
collectd-disk
collectd-virt
conntrack-tools
createrepo
curl
cyrus-sasl-md5
device-mapper-multipath
dmidecode
dnsmasq
expect
exfat-utils
fuse-exfat
fuse-sshfs
exfat-utils
fuse-exfat
gc
gcc
gnutls-utils
grafana
guile
gzip
httpd
hwdata
ipmitool
iproute
ipset
iptables
iptables-services
iputils
iscsi-initiator-utils
java-1.8.0-openjdk
java-1.8.0-openjdk-devel
keepalived
kernel
kernel-core
kernel-devel kernel-headerskernel-moduleskernel-modules-extrakernel-toolslibffi-devellibselinux-pythonlibselinux-utilslighttpdlibtool-ltdllsoflvm2lvm2-dbusd
lvm2-libs lvm2-lockdmariadbmariadb-servermcelogmegacliMySQL-python
net-toolsnfs-utilsnginxnmapnodejsnvme-cliOpenIPMI-modaliasopensshopenssh-clientsopenssh-server
openssl-devel
pciutils
perf
psmisc
pv
python2-crypto
python2-pip
python2-pyudev
python2-pyparted
python3-libselinux
python3-perf
python-backports-ssl_match_hostname
python-devel
python-pip
python-setuptools
redis
rpcbind
rsync
sanlock
sed
sg3_utils
smartmontools
sshpass
storcli
sudo
sysfsutils
systemd
tar
tuned
unbound-libs
unzip
usbredir-server
usbutils
vconfig
vim
wget
qemu
qemu-block-rbd
libvirt
libvirt-client
libvirt-python
在本实施例中,在平台的管理节点中进行不区分架构的融合处理的过程中,如图2所示,当用户下发操作指令后,管理节点(对应图2中的mn)会下发对应所述操作指令的API请求至目标物理主机上的Agent,以待目标物理主机上的Agent对所述API请求进行对应处理,并在处理完成后,将处理结果以响应体的形式返回给该管理节点,从而完成一个融合处理的操作闭环。
进一步地,在云平台Agent上,针对不同的架构对应配置不同的处理逻辑的过程中,如图3所示,Agent编译成bin包之后,用于云平台部署过程中对应service的创建,最终从管理节点下发到Agent上的API请求,Agent中均有对应的代码来处理不同架构的处理逻辑。在此之前,云平台已经支持了比如X86架构和ARM架构等,LoongArch架构的支持方式可以按照X86架构和ARM架构的方式进行处理即可。在云平台的Agent服务中不区分架构,存在各个不同的架构对应的不同的处理逻辑;一旦触发Agent服务,根据API请求所携带的目标架构,就可以调用对应的处理逻辑即可。
接着本申请的上述实施例,所述步骤S14对云平台Agent进行目标架构的初期适配,包括:
当所述云平台Agent区分架构时,将Agent代码在目标架构中进行编译;
若编译成功,则完成所述云平台Agent的适配;
若编译存在问题,则针对编译中的问题代码进行对应的调试修改,以完成云平台Agent的适配。
例如,云平台的部署过程中存在许多Agent,如图4所示,不同Agent分别管理不同的对应模块,例如负责在KVM物理机创建云主机、镜像服务器、SharedBlock等,有的Agent不区分架构,有的Agent区分架构。部分Agent由于开发语言的差异,在编译过程中需要针对架构进行Agent的适配,此处,更多是不同的架构的特性导致的或当前版本的语言软件包已有模块不支持当前架构导致的,因此,让云平台在目标架构(比如LoongArch架构)的CPU芯片上运行,最重要的就是ZStack Cloud Agent的适配,涉及有物理机、网络、存储等模块。当中涉及开源组件的编译和ZStack内部Agent仓库的编译。当云平台Agent区分架构时,将Agent代码在目标架构(比如LoongArch架构)中进行编译,若编译成功(即没问题),则适配成功,完成云平台Agent的适配;若编译存在问题,则需要针对编译中的问题代码进行对应的调试修改,以完成云平台Agent的适配。此处,LoongArch架构的CPU芯片的云平台支持,需要LoongArch架构芯片,例如3C5000L、3C5000等型号的服务器。
在完成以上步骤S11至步骤S14后,在步骤S15中,针对云平台所需的相关内容(比如云平台安装过程中需要的工具软件包、云平台安装包以及云平台安装过程中依赖的文件)进行打包封装,完成初期的适配。其中,适配工作对于初期适配的定义,最终输出的压缩包ISO文件能够满足用户使用部署手册,可以从安装云平台到通过浏览器访问云平台UI完成初始化,再进行云主机的创建,云主机控制台的访问过程中没有错误。随后通过测试用例列表进行验证,测试用例列表是测试人员针对云平台功能梳理的一个完成的列表,适配后的验证过程,测试人员需要针对测试用例列表逐一进行验证,来验证云平台的各个相关功能是否正常使用,如果存在问题(即验证不通过),则针对不同的测试场景进行分析和修复,以完成目标架构在云平台的实现。比如,当前的目标架构的云平台在测试人员测试过程发现的问题,首先确认操作步骤是否正确,再和研发确认该问题是否是当前目标架构本身不支持,如果不是,则提交Issue后研发针对问题环境进行修复,从而完成目标架构在云平台的实现。
接着本申请的上述实施例,所述步骤S11基于云平台的依赖列表,在目标架构服务器的环境中安装云平台所需的依赖的具体实现流程图如图5所示,具体包括:
首先,判断云平台是否支持目标架构服务器的操作系统,若不支持,则直接结束;
若是(即,若支持),则基于云平台的依赖列表,执行部署在目标架构服务器的环境中安装云平台所需的依赖的相关操作,比如,软件包安装及基础软件配置等;
然后,判断部署过程中相关操作是否存在错误,若存在错误(即相关操作执行失败,则直接结束;
若执行部署的相关操作成功,则启动管理节点服务(对应图5中的管理节点服务);
最后,判断管理节点服务是否正常启动,若不能正常启动,则直接结束;若所述管理节点服务正常启动成功,则完成目标架构服务器安装云平台所需的依赖。
接着本申请的上述实施例,所述步骤S12中的将所述目标架构服务器添加至所述云平台的具体实现流程图如图6所示,具体包括:
首先,判断云平台是否已经支持目标物理主机上的操作系统,若不支持,2直接结束;
若支持,则执行部署流程中的软件安装、软件配置及Agent部署等的操作;
然后,判断执行部署的操作是否存在失败,若存在失败,则直接结束;
若执行部署的操作均成功,则完成所述目标架构服务器添加至云平台的操作。
接着本申请的上述实施例,所述步骤S13中的在所述云平台上创建所述目标架构服务器对应的云主机,使得在云平台Agent上,针对不同的架构对应配置不同的处理逻辑的具体实现流程图如图7所示,具体包括:
首先,配置云主机;
其次,判断云平台的硬件资源是否满足预设资源条件;在此,所述云平台的硬件资源包括但不限于CPU剩余配额、内存剩余配额、主存储剩余容量、镜像服务器剩余空间等,那么,预设资源条件也对应有预设的CPU配额、预设的内存配额、预设的主存储容量及预设的镜像服务器空间等条件。
若不满足对应的预设资源条件,则直接结束;
若满足预设资源条件,则云平台针对用户配置定义对应云主机的描述文件(比如xml后缀的文件等);在此,云主机的描述文件(xml后缀)最终是给云平台底层的虚拟化组件Qemu/Libvirt(用于创建和管理云主机的软件)使用,虚拟化组件会针对描述文件当中定义的参数(比如云主机的具体配置等)来创建对应配置的云主机。
然后,根据定义好的描述文件,在云平台的硬件资源中进行备选物理机的匹配,即在平台的硬件资源中查找合适的物理机;
接着,判断是否有备选物理机(对应图6中的合适的物理机)支持云主机的启动,若没有,则直接结束;
若存在备选物理机(对应图6中的合适的物理机)支持云主机的启动,则将支持云主机启动的备选物理机作为匹配的目标物理机,并在所述匹配的目标物理机上启动云主机;
最后,判断启动的云主机是否正常运行,若启动的云主机不能正常运行(比如异常运行或者运行中止等),则直接结束;
若启动的云主机正常运行,则完成在所述云平台上创建所述目标架构服务器对应的云主机的操作。
根据本申请的另一方面,还提供了一种非易失性存储介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行时,使所述处理器实现如上述的基于不同架构的云平台实现方法。
根据本申请的另一方面,还提供了一种基于不同架构的云平台实现设备,其中,该设备包括:
一个或多个处理器;
计算机可读介质,用于存储一个或多个计算机可读指令,
当所述一个或多个计算机可读指令被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述的基于不同架构的云平台实现方法。
在此,所述基于不同架构的云平台实现设备中的各实施例的详细内容,具体可参见上述的基于不同架构的云平台实现方法实施例的对应部分,在此,不再赘述。
综上所述,本申请通过基于云平台的依赖列表,在目标架构服务器的环境中安装云平台所需的依赖;将所述目标架构服务器添加至所述云平台,使得在云平台的管理节点中进行不区分架构的融合处理;在所述云平台上创建所述目标架构服务器对应的云主机,使得在云平台Agent上,针对不同的架构对应配置不同的处理逻辑;对云平台Agent进行目标架构的初期适配;通过测试用例列表逐一对所述云平台的各相关功能进行是否正常使用的验证,若验证均通过,则指示所述云平台能在所述目标架构上正常运行;若验证不通过,则针对不同测试场景进行分析和修复,以完成目标架构在云平台的实现,实现了在不同架构上进行云平台的实现,以确保云平台支持在不同的目标架构服务器的芯片上正常运行。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (7)
1.一种基于不同架构的云平台实现方法,其中,该方法包括:
基于云平台的依赖列表,在目标架构服务器的环境中安装云平台所需的依赖;
将所述目标架构服务器添加至所述云平台,使得在云平台的管理节点中进行不区分架构的融合处理;
在所述云平台上创建所述目标架构服务器对应的云主机,使得在云平台Agent上,针对不同的架构对应配置不同的处理逻辑;
对云平台Agent进行目标架构的初期适配;
通过测试用例列表逐一对所述云平台的各相关功能进行是否正常使用的验证,若验证均通过,则指示所述云平台能在所述目标架构上正常运行;若验证不通过,则针对不同测试场景进行分析和修复,以完成目标架构在云平台的实现。
2.根据权利要求1所述的方法,其中,所述基于云平台的依赖列表,在目标架构服务器的环境中安装云平台所需的依赖,包括:
判断云平台是否支持目标架构服务器的操作系统,
若是,则基于云平台的依赖列表,执行部署在目标架构服务器的环境中安装云平台所需的依赖的相关操作;
若执行部署的相关操作成功,则启动管理节点服务;
若所述管理节点服务正常启动成功,则完成目标架构服务器安装云平台所需的依赖。
3.根据权利要求1所述的方法,其中,将所述目标架构服务器添加至所述云平台,使得在云平台的管理节点中进行不区分架构的融合处理,包括:
判断云平台是否已经支持目标物理主机上的操作系统,
若是,则执行软件安装、软件配置及Agent部署的操作;
若执行的操作均成功,则完成所述目标架构服务器添加至云平台。
4.根据权利要求1所述的方法,其中,所述在所述云平台上创建所述目标架构服务器对应的云主机,使得在云平台Agent上,针对不同的架构对应配置不同的处理逻辑,包括:
配置云主机;
判断云平台的硬件资源是否满足预设资源条件;
若满足,则云平台针对用户配置定义对应云主机的描述文件;
根据定义好的描述文件,在云平台的硬件资源中进行备选物理机的匹配;
若备选物理机支持云主机的启动,则将支持云主机启动的备选物理机作为匹配的目标物理机,并在所述匹配的目标物理机上启动云主机;
若启动的云主机正常运行,则完成在所述云平台上创建所述目标架构服务器对应的云主机的操作。
5.根据权利要求1所述的方法,其中,所述对云平台Agent进行目标架构的初期适配,包括:
当所述云平台Agent区分架构时,将Agent代码在目标架构中进行编译;
若编译成功,则完成所述云平台Agent的适配;
若编译存在问题,则针对编译中的问题代码进行对应的调试修改,以完成云平台Agent的适配。
6.一种非易失性存储介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行时,使所述处理器实现如权利要求1至5中任一项所述的方法。
7.一种基于不同架构的云平台实现设备,其中,该设备包括:
一个或多个处理器;
计算机可读介质,用于存储一个或多个计算机可读指令,
当所述一个或多个计算机可读指令被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1至5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311085410.6A CN117149352A (zh) | 2023-08-25 | 2023-08-25 | 一种基于不同架构的云平台实现方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311085410.6A CN117149352A (zh) | 2023-08-25 | 2023-08-25 | 一种基于不同架构的云平台实现方法及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117149352A true CN117149352A (zh) | 2023-12-01 |
Family
ID=88898077
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311085410.6A Pending CN117149352A (zh) | 2023-08-25 | 2023-08-25 | 一种基于不同架构的云平台实现方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117149352A (zh) |
-
2023
- 2023-08-25 CN CN202311085410.6A patent/CN117149352A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9811360B2 (en) | Dynamic determination of application server runtime classloading | |
US7735078B1 (en) | System and method for software patching for cross-platform products | |
CN102521081B (zh) | 修复遭破坏的软件 | |
US7519630B2 (en) | Method and system for automated testing of versioned information handling system applications | |
US9823909B1 (en) | Program code conversion for cross-platform compatibility | |
US7739698B2 (en) | Multiplatform API usage tool | |
CN110673924B (zh) | 一种多架构容器云镜像选择方法、装置、设备及存储介质 | |
US20080196004A1 (en) | Apparatus and method for developing component-based software | |
US20020059561A1 (en) | Software package verification | |
US7941792B2 (en) | System and method for compiling program code ahead of time | |
CN111767226B (zh) | 一种云计算平台资源的测试方法、系统及设备 | |
US7185235B2 (en) | Test and verification framework | |
US20150074657A1 (en) | Runtime detection of software configurations and upgrades | |
CN104137062A (zh) | 将代码动态注入到运行中的进程 | |
CN112764766B (zh) | 一种k8s集群与存储的对接方法、装置、设备及存储介质 | |
WO2021228036A1 (en) | Modification of codified infrastructure for orchestration in multi-cloud environment | |
US9779014B2 (en) | Resilient mock object creation for unit testing | |
CN114546819A (zh) | 代码处理方法、装置、电子设备及可读介质 | |
CN117149352A (zh) | 一种基于不同架构的云平台实现方法及设备 | |
WO2017039588A1 (en) | Software patch fix based on checksums | |
CN112860552B (zh) | 关键字机制运行方法和装置 | |
CN116415599A (zh) | Ic卡读取方法、写入方法、装置、电子设备及存储介质 | |
CN111367796A (zh) | 应用程序调试方法及装置 | |
CN113806015B (zh) | 一种基于arm架构的虚拟路由网络构建方法及设备 | |
CN117171037A (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 |