System and method for connector development and integrated channel deployment

文档序号:884177 发布日期:2021-03-19 浏览:14次 中文

阅读说明:本技术 用于连接器开发和集成通道部署的系统和方法 (System and method for connector development and integrated channel deployment ) 是由 维亚切斯拉夫·杜宾斯 阿尔特姆·尔马科夫 帖木儿·哈基米亚诺夫 安东·洛格文尼科 伊戈尔·瓦 于 2019-05-15 设计创作,主要内容包括:独立软件开发商ISV开发、支持、执行和销售云应用。云服务代理平台(CSB)提供来自不同ISV的集成云应用的部分自动化交付。ISV软件的集成需要特殊的集成组件,例如连接器包和连接器后端。开发这样的组件既费时又昂贵。本公开涉及一种系统和方法,该系统和方法允许连接器开发者通过允许自动部署和配置网络服务,来降低开发连接器包和连接器后端的成本,并且还通过使用从由CSB创建的原型中生成连接器包的自动编写工具,允许支持内存不足的可扩展性和零停机时间升级。(Independent software developers ISVs develop, support, execute, and sell cloud applications. A cloud service broker platform (CSB) provides partially automated delivery of integrated cloud applications from different ISVs. The integration of ISV software requires special integration components such as a connector package and a connector backend. Developing such components is time consuming and expensive. The present disclosure relates to a system and method that allows connector developers to reduce the cost of developing connector packages and connector backend by allowing automatic deployment and configuration of network services, and also allows support for memory-starved scalability and zero-downtime upgrades by using an automatic authoring tool that generates connector packages from prototypes created by CSBs.)

1. A method for connector development of software services using a cloud service broker, CSB, platform, the method comprising:

receiving a request to create a connector bundle at a developer tool, the developer tool operably connected to the CSB platform;

creating a copy of a prototype connector package at the developer tool to create a base connector package;

compiling business logic code of the software service at the developer tool and generating the connector package based at least in part on the base connector package;

creating a resource model schema at the developer tool, the resource model schema further packaged into a connector archive;

creating a connector back-end deployment unit at the developer tool, the connector back-end deployment unit further being combined into a server image;

creating a container orchestrator package at the developer tool, the container orchestrator package consisting of a set of container orchestrator resources, the container orchestrator package subsequently pushed into a package repository;

pushing, at the developer tool, the server image into a server repository;

assembling, at the developer tool, the server image, the resource model schema from the connector archive, the container orchestrator package to create an archived connector package; and

delivering the archived connector bundle to the CSB platform.

2. The method of claim 1, wherein creating a base connector bundle further comprises:

requesting an application name and a persistence condition;

downloading an additional component selected from the group consisting of a library, a driver, and a log store;

generating a connector package source; and

a development catalog is created.

3. The method of claim 1, further comprising the step of testing the connector pack.

4. The method of claim 1, wherein the archived connector bundle further comprises a combination of user interface code, resource models, navigation descriptions, and deployment descriptors.

5. The method of claim 1, wherein the server image comprises a plurality of instruction set layers.

6. The method of claim 5, wherein the plurality of instruction set layers form a base image.

7. The method of claim 5, wherein a last layer of the plurality of instruction set layers comprises a developer layer.

8. A method for integrated channel deployment of software services using a cloud service broker, CSB, platform, the method comprising:

installing an archive connector package to the CSB platform through the CSB platform application program interface API;

receiving a container organizer package at the CSB platform;

generating authentication credentials at a developer tool, the authentication credentials further built into a deployment descriptor;

running, by a container organizer, a connector back end obtained from the container organizer package;

generating a backend endpoint Uniform Resource Locator (URL) at a developer tool; and

registering the endpoint URL at the CSB platform.

9. The method of claim 8, further comprising checking for persistence requirements.

10. The method of claim 9, wherein a database connection is specified and further written to the deployment descriptor.

