CN116915516A - Software cross-cloud delivery method, transfer server, target cloud and storage medium - Google Patents

Software cross-cloud delivery method, transfer server, target cloud and storage medium Download PDF

Info

Publication number
CN116915516A
CN116915516A CN202311183336.1A CN202311183336A CN116915516A CN 116915516 A CN116915516 A CN 116915516A CN 202311183336 A CN202311183336 A CN 202311183336A CN 116915516 A CN116915516 A CN 116915516A
Authority
CN
China
Prior art keywords
cloud
product
software
cross
file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202311183336.1A
Other languages
Chinese (zh)
Other versions
CN116915516B (en
Inventor
祖彦龙
华子仪
陈晓锋
蔡尚书
彭欣
李日盛
王钊荣
蔡常清
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Zhicheng Software Technology Service Co ltd
Shenzhen Smart City Technology Development Group Co ltd
Original Assignee
Shenzhen Zhicheng Software Technology Service Co ltd
Shenzhen Smart City Technology Development Group Co ltd
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 Shenzhen Zhicheng Software Technology Service Co ltd, Shenzhen Smart City Technology Development Group Co ltd filed Critical Shenzhen Zhicheng Software Technology Service Co ltd
Priority to CN202311183336.1A priority Critical patent/CN116915516B/en
Publication of CN116915516A publication Critical patent/CN116915516A/en
Application granted granted Critical
Publication of CN116915516B publication Critical patent/CN116915516B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0209Architectural arrangements, e.g. perimeter networks or demilitarized zones
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • 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
    • 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
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/288Distributed intermediate devices, i.e. intermediate devices for interaction with other intermediate devices on the same level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The invention discloses a software cross-cloud delivery method, a transit server, a target cloud and a storage medium, which belong to the field of software development and are applied to the transit server, wherein one side of the transit server is connected with an original working space cloud based on a physical private line, the other side of the transit server is connected with the target cloud based on a virtual private network private line, and the software cross-cloud delivery method comprises the following steps: receiving and caching an integrated product sent by the original workspace cloud, wherein the original workspace cloud is used for generating the integrated product based on development data; reading the integrated product based on a preset time interval, and carrying out safety detection on the integrated product; and when the security detection of the integrated product passes, sending the product file corresponding to the integrated product to the target cloud based on the virtual private network private line. By the method, the security of the cross-cloud delivery process of the product developed by the software is improved.

Description

Software cross-cloud delivery method, transfer server, target cloud and storage medium
Technical Field
The invention relates to the field of software development, in particular to a cross-cloud software delivery method, a transfer server, a target cloud and a storage medium.
Background
In the software delivery project, a development environment, a system integration environment, a user acceptance environment and a production environment are often deployed across clouds and isolated in different networks, so that the safety of software development and delivery and the isolation of the cloud network are ensured, but the continuous delivery pipeline of software update iteration is interrupted by the mode, and the efficiency of software development is reduced.
In the prior art, in order to realize cross-cloud synchronous release of a software product from an original working space cloud to a target cloud, the original working space cloud and the target cloud are always directly opened through a special line of an operator. After the developer completes the creation of the product based on the original workspace cloud, the product is downloaded and imported into the target cloud through the carrier private line. However, the operator private line depends on the network address of the fixed public network, so that the target cloud loses isolation, and the risk of network attack and information leakage is increased.
The foregoing is provided merely for the purpose of facilitating understanding of the technical solutions of the present invention and is not intended to represent an admission that the foregoing is prior art.
Disclosure of Invention
The invention mainly aims to provide a software cross-cloud delivery method, a transfer server, a target cloud and a storage medium, and aims to solve the technical problem that the target cloud loses isolation by adopting a software cross-cloud delivery method in the past, so that the risk of network attack and information leakage is increased.
In order to achieve the above purpose, the present invention provides a method for delivering software across clouds, which is applied to a transit server, wherein one side of the transit server is connected with an original working space cloud based on a physical private line, and the other side is connected with a target cloud based on a virtual private network private line, and the method for delivering software across clouds comprises the following steps:
receiving and caching an integrated product sent by the original workspace cloud, wherein the original workspace cloud is used for generating the integrated product based on development data;
reading the integrated product based on a preset time interval, and carrying out safety detection on the integrated product;
and when the integrated product security detection passes, sending the product file to the target cloud based on the virtual private network private line.
Optionally, the step of sending the product file corresponding to the integrated product to the target cloud includes:
calling a transmission module of the self and logging in a fort machine of the target cloud based on a preset account number;
establishing communication connection with a back-end server of the target cloud based on the fort machine and a preset connection command;
determining a storage catalog corresponding to the product file in the back-end server;
and carrying out security audit record based on the fort machine, and sending the product file to the storage directory of the back-end server based on the virtual private network private line.
Optionally, the step of determining a storage directory corresponding to the artifact file in the backend server includes:
acquiring a directory structure of the back-end server;
determining a deployment position corresponding to the product file based on the directory structure;
and determining a storage catalog corresponding to the product file according to the deployment position.
Optionally, the step of reading the integrated product based on a preset time interval and performing security detection on the integrated product includes:
acquiring source information and content data of the integrated product;
transmitting source information and content data of the integrated product to an arbitration node, and performing confidence scoring on the integrated product based on the arbitration node;
and when the result of the confidence score is higher than a preset score threshold value, judging that the integrated product passes the safety detection.
In addition, to achieve the above object, the present invention also provides a relay server, including: the system comprises a memory, a processor and a software cross-cloud delivery program stored on the memory and capable of running on the processor, wherein the software cross-cloud delivery program is configured to realize the steps of the software cross-cloud delivery method.
Optionally, the invention further provides a software cross-cloud delivery method, which is applied to the target cloud, and the software cross-cloud delivery method further comprises the following steps:
receiving a product file sent by a transit server, and storing the product file under a storage directory of a back-end server of the product file;
and running a preset script program at fixed time to send the product files under the storage list to a product warehouse.
Optionally, after the step of running the preset script program at fixed time to send the artifact file under the storage directory to the artifact repository, the method further includes:
when an application deployment command is triggered, determining a production environment required by an application program corresponding to the product file, and configuring the production environment;
modifying a configuration file of the application program according to the configuration requirement of the production environment;
and deploying the configuration file and related data of the application program into the production environment.
Optionally, after the step of deploying the configuration file and related data of the application program into the production environment, the method further includes:
creating a test environment required by the application program;
testing the application program based on the test environment;
recording and analyzing the test result of the application program;
and carrying out debugging modification on the application program based on the test result.
In addition, in order to achieve the above object, the present invention further provides a target cloud, where the target cloud includes a memory, a processor, and a software cross-cloud delivery program stored on the memory and executable on the processor, and the software cross-cloud delivery program is configured to implement the steps of the software cross-cloud delivery method as described above.
In addition, in order to achieve the above object, the present invention further provides a storage medium having stored thereon a software cross-cloud delivery program which, when executed by a processor, implements the steps of the software cross-cloud delivery method as described above.
The embodiment of the invention provides a software cross-cloud delivery method which is applied to a transfer server, namely a transfer server is added between an original working space cloud and a target cloud, one side of the transfer server is connected with the original working space cloud based on a physical private line, the other side of the transfer server is connected with the target cloud based on a private virtual network private line, the transfer server receives and caches integrated products sent by the original working space cloud environment, reads product files of the integrated products based on a preset time interval, carries out security detection on the product files, and sends the product files to the target cloud through a virtual private network private line when the security detection passes. By the method, the safety of the cross-cloud delivery process of the product developed by the software can be improved, the high-level safety requirement is met, the risk of network attack and information leakage is reduced, meanwhile, a cross-cloud private line is not required to be built, and the cost is greatly saved.
Drawings
FIG. 1 is a schematic flow chart of a first embodiment of a software cross-cloud delivery method of the present invention;
FIG. 2 is a schematic diagram of a refinement flow chart of step S30 in FIG. 1;
FIG. 3 is a flowchart of a second embodiment of a software cross-cloud delivery method according to the present invention;
FIG. 4 is a flowchart of a third embodiment of a software cross-cloud delivery method according to the present invention;
fig. 5 is a schematic diagram of the refinement flow after step S80;
FIG. 6 is a schematic diagram of a connection architecture between a transit server and a target cloud and an original workspace cloud;
fig. 7 is a schematic diagram of a terminal structure of a hardware running environment of a relay server according to a first embodiment of the present invention;
fig. 8 is a schematic diagram of a terminal structure of a target cloud hardware operating environment according to a third embodiment of the present invention.
The achievement of the objects, functional features and advantages of the present invention will be further described with reference to the accompanying drawings, in conjunction with the embodiments.
Detailed Description
With the increasing sophistication of division of software development and the increasing complexity of software systems, software system environments are divided into Development Environments (DEVs), system integration environments (SIT), user acceptance environments (UATs), production environments (PRDs), covering the full lifecycle of software development. Under the general condition, based on the agile concept of a DevOps (a software development platform), after software development, integration and product construction of software developers are completed in a DEV environment and a SIT environment on a cloud, the integrated development and collaboration management platform can be deployed to a UAT environment or a PRD environment in the same cloud environment by one key, so that a full life cycle end-to-end continuous integration and continuous deployment pipeline of software development is realized. Entering the cloud primitive age, multi-cloud and multi-cluster deployment has become a normal state. In a software delivery project, in order to isolate a developer from a user, two sets of environments related to software development, namely DEV and SIT, and two sets of environments related to user application, namely UAT and PRD, are subjected to cross-cloud deployment and are isolated on different networks, and the method breaks a continuous delivery pipeline of software update iteration while improving cloud network isolation and security, so that a plurality of challenges are presented to software development efficiency.
In order to realize continuous delivery of cross-cloud software, a mainstream solution is to directly open the network policy of the original working space cloud and the target cloud through the private line of an operator, so as to realize synchronous release of the cross-cloud product. The method comprises the following specific steps: software development integration is carried out in DEV and SIT environments of the original working space, and products are created; downloading the product in the original working space; importing the downloaded product into a target cloud; the UAT and PRD environments of the article to the target cloud are published.
The method is convenient and quick, but the special line of the operator is based on the fixed public network IP address, so that the requirement of isolating the target cloud from the public network under the control of the high security level cannot be met on one hand. On the other hand, the cost of directly opening the cross-cloud private line is high, the period is long, and the control is inflexible. Therefore, a set of cross-cloud continuous delivery pipeline meeting the security control requirement in a multi-cloud scene is necessary to be built, and the cross-cloud software efficient delivery is realized.
According to the method for delivering the software across clouds, a transit server is added between an original working space cloud and a target cloud, one side of the transit server is connected with the original working space cloud based on a physical private line, the other side of the transit server is connected with the target cloud based on a private virtual network private line, the transit server receives and caches integrated products sent by an original working space cloud environment, reads product files of the integrated products based on a preset time interval, carries out safety detection on the product files, and sends the product files to the target cloud through the virtual private network private line when the safety detection passes.
It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the invention.
The embodiment of the invention provides a software cross-cloud delivery method, and referring to fig. 1, fig. 1 is a schematic flow chart of a first embodiment of the software cross-cloud delivery method.
In this embodiment, the method for delivering software across clouds includes:
and step S10, receiving and caching the integrated product sent by the original working space cloud, wherein the original working space cloud is used for generating the integrated product based on development data.
In this embodiment, referring to fig. 6, the software cross-cloud delivery method is applied to the transit server, and in order to ensure the security of the target cloud, the target cloud cannot be directly connected to a physical private line of the public network, so that the transit server directly connected to the target cloud cannot be in the public network environment. The transfer server side is connected with the original working space cloud based on a physical private line, and the other side is connected with the target cloud based on a virtual private network private line. The relay environment provided by the relay server can be a local environment or another cloud which is in the same network environment with the target cloud.
The original working space cloud and the target cloud are provided with an integrated research and development collaborative management platform, and the functions of project collaboration, test management, code hosting, product library, continuous integration, continuous deployment and the like can be realized. And developing a collaborative management platform by a developer in one-stop mode in the original working space cloud, developing data development codes, managing source codes through a code warehouse, and finally completing continuous integration based on an automatic pipeline to obtain an integrated product. Wherein, accomplish the goods and build the link in the automated assembly line and include: pulling source codes, running unit testing, code quality security scanning, generating products based on the source codes, and product security scanning. The integration product is a binary file generated by compiling and packaging source codes, and the binary file can be directly run on a server.
Further, the developer develops the integrated product based on the original working space cloud, and sends the integrated product to the transfer server through the physical private line, and the transfer server receives and caches the integrated product in the product warehouse. The product warehouse is used for managing the built products after source code compiling, supporting various common product warehouse types, enabling the product warehouse to be integrated with local building tools and continuous deployment on the cloud continuously and seamlessly, and supporting the characteristics of vulnerability scanning and the like. As a possible implementation, the mvn reply command may be executed based on maven (an automated build tool), the software development project is built to generate a corresponding integrated product, such as a Jar package (a software package file format) and the like, and then the integrated product is sent to a product repository of the transit server through HTTP (Hypertext Transfer Protocol ), alternatively, the product repository may be a Nexus repository. Before executing the build command, relevant information of the product repository including a user name, a password, a uniform resource locator, etc. of the product repository needs to be configured in the project object model file of the project, so that maven can correctly upload the built integrated product into the product repository. In addition, the product warehouse in the transfer server is only used as a transfer warehouse, and in the subsequent process, the grabbing module of the transfer server grabs the product file from the transfer warehouse for transmission to the target cloud.
In this embodiment, a transfer server is added between the original working space cloud and the target cloud to receive a product for caching the original working space cloud, so that two cloud environments can be isolated, isolation between the two cloud environments is ensured, and risk of information leakage is reduced. Meanwhile, a cross-cloud special line is not required to be built, so that the cost is greatly saved.
And step S20, reading the integrated product based on a preset time interval, and carrying out safety detection on the integrated product.
In this embodiment, referring to fig. 6, after the integrated product is sent to the product transfer server Nexus warehouse, the product synchronization service will periodically (for example, with an interval of 10 s) grasp the product files stored in the nexs warehouse, including front-end products, application packages, mirror image files, and call the transmission module, and send the product to the product warehouse of the target cloud one-stop research and development collaborative management platform. Before transmission, the security detection is needed to be carried out on the grabbed product file so as to ensure the security of the content of the product file. Alternatively, a plurality of arbitration nodes may be disposed at the relay server, where the relay server may perform security detection by acquiring source information of the captured product file, such as sender information and transmission channels for transmitting the product file, and content data of source codes designed in the product file. Meanwhile, the arbitration nodes are provided with corresponding scoring mechanisms and scoring weights, the normalization of the content in the product file can be scored in confidence, sources and the content of the product file are judged through a plurality of arbitration nodes, a confidence score is obtained through calculation through the weight value corresponding to each arbitration node, when the confidence score reaches a preset score threshold (such as 85), the content and the sources of the product file are judged to be credible, namely, the product file passes through the security detection, otherwise, the current product file is judged not to pass through the security detection, and when the product file does not pass through the security detection, a message which does not pass through the detection is sent to a source server sending the product file based on the source information of the product file, and the product file is informed to be checked, repaired and resent.
In the embodiment, the security detection is performed on the product file to be transmitted by setting the arbitration node, so that the regularity of data sources and the security standardization of product contents are ensured, and the high efficiency and the security of the cross-cloud delivery process of the software are further improved.
And step S30, when the security detection of the integrated product passes, sending the product file corresponding to the integrated product to the target cloud based on the virtual private network private line.
In this embodiment, after the integrated product passes the security detection, that is, the source and the content security of the integrated product are guaranteed, the product file is sent to the target cloud through a VPN (Virtual Private Network ) private line, so as to complete the subsequent steps of software deployment, software testing, and the like. Referring to fig. 2, the steps include:
step S31, calling a transmission module of the system and logging in the fort machine of the target cloud based on a preset account number.
And step S32, based on the fort machine and a preset connection command, establishing communication connection with a back-end server of the target cloud.
And step S33, determining a storage catalog corresponding to the product file in the back-end server.
And step S34, carrying out security audit record based on the fort machine, and sending the product file to the storage directory of the back-end server based on the virtual private network private line.
It should be noted that, in order to ensure smoothness of subsequent product file transmission, a VPN private line connection needs to be established between the intermediate transfer server environment and the target cloud environment, including setting a login account and a login password. After establishing VPN private line connection, the transfer server calls a transmission module of the transfer server to log in a fort machine of the target cloud through a preset account number and password authorization, and then the transfer server is connected to a back-end server of the target cloud through a preset connection command, namely Shell command (a script command) of a linux system (an operating system). After the connection is successful, the storage catalog of the product file in the back-end server is further determined. Finally, the transmission module will continue to send the product file to the back-end server designated directory, during which the fort will make security audit records for the whole process. And the rear-end server of the target cloud triggers an automation module, a Shell script program is operated at fixed time through an expression generator built in a Linux system, and a file received under a specified directory is sent to a product warehouse of the one-stop research and development collaborative management platform of the target cloud.
The fort in the target cloud is a security control node located between the protected network and the external network for managing remote access and maintaining security of the protected network. The fort provides a multi-layer authentication mechanism that ensures that only authorized users can access the protected network. User identity is typically confirmed using a username/password combination, a key, multi-factor authentication, etc. Similarly, the bastion machine also records and monitors the session activities of all users, including login time, command execution, file transmission and other operations, so as to complete the security audit work. Specifically, the security audit record at least includes the following: log-in: the access condition of the user to the system can be tracked by recording the information such as the time of logging in the system, the source IP address, the user name and the like. Operation log: the operation of the user in the system, such as command execution, file access, configuration change and the like, and the detailed information of time, objects, results and the like of the operation are recorded. Audit event log: recording events found during security audit processes, such as intrusion attempts, abnormal behavior, blocked attacks, etc., helps analyze and identify potential security risks. Abnormality report: recording abnormal conditions, such as system crashes, service outages, network failures, etc., helps to learn and solve potential security problems.
In this embodiment, by using the fort, an organization can better manage and audit remote access and protect the protected network from unauthorized access and attacks. The safety is ensured, and meanwhile, the management efficiency and the operation convenience are improved. By using the fort machine to conduct security audit records, the security state of the system can be monitored, potential threats can be detected, the source of security events can be tracked, and appropriate security measures can be timely taken to deal with abnormal conditions.
Further, referring to fig. 3, in a second embodiment of the software cross-cloud delivery method of the present invention, determining in step S33 that the storage directory of the product file is on the backend server includes the following steps:
and S40, acquiring the directory structure of the back-end server.
And step S50, determining a deployment position corresponding to the product file based on the directory structure.
And step S60, determining a storage catalog corresponding to the product file according to the deployment position.
In this embodiment, when determining the storage directory of the artifact file, it is necessary to acquire the directory structure of the backend server first, including an important system directory, an application directory, a configuration file directory, and the like. This may be communicated to a server administrator or development team to obtain relevant information. Further, the deployment location of the application is determined, i.e. its deployment location on the backend server is determined according to the type and deployment mode of the application. For example, a Web application may be deployed under the root directory of a Web server, while other applications may have a particular installation directory. Then, looking at the server configuration file, the configuration file of the server will typically contain configuration items about the storage directory, and by looking at the relevant configuration file, such as the configuration file of a Web server or the configuration file of an application program, the setting of the specified storage directory is found. The specific position of the storage directory is determined according to the requirement of the application program, and the proper directory path is selected by considering the factors such as the read-write authority and the security required by the application program.
It should be noted that the specific storage directory structure and path may vary from application to application, server environment to server, and organization requirements. Thus, it is important to maintain communication and collaboration with server administrators, development teams, and related personnel within an organization in determining a storage catalog. Ensuring that all interested parties understand and agree to the selected storage directory for proper file access and management later.
In the embodiment, the storage directory of the product file in the rear end server of the target cloud is determined and sent to the storage directory, so that the storage efficiency of the product file is improved, and the subsequent searching process when the product file is called is facilitated.
Referring to fig. 4, a third embodiment of the software cross-cloud delivery method of the present invention is applied to a target cloud, and the software cross-cloud delivery method includes the following steps:
and step S70, receiving the product file sent by the transit server, and storing the product file under a storage directory of a back-end server of the product file.
And step S80, a preset script program is operated at fixed time so as to send the product files under the storage list to a product warehouse.
In the implementation, the back-end server of the target cloud triggers an automation module, a Shell script program is operated at regular time through an expression generator built in a Linux system, and a file received under a specified directory is sent to a product warehouse of a one-stop research and development collaborative management platform of the target cloud.
In this embodiment, referring to fig. 6, the software cross-cloud delivery method is applied to a target cloud, where the target cloud includes a fort machine, a target host, a one-stop research and development collaborative management platform, and the target host, when receiving a product file sent by a transit server based on a VPN private line, the target cloud stores the product file under a storage directory corresponding to a back-end server of the target cloud, and when the back-end server of the target cloud triggers an automation module, a Shell script program is regularly run through an expression generator built in a Linux system, and the file received under the specified directory is sent to a product warehouse of the one-stop research and development collaborative management platform of the target cloud. And a series of pipeline configurations such as continuous integrated task pushing products, product warehouse mirror image updating, triggering application deployment flow and the like are completed in the one-stop development collaborative management platform.
Further, the target cloud performs application deployment on a self one-stop development collaborative management platform based on the acquired product file. Optionally, the triggering mode of application deployment can automatically trigger the application deployment pipeline of the target cloud one-stop research and development collaboration management platform through a shell script program on the target server, and automatically complete application deployment. In addition, a developer can manually trigger an application deployment pipeline to complete application deployment by logging in a target cloud one-stop research and development collaborative management platform.
Optionally, referring to fig. 5, after step S80, the application deployment includes the steps of:
and step S90, when the application deployment command is triggered, determining a production environment required by the application program corresponding to the product file, and configuring the production environment.
And step S100, modifying the configuration file of the application program according to the configuration requirement of the production environment.
Step S110, deploying the configuration file and related data of the application program into the production environment.
In this embodiment, when an application deployment command is triggered, a production environment is first configured according to a production environment required by an application program corresponding to a product file. And modifying the configuration file of the application program according to the configuration requirement of the production environment, and finally deploying the configuration file of the application program and related data into the production environment to complete a series of deployment of the application program. Further, it is first required to determine which server, cloud platform or container environment, etc. the application corresponding to the product file is deployed to, that is, the required production environment, and when configuring the production environment, it is ensured that the target production environment meets the running requirements of the application, including resource planning for the production environment, so as to ensure that there is enough server capacity to handle the expected traffic and load. And proper caching mechanism is configured, so that the load of the database and the network request is reduced. The load balancer is used for distributing the requests, so that the scalability and fault tolerance of the system are improved. And performing performance optimization on the critical path, the database query and the like to improve the response speed and the throughput of the system. In addition, the operating system and the network may be set. The application and associated file data (e.g., configuration files, static resources, dependent libraries, etc.) are packaged for transmission and installation in the target environment, where tools such as a Docker (an open source application container engine) or the like may be used to containerize and modify the application's configuration files, e.g., database connections, server addresses, security keys, etc., according to the requirements of the production environment. Finally, if the application program needs to use existing data, the configuration files and related data need to be migrated from the development or testing environment to the production environment, so that the integrity and consistency of the data are ensured. The application may be deployed and installed in a production environment, copied to a server, or automatically deployed through a continuous integration/deployment tool.
Further, after deployment is completed, testing and verification are required to ensure that the application program can normally run and provide services in the production environment. The method comprises SIT environment system integration test, UAT environment user acceptance test and PRD production environment test after final delivery and online.
The test items of the three environments all need to create the test environment needed by the current application program, test the application program through the created test environment, further record and analyze the test result of the application program, and debug and modify the application program through the test result.
The SIT is a stage in the life cycle of software development and is used for verifying whether the integration and cooperation of each component of the system are normal. When performing SIT environment system integration test, it is necessary to determine the system to be tested and the various components and subsystems involved in the test, so as to establish a test environment similar to the production environment, including hardware, operating system, network configuration, etc., and install all relevant software and dependencies. Appropriate test data is created according to test requirements, including typical scenes, boundary conditions, abnormal conditions and the like. The test data can cover different functions and interaction points of the system, and detailed test strategies and plans are formulated, including test targets, test ranges, test case designs, execution plans and the like. The various components and subsystems are ultimately integrated into the SIT environment and the necessary configuration and parameter settings are made. Executing the test case, verifying the interfaces and data transfer between the system components, and checking whether the systems integrate and cooperate as expected.
Further, PRD production environment testing refers to testing software systems or applications in an actual production environment. This is to ensure that the system is able to operate stably and reliably and meets user needs and expectations before being formally put into use. First, it is explicitly necessary to make detailed test plans, including test strategies, test methods, test case designs, and execution plans, for ensuring testing of various aspects of the full-scale coverage system by virtue of the functionality and features that are tested in the production environment. Ensuring that the systems in the production environment are deployed and configured, including hardware devices, operating systems, network settings, etc. According to the test requirements and actual use conditions, appropriate test data are prepared, including typical scenes, boundary conditions, abnormal conditions and the like. Test cases in a test plan are executed in a production environment to verify the function, performance and stability of the system. The tests may include functional tests, performance tests, security tests, and the like.
Finally, the UAT user acceptance test is the last test stage in the software development lifecycle, primarily to verify whether the system meets user needs and expectations. A system or application program to be subjected to user acceptance testing is first determined, so that a testing environment similar to a production environment is established, including hardware, an operating system, network configuration and the like, and all relevant software and dependent items are installed. Ensuring that the UAT environment matches the production environment that the actual user will use. And creating proper test data according to the requirements of users and actual use scenes. The test data should cover typical user operations, various scenarios and boundary conditions. And (3) making detailed test strategies and plans, including test targets, test ranges, test case designs, execution plans and the like. Of particular concern are the user needs and the degree of coverage desired. Ensuring that the systems in the UAT environment are already integrated and deployed and performing the necessary configuration and parameter settings. Based on the real user or team on behalf of the user executing the test case, the actual usage scenario is simulated, verifying whether the system meets the user needs and expectations.
In the test process, the problems and errors found in the test process are recorded, error tracking and management are carried out, the test results are analyzed, and for the found problems, a developer repairs the problems and retests the test certificate, so that the repair is ensured not to introduce new problems.
In this embodiment, the target cloud stores the product file, completes application deployment, and performs a testing phase, so that the security of the cross-cloud delivery of the software and the integrity of the whole delivery flow can be ensured.
Referring to fig. 7, fig. 7 is a schematic diagram of a relay server structure of a hardware running environment according to an embodiment of the present invention.
As shown in fig. 7, the relay server may include: a processor 1001, such as a central processing unit (Central Processing Unit, CPU), a communication bus 1002, a network interface 1003, and a memory 1004. Wherein the communication bus 1002 is used to enable connected communication between these components. The network interface 1004 may optionally include a standard wired interface, a WIreless interface (e.g., a WIreless-FIdelity (WI-FI) interface). The Memory 1004 may be a high-speed random access Memory (Random Access Memory, RAM) Memory or a stable Non-Volatile Memory (NVM), such as a disk Memory. The memory 1004 may also optionally be a storage device separate from the processor 1001 described above.
It will be appreciated by those skilled in the art that the structure shown in fig. 7 does not constitute a limitation on the relay server, and may include more or fewer components than shown, or may combine certain components, or a different arrangement of components.
As shown in fig. 7, an operating system, a data storage module, a network communication module, a user interface module, and a software cross-cloud delivery program may be included in the memory 1004 as one storage medium.
In the relay server shown in fig. 7, the network interface 1003 is mainly used for data communication with other devices; the processor 1001 and the memory 1004 in the relay server of the present invention may be provided in the relay server, and the relay server calls the relay server program stored in the memory 1004 through the processor 1001 and performs the following steps:
receiving and caching an integrated product sent by the original workspace cloud, wherein the original workspace cloud is used for generating the integrated product based on development data;
reading the integrated product based on a preset time interval, and carrying out safety detection on the integrated product;
and when the integrated product security detection passes, sending the product file to the target cloud based on the virtual private network private line.
Further, the relay server calls a relay server program stored in the memory 1004 through the processor 1001, and further performs the following steps:
calling a transmission module of the self and logging in a fort machine of the target cloud based on a preset account number;
establishing communication connection with a back-end server of the target cloud based on the fort machine and a preset connection command;
determining a storage catalog corresponding to the product file in the back-end server;
and carrying out security audit record based on the fort machine, and sending the product file to the storage directory of the back-end server based on the virtual private network private line.
Further, the relay server calls a relay server program stored in the memory 1004 through the processor 1001, and further performs the following steps:
acquiring a directory structure of the back-end server;
determining a deployment position corresponding to the product file based on the directory structure;
and determining a storage catalog corresponding to the product file according to the deployment position.
Further, the relay server calls a relay server program stored in the memory 1004 through the processor 1001, and further performs the following steps:
acquiring source information and content data of the integrated product;
transmitting source information and content data of the integrated product to an arbitration node, and performing confidence scoring on the integrated product based on the arbitration node;
and when the result of the confidence score is higher than a preset score threshold value, judging that the integrated product passes the safety detection.
Referring to fig. 8, fig. 8 is a schematic diagram of a target cloud structure of a hardware running environment according to an embodiment of the present invention.
As shown in fig. 8, the target cloud may include: a processor 2001, such as a central processing unit (Central Processing Unit, CPU), a communication bus 2002, a user interface 2003, a network interface 2004, a memory 2005. Wherein a communication bus 2002 is used to enable connected communications between these components. The user interface 2003 may include a Display screen (Display), an input unit such as a Keyboard (Keyboard), and the optional user interface 2003 may also include a standard wired interface, a wireless interface. The network interface 2004 may optionally include a standard wired interface, a WIreless interface (e.g., a WIreless-FIdelity (WI-FI) interface). The Memory 2005 may be a high-speed random access Memory (Random Access Memory, RAM) Memory or a stable nonvolatile Memory (NVM), such as a disk Memory. The memory 2005 may alternatively be a storage device independent of the aforementioned processor 2001.
Those skilled in the art will appreciate that the structure shown in fig. 8 is not limiting on the target cloud and may include more or fewer components than shown, or certain components in combination, or a different arrangement of components.
As shown in fig. 8, an operating system, a data storage module, a network communication module, a user interface module, and a software cross-cloud delivery program may be included in the memory 2005 as one type of storage medium.
In the target cloud shown in fig. 8, the network interface 2004 is mainly used for data communication with other devices; the user interface 2003 is mainly used for data interaction with a user; the processor 2001 and the memory 2005 in the target cloud of the present invention may be disposed in the target cloud, and the target cloud calls the software cross-cloud delivery program stored in the memory 2005 through the processor 2001 and performs the following steps:
receiving a product file sent by a transit server, and storing the product file under a storage directory of a back-end server of the product file;
and running a preset script program at fixed time to send the product files under the storage list to a product warehouse.
Further, the target cloud invokes, via the processor 2001, a software cross-cloud delivery program stored in the memory 2005, further performing the steps of:
when an application deployment command is triggered, determining a production environment required by an application program corresponding to the product file, and configuring the production environment;
modifying a configuration file of the application program according to the configuration requirement of the production environment;
and deploying the configuration file and related data of the application program into the production environment.
Further, the target cloud invokes, via the processor 2001, a software cross-cloud delivery program stored in the memory 2005, further performing the steps of:
creating a test environment required by the application program;
testing the application program based on the test environment;
recording and analyzing the test result of the application program;
and carrying out debugging modification on the application program based on the test result.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or system. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or system that comprises the element.
The foregoing embodiment numbers of the present invention are merely for the purpose of description, and do not represent the advantages or disadvantages of the embodiments.
From the above description of the embodiments, it will be clear to those skilled in the art that the above-described embodiment method may be implemented by means of software plus a necessary general hardware platform, but of course may also be implemented by means of hardware, but in many cases the former is a preferred embodiment. Based on such understanding, the technical solution of the present invention may be embodied essentially or in a part contributing to the prior art in the form of a software product stored in a storage medium (e.g. ROM/RAM, magnetic disk, optical disk) as described above, comprising several instructions for causing a terminal device (which may be a computer, a server or a network device, etc.) to perform the method according to the embodiments of the present invention.
The foregoing description is only of the preferred embodiments of the present invention, and is not intended to limit the scope of the invention, but rather is intended to cover any equivalents of the structures or equivalent processes disclosed herein or in the alternative, which may be employed directly or indirectly in other related arts.

Claims (10)

1. The cross-cloud software delivery method is characterized by being applied to a transit server, wherein one side of the transit server is connected with an original working space cloud based on a physical private line, and the other side of the transit server is connected with a target cloud based on a virtual private network private line, and the cross-cloud software delivery method comprises the following steps:
receiving and caching an integrated product sent by the original workspace cloud, wherein the original workspace cloud is used for generating the integrated product based on development data;
reading the integrated product based on a preset time interval, and carrying out safety detection on the integrated product;
and when the security detection of the integrated product passes, sending the product file corresponding to the integrated product to the target cloud based on the virtual private network private line.
2. The method for cross-cloud delivery of software according to claim 1, wherein the step of sending the product file corresponding to the integrated product to the target cloud based on the virtual private network private line comprises:
calling a transmission module of the self and logging in a fort machine of the target cloud based on a preset account number;
establishing communication connection with a back-end server of the target cloud based on the fort machine and a preset connection command;
determining a storage catalog corresponding to the product file in the back-end server;
and carrying out security audit record based on the fort machine, and sending the product file to the storage directory of the back-end server based on the virtual private network private line.
3. The method of software cross-cloud delivery of claim 2, wherein the step of determining a corresponding storage directory for the artifact file in the backend server comprises:
acquiring a directory structure of the back-end server;
determining a deployment position corresponding to the product file based on the directory structure;
and determining a storage catalog corresponding to the product file according to the deployment position.
4. The method of software cross-cloud delivery of claim 1, wherein the step of reading the integrated article based on a preset time interval and performing security detection on the integrated article comprises:
acquiring source information and content data of the integrated product;
transmitting source information and content data of the integrated product to an arbitration node, and performing confidence scoring on the integrated product based on the arbitration node;
and when the result of the confidence score is higher than a preset score threshold value, judging that the integrated product passes the safety detection.
5. The software cross-cloud delivery method is applied to the target cloud and is characterized by further comprising the following steps:
receiving a product file sent by a transit server, and storing the product file under a storage directory of a back-end server of the product file;
and running a preset script program at fixed time to send the product files under the storage list to a product warehouse.
6. The method for cross-cloud delivery of software as claimed in claim 5, wherein after said step of running a preset script program at regular time to send the artifact file under the storage directory to an artifact repository, further comprising:
when an application deployment command is triggered, determining a production environment required by an application program corresponding to the product file, and configuring the production environment;
modifying a configuration file of the application program according to the configuration requirement of the production environment;
and deploying the configuration file and related data of the application program into the production environment.
7. The method of cross-cloud software delivery of claim 6, wherein after the step of deploying the configuration file and related data of the application into the production environment, further comprising:
creating a test environment required by the application program;
testing the application program based on the test environment;
recording and analyzing the test result of the application program;
and carrying out debugging modification on the application program based on the test result.
8. A transit server, the transit server comprising: a memory, a processor, and a software cross-cloud delivery program stored on the memory and executable on the processor, the software cross-cloud delivery program configured to implement the steps of the software cross-cloud delivery method of any of claims 1 to 4.
9. A target cloud comprising a memory, a processor, and a software cross-cloud delivery program stored on the memory and executable on the processor, the software cross-cloud delivery program configured to implement the steps of the software cross-cloud delivery method of any of claims 5 to 7.
10. A storage medium, wherein a software cross-cloud delivery program is stored on the storage medium, and the software cross-cloud delivery program implements the steps of the software cross-cloud delivery method according to any one of claims 1 to 4 when executed by a processor, or implements the steps of the software cross-cloud delivery method according to any one of claims 5 to 7 when executed by a processor.
CN202311183336.1A 2023-09-14 2023-09-14 Software cross-cloud delivery method, transfer server, target cloud and storage medium Active CN116915516B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311183336.1A CN116915516B (en) 2023-09-14 2023-09-14 Software cross-cloud delivery method, transfer server, target cloud and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311183336.1A CN116915516B (en) 2023-09-14 2023-09-14 Software cross-cloud delivery method, transfer server, target cloud and storage medium

Publications (2)

Publication Number Publication Date
CN116915516A true CN116915516A (en) 2023-10-20
CN116915516B CN116915516B (en) 2023-12-05

Family

ID=88367336

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311183336.1A Active CN116915516B (en) 2023-09-14 2023-09-14 Software cross-cloud delivery method, transfer server, target cloud and storage medium

Country Status (1)

Country Link
CN (1) CN116915516B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117354798A (en) * 2023-12-04 2024-01-05 深圳市开源网络安全服务有限公司 Continuous deployment method, system and related equipment based on cellular network

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007066333A1 (en) * 2005-12-07 2007-06-14 Swartz Alon R A practical platform for high risk applications
CN106327152A (en) * 2016-08-11 2017-01-11 宁波亦道信息科技有限公司 Integrated iteration software development process control system and method
CN110347395A (en) * 2018-04-03 2019-10-18 中移信息技术有限公司 Software distribution method and device based on cloud computing platform
US10613970B1 (en) * 2018-08-31 2020-04-07 Intuit Inc. Method and system for managing deployment of software application components based on software performance data
CN112328503A (en) * 2020-11-30 2021-02-05 武汉空心科技有限公司 Task acceptance method for software development working platform
CN112788029A (en) * 2021-01-11 2021-05-11 河北志晟信息技术股份有限公司 Method and system for publishing computer program product
CN113128197A (en) * 2021-05-12 2021-07-16 中国建设银行股份有限公司 Method and device for managing application production versions
CN114064475A (en) * 2021-11-11 2022-02-18 中国联合网络通信集团有限公司 Cloud native application testing method, device, equipment and storage medium
CN116594635A (en) * 2023-05-17 2023-08-15 北京无代码科技有限公司 Cloud primary continuous integration and delivery method and device

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007066333A1 (en) * 2005-12-07 2007-06-14 Swartz Alon R A practical platform for high risk applications
CN106327152A (en) * 2016-08-11 2017-01-11 宁波亦道信息科技有限公司 Integrated iteration software development process control system and method
CN110347395A (en) * 2018-04-03 2019-10-18 中移信息技术有限公司 Software distribution method and device based on cloud computing platform
US10613970B1 (en) * 2018-08-31 2020-04-07 Intuit Inc. Method and system for managing deployment of software application components based on software performance data
CN112328503A (en) * 2020-11-30 2021-02-05 武汉空心科技有限公司 Task acceptance method for software development working platform
CN112788029A (en) * 2021-01-11 2021-05-11 河北志晟信息技术股份有限公司 Method and system for publishing computer program product
CN113128197A (en) * 2021-05-12 2021-07-16 中国建设银行股份有限公司 Method and device for managing application production versions
CN114064475A (en) * 2021-11-11 2022-02-18 中国联合网络通信集团有限公司 Cloud native application testing method, device, equipment and storage medium
CN116594635A (en) * 2023-05-17 2023-08-15 北京无代码科技有限公司 Cloud primary continuous integration and delivery method and device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117354798A (en) * 2023-12-04 2024-01-05 深圳市开源网络安全服务有限公司 Continuous deployment method, system and related equipment based on cellular network
CN117354798B (en) * 2023-12-04 2024-03-08 深圳市开源网络安全服务有限公司 Continuous deployment method, system and related equipment based on cellular network

Also Published As

Publication number Publication date
CN116915516B (en) 2023-12-05

Similar Documents

Publication Publication Date Title
EP3311529B1 (en) Resilience as a service
US9354865B2 (en) System and method for controlling the development of a software application
US7308712B2 (en) Automated computer vulnerability resolution system
US8166341B2 (en) Systems and methods for testing results of configuration management activity
JP2021533459A (en) Application programming interface for automatic operation management
Larsson et al. Impact of etcd deployment on Kubernetes, Istio, and application performance
US20090307763A1 (en) Automated Test Management System and Method
US20080270104A1 (en) System and Method for Creating an Assurance System in a Mixed Environment
US20130262931A1 (en) Systems and/or methods for testing client reactions to simulated disruptions
CN116915516B (en) Software cross-cloud delivery method, transfer server, target cloud and storage medium
US20120110058A1 (en) Management system and information processing method for computer system
Oliveira et al. Barricade: defending systems against operator mistakes
Dunagan et al. Towards a self-managing software patching process using black-box persistent-state manifests
CN112398857B (en) Firewall testing method, device, computer equipment and storage medium
Baiardi et al. Twin based continuous patching to minimize cyber risk
Splaine Testing Web Security: Assessing the Security of Web Sites and Applications
Tellnes Dependencies: No software is an island
CN113922975A (en) Security control method, server, terminal, system and storage medium
CN114036505A (en) Safety operation and maintenance analysis server, safety operation and maintenance analysis method and computer equipment
Brinn et al. Extending the limits of DMAS survivability: The ultralog project
Alcock et al. Improving intent correctness with automated testing
CN117938405B (en) CDN service arrangement method, device, equipment and storage medium in multi-cloud environment
CN114024735B (en) Multi-task parallel feature library testing method and device
CN112580835B (en) Management method and device of server
Alannsary et al. Cloud-ODC: Defect classification and analysis for the Cloud

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant