WO2020024413A1 - Method for controlling deployment of cloud computing platform, server, and storage medium - Google Patents

Method for controlling deployment of cloud computing platform, server, and storage medium Download PDF

Info

Publication number
WO2020024413A1
WO2020024413A1 PCT/CN2018/107908 CN2018107908W WO2020024413A1 WO 2020024413 A1 WO2020024413 A1 WO 2020024413A1 CN 2018107908 W CN2018107908 W CN 2018107908W WO 2020024413 A1 WO2020024413 A1 WO 2020024413A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
server
module
control node
control
Prior art date
Application number
PCT/CN2018/107908
Other languages
French (fr)
Chinese (zh)
Inventor
王翼
Original Assignee
平安科技(深圳)有限公司
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 平安科技(深圳)有限公司 filed Critical 平安科技(深圳)有限公司
Publication of WO2020024413A1 publication Critical patent/WO2020024413A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Definitions

  • the present application relates to the field of computer technology, and in particular, to a control method for deploying a cloud computing platform, a server, and a storage medium.
  • OpenStack Open Source cloud computing management platform project.
  • OpenStack supports almost all types of cloud environments.
  • the goal of the project is to provide a cloud computing management platform that is simple to implement, scalable at scale, rich, and standardized.
  • Each module of the Openstack cloud platform currently on the market needs to be manually deployed manually, with a high error rate, poor node connectivity, and low efficiency.
  • the embodiments of the present application provide a cloud computing platform deployment control method, server, and storage medium, which can automatically debug and connect a large number of nodes to form a complete and usable platform, reduce the deployment steps of manual operations, and improve deployment efficiency.
  • an embodiment of the present application provides a method for controlling cloud computing platform deployment.
  • the method includes:
  • an embodiment of the present application provides a server including: a determination module, an acquisition module, an initial module, a setting module, a configuration module, a detection module, and a debugging module, where:
  • the determining module is configured to determine a control node for controlling a function node
  • the obtaining module is configured to obtain a first deployment instruction including node role allocation information
  • the initial module is configured to initialize and start a first service in the control node, so that the control node adds a target server according to the node role allocation information and assigns a node role to the target server;
  • the setting module is configured to determine the target server as a function node controlled by the control node;
  • the configuration module is configured to set configuration parameters of the functional node according to a configuration script, and the transmission module is further configured to initialize and start a second service related to the role of the node;
  • the detecting module is configured to detect whether the determined functional nodes are connected
  • the debugging module is configured to debug configuration parameters of the disconnected functional nodes according to the configuration script when the nodes are disconnected, so that the disconnected functional nodes are connected.
  • an embodiment of the present application further provides a server, including a processor, an input device, an output device, and a memory.
  • the processor, the input device, the output device, and the memory are connected to each other.
  • the memory is used for A computer program is stored, the computer program includes program instructions, and the processor is configured to call the program instructions to execute the method according to the first aspect and any possible implementation manner thereof.
  • an embodiment of the present application provides a computer-readable storage medium.
  • the computer-readable storage medium stores a computer program, where the computer program includes program instructions, and the program instructions, when executed by a processor, cause all the The processor executes the method of the first aspect and any possible implementation manners.
  • a large number of nodes can be automatically debugged and connected to form a complete and usable cloud computing platform, reducing manual deployment steps and improving deployment. effectiveness.
  • FIG. 1 is a schematic flowchart of a cloud computing platform deployment control method according to an embodiment of the present application
  • FIG. 2 is a schematic flowchart of a cloud computing platform deployment control method according to another embodiment of the present application.
  • FIG. 3 is a schematic structural diagram of a server according to an embodiment of the present application.
  • FIG. 4 is a schematic structural diagram of another server provided by an embodiment of the present application.
  • FIG. 1 is a schematic flowchart of a cloud computing platform deployment control method according to an embodiment of the present application. This method may be applied to a server of a cloud computing platform. As shown in FIG. 1, the method may include:
  • OpenStack is a distributed system. Not only can each service be deployed in a distributed manner, but the components in the service can also be deployed in a distributed manner. This distributed nature gives OpenStack great flexibility, scalability, and high availability.
  • the entire OpenStack is composed of four major parts: control nodes, compute nodes, network nodes, and storage nodes (these four nodes can also be installed on a single machine and deployed in a single machine).
  • the nodes other than the control node can be collectively referred to as the above functional nodes. . among them:
  • the control node is responsible for the control of the remaining functional nodes, including the virtual machine establishment, migration, network allocation, storage allocation, etc .; the computing node is responsible for the virtual machine operation; the network node is responsible for the communication between the external network and the internal network; the storage node is responsible for the virtual Machine's extra storage management and more.
  • the server configured by the control node can assign an IP address to each computing node, and can provide connections to the virtual machines and servers of each computing node, and handle security group rules (such as using Dnsmasq configuration).
  • the server realizes the automatic allocation of virtual machine IP addresses, and uses a Linux bridge as a virtual network implementation mechanism) to facilitate management.
  • OpenStack The overall architecture of OpenStack includes: different modules of the virtual machine VM and OpenStack (called “services” in OpenStack, and “services” are used hereinafter).
  • the control node can include all OpenStack services, and the remaining nodes controlled by the control node contain different services according to their roles:
  • the network node contains only Neutron services.
  • Neutron is responsible for managing the communication between the private network segment and the public network segment, as well as managing the communication / topology between the virtual machine network, managing fire prevention on the virtual machine, etc.
  • Compute nodes include three services: Nova, Neutron, and Telemeter:
  • Nova Provides virtual machine creation, running, migration, snapshot and other services around the virtual machine, and provides APIs to interface with the control node, and the control node issues tasks.
  • Neutron Provides communication services between compute nodes and network nodes.
  • Telmeter Provides a monitoring agent for computing nodes, and reports the condition of the virtual machine to the control node. It is a proxy service for Centimeter.
  • the storage node contains services such as Cinder and Swift:
  • Cinder Block storage service, which provides corresponding block storage. In simple terms, it is a virtual disk that can be mounted on the corresponding virtual machine. It is not affected by factors such as the file system. For virtual machines, this operation is For example, a newly added hard disk can complete any operation on the disk, including mounting, unmounting, formatting, converting file systems, etc., and it is mostly used for space expansion when the virtual machine has insufficient space.
  • Swift Object storage service, which provides corresponding object storage. In simple terms, it is a virtual disk space that can store files in this space. It can only store files. It cannot format and convert file systems. Most of them are used in Cloud disk / file.
  • the determination of the control node may be: the system detects that the eligible node is the above-mentioned control node (usually only one server meets the requirements), or the user can independently select a server as the control node.
  • the above-mentioned first deployment instruction can be triggered by a user's operation, that is, the user can start a platform deployment task through a simple interactive operation.
  • the first deployment instruction may include node role allocation information, where the node role allocation information is mainly used for the number of nodes and each The setting of each function node role, the node role may include one or more of a computing node, a storage node, and a network node.
  • Node role allocation information can be actively selected by the user, such as selecting a node role and the number of node roles, or it can be set automatically and randomly by the platform. At this time, the user only needs to start a deployment task.
  • the platform can store the node role assignment information set by the user, and the user can use the same deployment scheme without the need for repeated settings in order to facilitate subsequent automatic deployment tasks.
  • a deployment task may be executed to initialize and start the first service in the control node, where the first service is all the services necessary for the control node.
  • the first service can provide all services for OpenStack.
  • this step may include: opening the HTTP service of the control node, obtaining and entering the root password of the control node, initializing and starting all OpenStack services in the control node.
  • the role of the assigned node is mainly to determine the function type of the functional node to configure the services of the functional node.
  • the control node may add a target server and assign a node role to the target server according to the node role allocation information. To deploy function nodes.
  • the target server can be any server to which the control node can connect, that is, the control node can obtain the addresses of other servers and deploy these servers as functional nodes of the platform (or understood as a cluster); the target server can also be selected by the user Servers, that is, users can choose to enter the addresses of multiple servers to deploy functional nodes to these servers.
  • the initialization steps include:
  • the platform can test the installation environment of each node to determine whether the installation environment is complete.
  • the control node may deploy the node according to the node role allocation information, so that the platform may determine the target server as a functional node that can be controlled by the control node.
  • the pre-stored configuration script can be obtained. It can be understood that different node roles correspond to different configuration algorithms. You can execute the corresponding configuration algorithm according to the node role of each functional node to set the node parameters. To implement related services.
  • the above-mentioned node parameters may include network parameters and storage parameters of the nodes.
  • adding a server as a computing node through the control node may include: obtaining the IP and root password of the server to be added through the control node, setting the node role of the server as a computing node, configuring the IP of the storage node of the computing node, and controlling the node.
  • IP, virtualization type set the network type of each network card of this compute node, initialize and start the computing-related OpenStack services.
  • Adding a server as a storage node through the control node may include: obtaining the IP and root password of the server to be added through the control node, setting the node role of the server as the storage node, configuring the IP of the storage node of the network node, the control node IP, and virtual Set the network type of each network card of the storage node to the binding type, and initialize and start the storage-related OpenStack services.
  • Adding a server as a network node through the control node may include: obtaining the IP and root password of the server to be added through the control node, setting the node role of the server to a network node, configuring the IP of the storage node of the network node, the control node IP, and virtualization Type, set the two network cards of this network node as the external network exit, initialize and start the network related OpenStack services.
  • the system can automatically detect the connection status between various functional nodes.
  • the above detection can be periodic. If a functional node is detected to be disconnected somewhere, you can obtain the debugging algorithm pre-written in the configuration script for the role of the node.
  • the connected functional nodes are debugged, and the parameters are reconfigured so that the disconnected functional nodes can work normally, thereby ensuring connectivity between the functional nodes.
  • This embodiment of the present application determines a control node for controlling a function node, obtains a first deployment instruction containing node role allocation information, and then initializes and starts a first service in the control node, so that the control node adds a target according to the node role allocation information.
  • the server and the node role are assigned to the target server, so that the target server can be determined as the function node controlled by the control node.
  • the configuration parameters of the function node are set according to the configuration script, the second service related to the node role is initialized and started, and It can also detect whether the identified functional nodes are connected. If they are not connected, debug the configuration parameters of the disconnected functional nodes according to the configuration script to make the disconnected functional nodes connect.
  • a large number of nodes can be automatically debugged and connected to form a complete and usable Compared with general manual deployment, the cloud computing platform improves deployment efficiency and avoids errors caused by manual participation.
  • FIG. 2 is a schematic flowchart of another cloud computing platform deployment control method disclosed in the embodiment of the present application.
  • FIG. 2 is further optimized based on FIG. 1.
  • the cloud The control method for computing platform deployment includes the following steps:
  • a control node setting instruction may be received, and the control node setting instruction specifies that the target server is used as the control node, for example, is selected by the target server's IP address or name, and is then initially set as the control node, and step 202 may be performed.
  • the user can choose to use the target server as the control node of the entire platform, and the server as the control node can use a proxy server (ProxyServer): ProxyServer provides an HTTP-based service interface to the outside. It will find the service address and forward the user based on the ring information. Request to the corresponding account, container, or object, and perform CRUD (add, delete, modify, and check) operations. Before accessing the service, you need to obtain the access token through the authentication server, and then add the header information X-Auth-Token to the sent request.
  • the proxy server is responsible for the communication between the other components, and also handles a large number of failed requests.
  • the server serving as the OpenStack control node needs to have all OpenStack services installed to ensure the stability and comprehensive functions of the system. Therefore, you can test the target server to determine whether it has installed a system configuration that includes all OpenStack services. , Go to step 204; if not installed, go to step 203.
  • the obtaining of the above image file may be: an operating system obtained on a server on which all services of OpenStack have been installed, (deleting the startup script of all services of OpenStack) making the operating system as the above image file.
  • step 204 may be performed.
  • the above target server can be determined as the control node.
  • steps 201 to 204 reference may be made to the detailed description in step 101 of the embodiment shown in FIG. 1, and details are not described herein again.
  • the platform can detect the installation environment of each node to determine whether the installation environment is complete and ensure the stability of subsequent system operations.
  • the first service is all the services of the OpenStack.
  • the above-mentioned second service can be understood as a part of the OpenStack service, and the corresponding service is specifically determined according to the foregoing node role.
  • steps 206 to 210 reference may be made to the detailed description in steps 102 to 106 in the embodiment shown in FIG. 1, and details are not described herein again.
  • an isolation instruction for the target node can be triggered.
  • the above isolation instruction can be triggered by user operations.
  • the user can configure the target node's firewall. For example, different storage nodes can be isolated from each other to ensure different storage. Data security on the node.
  • the core concept of the OpenStack firewall is the concept of firewall policies and firewall rules.
  • Policies are an ordered collection of rules. Rules specify the set of attributes (such as port ranges, protocols, and IP addresses) that make up the matching criteria, and actions to take (allow or deny) on matching traffic. Policies can be public and firewalls can be shared.
  • the firewall is implemented in various ways, depending on the driver used.
  • the iptables driver uses iptable rules to implement the firewall;
  • the OpenVSwitch driver uses flow entries in the flow table to implement firewall rules.
  • Firewall Service which is an advanced service of Neutron. Users can use it to create and manage firewalls to filter traffic.
  • Firewalls in traditional networks are generally placed on gateways to control access between subnets.
  • the principle of FWaaS is similar. It applies firewall rules on the Neutron virtual router to control the data entering the tenant network.
  • Security group rules are implemented on a Linux bridge qbr on a compute node connected to an instance, and firewall rules created by FWaaS are implemented on a virtual router implemented on the edge of a tenant network.
  • FWaaS is not intended to replace the functionality of a security group, and it provides a more complementary security group, especially in its current state of implementation.
  • FWaaS currently lacks some of the functions provided by the security group, including the inability to specify the direction of communication.
  • security groups also need FWaas as a supplement because they lack the ability to create specific rules to deny all traffic.
  • firewall parameters By configuring firewall parameters, FWaaS and security groups can be deployed at the same time to achieve double protection, which not only ensures node connectivity, but also improves security.
  • the method further includes: detecting a system data processing state, and adding or deleting a node according to the system data processing state.
  • the above-mentioned node role allocation information can be adjusted by the platform, and the system data processing status (data processing amount) is periodically checked to determine whether the number of nodes is sufficient. If the data processing amount is large, the number of nodes can be appropriately increased. The number of nodes in different roles can also be determined by the demand for different services. By automatically adding or removing nodes, the flexibility of platform deployment is improved, manual operations are reduced, and intelligent deployment is achieved.
  • control nodes when a problem is detected in one of the control nodes, it can be switched to another control node to ensure service availability.
  • the target server by receiving a control node setting instruction for a target server, it is determined whether the target server has installed a system configuration including all OpenStack services, and if not, obtains an image file for installing a system including all OpenStack services, Install the image file on the target server, determine that the target server is the control node, configure the installation environment of the control node, obtain a first deployment instruction containing node role allocation information, initialize and start the first service on the control node To enable the control node to add a target server and assign a node role to the target server according to the node role allocation information, determine the target server as a functional node controlled by the control node, and then set the configuration parameters of the node according to a configuration script To initialize and start the second service related to the role of the node, detect whether the determined functional nodes are connected, and if not, debug the configuration parameters of the functional nodes that are not connected according to the above configuration script, so that The disconnected functional nodes are connected, and when the isolation instruction for the target
  • FIG. 3 is a schematic structural diagram of a server according to an embodiment of the present application.
  • the server 300 includes a determination module 310, an initial module 320, an acquisition module 330, a setting module 340, a configuration module 350, a detection module 360, and debugging Module 370, where:
  • the foregoing determining module 310 is configured to determine a control node for controlling a function node
  • the obtaining module 320 is configured to obtain a first deployment instruction including node role allocation information
  • the initial module 330 is configured to initialize and start a first service in the control node, so that the control node adds a target server and assigns a node role to the target server according to the node role allocation information;
  • the setting module 340 is configured to determine the target server as a function node controlled by the control node;
  • the configuration module 350 is configured to set configuration parameters of the functional node according to a configuration script, and the transmission module is further configured to initialize and start a second service related to the role of the node;
  • the detection module 360 is configured to detect whether the determined functional nodes are connected
  • the debugging module 370 is configured to debug configuration parameters of the disconnected nodes according to the configuration script when the functional nodes are disconnected, so that the disconnected nodes are connected.
  • the above node role allocation information includes: the number of nodes and the node role of each node;
  • the foregoing node roles include one or more of a computing node, a storage node, and a network node.
  • the foregoing determining module 310 is specifically configured to:
  • the first service is all OpenStack services
  • the server 300 further includes an installation module 380 for obtaining an image file for installing and installing a system including all the services of the OpenStack when the target server does not have a system configuration including the first service installed, and installing the above on the target server. Image file.
  • the installation module 380 is further configured to configure the installation environment of the control node before the initializing and starting the first service in the control node.
  • the server 300 further includes a node control module 390, configured to detect a system data processing state, and add or delete a function node according to the system data processing state.
  • a node control module 390 configured to detect a system data processing state, and add or delete a function node according to the system data processing state.
  • the foregoing server 300 further includes:
  • the firewall module 3100 is configured to configure the firewall information of the target node to isolate the target node when an isolation instruction for the target node is detected.
  • the foregoing node control module 390 is further configured to switch to an alternative control node to control the functional node when it is detected that the control node is not in a working state.
  • steps 101 to 106 and 201 to 211 involved in the method for controlling the deployment of the cloud computing platform shown in FIGS. 1 and 2 may be performed by each module in the server 300 shown in FIG. 3. carried out.
  • the server 300 determines a control node for controlling a function node, obtains a first deployment instruction including node role allocation information, initializes and starts a first service in the control node, so that the control node described above Add the target server and assign the node role to the target server according to the node role assignment information, determine the target server as a functional node controlled by the control node, and then set the node's configuration parameters according to the configuration script to initialize and start the second node-related role Services, and check whether the functional nodes are connected.
  • FIG. 4 is a schematic structural diagram of another server disclosed in an embodiment of the present application.
  • the server 400 includes a processor 401 and a memory 402.
  • the server 400 may further include a bus 403.
  • the processor 401 and the memory 402 may be connected to each other through the bus 403.
  • the bus 403 may be a peripheral component interconnection standard (Peripheral Component Interconnect, PCI) bus or Extended Industry Standard Architecture (EISA) bus, etc.
  • PCI peripheral component interconnection standard
  • EISA Extended Industry Standard Architecture
  • the bus 403 can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only a thick line is used in FIG. 4, but it does not mean that there is only one bus or one type of bus.
  • the server 400 may further include an input-output device 404, and the input-output device 404 may include a display screen, such as a liquid crystal display screen.
  • the memory 402 is configured to store one or more programs containing instructions; the processor 401 is configured to call the instructions stored in the memory 402 to execute some or all of the method steps mentioned in the embodiments of FIG. 1 and FIG. 2.
  • the processor 401 may be a central processing unit (CPU), and the processor may also be another general-purpose processor or a digital signal processor (DSP). , Application specific integrated circuit (ASIC), ready-made programmable gate array (Field-Programmable GateArray, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • a general-purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
  • the input device 402 may include a touch panel, a fingerprint sensor (for collecting fingerprint information and orientation information of a user), a microphone, and the like, and the output device 403 may include a display (LCD, etc.), a speaker, and the like.
  • a fingerprint sensor for collecting fingerprint information and orientation information of a user
  • a microphone for collecting fingerprint information and orientation information of a user
  • the output device 403 may include a display (LCD, etc.), a speaker, and the like.
  • the memory 404 may include a read-only memory and a random access memory, and provide instructions and data to the processor 401. A portion of the memory 404 may also include non-volatile random access memory. For example, the memory 404 may also store device type information.
  • the server 400 can determine a control node for controlling a function node, obtain a first deployment instruction including node role allocation information, initialize and start a first service in the control node, so that the control node described above Add the target server and assign the node role to the target server according to the node role assignment information, determine the target server as a functional node controlled by the control node, and then set the node's configuration parameters according to the configuration script to initialize and start the second node-related role. Services, and check whether the functional nodes are connected. If they are not connected, debug the configuration parameters of the non-connected functional nodes according to the above configuration script to make the non-connected functional nodes connect. A large number of nodes can be automatically debugged and connected to form a complete system. Available cloud computing platform reduces manual deployment steps and improves deployment efficiency.
  • An embodiment of the present application further provides a computer-readable storage medium, where the computer-readable storage medium stores a computer program for electronic data exchange, and the computer program causes a computer to execute any one of the cloud types described in the foregoing method embodiments Some or all steps of a control method for computing platform deployment.
  • the disclosed device may be implemented in other ways.
  • the device embodiments described above are only schematic.
  • the division of the modules is only a logical function division.
  • multiple units or components may be combined or may be combined. Integration into another system, or some features can be ignored or not implemented.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or modules, and may be electrical or other forms.
  • the modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules, may be located in one place, or may be distributed on multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the objective of the solution of this embodiment.
  • the integrated module When the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it can be stored in a computer-readable memory.
  • the technical solution of the present application essentially or part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product, which is stored in a memory.
  • a computer device which may be a personal computer, a server, or a network device, etc.
  • the foregoing memory includes: a U disk, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk, or an optical disk, and other media that can store program codes.

Abstract

Embodiments of the present application disclose a method for controlling deployment of a cloud computing platform, a server, and a storage medium. The method comprises: determining a control node for controlling a function node; acquiring a first deployment instruction comprising node role assignment information; initializing and activating a first service in the control node, such that the control node adds target servers and assigns a node role to the same according to the node role assignment information; determining the target servers as function nodes to be controlled by the control node; configuring deployment parameters of the function nodes according to a deployment script, and initializing and activating a second service related to the node role; and detecting whether the determined nodes are connected, and if not, adjusting the deployment parameters of the unconnected function nodes according to the deployment script, such that the unconnected function nodes become connected. The invention achieves automatic adjustment and connection of a large number of nodes, thereby forming a complete and usable platform, reducing the number of manual deployment steps, and improving deployment efficiency.

Description

一种云计算平台部署的控制方法、服务器及存储介质Control method, server and storage medium for cloud computing platform deployment
本申请要求于2018年8月3日提交中国专利局、申请号为201810884475.X、申请名称为“一种云计算平台部署的控制方法、服务器及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of a Chinese patent application filed on August 3, 2018 with the Chinese Patent Office, application number 201810884475.X, and application name "A Control Method, Server, and Storage Medium for Cloud Computing Platform Deployment" The entire contents are incorporated herein by reference.
技术领域Technical field
本申请涉及计算机技术领域,尤其涉及一种云计算平台部署的控制方法、服务器及存储介质。The present application relates to the field of computer technology, and in particular, to a control method for deploying a cloud computing platform, a server, and a storage medium.
背景技术Background technique
随着云技术方案的成熟,云计算平台也越来越广泛应用到各种领域。其中,OpenStack云平台是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作。OpenStack支持几乎所有类型的云环境,项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。With the maturity of cloud technology solutions, cloud computing platforms have become more and more widely used in various fields. Among them, the OpenStack cloud platform is an open source cloud computing management platform project. Several major components are combined to complete specific work. OpenStack supports almost all types of cloud environments. The goal of the project is to provide a cloud computing management platform that is simple to implement, scalable at scale, rich, and standardized.
目前市场上拥有的Openstack云平台的各模块需要通过人工手动部署,错误率高,节点连通性较差,效率较低。Each module of the Openstack cloud platform currently on the market needs to be manually deployed manually, with a high error rate, poor node connectivity, and low efficiency.
发明内容Summary of the invention
本申请实施例提供一种云计算平台部署的控制方法、服务器及存储介质,可以将大量节点自动调试连通,组成一个完整可用的平台,减少人工手动操作的部署步骤,提升部署效率。The embodiments of the present application provide a cloud computing platform deployment control method, server, and storage medium, which can automatically debug and connect a large number of nodes to form a complete and usable platform, reduce the deployment steps of manual operations, and improve deployment efficiency.
第一方面,本申请实施例提供了一种云计算平台部署的控制方法,该方法包括:In a first aspect, an embodiment of the present application provides a method for controlling cloud computing platform deployment. The method includes:
确定用于控制功能节点的控制节点;Determine the control node used to control the function node;
获取包含节点角色分配信息的第一部署指令;Obtaining a first deployment instruction containing node role allocation information;
初始化并启动所述控制节点中的第一服务,以使得所述控制节点根据所述节点角色分配信息添加目标服务器以及为所述目标服务器分配节点角色;Initialize and start a first service in the control node, so that the control node adds a target server and assigns a node role to the target server according to the node role assignment information;
将所述目标服务器确定为被所述控制节点控制的功能节点;Determining the target server as a functional node controlled by the control node;
根据配置脚本设置所述功能节点的配置参数,初始化并启动与所述节点角色相关的第二服务;Setting configuration parameters of the function node according to a configuration script, initializing and starting a second service related to the node role;
检测确定出的功能节点间是否连通,若不连通,根据所述配置脚本调试不连通的功能节点的配置参数,使所述不连通的功能节点连通。It is detected whether the determined functional nodes are connected. If not, the configuration parameters of the disconnected functional nodes are debugged according to the configuration script, so that the disconnected functional nodes are connected.
第二方面,本申请实施例提供了一种服务器,包括:确定模块、获取模块、初始模块、设置模块、配置模块、检测模块和调试模块,其中:In a second aspect, an embodiment of the present application provides a server including: a determination module, an acquisition module, an initial module, a setting module, a configuration module, a detection module, and a debugging module, where:
所述确定模块,用于确定用于控制功能节点的控制节点;The determining module is configured to determine a control node for controlling a function node;
所述获取模块,用于获取包含节点角色分配信息的第一部署指令;The obtaining module is configured to obtain a first deployment instruction including node role allocation information;
所述初始模块,用于初始化并启动所述控制节点中的第一服务,以使得所述控制节点根据所述节点角色分配信息添加目标服务器以及为所述目标服务器分配节点角色;The initial module is configured to initialize and start a first service in the control node, so that the control node adds a target server according to the node role allocation information and assigns a node role to the target server;
所述设置模块,用于将所述目标服务器确定为被所述控制节点控制的功能节点;The setting module is configured to determine the target server as a function node controlled by the control node;
所述配置模块,用于根据配置脚本设置所述功能节点的配置参数,所述传输模块还用于,初始化并启动与所述节点角色相关的第二服务;The configuration module is configured to set configuration parameters of the functional node according to a configuration script, and the transmission module is further configured to initialize and start a second service related to the role of the node;
所述检测模块,用于检测确定出的功能节点间是否连通;The detecting module is configured to detect whether the determined functional nodes are connected;
所述调试模块,用于在节点间不连通时,根据所述配置脚本调试不连通的功能节点的配置参数,使所述不连通的功能节点连通。The debugging module is configured to debug configuration parameters of the disconnected functional nodes according to the configuration script when the nodes are disconnected, so that the disconnected functional nodes are connected.
第三方面,本申请实施例还提供了一种服务器,包括:处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如第一方面及其任一种可能的实施方式所述的方法。According to a third aspect, an embodiment of the present application further provides a server, including a processor, an input device, an output device, and a memory. The processor, the input device, the output device, and the memory are connected to each other. The memory is used for A computer program is stored, the computer program includes program instructions, and the processor is configured to call the program instructions to execute the method according to the first aspect and any possible implementation manner thereof.
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面及其任一种可能的实施方式的方法。In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium. The computer-readable storage medium stores a computer program, where the computer program includes program instructions, and the program instructions, when executed by a processor, cause all the The processor executes the method of the first aspect and any possible implementation manners.
本申请实施例通过确定控制节点,按照节点角色分配信息设置上述控制节点控制的功能节点,可以将大量节点自动调试连通,组成一个完整可用的云计算平台,减少人工手动操作的部署步骤,提升部署效率。In the embodiment of the present application, by determining the control nodes and setting the function nodes controlled by the control nodes according to the node role allocation information, a large number of nodes can be automatically debugged and connected to form a complete and usable cloud computing platform, reducing manual deployment steps and improving deployment. effectiveness.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
图1是本申请实施例提供的一种云计算平台部署的控制方法的流程示意图;FIG. 1 is a schematic flowchart of a cloud computing platform deployment control method according to an embodiment of the present application;
图2是本申请另一实施例提供的一种云计算平台部署的控制方法的流程示意图;2 is a schematic flowchart of a cloud computing platform deployment control method according to another embodiment of the present application;
图3是本申请实施例提供的一种服务器的结构示意图;3 is a schematic structural diagram of a server according to an embodiment of the present application;
图4是本申请实施例提供的另一种服务器的结构示意图。FIG. 4 is a schematic structural diagram of another server provided by an embodiment of the present application.
具体实施方式detailed description
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。In the following, the technical solutions in the embodiments of the present application will be clearly and completely described with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, but not all of the embodiments. Reference to "an embodiment" herein means that a particular feature, structure, or characteristic described in connection with the embodiment may be included in at least one embodiment of the present application. The appearances of this phrase in various places in the specification are not necessarily all referring to the same embodiment, nor are they independent or alternative embodiments that are mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.
为了能够更好地理解本申请实施例,下面将对应用本申请实施例的方法进行介绍。In order to better understand the embodiments of the present application, the method of applying the embodiments of the present application will be described below.
请参见图1,是本申请实施例提供的一种云计算平台部署的控制方法的示意流程图,本方法可以应用于云计算平台的服务器,如图1所示该方法可包括:Please refer to FIG. 1, which is a schematic flowchart of a cloud computing platform deployment control method according to an embodiment of the present application. This method may be applied to a server of a cloud computing platform. As shown in FIG. 1, the method may include:
101、确定用于控制功能节点的控制节点。101. Determine a control node for controlling a function node.
本申请实施例可以应用于云计算平台的部署。为便于理解,首先介绍OpenStack又云平台,它本身是一个分布式系统,不但各个服务可以分布部署,服务中的组件也可以分布部署。这种分布式特性让OpenStack具备极大的灵活性、伸缩性和高可用性。整个OpenStack是由控制节点、计算节点,网络节点,存储节点四大部分组成(这四个节点也可以安装在一台机器上,单机部署),其中除控制节点以外的节点可以统称为上述功能节点。其中:The embodiments of the present application can be applied to the deployment of a cloud computing platform. To facilitate understanding, first introduce OpenStack and the cloud platform. It is a distributed system. Not only can each service be deployed in a distributed manner, but the components in the service can also be deployed in a distributed manner. This distributed nature gives OpenStack great flexibility, scalability, and high availability. The entire OpenStack is composed of four major parts: control nodes, compute nodes, network nodes, and storage nodes (these four nodes can also be installed on a single machine and deployed in a single machine). The nodes other than the control node can be collectively referred to as the above functional nodes. . among them:
控制节点负责对其余功能节点的控制,包含虚拟机建立,迁移,网络分配,存储分配等等;计算节点负责虚拟机运行;网络节点负责对外网络与内网络之间的通信;存储节点负责对虚拟机的额外存储管理等等。The control node is responsible for the control of the remaining functional nodes, including the virtual machine establishment, migration, network allocation, storage allocation, etc .; the computing node is responsible for the virtual machine operation; the network node is responsible for the communication between the external network and the internal network; the storage node is responsible for the virtual Machine's extra storage management and more.
因此在平台部署中可以先确定上述控制节点,控制节点配置的服务器可以为每个计算节点分配IP地址,以及可以为各个计算节点虚拟机和服务器提供连 接,并且处理安全组规则(比如采用Dnsmasq配置的服务器实现虚拟机IP地址的自动分配,采用Linux网桥作为虚拟网络实现机制),便于管理。Therefore, in the deployment of the platform, the above control nodes can be determined first. The server configured by the control node can assign an IP address to each computing node, and can provide connections to the virtual machines and servers of each computing node, and handle security group rules (such as using Dnsmasq configuration). The server realizes the automatic allocation of virtual machine IP addresses, and uses a Linux bridge as a virtual network implementation mechanism) to facilitate management.
OpenStack的整体架构中包括:虚拟机VM和OpenStack不同的模块(OpenStack中叫“服务”,下文均使用“服务”描述)。控制节点可以包括所有的OpenStack服务,而控制节点控制的其余节点,根据其角色不同,包含不同的服务:The overall architecture of OpenStack includes: different modules of the virtual machine VM and OpenStack (called "services" in OpenStack, and "services" are used hereinafter). The control node can include all OpenStack services, and the remaining nodes controlled by the control node contain different services according to their roles:
网络节点仅包含Neutron服务,Neutron负责管理私有网段与公有网段的通信,以及管理虚拟机网络之间的通信/拓扑,管理虚拟机之上的防火等等The network node contains only Neutron services. Neutron is responsible for managing the communication between the private network segment and the public network segment, as well as managing the communication / topology between the virtual machine network, managing fire prevention on the virtual machine, etc.
计算节点包含Nova,Neutron,Telemeter三个服务:Compute nodes include three services: Nova, Neutron, and Telemeter:
1)基础服务1) Basic services
Nova:提供虚拟机的创建,运行,迁移,快照等各种围绕虚拟机的服务,并提供API与控制节点对接,由控制节点下发任务。Nova: Provides virtual machine creation, running, migration, snapshot and other services around the virtual machine, and provides APIs to interface with the control node, and the control node issues tasks.
Neutron:提供计算节点与网络节点之间的通信服务。Neutron: Provides communication services between compute nodes and network nodes.
2)扩展服务2) extended services
Telmeter:提供计算节点的监控代理,将虚拟机的情况反馈给控制节点,是Centimeter的代理服务。Telmeter: Provides a monitoring agent for computing nodes, and reports the condition of the virtual machine to the control node. It is a proxy service for Centimeter.
存储节点包含Cinder,Swift等服务:The storage node contains services such as Cinder and Swift:
Cinder:块存储服务,提供相应的块存储,简单来说,就是虚拟出一块磁盘,可以挂载到相应的虚拟机之上,不受文件系统等因素影响,对虚拟机来说,这个操作就像是新加了一块硬盘,可以完成对磁盘的任何操作,包括挂载,卸载,格式化,转换文件系统等等操作,大多应用于虚拟机空间不足的情况下的空间扩容等等。Cinder: Block storage service, which provides corresponding block storage. In simple terms, it is a virtual disk that can be mounted on the corresponding virtual machine. It is not affected by factors such as the file system. For virtual machines, this operation is For example, a newly added hard disk can complete any operation on the disk, including mounting, unmounting, formatting, converting file systems, etc., and it is mostly used for space expansion when the virtual machine has insufficient space.
Swift:对象存储服务,提供相应的对象存储,简单来说,就是虚拟出一块磁盘空间,可以在这个空间当中存放文件,也仅仅只能存放文件,不能进行格式化,转换文件系统,大多应用于云磁盘/文件。Swift: Object storage service, which provides corresponding object storage. In simple terms, it is a virtual disk space that can store files in this space. It can only store files. It cannot format and convert file systems. Most of them are used in Cloud disk / file.
其中,控制节点的确定可以是:系统检测到符合条件的节点为上述控制节点(通常只有一个服务器满足要求),或者,用户可以自主选择某台服务器作为控制节点。The determination of the control node may be: the system detects that the eligible node is the above-mentioned control node (usually only one server meets the requirements), or the user can independently select a server as the control node.
102、获取包含节点角色分配信息的第一部署指令。102. Obtain a first deployment instruction including node role allocation information.
上述第一部署指令可以通过用户的操作触发,即用户可以通过简单的交互 操作开启平台部署任务,第一部署指令可以包含节点角色分配信息,其中,节点角色分配信息主要用于节点个数以及每个功能节点角色的设置,节点角色可以包括计算节点、存储节点及网络节点中的一种或多种。The above-mentioned first deployment instruction can be triggered by a user's operation, that is, the user can start a platform deployment task through a simple interactive operation. The first deployment instruction may include node role allocation information, where the node role allocation information is mainly used for the number of nodes and each The setting of each function node role, the node role may include one or more of a computing node, a storage node, and a network node.
节点角色分配信息可以是用户主动选择的,比如选择节点角色以及节点角色的个数,也可以是平台随机自动设定的,此时用户只需要开启部署任务。可选的,平台可以存储用户设置的节点角色分配信息,用户可以使用相同的部署方案,不需要重复进行设置,以便于执行后续自动的部署任务。Node role allocation information can be actively selected by the user, such as selecting a node role and the number of node roles, or it can be set automatically and randomly by the platform. At this time, the user only needs to start a deployment task. Optionally, the platform can store the node role assignment information set by the user, and the user can use the same deployment scheme without the need for repeated settings in order to facilitate subsequent automatic deployment tasks.
103、初始化并启动上述控制节点中的第一服务,以使得上述控制节点根据上述节点角色分配信息添加目标服务器以及为上述目标服务器分配节点角色。103. Initialize and start the first service in the control node, so that the control node adds a target server according to the node role allocation information and assigns a node role to the target server.
在接收到上述第一部署指令之后,可以执行部署任务,初始化并启动控制节点中的第一服务,其中,第一服务是作为控制节点所必须的全部服务,比如在OpenStack平台中,第一服务可以为OpenStack所有服务。具体的,该步骤可以包括:打开控制节点的HTTP服务,获取并输入控制节点的root密码,初始化并启动控制节点中OpenStack所有服务。After receiving the above-mentioned first deployment instruction, a deployment task may be executed to initialize and start the first service in the control node, where the first service is all the services necessary for the control node. For example, in the OpenStack platform, the first service Can provide all services for OpenStack. Specifically, this step may include: opening the HTTP service of the control node, obtaining and entering the root password of the control node, initializing and starting all OpenStack services in the control node.
具体的,分配节点角色主要是确定该功能节点的功能类型,以对该功能节点的服务进行配置。在初始化并启动上述控制节点中的第一服务之后,以及获取包含节点角色分配信息的第一部署指令之后,上述控制节点可以按照上述节点角色分配信息来添加目标服务器以及为上述目标服务器分配节点角色,进行功能节点的部署。Specifically, the role of the assigned node is mainly to determine the function type of the functional node to configure the services of the functional node. After initializing and starting the first service in the control node, and after obtaining a first deployment instruction containing node role allocation information, the control node may add a target server and assign a node role to the target server according to the node role allocation information. To deploy function nodes.
其中,目标服务器可以是控制节点可连接的任一服务器,即控制节点可以获取其他服务器地址,并将这些服务器部署为该平台(或者理解为集群)的功能节点;目标服务器也可以是用户选择的服务器,即用户可以选择输入多个服务器的地址以对这些服务器进行功能节点的部署。The target server can be any server to which the control node can connect, that is, the control node can obtain the addresses of other servers and deploy these servers as functional nodes of the platform (or understood as a cluster); the target server can also be selected by the user Servers, that is, users can choose to enter the addresses of multiple servers to deploy functional nodes to these servers.
举例来说,初始化的步骤包括:For example, the initialization steps include:
初始化NTP服务、并且初始化keystone、nova、cinder、neutron的相关的服务;Initialize NTP service, and initialize keystone, nova, cinder, neutron related services;
初始化rabbitmq服务、Nova服务、初始化Cinder服务、初始化Neutron服务,以及初始化各个服务的数据库等。Initialize rabbitmq service, Nova service, initialize Cinder service, initialize Neutron service, and initialize the database of each service.
可选的,在配置控制节点的节点服务之前,可以先配置安装环境,主要可以包括修改主机名称、配置本机网络、升级最新系统等,这些操作可以是用户 手动执行的,也可以设置为自动执行。平台可以对各节点的安装环境进行检测,以确定安装环境是否完善。Optionally, before configuring the node service of the control node, you can first configure the installation environment, which can mainly include modifying the host name, configuring the local network, upgrading the latest system, etc. These operations can be performed manually by the user or can be set to automatic carried out. The platform can test the installation environment of each node to determine whether the installation environment is complete.
104、将上述目标服务器确定为被上述控制节点控制的功能节点。104. Determine the target server as a functional node controlled by the control node.
具体的,在初始化并启动上述控制节点中的第一服务之后,控制节点可以按照上述节点角色分配信息进行节点的部署,从而平台可以上述目标服务器确定为可以被控制节点控制的功能节点。Specifically, after the first service in the control node is initialized and started, the control node may deploy the node according to the node role allocation information, so that the platform may determine the target server as a functional node that can be controlled by the control node.
105、根据配置脚本设置上述功能节点的配置参数,初始化并启动与上述节点角色相关的第二服务。105. Set the configuration parameters of the function node according to the configuration script, and initialize and start the second service related to the role of the node.
在分配好节点角色之后,可以获取预先存储的上述配置脚本,可以理解为不同节点角色对应了不同的配置算法,可以根据每个功能节点的节点角色,执行对应的配置算法,以设置该节点参数,实现相关的服务。上述节点参数可以包括节点的网络参数和存储参数。After the node roles are assigned, the pre-stored configuration script can be obtained. It can be understood that different node roles correspond to different configuration algorithms. You can execute the corresponding configuration algorithm according to the node role of each functional node to set the node parameters. To implement related services. The above-mentioned node parameters may include network parameters and storage parameters of the nodes.
具体的,通过控制节点添加服务器作为计算节点可包括:通过控制节点获取需要添加的服务器的IP以及root密码,设置该服务器的节点角色为计算节点,配置该计算节点的存储节点的IP、控制节点IP、虚拟化类型,设置该计算节点每块网卡的网络类型,初始化并启动计算相关的OpenStack服务。Specifically, adding a server as a computing node through the control node may include: obtaining the IP and root password of the server to be added through the control node, setting the node role of the server as a computing node, configuring the IP of the storage node of the computing node, and controlling the node. IP, virtualization type, set the network type of each network card of this compute node, initialize and start the computing-related OpenStack services.
通过控制节点添加服务器作为存储节点可包括:通过控制节点获取需要添加的服务器的IP以及root密码,设置该服务器的节点角色为存储节点,配置该网络节点的存储节点的IP、控制节点IP、虚拟化类型,设置该存储节点每块网卡的网络类型为绑定类型,初始化并启动存储相关的OpenStack服务。Adding a server as a storage node through the control node may include: obtaining the IP and root password of the server to be added through the control node, setting the node role of the server as the storage node, configuring the IP of the storage node of the network node, the control node IP, and virtual Set the network type of each network card of the storage node to the binding type, and initialize and start the storage-related OpenStack services.
通过控制节点添加服务器作为网络节点可包括:通过控制节点获取需要添加的服务器的IP以及root密码,设置服务器的节点角色为网络节点,配置该网络节点的存储节点的IP、控制节点IP、虚拟化类型,设置该网络节点两个网卡作为外部网络出口,初始化并启动网络相关的OpenStack服务。Adding a server as a network node through the control node may include: obtaining the IP and root password of the server to be added through the control node, setting the node role of the server to a network node, configuring the IP of the storage node of the network node, the control node IP, and virtualization Type, set the two network cards of this network node as the external network exit, initialize and start the network related OpenStack services.
106、检测确定出的功能节点间是否连通,若不连通,根据上述配置脚本调试不连通的功能节点的配置参数,使上述不连通的功能节点连通。106. Detect whether the determined functional nodes are connected. If they are not connected, debug the configuration parameters of the disconnected functional nodes according to the configuration script to make the disconnected functional nodes communicate.
系统可以实现自动对各个功能节点间的连通状态进行检测,上述检测可以是周期性的,若检测到某处功能节点不连通,可以针对节点角色获取上述配置脚本中预先编写的调试算法,对不连通的功能节点进行调试,重新配置参数,以使上述不连通的功能节点正常工作,从而保证功能节点间的连通性。The system can automatically detect the connection status between various functional nodes. The above detection can be periodic. If a functional node is detected to be disconnected somewhere, you can obtain the debugging algorithm pre-written in the configuration script for the role of the node. The connected functional nodes are debugged, and the parameters are reconfigured so that the disconnected functional nodes can work normally, thereby ensuring connectivity between the functional nodes.
本申请实施例通过确定用于控制功能节点的控制节点,获取包含节点角色分配信息的第一部署指令,再初始化并启动控制节点中的第一服务,以使得控制节点根据节点角色分配信息添加目标服务器以及为目标服务器分配节点角色,从而可以将目标服务器确定为被控制节点控制的功能节点,进一步地,根据配置脚本设置功能节点的配置参数,初始化并启动与节点角色相关的第二服务,然后还可以检测确定出的功能节点间是否连通,若不连通,根据配置脚本调试不连通的功能节点的配置参数,使不连通的功能节点连通,可以将大量节点自动调试连通,组成一个完整可用的云计算平台,与一般的人工部署相比,提升部署效率,避免了人工参与造成的误差。This embodiment of the present application determines a control node for controlling a function node, obtains a first deployment instruction containing node role allocation information, and then initializes and starts a first service in the control node, so that the control node adds a target according to the node role allocation information. The server and the node role are assigned to the target server, so that the target server can be determined as the function node controlled by the control node. Further, the configuration parameters of the function node are set according to the configuration script, the second service related to the node role is initialized and started, and It can also detect whether the identified functional nodes are connected. If they are not connected, debug the configuration parameters of the disconnected functional nodes according to the configuration script to make the disconnected functional nodes connect. A large number of nodes can be automatically debugged and connected to form a complete and usable Compared with general manual deployment, the cloud computing platform improves deployment efficiency and avoids errors caused by manual participation.
请参阅图2,图2是本申请实施例公开的另一种云计算平台部署的控制方法的流程示意图,图2是在图1的基础上进一步优化得到的,如图2所示,该云计算平台部署的控制方法包括如下步骤:Please refer to FIG. 2. FIG. 2 is a schematic flowchart of another cloud computing platform deployment control method disclosed in the embodiment of the present application. FIG. 2 is further optimized based on FIG. 1. As shown in FIG. 2, the cloud The control method for computing platform deployment includes the following steps:
201、接收针对目标服务器的控制节点设置指令。201. Receive a control node setting instruction for a target server.
具体的,可以接收控制节点设置指令,该控制节点设置指令中指明了以目标服务器作为控制节点,比如通过目标服务器的IP地址或者名称选定,进而初步设置为控制节点,可以执行步骤202。用户可以选择将目标服务器作为整个平台的控制节点,作为控制节点的服务器可以使用代理服务器(ProxyServer):通过Proxy Server向外提供基于HTTP的服务接口,会根据环的信息来查找服务地址并转发用户请求至相应的账户、容器或者对象,进行CRUD(增删改查)等操作。在访问服务之前,需要先通过认证服务器获取访问令牌,然后在发送的请求中加入头部信息X-Auth-Token。代理服务器负责其余组件间的相互通信,同时也处理大量的失败请求。Specifically, a control node setting instruction may be received, and the control node setting instruction specifies that the target server is used as the control node, for example, is selected by the target server's IP address or name, and is then initially set as the control node, and step 202 may be performed. The user can choose to use the target server as the control node of the entire platform, and the server as the control node can use a proxy server (ProxyServer): ProxyServer provides an HTTP-based service interface to the outside. It will find the service address and forward the user based on the ring information. Request to the corresponding account, container, or object, and perform CRUD (add, delete, modify, and check) operations. Before accessing the service, you need to obtain the access token through the authentication server, and then add the header information X-Auth-Token to the sent request. The proxy server is responsible for the communication between the other components, and also handles a large number of failed requests.
202、判断上述目标服务器是否已安装包含OpenStack所有服务的系统配置。202. Determine whether the target server has a system configuration including all OpenStack services installed.
作为OpenStack控制节点的服务器需要安装有OpenStack的所有服务,以保障系统的稳定性和功能全面,因此,可以对上述目标服务器进行检测,判断其是否已安装包含OpenStack所有服务的系统配置,若已安装,可以执行步骤204;若未安装,可以执行步骤203。The server serving as the OpenStack control node needs to have all OpenStack services installed to ensure the stability and comprehensive functions of the system. Therefore, you can test the target server to determine whether it has installed a system configuration that includes all OpenStack services. , Go to step 204; if not installed, go to step 203.
203、获取用于安装包含上述OpenStack所有服务的系统的镜像文件,在上述目标服务器上安装上述镜像文件。203. Obtain an image file for installing a system including all the services of the OpenStack, and install the image file on the target server.
具体的,上述镜像文件的获取可以为:在已经安装OpenStack的所有服务的服务器上获取的操作系统,(删除掉OpenStack所有服务的启动脚本)将该操作系统制作为上述镜像文件。在上述镜像文件成功安装之后,可以执行步骤204。Specifically, the obtaining of the above image file may be: an operating system obtained on a server on which all services of OpenStack have been installed, (deleting the startup script of all services of OpenStack) making the operating system as the above image file. After the above image file is successfully installed, step 204 may be performed.
204、确定上述目标服务器为上述控制节点。204. Determine that the target server is the control node.
至此可以将上述目标服务器确定为控制节点。其中,上述步骤201-步骤204可以参考图1所示实施例步骤101中的具体描述,此处不再赘述。So far, the above target server can be determined as the control node. For the foregoing steps 201 to 204, reference may be made to the detailed description in step 101 of the embodiment shown in FIG. 1, and details are not described herein again.
205、配置上述控制节点的安装环境。205. Configure the installation environment of the control node.
在配置节点服务之前,可以先配置控制节点的安装环境,主要可以包括修改主机名称、配置本机网络、升级最新系统等,这些操作可以是用户手动执行的,也可以设置为自动执行。可选的,平台可以对各节点的安装环境进行检测,以确定安装环境是否完善,保障后续系统运行的稳定性。Before configuring the node service, you can first configure the installation environment of the control node, which can include modifying the host name, configuring the local network, and upgrading the latest system. These operations can be performed manually by the user or set to be performed automatically. Optionally, the platform can detect the installation environment of each node to determine whether the installation environment is complete and ensure the stability of subsequent system operations.
206、获取包含节点角色分配信息的第一部署指令。206. Acquire a first deployment instruction including node role allocation information.
207、初始化并启动上述控制节点中的第一服务,以使得上述控制节点根据上述节点角色分配信息添加目标服务器以及为上述目标服务器分配节点角色。207. Initialize and start the first service in the control node, so that the control node adds a target server according to the node role allocation information and assigns a node role to the target server.
其中,上述第一服务为上述OpenStack所有服务。The first service is all the services of the OpenStack.
208、将上述目标服务器确定为被上述控制节点控制的功能节点。208. Determine the target server as a functional node controlled by the control node.
209、根据配置脚本设置上述功能节点的配置参数,初始化并启动与上述节点角色相关的第二服务。209. Set the configuration parameters of the function node according to the configuration script, and initialize and start the second service related to the role of the node.
其中,上述第二服务可以理解为OpenStack的部分服务,具体根据上述节点角色确定对应的服务。The above-mentioned second service can be understood as a part of the OpenStack service, and the corresponding service is specifically determined according to the foregoing node role.
210、检测确定出的功能节点间是否连通,若不连通,根据上述配置脚本调试不连通的功能节点的配置参数,使上述不连通的功能节点连通。210. Detect whether the determined functional nodes are connected. If not, debug the configuration parameters of the disconnected functional nodes according to the configuration script to make the disconnected functional nodes communicate.
其中,上述步骤206-步骤210可以参考图1所示实施例的步骤102-步骤106中的具体描述,此处不再赘述。For the foregoing steps 206 to 210, reference may be made to the detailed description in steps 102 to 106 in the embodiment shown in FIG. 1, and details are not described herein again.
211、在检测到针对目标节点的隔离指令时,配置上述目标节点的防火墙信息,使上述目标节点隔离。211. When an isolation instruction for the target node is detected, configure the firewall information of the target node to isolate the target node.
在需要隔离不同节点的情况下,可以触发针对目标节点的隔离指令,上述隔离指令可以是用户操作触发的,用户可以可以配置目标节点的防火墙,比如可以将不同的存储节点相互隔离,保证不同存储节点上数据的安全性。In the case where different nodes need to be isolated, an isolation instruction for the target node can be triggered. The above isolation instruction can be triggered by user operations. The user can configure the target node's firewall. For example, different storage nodes can be isolated from each other to ensure different storage. Data security on the node.
在配置节点参数时,还可以执行防火墙的配置。OpenStack防火墙的核心概 念是防火墙策略和防火墙规则的概念,策略是有序的规则集合。规则指定构成匹配标准的属性(例如端口范围,协议和IP地址)的集合,以及对匹配的流量采取(允许或拒绝)的操作。策略可以公开,防火墙可以是共享的。When configuring the node parameters, you can also perform the configuration of the firewall. The core concept of the OpenStack firewall is the concept of firewall policies and firewall rules. Policies are an ordered collection of rules. Rules specify the set of attributes (such as port ranges, protocols, and IP addresses) that make up the matching criteria, and actions to take (allow or deny) on matching traffic. Policies can be public and firewalls can be shared.
防火墙以各种方式实现,具体取决于所使用的驱动程序。例如,iptables驱动程序使用iptable规则来实现防火墙;OpenVSwitch驱动程序使用流表中的流条目来实现防火墙规则。可以定义n个安全组,每个安全组可以有n个规则,可以给每个实例绑定n个安全组,nova中总是有一个default安全组,不能被删除。创建实例的时候,如果不指定安全组,默认使用这个default安全组。The firewall is implemented in various ways, depending on the driver used. For example, the iptables driver uses iptable rules to implement the firewall; the OpenVSwitch driver uses flow entries in the flow table to implement firewall rules. You can define n security groups, each security group can have n rules, and you can bind n security groups to each instance. There is always a default security group in Nova, which cannot be deleted. When you create an instance, if you do not specify a security group, the default security group is used by default.
具体的,可以使用Firewall as a Service(FWaaS)实现,FWaaS是Neutron的一个高级服务。用户可以通过它来创建和管理防火墙,对流量进行过滤。Specifically, it can be implemented using Firewall Service (FWaaS), which is an advanced service of Neutron. Users can use it to create and manage firewalls to filter traffic.
传统网络中的防火墙一般放在网关上,用来控制子网之间的访问。FWaaS的原理相似,是在Neutron虚拟router上应用防火墙规则,控制进出租户网络的数据。安全组规则在连接到一个实例的计算节点上的Linux桥qbr上实施,FWaaS创建的防火墙规则在租户网络边缘实现的虚拟路由器上实施。FWaaS并不旨在取代安全组的功能,并且它提供更为补充安全组,特别是在其当前实现状态下。FWaaS目前缺乏安全组提供的一些功能,包括无法指定通信的方向等。与此相反,安全组也因为缺乏创建特定规则拒绝所有流量的能力,因此需要FWaas作为补充。Firewalls in traditional networks are generally placed on gateways to control access between subnets. The principle of FWaaS is similar. It applies firewall rules on the Neutron virtual router to control the data entering the tenant network. Security group rules are implemented on a Linux bridge qbr on a compute node connected to an instance, and firewall rules created by FWaaS are implemented on a virtual router implemented on the edge of a tenant network. FWaaS is not intended to replace the functionality of a security group, and it provides a more complementary security group, especially in its current state of implementation. FWaaS currently lacks some of the functions provided by the security group, including the inability to specify the direction of communication. In contrast, security groups also need FWaas as a supplement because they lack the ability to create specific rules to deny all traffic.
通过配置防火墙参数,可以同时部署FWaaS和安全组实现双重防护,不仅保证了节点的连通性,同时提高了安全性。By configuring firewall parameters, FWaaS and security groups can be deployed at the same time to achieve double protection, which not only ensures node connectivity, but also improves security.
可选的,该方法还包括:检测系统数据处理状态,根据上述系统数据处理状态增加或者删除节点。Optionally, the method further includes: detecting a system data processing state, and adding or deleting a node according to the system data processing state.
在一个云计算平台中,管理节点最好安装多个,因为一旦网络过于庞大,一个管理节点的性能有限,会导致大部分资源的闲置,安装多个管理节点可以实现负载均衡,让资源都可能物尽其用。In a cloud computing platform, it is best to install multiple management nodes, because once the network is too large, the performance of one management node is limited, which will cause most resources to be idle. Installing multiple management nodes can achieve load balancing and make resources possible. Make the most of it.
具体的,上述节点角色分配信息可以由平台进行调整,通过周期性地检测系统数据处理状态(数据处理量),以确定个节点的数量是否足够,若数据处理量较大,可以适当增加节点个数,反之亦然,其中不同角色的节点个数也可以由不同服务的需求量决定。通过自动增加或删除节点,提高了平台部署的灵活性,减少了人工操作,实现了智能化部署。Specifically, the above-mentioned node role allocation information can be adjusted by the platform, and the system data processing status (data processing amount) is periodically checked to determine whether the number of nodes is sufficient. If the data processing amount is large, the number of nodes can be appropriately increased The number of nodes in different roles can also be determined by the demand for different services. By automatically adding or removing nodes, the flexibility of platform deployment is improved, manual operations are reduced, and intelligent deployment is achieved.
可选的,还可以在检测到其中一台控制节点出现问题的时候,切换到另外的控制节点,保证服务的可用性。Optionally, when a problem is detected in one of the control nodes, it can be switched to another control node to ensure service availability.
本申请实施例通过接收针对目标服务器的控制节点设置指令,判断上述目标服务器是否已安装包含OpenStack所有服务的系统配置,若未安装,则获取用于安装包含上述OpenStack所有服务的系统的镜像文件,在上述目标服务器上安装上述镜像文件,确定上述目标服务器为上述控制节点,配置上述控制节点的安装环境,获取包含节点角色分配信息的第一部署指令,初始化并启动上述控制节点中的第一服务,以使得上述控制节点根据上述节点角色分配信息添加目标服务器以及为上述目标服务器分配节点角色,将上述目标服务器确定为被所述控制节点控制的功能节点,再根据配置脚本设置上述节点的配置参数,初始化并启动与上述节点角色相关的第二服务,检测确定出的功能节点间是否连通,若不连通,根据上述配置脚本调试不连通的功能节点的配置参数,使上述不连通的功能节点连通,以及可以在检测到针对目标节点的隔离指令时,配置上述目标节点的防火墙信息,使上述目标节点隔离,可以将大量功能节点自动调试连通,组成一个完整可用的云计算平台,减少人工手动操作的部署步骤,提升部署效率。In the embodiment of the present application, by receiving a control node setting instruction for a target server, it is determined whether the target server has installed a system configuration including all OpenStack services, and if not, obtains an image file for installing a system including all OpenStack services, Install the image file on the target server, determine that the target server is the control node, configure the installation environment of the control node, obtain a first deployment instruction containing node role allocation information, initialize and start the first service on the control node To enable the control node to add a target server and assign a node role to the target server according to the node role allocation information, determine the target server as a functional node controlled by the control node, and then set the configuration parameters of the node according to a configuration script To initialize and start the second service related to the role of the node, detect whether the determined functional nodes are connected, and if not, debug the configuration parameters of the functional nodes that are not connected according to the above configuration script, so that The disconnected functional nodes are connected, and when the isolation instruction for the target node is detected, the firewall information of the target node can be configured to isolate the target node, and a large number of functional nodes can be automatically debugged and connected to form a complete and usable cloud. A computing platform that reduces manual deployment steps and improves deployment efficiency.
请参见图3,图3是本申请实施例提供的一种服务器的结构示意图,该服务器300包括确定模块310、初始模块320、获取模块330、设置模块340、配置模块350、检测模块360和调试模块370,其中:Please refer to FIG. 3, which is a schematic structural diagram of a server according to an embodiment of the present application. The server 300 includes a determination module 310, an initial module 320, an acquisition module 330, a setting module 340, a configuration module 350, a detection module 360, and debugging Module 370, where:
上述确定模块310,用于确定用于控制功能节点的控制节点;The foregoing determining module 310 is configured to determine a control node for controlling a function node;
上述获取模块320,用于获取包含节点角色分配信息的第一部署指令;The obtaining module 320 is configured to obtain a first deployment instruction including node role allocation information;
上述初始模块330,用于初始化并启动上述控制节点中的第一服务,以使得所述控制节点根据所述节点角色分配信息添加目标服务器以及为所述目标服务器分配节点角色;The initial module 330 is configured to initialize and start a first service in the control node, so that the control node adds a target server and assigns a node role to the target server according to the node role allocation information;
上述设置模块340,用于将所述目标服务器确定为被所述控制节点控制的功能节点;The setting module 340 is configured to determine the target server as a function node controlled by the control node;
上述配置模块350,用于根据配置脚本设置所述功能节点的配置参数,所述传输模块还用于,初始化并启动与所述节点角色相关的第二服务;The configuration module 350 is configured to set configuration parameters of the functional node according to a configuration script, and the transmission module is further configured to initialize and start a second service related to the role of the node;
上述检测模块360,用于检测确定出的功能节点间是否连通;The detection module 360 is configured to detect whether the determined functional nodes are connected;
上述调试模块370,用于在上述功能节点间不连通时,根据上述配置脚本调试不连通的节点的配置参数,使上述不连通的节点连通。The debugging module 370 is configured to debug configuration parameters of the disconnected nodes according to the configuration script when the functional nodes are disconnected, so that the disconnected nodes are connected.
可选的,上述节点角色分配信息包括:节点个数和每个节点的节点角色;Optionally, the above node role allocation information includes: the number of nodes and the node role of each node;
上述节点角色包括:计算节点、存储节点和网络节点中的一种或多种。The foregoing node roles include one or more of a computing node, a storage node, and a network node.
作为一种可能的实施方式,上述确定模块310具体用于:As a possible implementation manner, the foregoing determining module 310 is specifically configured to:
接收针对目标服务器的控制节点设置指令;Receiving control node setting instructions for the target server;
判断上述目标服务器是否已安装包含上述第一服务的系统配置,若已安装,确定上述目标服务器为上述控制节点。Determine whether the target server has a system configuration including the first service, and if so, determine that the target server is the control node.
作为一种可能的实施方式,上述第一服务为OpenStack所有服务;As a possible implementation manner, the first service is all OpenStack services;
上述服务器300还包括安装模块380,用于在上述目标服务器未安装包含上述第一服务的系统配置时,获取用于安装安装包含上述OpenStack所有服务的系统的镜像文件,在上述目标服务器上安装上述镜像文件。The server 300 further includes an installation module 380 for obtaining an image file for installing and installing a system including all the services of the OpenStack when the target server does not have a system configuration including the first service installed, and installing the above on the target server. Image file.
作为一种可能的实施方式,上述安装模块380还用于,在上述初始化并启动上述控制节点中的第一服务之前,配置上述控制节点的安装环境。As a possible implementation manner, the installation module 380 is further configured to configure the installation environment of the control node before the initializing and starting the first service in the control node.
作为一种可能的实施方式,上述服务器300还包括节点控制模块390,用于检测系统数据处理状态,根据上述系统数据处理状态增加或者删除功能节点。As a possible implementation manner, the server 300 further includes a node control module 390, configured to detect a system data processing state, and add or delete a function node according to the system data processing state.
作为一种可能的实施方式,上述服务器300还包括:As a possible implementation manner, the foregoing server 300 further includes:
防火墙模块3100,用于在检测到针对目标节点的隔离指令时,配置上述目标节点的防火墙信息,使上述目标节点隔离。The firewall module 3100 is configured to configure the firewall information of the target node to isolate the target node when an isolation instruction for the target node is detected.
作为一种可能的实施方式,上述节点控制模块390还用于,在检测到所述控制节点不在工作状态时,切换为备选控制节点控制所述功能节点。As a possible implementation manner, the foregoing node control module 390 is further configured to switch to an alternative control node to control the functional node when it is detected that the control node is not in a working state.
根据本申请实施例的具体实施方式,图1与图2所示的云计算平台部署的控制方法涉及的步骤101~106、201~211可以是由图3所示的服务器300中的各个模块来执行。According to the specific implementation of the embodiment of the present application, steps 101 to 106 and 201 to 211 involved in the method for controlling the deployment of the cloud computing platform shown in FIGS. 1 and 2 may be performed by each module in the server 300 shown in FIG. 3. carried out.
通过本申请实施例的服务器300,服务器300通过确定用于控制功能节点的控制节点,获取包含节点角色分配信息的第一部署指令,初始化并启动控制节点中的第一服务,以使得上述控制节点根据节点角色分配信息添加目标服务器以及为目标服务器分配节点角色,将上述目标服务器确定为被控制节点控制的功能节点,再根据配置脚本设置节点的配置参数,初始化并启动与节点角色相关的第二服务,以及检测确定出的功能节点间是否连通,若不连通,根据上述 配置脚本调试不连通的功能节点的配置参数,使不连通的功能节点连通,可以将大量节点自动调试连通,组成一个完整可用的云计算平台,减少人工手动操作的部署步骤,提升部署效率。Through the server 300 in the embodiment of the present application, the server 300 determines a control node for controlling a function node, obtains a first deployment instruction including node role allocation information, initializes and starts a first service in the control node, so that the control node described above Add the target server and assign the node role to the target server according to the node role assignment information, determine the target server as a functional node controlled by the control node, and then set the node's configuration parameters according to the configuration script to initialize and start the second node-related role Services, and check whether the functional nodes are connected. If they are not connected, debug the configuration parameters of the non-connected functional nodes according to the above configuration script to make the non-connected functional nodes connect, and you can automatically debug and connect a large number of nodes to form a complete Available cloud computing platform reduces manual deployment steps and improves deployment efficiency.
请参阅图4,图4是本申请实施例公开的另一种服务器的结构示意图。如图4所示,该服务器400包括处理器401和存储器402,其中,服务器400还可以包括总线403,处理器401和存储器402可以通过总线403相互连接,总线403可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。总线403可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。其中,服务器400还可以包括输入输出设备404,输入输出设备404可以包括显示屏,例如液晶显示屏。存储器402用于存储包含指令的一个或多个程序;处理器401用于调用存储在存储器402中的指令执行上述图1和图2实施例中提到的部分或全部方法步骤。Please refer to FIG. 4, which is a schematic structural diagram of another server disclosed in an embodiment of the present application. As shown in FIG. 4, the server 400 includes a processor 401 and a memory 402. The server 400 may further include a bus 403. The processor 401 and the memory 402 may be connected to each other through the bus 403. The bus 403 may be a peripheral component interconnection standard (Peripheral Component Interconnect, PCI) bus or Extended Industry Standard Architecture (EISA) bus, etc. The bus 403 can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only a thick line is used in FIG. 4, but it does not mean that there is only one bus or one type of bus. The server 400 may further include an input-output device 404, and the input-output device 404 may include a display screen, such as a liquid crystal display screen. The memory 402 is configured to store one or more programs containing instructions; the processor 401 is configured to call the instructions stored in the memory 402 to execute some or all of the method steps mentioned in the embodiments of FIG. 1 and FIG. 2.
应当理解,在本申请实施例中,所称处理器401可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。It should be understood that, in the embodiment of the present application, the processor 401 may be a central processing unit (CPU), and the processor may also be another general-purpose processor or a digital signal processor (DSP). , Application specific integrated circuit (ASIC), ready-made programmable gate array (Field-Programmable GateArray, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
输入设备402可以包括触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备403可以包括显示器(LCD等)、扬声器等。The input device 402 may include a touch panel, a fingerprint sensor (for collecting fingerprint information and orientation information of a user), a microphone, and the like, and the output device 403 may include a display (LCD, etc.), a speaker, and the like.
该存储器404可以包括只读存储器和随机存取存储器,并向处理器401提供指令和数据。存储器404的一部分还可以包括非易失性随机存取存储器。例如,存储器404还可以存储设备类型的信息。The memory 404 may include a read-only memory and a random access memory, and provide instructions and data to the processor 401. A portion of the memory 404 may also include non-volatile random access memory. For example, the memory 404 may also store device type information.
通过本申请实施例的服务器400,服务器400可以确定用于控制功能节点的控制节点,获取包含节点角色分配信息的第一部署指令,初始化并启动控制节点中的第一服务,以使得上述控制节点根据节点角色分配信息添加目标服务器以及为目标服务器分配节点角色,将上述目标服务器确定为被控制节点控制的功能节点,再根据配置脚本设置节点的配置参数,初始化并启动与节点角色相 关的第二服务,以及检测确定出的功能节点间是否连通,若不连通,根据上述配置脚本调试不连通的功能节点的配置参数,使不连通的功能节点连通,可以将大量节点自动调试连通,组成一个完整可用的云计算平台,减少人工手动操作的部署步骤,提升部署效率。Through the server 400 in the embodiment of the present application, the server 400 can determine a control node for controlling a function node, obtain a first deployment instruction including node role allocation information, initialize and start a first service in the control node, so that the control node described above Add the target server and assign the node role to the target server according to the node role assignment information, determine the target server as a functional node controlled by the control node, and then set the node's configuration parameters according to the configuration script to initialize and start the second node-related role. Services, and check whether the functional nodes are connected. If they are not connected, debug the configuration parameters of the non-connected functional nodes according to the above configuration script to make the non-connected functional nodes connect. A large number of nodes can be automatically debugged and connected to form a complete system. Available cloud computing platform reduces manual deployment steps and improves deployment efficiency.
本申请实施例还提供一种计算机可读存储介质,其中,该计算机可读存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任何一种云计算平台部署的控制方法的部分或全部步骤。An embodiment of the present application further provides a computer-readable storage medium, where the computer-readable storage medium stores a computer program for electronic data exchange, and the computer program causes a computer to execute any one of the cloud types described in the foregoing method embodiments Some or all steps of a control method for computing platform deployment.
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。In the above embodiments, the description of each embodiment has its own emphasis. For a part that is not described in detail in one embodiment, reference may be made to related descriptions in other embodiments.
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性或其它的形式。In the several embodiments provided in this application, it should be understood that the disclosed device may be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the modules is only a logical function division. In actual implementation, there may be another division manner. For example, multiple units or components may be combined or may be combined. Integration into another system, or some features can be ignored or not implemented. In addition, the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or modules, and may be electrical or other forms.
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。The modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules, may be located in one place, or may be distributed on multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the objective of the solution of this embodiment.
所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。When the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it can be stored in a computer-readable memory. Based on such an understanding, the technical solution of the present application essentially or part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product, which is stored in a memory, Several instructions are included to enable a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in the embodiments of the present application. The foregoing memory includes: a U disk, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk, or an optical disk, and other media that can store program codes.

Claims (20)

  1. 一种云计算平台部署的控制方法,其特征在于,所述方法包括:A control method for cloud computing platform deployment, characterized in that the method includes:
    确定用于控制功能节点的控制节点;Determine the control node used to control the function node;
    获取包含节点角色分配信息的第一部署指令;Obtaining a first deployment instruction containing node role allocation information;
    初始化并启动所述控制节点中的第一服务,以使得所述控制节点根据所述节点角色分配信息添加目标服务器以及为所述目标服务器分配节点角色;Initialize and start a first service in the control node, so that the control node adds a target server and assigns a node role to the target server according to the node role assignment information;
    将所述目标服务器确定为被所述控制节点控制的功能节点;Determining the target server as a functional node controlled by the control node;
    根据配置脚本设置所述功能节点的配置参数,初始化并启动与所述节点角色相关的第二服务;Setting configuration parameters of the function node according to a configuration script, initializing and starting a second service related to the node role;
    检测确定出的功能节点间是否连通,若不连通,根据所述配置脚本调试不连通的功能节点的配置参数,使所述不连通的功能节点连通。It is detected whether the determined functional nodes are connected. If not, the configuration parameters of the disconnected functional nodes are debugged according to the configuration script, so that the disconnected functional nodes are connected.
  2. 根据权利要求1所述的方法,其特征在于,所述节点角色分配信息包括:The method according to claim 1, wherein the node role assignment information comprises:
    功能节点个数和每个功能节点的节点角色;The number of functional nodes and the node role of each functional node;
    所述节点角色包括:计算节点、存储节点和网络节点中的一种或多种。The node role includes one or more of a computing node, a storage node, and a network node.
  3. 根据权利要求2所述的方法,其特征在于,所述确定用于控制功能节点的控制节点包括:The method according to claim 2, wherein the determining a control node for controlling a function node comprises:
    接收针对目标服务器的控制节点设置指令;Receiving control node setting instructions for the target server;
    判断所述目标服务器是否已安装包含所述第一服务的系统配置,若已安装,确定所述目标服务器为所述控制节点。Determine whether the target server has a system configuration including the first service, and if it is installed, determine that the target server is the control node.
  4. 根据权利要求3所述的方法,其特征在于,所述确定用于控制功能节点的控制节点还包括:The method according to claim 3, wherein the determining a control node for controlling a function node further comprises:
    确定已安装包含所述第一服务的系统配置的至少一个服务器为所述控制节点。It is determined that at least one server on which a system configuration including the first service is installed is the control node.
  5. 根据权利要求3或4所述的方法,其特征在于,所述第一服务为OpenStack所有服务;The method according to claim 3 or 4, wherein the first service is all OpenStack services;
    若所述目标服务器未安装包含所述第一服务的系统配置,所述方法还包括:If the target server does not have a system configuration including the first service, the method further includes:
    获取用于安装包含所述OpenStack所有服务的系统的镜像文件,在所述目标服务器上安装所述镜像文件。Obtain an image file for installing a system containing all the services of the OpenStack, and install the image file on the target server.
  6. 根据权利要求5所述的方法,其特征在于,所述初始化并启动所述控制节点中的第一服务之前,所述方法还包括:The method according to claim 5, wherein before the initializing and starting the first service in the control node, the method further comprises:
    配置所述控制节点的安装环境。Configure an installation environment of the control node.
  7. 根据权利要求6所述的方法,其特征在于,所述方法还包括:The method according to claim 6, further comprising:
    检测系统数据处理状态,根据所述系统数据处理状态增加或者删除所述功能节点。Detecting a system data processing state, and adding or deleting the functional node according to the system data processing state.
  8. 根据权利要求1-7任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 1-7, wherein the method further comprises:
    在检测到针对目标节点的隔离指令时,配置所述目标节点的防火墙信息,使所述目标节点隔离。When an isolation instruction for a target node is detected, firewall information of the target node is configured to isolate the target node.
  9. 根据权利要求8所述的方法,其特征在于,所述方法还包括:The method according to claim 8, further comprising:
    在检测到所述控制节点不在工作状态时,切换为备选控制节点控制所述功能节点。When it is detected that the control node is not in a working state, it is switched to an alternative control node to control the function node.
  10. 一种服务器,其特征在于,包括:确定模块、初始模块、获取模块、设置模块、配置模块、检测模块和调试模块,其中:A server is characterized in that it includes: a determination module, an initial module, an acquisition module, a setting module, a configuration module, a detection module, and a debugging module, wherein:
    所述确定模块,用于确定用于控制功能节点的控制节点;The determining module is configured to determine a control node for controlling a function node;
    所述获取模块,用于获取包含节点角色分配信息的第一部署指令;The obtaining module is configured to obtain a first deployment instruction including node role allocation information;
    所述初始模块,用于初始化并启动所述控制节点中的第一服务,以使得所述控制节点根据所述节点角色分配信息添加目标服务器以及为所述目标服务器分配节点角色;The initial module is configured to initialize and start a first service in the control node, so that the control node adds a target server according to the node role allocation information and assigns a node role to the target server;
    所述设置模块,用于将所述目标服务器确定为被所述控制节点控制的功能节点;The setting module is configured to determine the target server as a function node controlled by the control node;
    所述配置模块,用于根据配置脚本设置所述功能节点的配置参数,所述传输模块还用于,初始化并启动与所述节点角色相关的第二服务;The configuration module is configured to set configuration parameters of the functional node according to a configuration script, and the transmission module is further configured to initialize and start a second service related to the role of the node;
    所述检测模块,用于检测确定出的功能节点间是否连通;The detecting module is configured to detect whether the determined functional nodes are connected;
    所述调试模块,用于在所述功能节点间不连通时,根据所述配置脚本调试不连通的功能节点的配置参数,使所述不连通的功能节点连通。The debugging module is configured to, when the functional nodes are disconnected, debug the configuration parameters of the disconnected functional nodes according to the configuration script, so that the disconnected functional nodes are connected.
  11. 根据权利要求10所述的服务器,其特征在于,所述节点角色分配信息包括:The server according to claim 10, wherein the node role assignment information comprises:
    功能节点个数和每个功能节点的节点角色;The number of functional nodes and the node role of each functional node;
    所述节点角色包括:计算节点、存储节点和网络节点中的一种或多种。The node role includes one or more of a computing node, a storage node, and a network node.
  12. 根据权利要求11所述的服务器,其特征在于,所述确定模块具体用于:The server according to claim 11, wherein the determining module is specifically configured to:
    接收针对目标服务器的控制节点设置指令;Receiving control node setting instructions for the target server;
    判断所述目标服务器是否已安装包含所述第一服务的系统配置,若已安装,确定所述目标服务器为所述控制节点。Determine whether the target server has a system configuration including the first service, and if it is installed, determine that the target server is the control node.
  13. 根据权利要求12所述的方法,其特征在于,所述确定模块具体还用于:The method according to claim 12, wherein the determining module is further configured to:
    确定已安装包含所述第一服务的系统配置的至少一个服务器为所述控制节点。It is determined that at least one server on which a system configuration including the first service is installed is the control node.
  14. 根据权利要求12或13所述的服务器,其特征在于,所述第一服务为OpenStack所有服务;The server according to claim 12 or 13, wherein the first service is all OpenStack services;
    所述服务器还包括安装模块,用于若所述目标服务器未安装包含所述第一服务的系统配置时,获取用于安装安装包含所述OpenStack所有服务的系统的镜像文件,在所述目标服务器上安装所述镜像文件。The server further includes an installation module for obtaining an image file for installing and installing a system including all the services of the OpenStack if the target server does not have a system configuration including the first service installed, and the target server is installed on the target server. Install the image file on.
  15. 根据权利要求14所述的服务器,其特征在于,所述安装模块还用于,在所述初始化并启动所述控制节点中的第一服务之前,配置所述控制节点的安装环境。The server according to claim 14, wherein the installation module is further configured to configure an installation environment of the control node before the initializing and starting the first service in the control node.
  16. 根据权利要求15所述的服务器,其特征在于,还包括节点控制模块,用于检测系统数据处理状态,根据所述系统数据处理状态增加或者删除所述功能节点。The server according to claim 15, further comprising a node control module for detecting a system data processing state, and adding or deleting the functional node according to the system data processing state.
  17. 根据权利要求10-16任一项所述的服务器,其特征在于,还包括防火墙模块,用于在检测到针对目标节点的隔离指令时,配置所述目标节点的防火墙信息,使所述目标节点隔离。The server according to any one of claims 10 to 16, further comprising a firewall module, configured to configure the firewall information of the target node when the isolation instruction for the target node is detected, so that the target node isolation.
  18. 根据权利要求17所述的服务器,其特征在于,所述节点控制模块还用于,在检测到所述控制节点不在工作状态时,切换为备选控制节点控制所述功能节点。The server according to claim 17, wherein the node control module is further configured to switch to an alternative control node to control the functional node when it is detected that the control node is not in a working state.
  19. 一种服务器,其特征在于,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-9任一项所述的方法。A server is characterized by comprising a processor, an input device, an output device, and a memory, and the processor, the input device, the output device, and the memory are connected to each other, wherein the memory is used to store a computer program, and the computer program Including program instructions, the processor is configured to call the program instructions and execute the method according to any one of claims 1-9.
  20. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执 行时使所述处理器执行如权利要求1-9任一项所述的方法。A computer-readable storage medium, characterized in that the computer-readable storage medium stores a computer program, the computer program includes program instructions, and when the program instructions are executed by a processor, the processor executes A method according to any one of 1-9 is required.
PCT/CN2018/107908 2018-08-03 2018-09-27 Method for controlling deployment of cloud computing platform, server, and storage medium WO2020024413A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810884475.X 2018-08-03
CN201810884475.XA CN109067877B (en) 2018-08-03 2018-08-03 Control method for cloud computing platform deployment, server and storage medium

Publications (1)

Publication Number Publication Date
WO2020024413A1 true WO2020024413A1 (en) 2020-02-06

Family

ID=64831714

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/107908 WO2020024413A1 (en) 2018-08-03 2018-09-27 Method for controlling deployment of cloud computing platform, server, and storage medium

Country Status (2)

Country Link
CN (1) CN109067877B (en)
WO (1) WO2020024413A1 (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111371579B (en) * 2018-12-26 2023-04-07 中兴通讯股份有限公司 Cloud platform deployment method, device, server and storage medium
CN109981348A (en) * 2019-02-26 2019-07-05 启迪云计算有限公司 A kind of cloud node mixed deployment method
CN109995878A (en) * 2019-04-12 2019-07-09 成都四方伟业软件股份有限公司 Resource share method and distributed cluster system
CN111045599A (en) * 2019-10-31 2020-04-21 平安科技(深圳)有限公司 Parameter configuration method and device of distributed storage system and computer equipment
CN111897539B (en) * 2020-07-20 2024-03-29 国云科技股份有限公司 Method and device for deploying application according to service roles
CN112003754A (en) * 2020-08-25 2020-11-27 北京浪潮数据技术有限公司 Visual node registration method for OpenStack cluster
CN112995169B (en) * 2021-02-22 2022-12-06 中国工商银行股份有限公司 Method and device for deploying firewall
CN113064600B (en) * 2021-04-20 2022-12-02 支付宝(杭州)信息技术有限公司 Method and device for deploying application
CN114221808B (en) * 2021-12-14 2024-02-06 平安壹钱包电子商务有限公司 Security policy deployment method and device, computer equipment and readable storage medium
CN114244836B (en) * 2021-12-17 2023-12-05 杭州视洞科技有限公司 Method for managing servers in batch in hybrid cloud scene
CN114244891B (en) * 2021-12-22 2024-01-23 北京天融信网络安全技术有限公司 Communication method and device between containers, electronic equipment and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106506636A (en) * 2016-11-04 2017-03-15 武汉噢易云计算股份有限公司 A kind of cloud platform cluster method and system based on OpenStack
US20170244601A1 (en) * 2016-02-23 2017-08-24 Cisco Technology, Inc. Collaborative hardware platform management
CN107769938A (en) * 2016-08-16 2018-03-06 北京金山云网络技术有限公司 The system and method that a kind of Openstack platforms support Multi net voting region
CN107819851A (en) * 2017-11-10 2018-03-20 郑州云海信息技术有限公司 A kind of Openstack single nodes deployment and virtualization system ICS docking calculation

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103501350B (en) * 2013-10-17 2017-05-31 中国联合网络通信集团有限公司 The method and device of SaaS applications deployment in a kind of cloud computing platform
US9609023B2 (en) * 2015-02-10 2017-03-28 International Business Machines Corporation System and method for software defined deployment of security appliances using policy templates
CN104754032A (en) * 2015-02-27 2015-07-01 浪潮集团有限公司 Method and device for deploying OpenStack
CN105426208A (en) * 2015-11-16 2016-03-23 山东超越数控电子有限公司 OpenStack offline automatic installation method of cloud computing system
CN107172208B (en) * 2017-06-30 2021-09-14 联想(北京)有限公司 Server deployment method and system
CN107483243A (en) * 2017-08-09 2017-12-15 鹤云来科技有限公司 A kind of automatic deployment method and equipment of OpenStack platforms

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170244601A1 (en) * 2016-02-23 2017-08-24 Cisco Technology, Inc. Collaborative hardware platform management
CN107769938A (en) * 2016-08-16 2018-03-06 北京金山云网络技术有限公司 The system and method that a kind of Openstack platforms support Multi net voting region
CN106506636A (en) * 2016-11-04 2017-03-15 武汉噢易云计算股份有限公司 A kind of cloud platform cluster method and system based on OpenStack
CN107819851A (en) * 2017-11-10 2018-03-20 郑州云海信息技术有限公司 A kind of Openstack single nodes deployment and virtualization system ICS docking calculation

Also Published As

Publication number Publication date
CN109067877B (en) 2021-08-24
CN109067877A (en) 2018-12-21

Similar Documents

Publication Publication Date Title
WO2020024413A1 (en) Method for controlling deployment of cloud computing platform, server, and storage medium
US10986174B1 (en) Automatic discovery and configuration of server nodes
US7783788B1 (en) Virtual input/output server
US9547624B2 (en) Computer system and configuration management method therefor
US20190222488A1 (en) Portable and flexible deployment of servers
US8830870B2 (en) Network adapter hardware state migration discovery in a stateful environment
US8307362B1 (en) Resource allocation in a virtualized environment
US9929903B2 (en) System and method for automated network configuration
US9588807B2 (en) Live logical partition migration with stateful offload connections using context extraction and insertion
CN108322467B (en) OVS-based virtual firewall configuration method, electronic equipment and storage medium
US20070168563A1 (en) Single logical network interface for advanced load balancing and fail-over functionality
EP3332325B1 (en) Methods, apparatus, and systems for providing access to serial ports of virtual machines in self-deployed virtual applications
CN114070723B (en) Virtual network configuration method and system of bare metal server and intelligent network card
US20070124573A1 (en) Method for rapid startup of a computer system
WO2020232890A1 (en) Load balancing application creation method and device, computer device and storage medium
CN104506403B (en) A kind of virtual network management method for supporting multi-stage isolation
CN109857464B (en) System and method for platform deployment and operation of mobile operating system
US20040221298A1 (en) Network device drivers using a communication transport
US10778467B2 (en) Method for providing virtual CPE service by using single internet line and network function virtualization cloud
US8995424B2 (en) Network infrastructure provisioning with automated channel assignment
CN113918174A (en) Bare metal server deployment method, deployment controller and server cluster
WO2020263640A1 (en) Serverless packet processing service with isolated virtual network integration
US20230325203A1 (en) Provisioning dpu management operating systems using host and dpu boot coordination
US20240028375A1 (en) Control plane lifecycle management with dpu devices
CN115469969A (en) Network card binding method and system of virtual machine

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18928509

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205 DATED 25.03.2021.)

122 Ep: pct application non-entry in european phase

Ref document number: 18928509

Country of ref document: EP

Kind code of ref document: A1