11. A system for connector development and integrated channel deployment for software services using a cloud service broker CSB platform, the system comprising:

a developer tool operably connected to the CSB platform, the developer tool further comprising:

an infrastructure component library; and

a plurality of developer tool modules;

the CSB platform also includes a CSB controller.

12. The system of claim 11, wherein the infrastructure component library comprises a plurality of libraries selected from the group consisting of a log manager, a test, monitoring manager, an authorization manager, a user interface component, a database manager, a REST application service, and a developer component placeholder.

13. The system of claim 11, wherein the plurality of developer tool modules are selected from the group consisting of a component generator, a storage server, a compiler, a resource model schema builder, an integrated channel builder, a component builder, an interface, a connector assembler, an image builder, and a container orchestrator package builder.

14. The system of claim 11, wherein the developer tool is configured to:

requesting to create a connector package;

creating a copy of the prototype connector package to create a base connector package;

compiling business logic code for the software service and generating the connector package based at least in part on the base connector package;

creating a resource model mode, and further packaging the resource model mode into a connector file;

creating a connector back-end deployment unit, further combining the connector back-end deployment unit into a server image;

creating a container orchestration package comprising a set of container orchestrator resources, and then pushing the container orchestrator package into a package repository;

pushing the server image into a server repository;

assembling the resource model schema from the connector archive with a container orchestrator package to create an archived connector package; and

delivering the archived connector bundle to the CSB platform.

15. The system of claim 14, wherein the developer tool is further configured to create a base connector package.

16. The system of claim 11, wherein the developer tool is further configured to:

installing an archive connector package to the CSB platform through the CSB platform application program interface API;

generating an authentication credential, the credential further embedded into a deployment descriptor;

running, by a container organizer, a connector back end obtained from the container organizer package;

generating a rear end Uniform Resource Locator (URL); and

registering the endpoint URL at the CSB platform.

17. The system of claim 16, further comprising a database configured to support persistence.

Technical Field

The present disclosure relates to systems and methods of development and, more particularly, to systems and methods for connector development and integrated channel deployment.

Background

Currently, many independent software developers (ISVs) provide their software through an online service platform. Such software as a service (SaaS) providers allow SaaS users/end users to obtain and use software services hosted by the SaaS providers. ISVs develop, support, execute, and sell cloud SaaS products. For example,andis a common example of an isas product.

In some embodiments, the ISVs provide their software through a Cloud Service Broker (CSB) platform. The CSB provides partially automated delivery of integrated cloud applications from different ISVs to agents and end customers. The CSB platform allows customers to acquire and configure integrated cloud applications from different ISVs in one place through a unified User Interface (UI).

To achieve this integration with the CSB, the ISV typically prepares special integrated components, referred to as connector packs and connector back-ends. The connector backend is used to convert Application Program Interface (API) calls with control methods received from the CSB platform into API calls for individual ISV cloud applications. In some embodiments, such an integrated component appears as a web service responsible for handling requests from the CSB.

In one embodiment, the connector bundle is typically in the form of an archive file including metadata, control method descriptions, and content files that are used to declare and define the logic of the SaaS application resources, services, user interface components, and control methods needed to manage the resources.

The development of connectors and connector back-ends can be a complex process that includes several components and activities, including, for example: designing application resources of the ISV and defining CSB meta-description terms; implementing business logic to process CSB requests regarding resource creation, modification, deletion, linking, unlinking, and custom operations; creating an automated back-end unit and an integrated test; creating and embedding a UI application screen into a CSB predefined placeholder; packing the ISV connector pack; deploying and configuring the connector backend, which is then made accessible for authentication from the CSB; check all scenarios on sales, up-sales, cancellation, and termination, etc.

Furthermore, after adding any new integrated components, the ISV will have to maintain the connector backend to support the ability to sell current SaaS products and the ability for customers to manage their online SaaS purchases. The ISV wishes to avoid any connector backend service downtime to ensure maximum availability for sale.

