Disclosure of Invention
In view of the above, the invention provides a railway Beidou application service cloud platform based on virtualization and resource management to solve the problems in the prior art.
In order to achieve the aim, the invention provides a railway Beidou application service cloud platform based on virtualization and resource management, which is characterized by comprising a calculation virtual module, a network virtual module, an authentication module, an equipment management module, a container management module, an arrangement module and a storage module;
The computing virtual module is used for managing the life cycle of the virtual machine instance, including creating, starting and shutting down, suspending, adjusting, migrating, restarting, and configuring a CPU and a memory;
the network virtual module is used for providing network connection service based on a cloud computing network virtualization technology;
The authentication module is used for managing services through authentication, authorization, user tenants and roles;
The device management module is used for providing virtual USB and virtual serial port functions;
the container management module is used for providing container management and container mirror image management functions by adopting micro services;
the arrangement module is used for adopting a collaborative deployment mode defined by a template;
The storage module is used for providing distributed data block storage service for the running instance and the functions of creating, deleting, mounting and unloading and snapshot of block equipment.
Further, the computing virtual module adds a virtualized software layer between the operating system and the hardware by separating the software and the hardware from each other, abstracts the physical resources of the server into logical resources, enables the upper operating system to directly run on the virtualized software layer, and allows a plurality of virtual machines with different operating systems to mutually isolate and run on the same physical machine in parallel.
Further, the network virtual module virtualizes a physical network into a plurality of mutually isolated virtual networks for different users, virtualizes network functions, and replaces proprietary hardware equipment with standardized servers
Further, the network virtual module provides traffic visibility and control between and within VMs through a cloud computing environment, enabling switch and controller software to create a clustered network configuration between multiple servers, implementing visibility through NetFlow, sFlow and RSPAN, and managing through OpenFlow protocols.
Further, the container management module manages containers through the network, storage and mirror image resources used by the docking docker, and performs batch container management by combining the arrangement function of the arrangement module;
The container mirror image management function comprises the steps of polling and acquiring metadata of the mirror image and the mirror image, registering and uploading the mirror image of the virtual machine, creating, uploading and managing the mirror image, and maintaining mirror image information.
Further, the cloud platform adopts the OpenAPI specification to carry out interface design, and carries out module differentiation according to functions.
Further, the orchestration module performs automatic deployment of the cloud infrastructure software operating environment in a collaborative deployment mode defined by the template.
Further, the storage module adopts an X86 server.
Further, the cloud platform also comprises a cloud native application low-code development platform, comprising a development framework, a generation tool platform and a collaboration platform;
The development framework comprises a back-end service development framework and a front-end development service framework, the generation tool platform comprises a back-end code generation module, a front-end code generation module, an interface document generation module, a database document generation module, an online document generation module and an offline document generation module, and the collaboration platform comprises a project management module, a requirement management module, a task management module, a BUG management module, a test management module and an interface document module.
Further, the back-end service development framework is built based on Springboot, and the front-end development framework is built based on Vue/act/Angular.
Compared with the prior art, the invention has the beneficial effects that:
The invention covers the virtualization and centralized scheduling management of computing, storage and network resources, solves the limitation of the traditional network virtualization technology in the cloud computing era, realizes network function virtualization through the NFV technology, provides virtual network slices, and meets the network isolation requirement of multiple tenants; the cloud native application low-code development platform is provided, so that the rapid deep customization of service development is realized, and the development efficiency and the cooperation efficiency are improved.
Detailed Description
Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art. It should be noted that, without conflict, the embodiments of the present invention and features of the embodiments may be combined with each other. The invention will be described in detail below with reference to the drawings in connection with embodiments.
The embodiment provides a railway Beidou application service cloud platform based on virtualization and resource management, as shown in fig. 1, including:
According to the investigation of the earlier-stage requirement, the technical indexes are as follows:
1) 10000 users on line;
2) Vehicle-mounted equipment 5000, on-line 2000;
3) The positioning terminal sends 20 messages/second;
4) The positioning terminal receives notification messages from the system, wherein the number of the notification messages is 1 per second, and the notification messages can be adjusted according to scenes;
5) Each messaging is calculated according to 100 Bbye;
6) The collateral storage is calculated as 3 months of storage.
According to the technical indexes, the hardware design scheme of the embodiment is as follows:
120TB of storage;
the server is that the system needs to receive and process 24 ten thousand pieces per second and the system sends 12000 pieces per second;
A configuration server 28 is required, including a management server.
The cloud management platform is oriented to railway cloud data center IaaS cloud computing and resource management and scheduling, and performs virtualization and centralized scheduling and management on physical resources such as computing resources, storage resources and network resources through a unified interface, so that a cloud application environment is quickly built for users. The structure diagram is shown in fig. 1;
The cloud management platform is a cloud operating system, and can control a large-scale computing, storage, network and other resource pools through a data center. All management can be done by the front end interface administrator, and the end user can deploy the resources through the web interface as well.
The cloud management platform is composed of a number of modules, each composed of a series of processes, command line scripts, databases, and other scripts, which are distributed as shown in table 1, coupled together by databases and middleware. The core module mainly comprises the following components:
1) The virtual module is calculated, the controller for managing the life cycle of the virtual machine instance provides virtual machine service according to the user demand, is responsible for a series of related operations such as creation, startup and shutdown, suspension, adjustment, migration, restarting and the like of the virtual machine, and configures information specifications such as a CPU, a memory and the like;
2) And the network virtual module is used for providing network connection services for other services based on a cloud computing network virtualization technology. By providing an access interface for a user, a network, a subnet and a route can be defined, and DHCP, DNS, load balancing and L3 service are configured;
3) The authentication module is responsible for authentication, authorization, user tenant and role management and the like;
4) The mirror image module provides mirror image service, is used by an installation machine and supports various mirror image formats;
5) The device management module provides virtual USB and virtual serial port functions;
6) The container management module provides container management and container mirror image management functions;
7) The visual operation and maintenance platform provides management portals for various services and supports a user to perform simple operation, including example starting, IP address allocation, access control configuration and the like;
8) The orchestration module provides a collaborative deployment mode defined by a template to realize automatic deployment of cloud infrastructure software running environments (computing, storage and network resources);
9) And the storage module provides stable data block storage service for the running instance, and the plug-in driving architecture of the storage module is beneficial to the creation and management of block equipment, and is used for creating volumes, deleting volumes, mounting and unloading volumes.
TABLE 1
Virtualization is one of the key technologies necessary for building cloud infrastructure. Cloud computing cloud systems are essentially large distributed systems. More virtual platforms can be virtualized on one physical platform through virtualization, and each virtual platform can be used as an independent terminal to join a cloud distributed system. Virtualization has great advantages over direct use of physical platforms in terms of efficient utilization of resources, dynamic deployment, and high reliability. By using the virtualization technology, enterprises can build an entirely new infrastructure without discarding the existing infrastructure, thereby more fully utilizing the original IT resources.
The realization form of the computing virtualization technology is to add a virtualization layer into the system, abstract the resources of the lower layer into the resources of another form, and use the resources of the upper layer. The general implementation scheme of the computing virtualization technology is that software and hardware are separated from each other, a virtualized software layer is added between an operating system and the hardware, and physical resources of a server are abstracted into logic resources, so that an upper operating system can directly run on a virtual environment, a plurality of virtual machines with different operating systems are allowed to be isolated from each other and run on the same physical machine in parallel, and therefore higher IT resource utilization rate and flexibility are provided. Each virtual machine is a complete system with a processor, memory, network devices, storage devices, and BIOS. Operating system software running in a virtual machine is referred to as a virtual machine operating system. This software layer of computing virtualization, the virtual machine monitor, is commonly referred to as a Hypervisor.
The conventional storage needs to be configured to store special hardware, the price of the special hardware is high due to the fact that the delivery volume of the special hardware is high, the distributed software definition storage adopts a universal X86 server, the purchase and operation cost of the hardware is greatly reduced, meanwhile, based on a software definition storage architecture, the enterprise data migration speed is greatly improved, and the total ownership cost is further reduced.
In addition, stand-alone or stand-alone SANs are increasingly unable to meet the needs of large-scale data storage for enterprises in the face of extremely flexible storage and performance requirements. As with database systems, block storage of distributed storage also faces the need for lateral expansion in cases where the longitudinal expansion suffers from bottlenecks. The concept of a distributed block storage system can be described in several ways:
1) The distributed block store may provide a persistent block storage device for any physical or virtual machine;
2) The distributed block storage system can manage the creation, deletion and mounting/unloading of block devices;
3) Distributed block storage supports powerful snapshot functions that can be used to restore or create new block devices;
4) Distributed storage systems are capable of providing devices with different I/O performance requirements.
At present, distributed block storage is being widely used due to the advantages of elasticity and expandability, high cost performance and the like, and particularly in a cloud environment, the distributed block storage is becoming a mainstream block storage mode.
In cloud computing, understanding network virtualization mainly includes two dimensions, namely, a plurality of mutually isolated virtual networks can be virtualized in one physical network, so that different users can use independent network resource slices, network resource utilization rate is improved while network isolation requirements of the users are met, and part of network functions are virtualized in a NFV (Network FunctionVirtualization ) mode, standardized servers are used for replacing proprietary hardware equipment, and network services are provided in a more flexible mode
The network virtual module is specially used for managing a multi-leasing public cloud computing environment, provides flow visibility and control among and in virtual VMs for a network administrator, and aims to solve network problems by virtualization and realize a distributed virtual switching technology together with controller software. This means that the switch and controller software can create a clustered network configuration between multiple servers, eliminating the need to configure the network separately on each VM and physical host. This switch also supports VLAN trunking, visibility through NetFlow, sFlow and RSPAN, managed through the OpenFlow protocol. It has other characteristics of strict flow control, which is implemented by the OpenFlow switching protocol, and remote management functions, which enable more control through network policies.
The cloud management platform realizes the micro-service function through the container management module, and can be integrated with a network virtual module, a storage module, an authentication module and other core services in the cloud platform to realize the rapid popularization of the container.
The container technology of the container management module is dock, and network, storage and mirror image resources used by dock can be taken over completely, so that complete life cycle management of the container is realized.
And combining the arrangement function of the cloud management platform with the container management module to realize batch container management.
The interface design of the cloud platform provided by the embodiment adopts the current general OpenAPI specification. The OpenAPI specification specifies the RESTful services development process by defining a language that describes the API format or API definition. The system is very friendly to the developer, and the user can conveniently dock regardless of the language and platform used. The API is divided into a plurality of modules according to the functional modules, and is easy to find and use.
The interface call of the cloud platform in this embodiment may be directly tested on the software platform, or other tools, such as postman, may be used. The call result can be seen directly at the interface. Call formats and the like can also be seen in the document.
For visual interface design, the most important and most common functions of the cloud platform are all fused according to a simple and bright design style, and a new visual sense is given to people. The visual function design is simple, and the visual function design is complete in function and simple to operate.
1) And (5) mirror image management. The mirror service enables users to upload and obtain data assets such as mirror and metadata definitions that other related services need to use. And managing the mirror image, so that a user can discover, acquire and save the mirror image.
The operations of the cloud management platform for knowing support mainly comprise the steps of inquiring and acquiring metadata of the mirror image and the mirror image, registering and uploading the virtual machine mirror image, and creating, uploading and managing the mirror image. Image information is maintained, including metadata and the image itself.
2) And (5) storage management. The storage service provides storage infrastructure service, provides access to storage equipment based on data blocks for users, supports operations such as creation and deletion of volumes, snapshots and backups by the cloud management platform, adopts ceph multiple storage nodes and multiple copy clusters in the background, and fully ensures the safety, stability and reliability of the platform.
3) And (5) managing the instance. The instance management is one of the most important, basic and most commonly used functions of the cloud platform, is the most core service and is responsible for maintaining and managing the computing resources of the cloud environment, and the instance management mainly comprises operations such as creating and deleting the instance, switching on and shutting down the instance, adjusting network, storing and computing resources and the like.
4) And (5) network management. The network service is the most core task of abstracting and managing the two-layer physical network, and the network management on the cloud platform mainly comprises operations of creating, editing, distributing, deleting and the like of a network, a subnet, a route, a floating ip, a security group and the like.
5) And (5) managing equipment. The device management mainly provides serial port management and cross-host transmission functions of USB devices, the cloud platform serial port management comprises the steps of creating serial ports (client and server), editing, deleting serial ports and the like, and the USB devices (such as U disk, ukey and the like) can realize cross-host transmission among different examples on the cloud management platform.
6) And (5) remotely working. The remote office supports operations such as creation, deletion, distribution and the like of cloud desktops, combines thin terminals and client programs, adopts a custom-optimized spice transmission protocol, not only realizes the management function of an instance, but also realizes remote office anytime and anywhere by combining the thin terminals, and gets rid of the limitation of time space.
7) And (5) managing the container. The cloud platform also supports container management, including operations such as creation, restarting, rebuilding, deletion, restoration, termination, managing a container security group, and the like.
8) And (5) managing arrangement. The cloud platform provides orchestration services that design and define orchestrations in a template manner. A user can conveniently obtain the required arrangement by only compiling a template file containing a plurality of sections and Key-Value Pair codes by using a text editor.
9) And (5) user management. The cloud platform user module correspondingly comprises two modules, namely user management and project management. The user management mainly comprises basic operations such as user creation, editing, deletion, disabling and activating, and the project management comprises operations such as creation, editing, project information modification, quota modification and the like.
As shown in fig. 2, the cloud native application low-code development platform is composed of 3 parts, including:
(1) The cloud native application low-code development framework integrates a new technology and a new framework, and solves the key problems of technical architecture, basic capability construction, system stability, expansibility, safety and the like of enterprise software research and development projects. The framework is used in the starting stage, no architect is needed to participate, the cost and threshold of developing software projects of enterprises are reduced, the project development starting speed is improved, and the period from prototype to floor realization of products is shortened.
(2) The cloud native application low-code development tool solves the problems of code specification standards, research and development document specification standards and the like of enterprise software research and development projects, and can improve the coding efficiency of software developers by 30% -80%. The method comprises the steps of automatically generating codes, automatically generating documents, automatically generating test cases and the like.
(3) The cloud native application low-code development collaboration platform solves the problem that team members easily collaborate online and communicate seamlessly, realizes the collaboration and management and control of the full life cycle from project establishment, demand and iteration to delivery of product development, improves the development collaboration efficiency, solves the problem of development team collaboration, and particularly improves the situation that development staff work in a scattered manner under epidemic situation, which becomes a normal state, and improves the verification collaboration efficiency by more than 30% in a plurality of projects. The full life cycle management platform based on agile development and SCRUM design is a light research and development collaboration system, is simpler and more convenient than JIRA and other open source schemes, and provides functions of online project management, demand management, task management, test management, BUG management, document management and the like.
Based on the advantages, the cloud native application low-code development platform can rapidly complete deep customization of service development.
The scheme is implemented orderly according to an organization plan, and the main contents comprise demand collection, purchase of software and hardware equipment, installation of software and hardware, system debugging, data arrangement, system test operation and project acceptance.
(1) Demand collection
According to actual conditions, specific requirements are collected, the requirement documents are output, completeness and no errors are achieved as much as possible, and the influence of later modification on the progress is avoided.
(2) Software and hardware equipment purchasing
The devices include computing servers, storage devices/storage servers, and network devices. Through test comparison, the equipment with the performance and the function meeting the requirements is selected, and unified purchasing is realized.
(3) Software and hardware installation and system debugging
And installing software and hardware equipment in the data center, and debugging the software and the hardware.
(4) Data arrangement
Related design books, work reports, test reports, original records, photographs and the like during project construction are collated.
(5) System commissioning
And providing test run service to the outside and writing relevant reports.
The cloud management platform deployment specifically comprises the following steps:
1) And controlling the nodes. The control node includes a schedule of computing virtualization, a network virtualization service, and a storage virtualization service. The installation step is that the installation operation system is installed with the container service, the installation configuration file is modified, and the one-key installation script is executed.
2) And calculating the node. The compute nodes contain the actual compute services and network proxy services for compute virtualization. The installation step is that the installation operation system is installed with the container service, the installation configuration file is modified, and the one-key installation script is executed.
3) And storing the nodes. The storage cluster formed by the storage nodes is a storage point of virtual machine data, and in order to achieve data redundancy, the storage cluster needs to be set to be 3 copies. The installation step is that an installation operation system is used for installing a container service, adding a MON node and adding an OSD node.
4) And visualizing the operation and maintenance service. A control node is generally selected to install the visual operation and maintenance service, and the installation step is to decompress an installation package, modify a configuration file and operate a micro service.
The cloud native low-code platform deployment specifically comprises the following steps:
the railway cloud primary low-code development platform comprises a development framework, a code generation subsystem, a document generation subsystem and a agile development collaboration subsystem.
The railway Beidou application service cloud platform realizes the virtualization, centralized management and centralized maintenance of physical servers, storage and network equipment and mainly comprises a computing virtualization system, a network virtualization system, a distributed storage system and other systems. Cloud systems cover functions of KVM virtualization technology, computing, storage, network virtualization management technology, high Availability (HA) management technology, resource management technology, etc.
The cloud native application low-code development system provides a cloud native application low-code development framework, a development tool and a development cooperation tool, and can quickly complete deep customization of service development.
Compared with the traditional network application mode, the railway Beidou application service cloud platform provided by the invention has the following advantages and characteristics:
(1) Virtualization technology
Virtualization breaks through the limit of time and space, is the most remarkable characteristic of cloud computing, and comprises two types of application virtualization and resource virtualization. The physical platform is not related to the application deployment environment in space, and the data backup, migration, expansion and the like are completed by operating the corresponding terminal through the virtual platform.
(2) Dynamically extensible
The cloud computing has high-efficiency computing capability, the computing speed can be rapidly improved by adding the cloud computing function on the basis of the original server, and finally, the purpose of expanding the application is achieved by dynamically expanding the virtualization hierarchy.
(3) On-demand deployment
The computer comprises a plurality of applications, program software and the like, the data resource libraries corresponding to different applications are different, the user needs stronger computing power to deploy the resources when running different applications, and the cloud computing platform can rapidly allocate the computing power and the resources according to the requirements of the user.
(4) High flexibility
Most IT resources, software and hardware in the market today support virtualization, such as storage networks, operating systems, and development software and hardware. The virtualized elements are uniformly arranged in the cloud system resource virtual pool for management, so that the cloud computing compatibility is very strong, the cloud computing system can be compatible with low-configuration machines and hardware products of different manufacturers, and can be used for obtaining higher-performance computing through peripheral equipment.
(5) High reliability
The server failure does not affect the normal operation of the computing and application. Because single point servers fail, applications distributed over different physical servers can be restored through virtualization techniques or new servers deployed for computation using dynamic extension functionality.
(6) High cost performance
The resources are placed in the virtual resource pool to be uniformly managed, so that physical resources are optimized to a certain extent, a user does not need a host with high cost and large storage space, a relatively cheap PC can be selected to form a cloud, the cost is reduced, and the computing performance is not inferior to that of a large host.
(7) Extensibility and method for making same
The user can more simply and quickly expand the required existing service and new service by using the rapid deployment condition of the application software, and effectively expand other servers by using the dynamic expansion function of the computer cloud computing, so that the application is effectively expanded, and the operation level of the computer cloud computing is improved.
Finally, it should be noted that the above embodiments are only for illustrating the technical solution of the present invention and not for limiting the same, and although the present invention has been described in detail with reference to the above embodiments, it should be understood by those skilled in the art that modifications and equivalents may be made to the specific embodiments of the present invention without departing from the spirit and scope of the present invention, and any modifications and equivalents are intended to be included in the scope of the claims of the present invention.