Current developments of connectors and connector back ends are time consuming, expensive, and prone to downtime. Accordingly, there is a need for improved systems and methods for connector development and integration channel deployment that allow connector developers (e.g., ISVs) to reduce the cost of developing connector packages and connector backend, and allow for automated deployment and configuration of SaaS-integrated network services, and further allow for scalability and zero downtime upgrades.

Disclosure of Invention

The present disclosure relates to a connector development method for software services, using a Cloud Service Broker (CSB) platform, the method comprising receiving a request to create a connector bundle, the development tool being operatively connected to the CSB platform; creating a copy of the prototype connector package to create a base connector package; compiling business logic code of the software service and generating a connector package based on at least a portion of the base connector package; creating a resource model schema, the resource model schema further packaged into a connector archive; creating a connector back-end deployment unit, the connector back-end deployment unit further combining into a server image; creating a container orchestrator package, the container orchestrator package consisting of a set of container orchestrator resources, the container orchestrator package subsequently pushed into a package repository; pushing the server image into a server repository; assembling a server image, a resource model pattern from a connector archive, a container orchestrator package to create an archived connector package; and delivering the archived connector bundle to the CSB platform.

In at least one embodiment of the present disclosure, creating the base connector package further comprises requesting an application name and a persistence condition; downloading an additional component selected from the group consisting of a library, a driver, and a log store; generating a connector package source; a development catalog is created.

In at least one embodiment of the present disclosure, the archived connector bundle further includes a combination of user interface code, resource models, navigation descriptions, and deployment descriptors.

In at least one embodiment of the present disclosure, an integrated channel deployment method for software services using a Cloud Service Broker (CSB) platform, comprises: installing the archive connector package to the CSB platform through a CSB platform Application Program Interface (API); receiving a container organizer package; generating an authentication credential, further embedding the authentication credential into the deployment descriptor; operating the rear end of the connector obtained from the container organizer package; generating a back-end endpoint Uniform Resource Locator (URL); and registering the endpoint URL at the CSB platform.

In at least one embodiment of the present disclosure, a system for connector development and integrated channel deployment of software services is provided, using a Cloud Service Broker (CSB) platform, the system comprising a developer tool operably connected to the CSB platform, the developer tool further comprising an infrastructure component library; and a plurality of developer tool modules; the CSB platform also includes a CSB controller.

In at least one embodiment of the present disclosure, the system further includes a plurality of libraries selected from the group consisting of log manager, test, monitoring manager, authorization manager, user interface component, database manager, REST application service, and developer component placeholder.

In at least one embodiment of the present disclosure, the developer module is selected from the group consisting of a component generator, a storage server, a compiler, a resource model schema builder, an integrated channel builder, a component builder, an interface, a connector assembler, an image builder, and a container orchestrator package builder.

In at least one embodiment of the present disclosure, the system perfects a developer tool configured to request creation of a connector package; creating a copy of the prototype connector package to create a base connector package; compiling business logic code for the software service and generating a connector package based at least in part on the base connector package; creating a resource model schema, the resource model schema further packaged into a connector archive; creating a connector back-end deployment unit, the connector back-end deployment unit further combining into a server image; creating a container orchestrator package, the container orchestrator package comprising a set of container orchestrator resources, and then pushing the container orchestrator package into a package repository; pushing the server image into a server repository; assembling a resource model schema from a connector archive with a container orchestrator package to create an archived connector package; and delivering the archived connector bundle to the CSB platform.

Drawings

Fig. 1 shows a schematic diagram of system connector development and integrated channel deployment in accordance with at least one embodiment of the present disclosure.

Fig. 2 illustrates a schematic diagram of a developer tool in accordance with at least one embodiment of the present disclosure.

Fig. 3 illustrates a flow diagram of a method for connector development and integrated channel deployment in accordance with at least one embodiment of the present disclosure.

Fig. 4 illustrates a flow diagram of a method for connector development and integrated channel deployment in accordance with at least one embodiment of the present disclosure.

Fig. 5 illustrates a flow diagram of a method for connector development and integrated channel deployment in accordance with at least one embodiment of the present disclosure.

Fig. 6 illustrates a flow diagram of a method for connector development and integrated channel deployment in accordance with at least one embodiment of the present disclosure.

Fig. 7 illustrates components of a system for connector development and integrated channel deployment in accordance with at least one embodiment of the present disclosure.

Detailed Description

Reference will now be made in detail to the preferred embodiments of the present disclosure, examples of which are illustrated in the accompanying drawings. Additional features and advantages of the disclosure will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of the disclosure. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are intended to provide further explanation of the disclosure as claimed.

Referring now to fig. 1, a system 100 for connector development and integrated channel deployment in accordance with at least one embodiment of the present disclosure is shown. System 100 includes Cloud Service Broker (CSB) device 102, CSB controller 104, connector package catalog 106, developer tool 108, connector back-end hub 110, independent software developer (ISV) device 112, and ISV developer device 114.

In at least one embodiment of the present disclosure, the CSB device 102 includes a CSB controller 104 and a connector package directory 106. Although the CSB controller 104 and the connector package directory 106 are shown as components within the CSB device 102, it is within the scope of the present disclosure that the CSB controller 104 and the connector package directory 106 may be separate and then remotely located and operatively connected to the CSB device 102. In at least one embodiment of the present disclosure, the CSB controller 104 is configured to create resources that fit the packages obtained from the connector package catalog 106. For example, a developer tool (as further disclosed herein) may be configured to upload a package to the connector package catalog 106, whereby the CSB controller 104 uses information obtained from the package catalog to provide resources appropriate for the package (i.e., software).

In at least one embodiment of the present disclosure, the connector backend hub 110 includes at least one container orchestrator solution 110A, such as kubernets, Docker swarm, and the like. It should be understood that the connector back-end hub 110 may include as many as the container orchestrator solution 110A. As is well known to those skilled in the art and further disclosed herein. In at least one embodiment of the present disclosure, the container orchestrator solution 110A is configured to allow for automatic deployment, scaling, and operation of application containers across host clusters. For example, it may be desirable to deploy a particular software service across multiple servers (i.e., hosts) to support the anticipated usage load (beyond the capacity of a single server/host). Continuing with this example, then, the container orchestrator solution 110A is configured to allow deployment of such software through application containers across host/server clusters. In at least one embodiment of the present disclosure, the container orchestrator solution 110A is operatively connected to the CSB devices 102 and the ISV devices 112 via APIs by way of non-limiting example. It should be appreciated that the container orchestrator solution 110A may be configured as an infrastructure as a service (IaaS) solution. In at least one embodiment of the present disclosure, the container orchestrator solution 110A is configured to hold a plurality of APIs that can be accessed by the CSB devices 102, wherein the CSB devices 102 can use the APIs to configure the connector backend. It should be further understood that the system 100 may include multiple container orchestrator solutions, each of which is configured for a different purpose, e.g., for testing, or production support purposes.

In at least one embodiment of the present disclosure, system 100 may include a plurality of ISV devices 112. Within the scope of the present disclosure, the system 100 may include as many ISV devices 112 as there are ISVs that will provide SaaS products through the CSB platform (i.e., the CSB devices 102).

Referring now to fig. 2, components of the developer tool 108, shown generally at 200, are illustrated in accordance with at least one embodiment of the present disclosure. In at least one embodiment of the present disclosure, the development tool 108 includes an infrastructure component library 202, a component generator 220, a storage server 222, a compiler 224, a resource model schema builder 226, an integration channel builder 228, a component builder 230, an interface 232, a connector assembler 234, an image builder 236, a container orchestrator package builder 240, and a container orchestrator manager 242.

In at least one embodiment of the present disclosure, the resource model schema builder 226 is configured to convert specially annotated Java files into connector package resource schemas. The resource model schema builder 226 is configured to read special annotations, such as APS type, APS structure, etc., and convert the annotated fields into fields in the resource schema. It should be understood that resource model schema builder 226 contains a list of available operations in CSB device 102 that have a resource and data types used in the JSON format.

In at least one embodiment of the present disclosure, component builder 230 is configured to dynamically download Java libraries from a plurality of repositories (e.g., an expert central repository) and store them in a local cache. The component builder 230 is further configured to store any built artifacts, e.g., network archives, data files, etc., in a local cache,Files, etc. It should be appreciated that when artifacts are not found in the local cache, the component builder 230 is configured to download the artifacts from the plurality of memory banks.

In at least one embodiment of the present disclosure, the interface 232 is configured to create developer-specified required properties through a command line in an interactive or non-interactive mode.

In at least one embodiment of the present disclosure, the image creator 236 is configured to create based on the created deployment unitsImages (step 412), as further disclosed herein. It should be understood that,an image is an inactive, immutable file that is essentially a snapshot of a container. It should be further understood that the container isImages and instances of runtime objects.

In at least one embodiment of the present disclosure, the infrastructure component library 202 further comprises a plurality of predefined connector package libraries including: a log manager library 204, a test library 206, a monitoring manager library 208, an authorization manager library 210, a User Interface (UI) component library 212, a database manager library 214, a REST application service library 216, and a development component placeholder library 218.

In at least one embodiment of the present disclosure, the logging manager 204 includes a logging library for integration with the connector backend using a unified logging mechanism. It should be appreciated that unified logging reduces maintenance costs. In at least one embodiment of the present disclosure, the log manager 204 includes a logging subsystem configured to record all standard outputs of the connector back-end (provided that the connector back-end is configured to record), as is well known to those skilled in the art. It should be understood that the log manager 204 may be configured to record all incoming HTTP and outgoing API requests that are recorded at a tracking level appropriate for such logging.

In at least one embodiment of the present disclosure, developer tool 202 is operable to configure an embedded recorder, which includes: setting a unique name, which may be the same as the name of the connector package used for origin determination in the centralized logging system; generating a log for all incoming and outgoing requests regarding trace needs; extracting relevant and generated information from incoming requests for multi-service calls; setting a uniform log line format, including date, correlation identifier, thread identifier, unique name, recorder name and log message; and setting an asynchronous standardized output log record storage. It should be appreciated that a unified log file format allows for good performance. It should further be appreciated that asynchronous standardized output logging makes searching easier in a centralized logging system.

In at least one embodiment of the present disclosure, the test library 206 is configured to establish and run various tests, for example, unit tests and integration tests, as is well known to those skilled in the art.

In at least one embodiment of the present disclosure, the monitoring manager library 208 includes libraries for health and performance metric monitoring, e.g., hypertext transfer protocol (HTTP) requests, Structured Query Language (SQL) requests, average response time, maximum response time, minimum response time, active sessions, number of parallel requests, and the like. It should be appreciated that the monitoring manager 208 is also configured to track metrics collected via the Java management extensions (JMX), whose resources are represented by objects named Mmeas, as is well known to those skilled in the art. It should be appreciated that the monitoring manager library 208 includes APIs and classes that can be dynamically loaded and instantiated, which provide capabilities for external (running outside the cluster) monitoring systems, e.g., Zabbix.

In at least one embodiment of the present disclosure, the authorization manager library 210 is configured to provide a library of authorization protocols, including, but not limited to, the open authorization 1.0 protocol, and the like. It should be understood that the open authorization credentials (KEY and SECRET) are provided to the connector back end hub 110 through environment variables, as is well known to those skilled in the art.

In at least one embodiment of the present disclosure, the UI component library 212 is configured to provide embedded UI components configured for creating a connector package that is capable of being operatively connected to a CSB platform (e.g., CSB device 102). It should be understood that the Java developer framework may be used to create connector-specific UI components.

In at least one embodiment of the present disclosure, the database manager library 214 is configured to provide a component for establishing a connection with a database (including any third party database). For example, a connector kit developer may prefer to use its own database to store data rather than the database provided by the CSB platform. In at least one embodiment of the present disclosure, the database manager library may be a component of the connector back-end hub 110. It should be appreciated that the database manager library 214 may provide connections to the database based on the credentials to provide the environment variables to the connector backend 110.

In at least one embodiment of the present disclosure, the REST application service library 216 is configured to provide REST service components configured to operate on requests for software instances, creation, update, deletion, and the like.

In at least one embodiment of the present disclosure, the developer component placeholder library 218 is configured to provide the connector developer's business code with a placeholder library, as further disclosed herein.

In at least one embodiment of the present disclosure, the developer tool 108 is configured to operate in a "development" mode. The developer tool 108 is configured to generate a new connector package from a prototype created by a CSB platform developer (not shown). In at least one embodiment of the present disclosure, a new connector package name is specified and a selection is made as to whether a database is required (as further disclosed herein). The prototype is defined as an original style or model to be used to make all other copies of the same kind and to follow the developed prototype style, which is well known to those skilled in the art and further disclosed herein.

In at least one embodiment of the present disclosure, the connector bundle is in the form of an archive file, typically including metadata, control method descriptions, and content files, that are used to declare and define (SaaS) the logic of the application resources, services, user interface components, and control methods necessary to manage the resources. It should be understood that the connector bundle consists of a declarative file defining the application resources of the ISV and a "connector front end" (i.e., the network interface that the CSB customer sees in the CSB interface (on the client side)). It should be further understood that the network interface is developed by the connector kit developer using a special framework that may include widgets, predefined page structures, navigation methods, screen insertion mechanisms, and the like. In at least one embodiment of the present disclosure, the connector front end includes a screen that is inserted into a predefined view, custom logic for presenting widgets, and custom navigation structures. For example, the widget may display information (e.g., usage reports, subscription and service information, specifications, etc.) that the connector developer deems valuable to the customer of the corresponding SaaS product.

In at least one embodiment of the present disclosure, the connector backend is a service API request configured to interpret and convert the CSB REST API request into an ISV to create a service, a tenant, a service assigned to a user, and a linking service between each other. It should be appreciated that the CSB REST API provides a wide range of integration and functionality options, and allows for the implementation of most applicable scenarios for cloud services, such as sales, up-sales, cancellation, and so forth. In at least one embodiment of the present disclosure, all CSB operations are defined according to the creation, update, and deletion of application service resources and the creation links between them. It should be appreciated that some operations may be implemented on certain resources as custom operations where standardized operations are less suitable. It should be further understood that the connector backend package may be developed by a software developer of an ISV using various programming languages well known to those skilled in the art, or may be provided by any service model (e.g., SaaS, functionality as a service (FaaS)), or may be deployed in a platform as a service (PaaS) or infrastructure as a service (IaaS) model.

Referring now to fig. 3, a method 300 for connector development and integrated channel deployment is shown, in accordance with at least one embodiment of the present disclosure. The method 300 includes checking the request at step 302, creating a connector package copy at step 304, checking the integration command at step 314, and initiating back-end build at step 316.

In at least one embodiment of the present disclosure, step 304 further includes requesting the application name and whether a database is needed at step 306. In at least one embodiment of the present disclosure, the interface 232 is configured to receive a request for an application name and information regarding whether a database is needed.

In at least one embodiment of the present disclosure, step 304 further comprises downloading the library at step 308. In at least one embodiment of the present disclosure, component builder 230 is configured to download libraries, drivers, log stores, etc., from multiple repositories (e.g., an expert central repository) and store these items in a local cache.

In at least one embodiment of the present disclosure, step 304 further comprises generating a connector package source at step 310. In at least one embodiment of the present disclosure, the component generator 220 is configured to create a new connector bundle in the file system, and the component builder 230 is configured to build the new connector bundle from the file source generated by the component generator 220.

In at least one embodiment of the present disclosure, the method 300 proceeds to step 314 to check if a setup integration channel signal is received. If no signal is received, the method 300 waits. Otherwise, the method 300 proceeds to step 316.

In at least one embodiment of the present disclosure, step 316 includes initiating a backend establishment process (as further disclosed herein by fig. 4).

Referring now to fig. 4, a method for establishing a connector back end is shown, generally indicated at 400, in accordance with at least one embodiment of the present disclosure. The method 400 begins at step 402 where a check is performed to see if a set up connector backend command is received. If the command is not received, the method 400 waits; otherwise, the method 400 proceeds to step 404.

In at least one embodiment of the present disclosure, the service code is compiled and a connector package is generated at step 404. In at least one embodiment of the present disclosure, after the connector developer completes the backend build, the developer tool 102 is configured to automatically compile the new connector package source code (including any business code) and test the new connector package.

The method 400 then proceeds to step 406 where the code generated in step 404 is tested. It should be understood that testing may include unit testing and integration testing. In at least one embodiment of the present disclosure, compiler 224 is configured to perform the activities of steps 404 and 406. In at least one embodiment of the present disclosure, compiler 224 creates bytecode from a source file (e.g., a Java source file).

In at least one embodiment of the present disclosure, at step 408, developer tool 102 is further configured to generate and package resource model patterns into an archive using resource model pattern builder 226. It should be understood that the resource model schema is generated from a Java class of business code written by the connector developer.

In at least one embodiment of the present disclosure, a connector back end deployment unit is created at step 410. In at least one embodiment of the present disclosure, the storage server 222 is configured to create a connector backend deployment unit, and is further configured to create an archive from the source files and compiled files of the connector bundle (e.g.,a file).

In at least one embodiment of the present disclosure, at step 412, the connector back end deployment unit is made part of the application service image by the image builder 236. In at least one embodiment of the present disclosure, the image of the new connector backend (e.g., the Docker image) is established by predefined rules in the prototype. The image is made up of a series of layers, where each layer represents a simple instruction. For example, referring to fig. 7, an exemplary embodiment of layers in a prototype in accordance with at least one embodiment of the present disclosure is shown. Except for the last layer (e.g., layers 702-722), each layer is read-only. Each layer differs from the previous layer by only one set. These layers are stacked on top of each other. It should be understood that the base image (i.e., layers 702-722 are prototype-based) is provided by the CSB platform developer (rather than the connector developer).

In at least one embodiment of the present disclosure, at step 414, a container orchestrator package is created by container orchestrator package builder 240. It should be appreciated that multiple third party software mechanisms may be used to create a container orchestrator package (e.g., the Helm diagram by Kubernets) that describes and pushes a set of related container orchestrator resources to a package repository (e.g., a GitHub repository). In particular embodiments of the present disclosure, packages are created as files in a particular directory tree and packaged into a versioned archive to be deployed.

In at least one embodiment of the present disclosure, at step 416, the connector backend image is pushed to a server repository (e.g., a developer repository of the CSB device 102) by the image builder 236. In at least one embodiment of the present disclosure, the image created in step 414 is pushed to a CSB image repository (Docker registry). It should be appreciated that a registry is a stateful, highly extensible server-side application that stores and allows distribution of Docker images;

the method 400 terminates at step 418, where the connector package is assembled to a file (e.g.,) In (1).

Referring now to fig. 5, a method 500 for assembling a connector pack is shown in accordance with at least one embodiment of the present disclosure. In at least one embodiment of the present disclosure, at step 501, the developer tool device 108 is configured to check whether a command to assemble a connector bundle is received. If no command has been received, the method 500 waits; otherwise, the method 500 proceeds to step 503.

In at least one embodiment of the present disclosure, the resource model schema is unpacked at step 503 by the connector assembler 234.

In at least one embodiment of the present disclosure, the UI code is assembled at step 505 using the connector assembler 234. In at least one embodiment of the present disclosure, a resource model schema, a navigation description, and a container orchestrator package are further assembled. It should be understood that the container orchestrator package contains the information needed to deploy it to the container orchestrator, including, but not limited to, the image name, version, required components and their versions, environment variables, port mappings, etc.

In at least one embodiment of the present disclosure, at step 507, the connector package is archived using archive server 222 and transferred to connector package catalog 106.

Referring now to fig. 6, a method 600 for establishing a channel is illustrated, in accordance with at least one embodiment of the present disclosure. In at least one embodiment of the present disclosure, the integrated channel establisher 228 is configured to perform the steps of the method 600 as further disclosed herein.

In at least one embodiment of the present disclosure, method 600 is configured to perform a check at step 601 to see if a command is received (e.g., through interface 232) to set up an integration channel. If no command is received, the method waits; otherwise, the method proceeds to step 603.

In at least one embodiment of the present disclosure, the developer tool 108 is configured to install the connector package to the CSB device 102 through an API provided by the CSB at step 603.

In at least one embodiment of the present disclosure, at step 605, the developer tool 108 is configured to receive a container orchestrator package from a connector package.

In at least one embodiment of the present disclosure, at step 607, the developer tool 108 is configured to generate authorization credentials. In at least one embodiment of the present disclosure, the developer tool 108 is further configured to override pre-existing environment authentication data based on information received from the container orchestrator package.

The method 600 then proceeds to step 609 where a check is performed to see if the connector bundle requires persistence (i.e., using a database to ensure stateful). If the connector back end requires a database, then method 600 proceeds to step 609; otherwise, go to step 613.

In at least one embodiment of the present disclosure, if the connector package requires a database, at step 611, the developer tool 108 is configured to ask the developer to specify a database connection string and to orchestrate the package overlay environment based on the container. In at least one embodiment of the present disclosure, the development tool 108 may receive this information at step 611.

In at least one embodiment of the present disclosure, at step 613, the developer tool 108 is configured to run the connector backend in one of the connector backend hubs. The developer tool 108 is also configured to include a container organizer (e.g., kubernets) through a container organizer manager 242. In at least one embodiment of the present disclosure, the container orchestrator manager 242 is configured to run the connector backend, configure load balancing, increase scalability, and save logs.

The method 600 then proceeds to step 615, where the container orchestrator generates a backend endpoint URL. In at least one embodiment of the present disclosure, a container orchestrator (e.g., kubernets) downloads connector backend images with the required dependencies and runs them in a predefined set of instructions in a container orchestrator package and returns the endpoint URLs of the deployed connector backend.

Method 600 then proceeds to step 617 where developer tool 108 registers the connector backend in CSB controller 104 using the provided endpoint URL by sending an appropriate hypertext transfer protocol (HTTP) request to CSB controller 104.

In at least one embodiment of the present disclosure, the developer tool 108 is further configured to operate in an upgrade mode, wherein the developer tool 108 installs a new version of the connector bundle to the CSB platform through the CSB API, and the developer tool 108 receives a new container orchestrator bundle from the connector bundle. Finally, the developer tool 108 is configured to upload new container organizer packages to the container organizer (e.g., Kubernets). In at least one embodiment of the present disclosure, the container orchestrator downloads new container application service images with new dependencies, runs the new images, and then stops the previous version of the operation. It should be appreciated that the container orchestrator allows real-time (hot) upgrades without service downtime.

While the invention has been illustrated and described in detail in the drawings and foregoing description, the same is to be considered as illustrative and not restrictive in character, it being understood that only certain embodiments have been shown and described and that all changes and modifications that come within the spirit of the invention are desired to be protected.

18页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:基于语义的物联网设备数据处理相关应用程序安装方法及装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!