WO2024251107A1 - 容器编排与数据访问方法、电子设备及存储介质 - Google Patents

容器编排与数据访问方法、电子设备及存储介质 Download PDF

Info

Publication number
WO2024251107A1
WO2024251107A1 PCT/CN2024/097250 CN2024097250W WO2024251107A1 WO 2024251107 A1 WO2024251107 A1 WO 2024251107A1 CN 2024097250 W CN2024097250 W CN 2024097250W WO 2024251107 A1 WO2024251107 A1 WO 2024251107A1
Authority
WO
WIPO (PCT)
Prior art keywords
configuration information
data source
cloud
container group
source identifier
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.)
Ceased
Application number
PCT/CN2024/097250
Other languages
English (en)
French (fr)
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.)
Alibaba Cloud Computing Ltd
Original Assignee
Alibaba Cloud Computing 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 Alibaba Cloud Computing Ltd filed Critical Alibaba Cloud Computing Ltd
Publication of WO2024251107A1 publication Critical patent/WO2024251107A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00—Network arrangements or protocols for supporting network services or applications
    • H04L67/01—Protocols
    • H04L67/10—Protocols in which an application is distributed across nodes in the network
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44—Arrangements for executing specific programs
    • G06F9/445—Program loading or initiating
    • G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44—Arrangements for executing specific programs
    • G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533—Hypervisors; Virtual machine monitors
    • G06F9/45558—Hypervisor-specific management and integration aspects
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46—Multiprogramming arrangements
    • G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08—Configuration management of networks or network elements
    • H04L41/0803—Configuration setting
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00—Network arrangements or protocols for supporting network services or applications
    • H04L67/50—Network services
    • H04L67/56—Provisioning of proxy services
    • H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00—Network arrangements or protocols for supporting network services or applications
    • H04L67/50—Network services
    • H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44—Arrangements for executing specific programs
    • G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533—Hypervisors; Virtual machine monitors
    • G06F9/45558—Hypervisor-specific management and integration aspects
    • G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing

Definitions

  • the present application relates to the field of computer technology, and in particular to a container orchestration and data access method, an electronic device, and a storage medium.
  • Pods In a hybrid cloud scenario, users can use local IDC (Internet Data Center) resources as well as cloud resources.
  • IDC Internet Data Center
  • Pods container groups running services related to users can be scheduled to local IDCs or cloud resources, achieving hybrid deployment of online and offline services, achieving high service availability, and elastic resource scheduling of services based on peaks and troughs.
  • Pods container groups running services related to users can be scheduled to local IDCs or cloud resources, achieving hybrid deployment of online and offline services, achieving high service availability, and elastic resource scheduling of services based on peaks and troughs.
  • the cloud is far away from the local IDC, resulting in high access latency, wasted bandwidth resources, and poor Pod performance.
  • Multiple aspects of the present application provide a container orchestration and data access method, an electronic device, and a storage medium to greatly reduce access latency, reduce bandwidth resource waste, and ensure the overall performance of a container group.
  • An embodiment of the present application provides a container orchestration method, including: obtaining first configuration information required for creating a target container group, wherein a data source identifier in the first configuration information is used to identify a local storage system deployed on a local end; creating a target container group according to the first configuration information, and determining a target computing node to which the target container group needs to be scheduled; if the target computing node is deployed on the cloud, updating the data source identifier in the first configuration information to obtain second configuration information, wherein the data source identifier in the second configuration information is used to identify a distributed cache system on the cloud, and the distributed cache system caches data in the local storage system; scheduling the target container group and the second configuration information to the target computing node on the cloud, wherein the data source identifier in the second configuration information is used to enable the target container group to access the distributed cache system during the data access phase.
  • the present application embodiment provides a data access method, comprising: responding to a data access event being Trigger to obtain the configuration information of the target container group; if the data source in the configuration information identifies a distributed cache system in the cloud, and the distributed cache system caches data in the local storage system on the local side, then send a data access request to the distributed cache system according to the data source identifier.
  • An embodiment of the present application provides an electronic device, including: a memory and a processor; the memory is used to store a computer program; the processor is coupled to the memory, and is used to execute the computer program to execute the steps in the container orchestration method or the data access method.
  • An embodiment of the present application provides a computer-readable storage medium storing a computer program.
  • the processor When the computer program is executed by a processor, the processor is enabled to implement steps in a container orchestration method or a data access method.
  • the embodiment of the present application provides a container orchestration and data access method, an electronic device and a storage medium.
  • the data source identifier in the configuration information of the container group can be modified.
  • the modified data source identifier enables the container group to access the distributed cache system of the cloud cache with a local storage system nearby, which greatly reduces the access delay, reduces the waste of bandwidth resources, and ensures the overall performance of the container group.
  • the container group when the container group is scheduled to the local end, it can also support the container group to access the local storage system of the local end nearby, which greatly reduces the access delay, reduces the waste of bandwidth resources, and ensures the overall performance of the container group.
  • FIG1 is a diagram of an exemplary system architecture provided in an embodiment of the present application.
  • FIG2 is a flow chart of a container orchestration method provided in an embodiment of the present application.
  • FIG3 is a flow chart of a data access method provided in an embodiment of the present application.
  • FIG4 is a diagram of an exemplary application scenario provided in an embodiment of the present application.
  • FIG5 is a schematic diagram of the structure of a container arrangement device provided in an embodiment of the present application.
  • FIG6 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application.
  • "at least one” means one or more, and “more” means two or more. More than two.
  • “And/or” describes the access relationship of associated objects, indicating that three relationships may exist. For example, A and/or B can represent three situations: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural.
  • the character “/” generally indicates that the previous and next associated objects are in an “or” relationship.
  • “first”, “second”, “third”, etc. are only used to distinguish the contents of different objects and have no other special meanings.
  • Container group includes several containers and is the smallest resource unit for scheduling in the container service system. Containers in a container group are automatically scheduled to the same physical machine or virtual machine in the cluster and can be scheduled together. In the K8s (Kubernetes) scenario, a container group refers to a Pod.
  • Sidecar container also called sidecar container: a container that provides auxiliary functions for the original container in the container group (also called auxiliary container), such as log proxy, request forwarding, file copying or downloading, etc.
  • Container orchestration device refers to a device that provides container orchestration services, such as creating, scheduling, or managing containers or container groups.
  • Local end is a concept opposite to the cloud, and refers to a system that provides local computing services, which can be understood as a computer system deployed locally.
  • the storage system deployed on the local end is referred to as a local storage system.
  • Cloud It is a concept opposite to the local end. It refers to the system that provides cloud computing services, which can be understood as a computer system deployed remotely.
  • Serverful Instance A computing instance based on the Serverful architecture, which can be understood as a virtualized computing resource, including VCPU (Virtual Center Processing Unit), memory, operating system, network, disk and other basic computing components.
  • the Serverful architecture is a software architecture that uses the server as the basic computing unit and uses the middleware application layer technology to manage the application layer of the server cluster.
  • the server can be a virtual machine, a physical machine, a cloud server based on hardware, and so on.
  • Serverless Instance A computing instance based on the Serverless architecture, for example, an elastic container instance that provides containerized services, etc.
  • Serverless architecture refers to the server-side logic implemented by developers running in a stateless computing container. It is triggered by events and completely managed by a third party, and its service-level status is recorded by the database and storage resources used by the developer.
  • Pods In a hybrid cloud scenario, users can use local IDC (Internet Data Center) resources as well as cloud resources.
  • IDC Internet Data Center
  • Pods container groups running services related to users can be scheduled to local IDCs or cloud resources, achieving hybrid deployment of online and offline services, achieving high service availability, and enabling services to perform elastic resource scheduling based on peaks and troughs.
  • Pods When a Pod is scheduled to the cloud, it usually still needs to access the local storage system in the local data center. However, the cloud is far away from the local IDC, resulting in high access latency, waste of bandwidth resources, and poor Pod performance.
  • the embodiment of the present application provides a container orchestration and data access method, an electronic device and a storage medium.
  • the data source identifier in the configuration information of the container group can be modified.
  • the modified data source identifier enables the container group to access the distributed cache system of the cloud cache with a local storage system nearby, which greatly reduces the access delay, reduces the waste of bandwidth resources, and ensures the overall performance of the container group.
  • the container group when the container group is scheduled to the local end, it can also support the container group to access the local storage system of the local end nearby, which greatly reduces the access delay, reduces the waste of bandwidth resources, and ensures the overall performance of the container group.
  • Figure 1 is an exemplary system architecture diagram provided in an embodiment of the present application. Referring to Figure 1, the entire system includes: a container orchestration device, a local terminal, and a cloud terminal.
  • the container orchestration device is responsible for the creation and scheduling of container groups.
  • a container group creation instruction is sent to the container orchestration device to trigger the container orchestration device to create a container group and schedule the created container group to the local end or the cloud according to the scheduling logic.
  • the local end may include multiple physical machines and a local storage system, using the computing resources provided by the multiple physical machines to perform computing tasks and using the storage resources provided by the local storage system to store data.
  • the local end is, for example, a local data center, which refers to a locally deployed data center (Internet Data Center, IDC).
  • IDC Internet Data Center
  • the cloud can include multiple server computing instances, multiple serverless computing instances, and a distributed cache system. Computing tasks are performed using computing resources provided by multiple server computing instances or multiple serverless computing instances, and data is stored using storage resources provided by the distributed cache system. In this embodiment, data in the local storage system can be cached in the distributed cache system.
  • the dedicated line includes but is not limited to: Express Connect dedicated line, Digital Data Network Leased Line (DDN) or fiber optic dedicated line.
  • the user configures the configuration information of the container group to be created as needed, and the container orchestration device creates the container group according to the configuration information of the container group carried in the container creation instruction.
  • the data source identifier in the configuration information of the container group is the identifier of the local storage system, and the container group is based on the local The identification of the storage system determines that the accessible data source is the local storage system.
  • the user can configure the configuration information of the container group to be created according to the principle of scheduling the container group to the local end. If the container group is subsequently scheduled to the cloud, the container orchestration device will automatically and adaptively modify the configuration information of the container group without user participation. In other words, at the stage of creating the container group, the user configures the configuration information of the container group to be created in a unified manner.
  • Case 1 If the created container group needs to be scheduled to any local physical machine, the configuration information of the container group remains unchanged, and the container orchestration device schedules the created container group and its original configuration information to the local physical machine.
  • Case 2 If the created container group needs to be scheduled to any server computing instance in the cloud, the configuration information of the container group is modified, the data source identifier of the original configuration information is deleted, and the identifier of the distributed cache system is added to the deleted configuration information to obtain new configuration information.
  • the container orchestration device schedules the created container group and the new configuration information to the server computing instance in the cloud.
  • Case 3 If the created container group needs to be scheduled to any serverless computing instance in the cloud, the configuration information of the container group is modified, the data source identifier of the original configuration information is deleted, and the container configuration information of the sidecar container is added to the deleted configuration information to obtain new configuration information, and the container configuration information includes the identifier of the distributed cache system.
  • the container orchestration device creates a sidecar container in the container group according to the container configuration information, and schedules the new container group and the new configuration information to the serverless computing instance in the cloud.
  • the data source identifier in the container group's configuration information is adaptively modified according to the scheduling results, so that the container group can access the local storage system when it is scheduled to the local end, and can access the distributed cache system in the cloud when it is scheduled to the cloud, thus realizing the container group's adaptive access to different data sources.
  • Case 1 If the created container group needs to be scheduled to any physical machine on the local side, the client created by the container group through CSI (Container Storage Interface) sends a data access request to the local storage system according to the identifier of the local storage system in the configuration information to meet the container group's local access needs.
  • CSI Container Storage Interface
  • Case 2 If the created container group needs to be scheduled to any server computing instance in the cloud, the container group sends a data access request to the distributed cache system through the client created by CSI according to the identifier of the distributed cache system in the configuration information to meet the container group's local access needs.
  • Case 3 If the created container group needs to be scheduled to any serverless computing instance in the cloud, the container group sends the distributed cache system identifier in the container configuration information to the distributed cache system through the sidecar container. The cache system sends data access requests to meet the container group's nearby access requirements.
  • the container group when the container group is scheduled to the local end, the container group accesses the local storage system of the local end.
  • the container group accesses the distributed cache system of the cloud that has the local storage system, which greatly reduces the access delay, reduces the waste of bandwidth resources, and ensures the overall performance of the container group.
  • FIG2 is a flow chart of a container orchestration method provided in an embodiment of the present application.
  • the method may be executed by a container orchestration device, which may be composed of software and/or hardware. Referring to FIG2 , the method may include the following steps:
  • the data source identifier in the first configuration information is updated to obtain the second configuration information, wherein the data source identifier in the second configuration information is used to identify the distributed cache system in the cloud, and the distributed cache system caches the data in the local storage system.
  • the target container group and the first configuration information are scheduled to the target computing node on the local side, wherein the data source identifier in the first configuration information is used to enable the target container group to access the local storage system during the data access phase.
  • the user submits the configuration information required to create a container group to the container orchestration device.
  • the container group to be created is referred to as the target container group
  • the configuration information submitted by the user is referred to as the first configuration information.
  • the first configuration information is, for example:
  • the user when configuring the first configuration information, the user defines the shared storage volume list volumes accessible to the Pod in the Pod spec, and the shared storage volume list includes the storage volume corresponding to the local storage system.
  • the name of the storage volume corresponding to the local storage system is the data source identifier that identifies the local storage system.
  • a target container group is created according to the first configuration information.
  • the container group scheduling phase is entered.
  • the target computing node to which the target container group needs to be scheduled is determined, and the first configuration information is modified according to the scheduling result.
  • the modified first configuration information is referred to as the second configuration information.
  • the data source identifier in the first configuration information is updated to obtain the second configuration information.
  • the data source identifier in the second configuration information is used to identify the distributed cache system in the cloud, and the distributed cache system caches the data in the local storage system.
  • the target container group and the second configuration information are scheduled to the cloud.
  • the target container group scheduled to the cloud accesses the distributed cache system in the cloud that caches the data of the local storage system according to the data source identifier in the second configuration information to achieve nearby access.
  • the user can also add a data source adaptive startup tag in the first configuration information. If the data source adaptive startup tag indicates to start the data source adaptive function, then it is decided whether to modify the data source identifier of the container group according to the scheduling result of the container group. If the data source adaptive startup tag indicates to turn off the data source adaptive function, the data source identifier in the configuration information of the container group is not modified and remains unchanged.
  • step 203 it can also be determined whether the data source adaptation tag in the first configuration information indicates to start the data source adaptation function; if the determination result is yes, then step 203 is executed. If the determination result is no, the target container group and the first configuration information are scheduled to the target computing node in the cloud, wherein the data source identifier in the first configuration information is used to enable the data source adaptation function in the data access stage. segments to enable the target container group to access the local storage system.
  • the data source adaptation start tag indicates to turn off the data source adaptation function, even if the target container group is scheduled to the cloud, it still needs to access the local storage system.
  • step 203 is implemented as follows: if the target computing node is deployed in the cloud, a scheduling result tag is added to the first configuration information, and the scheduling result tag indicates that the target container group needs to be scheduled to the cloud; in response to the presence of the scheduling result tag in the first configuration information, the data source identifier in the first configuration information after the scheduling result tag is added is updated to obtain the second configuration information.
  • a scheduling result label can be added to the label selector of the first configuration information, and the scheduling result label indicates that the target container group needs to be scheduled on the server computing instance in the cloud.
  • a scheduling result label can be added to the label selector of the first configuration information, and the scheduling result label indicates that the target container group needs to be scheduled on the serverless computing instance in the cloud.
  • the target computing node may be a server computing instance deployed in the cloud, or may be a serverless computing instance deployed in the cloud, without limitation.
  • the data source identifier in the first configuration information can be updated to a data source identifier identifying the distributed cache system to obtain the second configuration information.
  • the following is an exemplary second configuration information obtained by modifying the first configuration information:
  • one change is: the name of the storage volume associated with the local storage system is changed to the name of the storage volume associated with the distributed cache system, and the name of the storage volume associated with the distributed cache system is the data source identifier that identifies the distributed cache system.
  • Another change is: adding a scheduling result tag, which indicates that the target container group needs to schedule a server computing instance in the cloud.
  • the target computing node is a serverless computing instance deployed in the cloud
  • the data source identifier in the first configuration information can be deleted, and the container configuration information of the sidecar container can be added to the deleted first configuration information to obtain the second configuration information.
  • the data source identifier in the container configuration information is used to identify the distributed cache system.
  • the following is an exemplary second configuration information obtained by modifying the first configuration information:
  • the changes in the second configuration information in the above example are: the name of the storage volume associated with the local storage system is deleted, and the container configuration information of the sidecar container is added.
  • the name of the storage volume associated with the distributed cache system included in the container configuration information is the data source identifier that identifies the distributed cache system.
  • Another change is: the scheduling result label is added, which indicates that the target container group needs to schedule a serverless computing instance in the cloud.
  • the target computing node is a server computing instance deployed in the cloud
  • the target container group and the second configuration information are scheduled to the server computing instance in the cloud.
  • the target computing node is a serverless computing instance deployed in the cloud
  • the target container group and the second configuration information can be directly scheduled to the serverless computing instance in the cloud, and then a sidecar container is created in the target container group based on the container configuration information in the second configuration information.
  • a sidecar container is first created in the target container group according to the container configuration information, and then the target container group and the second configuration information are scheduled to the target computing node in the cloud.
  • the target computing node may also be deployed on the local side, and the target container group and the first configuration information are dispatched to the target computing node on the local side, wherein the data source identifier in the first configuration information is used to enable the target container group to access the local storage system during the data access phase.
  • the target computing node if the target computing node is deployed on the local side, there is no need to modify the first configuration information, and the target container group and the first configuration information can be directly dispatched to the target computing node on the local side.
  • the container orchestration method provided in the embodiment of the present application can modify the data source identifier in the configuration information of the container group when the container group is scheduled to the cloud.
  • the modified data source identifier enables the container group to access the distributed cache system with a local storage system in the cloud, which greatly reduces Access latency, reduces bandwidth resource waste, and ensures the overall performance of the container group.
  • the container group when the container group is scheduled to the local end, it can also support the container group to access the local storage system of the local end, which greatly reduces the access latency, reduces bandwidth resource waste, and ensures the overall performance of the container group.
  • the embodiment of the present application also provides a data access method.
  • FIG3 is a flow chart of a data access method provided by an embodiment of the present application. Referring to FIG3 , the method may include the following steps:
  • the data source in the configuration information identifies a distributed cache system in the cloud, and the distributed cache system caches data in a local storage system on the local side, a data access request is sent to the distributed cache system according to the data source identifier.
  • the client created through the CSI sends a data access request to the local storage system according to the data source identifier.
  • the target container group After the target container group completes scheduling, it detects whether the data access event is triggered. If the data access event is triggered, it means that the target container group has data access requirements. At this time, the configuration information of the target container group. If the data source in the configuration information identifies the distributed cache system in the cloud, it is necessary to distinguish whether the target container group is deployed on a server computing instance or a serverless computing instance in the cloud. If the target container group is deployed on a server computing instance in the cloud, the client created by CSI sends a data access request to the distributed cache system based on the data source identifier.
  • the sidecar container in the target container group sends a data access request to the distributed cache system based on the data source identifier. If the data source in the configuration information identifies the local storage system on the local side, the client created by CSI sends a data access request to the local storage system based on the data source identifier.
  • the container group when the container group is scheduled to the cloud, the container group can access the distributed cache system of the cloud with a local storage system nearby, which greatly reduces the access delay, reduces the waste of bandwidth resources, and ensures the overall performance of the container group. Further optionally, when the container group is scheduled to the local end, it can also support the container group to access the local storage system of the local end nearby, which greatly reduces the access delay, reduces the waste of bandwidth resources, and ensures the overall performance of the container group.
  • the K8s scenario is used as an example for introduction below.
  • the container orchestration device may include: an API Server, a controller (such as a Controller Manager), a scheduler (such as a Scheduler), and an adaptive module.
  • the server can control the controller, scheduler, and adaptive module to coordinate work.
  • the Controller Manager detects the status of the entire cluster through the API Server and ensures that the cluster is in the expected working state.
  • the adaptive module is any functional module that has the function of adaptively modifying the configuration information of the container group according to the scheduling result. As shown in 1 and 2 in Figure 4, the interface server receives the container group creation instruction sent by the user and forwards it to the controller.
  • the container group creation instruction includes the original configuration information required to create the Pod, the label datasource-policy: auto is injected into the original configuration information, and the name of the storage volume associated with the local storage system is added to the Pod Spec.
  • the controller responds to the received container group creation instruction and creates the Pod.
  • the scheduler monitors the Pod creation event and determines the scheduling result of the Pod.
  • the Pod needs to be scheduled to the server computing instance in the cloud.
  • the scheduler adds the label CSI-target: Serverful Instance to the configuration information of the Pod and triggers the adaptive module to update the Pod Spec.
  • the adaptive module deletes the name of the storage volume associated with the local storage system in the Pod Spec, and adds the name of the storage volume associated with the distributed cache system in the Pod Spec to update the Pod Spec.
  • the scheduler schedules the Pod and the updated configuration information to the server computing instance in the cloud.
  • the Pod needs to be scheduled to the serverless computing instance in the cloud.
  • the scheduler adds the label sidecartarget:Serverless Instance to the Pod's configuration information and triggers the adaptive module to update the Pod Spec.
  • the adaptive module deletes the name of the storage volume associated with the local storage system in the Pod Spec, and adds the container configuration information of the sidecar container in the Pod Spec to update the Pod Spec.
  • the scheduler schedules the Pod and the updated configuration information to the serverless computing instance in the cloud. As shown in Figure 4 As shown, the Pod needs to be scheduled to the local end, and the scheduler schedules the Pod and the original configuration information to the local end.
  • the client created by CSI sends a data access request to the distributed cache system according to the name of the storage volume associated with the distributed cache system in the Pod Spec. If the container group is deployed on a serverless computing instance in the cloud, the sidecar container in the target container group sends a data access request to the distributed cache system according to the name of the storage volume associated with the distributed cache system in the Pod Spec. If the container group is deployed on the local side, the client created by CSI sends a data access request to the local storage system according to the name of the storage volume associated with the local storage system in the Pod Spec.
  • FIG5 is a schematic diagram of the structure of a container arrangement device provided in an embodiment of the present application.
  • the device may include:
  • the acquisition module 51 is used to acquire first configuration information required to create a target container group.
  • the data source identifier in the first configuration information is used to identify a local storage system deployed on a local end.
  • the creation module 52 is used to create a target container group according to the first configuration information.
  • a determination module 53 used to determine a target computing node to which the target container group needs to be scheduled
  • An updating module 54 is configured to update the data source identifier in the first configuration information to obtain second configuration information if the target computing node is deployed in the cloud, wherein the data source identifier in the second configuration information is used to identify a distributed cache system in the cloud, and the distributed cache system caches data in the local storage system;
  • the scheduling module 55 is used to schedule the target container group and the second configuration information to the target computing node in the cloud, wherein the data source identifier in the second configuration information is used to enable the target container group to access the distributed cache system during the data access phase.
  • the update module 54 is also used to determine whether the data source adaptation tag in the first configuration information indicates to start the data source adaptation function; if the judgment result is yes, execute the step of updating the data source identifier in the first configuration information if the target computing node is deployed in the cloud.
  • the update module 54 is also used to: if the judgment result is no, schedule the target container group and the first configuration information to the target computing node in the cloud, wherein the data source identifier in the first configuration information is used to enable the target container group to access the local storage system during the data access phase.
  • the update module 54 is specifically used to: if the target computing node is deployed in the cloud, add a scheduling result tag in the first configuration information, and the scheduling result tag indicates that the target container group needs to be scheduled to the cloud; in response to the presence of the scheduling result tag in the first configuration information, update the data source identifier in the first configuration information after adding the scheduling result tag to obtain the second configuration information.
  • the update module 54 is specifically used to: if the target computing node is a server computing instance deployed in the cloud, then the data source identifier in the first configuration information is updated to a data source identifier that identifies the distributed cache system, to obtain second configuration information; if the target computing node is a serverless computing instance deployed in the cloud, then the data source identifier in the first configuration information is deleted, and the container configuration information of the sidecar container is added to the deleted first configuration information to obtain the second configuration information, and the data source identifier in the container configuration information is used to identify the distributed cache system.
  • the creation module 52 is further configured to: create a sidecar container in the target container group according to the container configuration information.
  • the scheduling module 55 is also used to schedule the target container group and the first configuration information to the target computing node on the local end if the target computing node is deployed on the local end, wherein the data source identifier in the first configuration information is used to enable the target container group to access the local storage system during the data access phase.
  • the device shown in Figure 5 can execute the method of the embodiment shown in Figure 2, and its implementation principle and technical effects are not described in detail.
  • the specific way in which each module and unit performs operations in the device shown in Figure 5 in the above embodiment has been described in detail in the embodiment of the method, and will not be described in detail here.
  • the execution subject of 303 may be device A; for another example, the execution subject of steps 301 and 302 may be device A, and the execution subject of step 303 may be device B; and so on.
  • user information including but not limited to user device information, user personal information, etc.
  • data including but not limited to data used for analysis, stored data, displayed data, etc.
  • user information including but not limited to user device information, user personal information, etc.
  • data including but not limited to data used for analysis, stored data, displayed data, etc.
  • Fig. 6 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application. As shown in Fig. 6, the electronic device includes: a memory 61 and a processor 62;
  • the memory 61 is used to store computer programs and can be configured to store various other data to support operations on the computing platform. Examples of such data include instructions for any application or method operating on the computing platform, contact data, phone book data, messages, pictures, videos, etc.
  • the memory 61 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random-access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, disk or optical disk.
  • SRAM static random-access memory
  • EEPROM electrically erasable programmable read-only memory
  • EPROM erasable programmable read-only memory
  • PROM programmable read-only memory
  • ROM read-only memory
  • magnetic storage flash memory, disk or optical disk.
  • the processor 62 is coupled to the memory 61 and is used to execute the computer program in the memory 61 to perform the steps in the container orchestration method or the data access method.
  • the electronic device also includes: a communication component 63, a display 64, a power component 65, an audio component 66 and other components.
  • FIG6 only schematically shows some components, which does not mean that the electronic device only includes the components shown in FIG6 .
  • the components in the dotted box in FIG6 are optional components, not mandatory components, and the specific components depend on the product form of the electronic device.
  • the electronic device of this embodiment can be implemented as a terminal device such as a desktop computer, a laptop computer, a smart phone or an IOT (Internet of things) device, or it can be a conventional server, a cloud server If the electronic device of this embodiment is implemented as a terminal device such as a desktop computer, a laptop computer, or a smart phone, it may include the components in the dashed box in FIG6 ; if the electronic device of this embodiment is implemented as a server device such as a conventional server, a cloud server, or a server array, it may not include the components in the dashed box in FIG6 .
  • an embodiment of the present application further provides a computer-readable storage medium storing a computer program, which, when executed, can implement each step that can be executed by an electronic device in the above method embodiment.
  • an embodiment of the present application also provides a computer program product, including a computer program/instruction.
  • the processor is enabled to implement each step in the above method embodiment that can be executed by an electronic device.
  • the above-mentioned communication component is configured to facilitate wired or wireless communication between the device where the communication component is located and other devices.
  • the device where the communication component is located can access a wireless network based on a communication standard, such as WiFi (Wireless Fidelity), 2G (2 Generation), 3G (3 Generation), 4G (4 Generation)/LTE (long Term Evolution), 5G (5 Generation) and other mobile communication networks, or a combination thereof.
  • the communication component receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel.
  • the communication component also includes a Near Field Communication (NFC) module to facilitate short-range communication.
  • the NFC module can be implemented based on Radio Frequency Identification (RFID) technology, Infrared Data Association (IrDA) technology, Ultra Wide Band (UWB) technology, Bluetooth (BT) technology and other technologies.
  • RFID Radio Frequency Identification
  • IrDA Infrared Data Association
  • UWB Ultra Wide Band
  • Bluetooth Bluetooth
  • the above-mentioned display includes a screen, and the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from a user.
  • the touch panel includes one or more touch sensors to sense touches, slides, and gestures on the touch panel. The touch sensor may not only sense the boundaries of a touch or slide action, but also detect the duration and pressure associated with the touch or slide operation.
  • the power supply assembly provides power to various components of the device where the power supply assembly is located.
  • the power supply assembly may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the device where the power supply assembly is located.
  • the above-mentioned audio component can be configured to output and/or input audio signals.
  • the audio component includes a microphone (MIC), and when the device where the audio component is located is in an operating mode, such as a call mode, a recording mode, and a speech recognition mode, the microphone is configured to receive an external audio signal.
  • the received audio signal can be further stored in a memory or sent via a communication component.
  • the audio component further includes a speaker for outputting audio signals.
  • the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-readable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.
  • a computer-readable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer-readable memory produce a manufactured product including an instruction device that implements the functions specified in one or more processes in the flowchart and/or one or more boxes in the block diagram.
  • These computer program instructions may also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, whereby the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and/or one or more boxes in the block diagram.
  • a computing device includes one or more processors (Central Processing Unit, CPU), input/output interfaces, network interfaces, and memory.
  • processors Central Processing Unit, CPU
  • input/output interfaces input/output interfaces
  • network interfaces network interfaces
  • memory volatile and non-volatile memory
  • Memory may include non-permanent storage in a computer-readable medium, in the form of random access memory (RAM) and/or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of a computer-readable medium.
  • RAM random access memory
  • ROM read-only memory
  • flash RAM flash random access memory
  • Computer-readable media include permanent and non-permanent, removable and non-removable media that can be used to store information by any method or technology.
  • Information can be computer-readable instructions, data structures, program modules or other data.
  • Examples of computer storage media include, but are not limited to, Phase Change RAM (Phase Change RAM, PRAM), Static Random-Access Memory (Static Random-Access Memory, SRAM), Dynamic Random Access Memory (Dynamic Random Access Memory, DRAM), other types of Random Access Memory (Random Access Memory, RAM), Read Only Memory (Read Only Memory, ROM), Electrically Erasable Programmable Read-Only Memory, and other types of random access memory (Random Access Memory, RAM).
  • Phase Change RAM Phase Change RAM
  • PRAM Phase Change RAM
  • Static Random-Access Memory Static Random-Access Memory
  • SRAM Static Random-Access Memory
  • Dynamic Random Access Memory Dynamic Random Access Memory
  • RAM Random Access Memory
  • Read Only Memory Read Only Memory
  • ROM Electrically Erasable Programmable Read-Only
  • EEPROM Electrically-Erasable Programmable Read-Only Memory
  • flash memory or other memory technology
  • CD-ROM compact disc
  • DVD digital versatile disc
  • magnetic cassettes magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device.
  • computer-readable media does not include transitory media such as modulated data signals and carrier waves.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施例提供一种容器编排与数据访问方法、电子设备及存储介质,在本申请实施例中,容器组调度到云端时,可以修改容器组的配置信息中的数据源标识,修改后的数据源标识使得容器组可以就近访问云端的缓存有本地存储系统的分布式缓存系统,极大地降低了访问时延,减少了带宽资源浪费,保证了容器组的整体性能。进一步可选的,当容器组调度到本地端时,还可以支持容器组就近访问本地端的本地存储系统,极大地降低了访问时延,减少了带宽资源浪费,保证了容器组的整体性能。

Description

容器编排与数据访问方法、电子设备及存储介质
本申请要求于2023年06月09日提交中国专利局、申请号为202310684370.0、申请名称为“容器编排与数据访问方法、电子设备及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及计算机技术领域,尤其涉及一种容器编排与数据访问方法、电子设备及存储介质。
背景技术
在混合云场景下,用户可以使用本地IDC(Internet Data Center,数据中心)的资源,也能使用云上资源。具体而言,运行与用户的服务相关的Pod(容器组)可以调度到本地IDC,也可以调度到云上资源,实现线上线下服务混合部署,达到服务高可用,服务可以根据波峰波谷进行弹性资源调度等。当Pod调度到云端时,Pod通常仍然需要访问本地数据中心中的本地存储系统,然而,云端距离本地IDC较远,导致访问延时较高,造成带宽资源浪费,Pod的性能较差。
发明内容
本申请的多个方面提供一种容器编排与数据访问方法、电子设备及存储介质,用以极大地降低访问时延,减少带宽资源浪费,保证容器组的整体性能。
本申请实施例提供一种容器编排方法,包括:获取创建目标容器组所需的第一配置信息,第一配置信息中的数据源标识用于标识部署在本地端的本地存储系统;根据第一配置信息创建目标容器组,以及确定目标容器组需要调度至的目标计算节点;若目标计算节点部署在云端,则更新第一配置信息中的数据源标识,得到第二配置信息,其中,第二配置信息中的数据源标识用于标识云端的分布式缓存系统,分布式缓存系统缓存有本地存储系统中的数据;将目标容器组和第二配置信息调度至云端的目标计算节点,其中,第二配置信息中的数据源标识用于在数据访问阶段以使目标容器组访问分布式缓存系统。
本申请实施例提供一种数据访问方法,包括:响应于数据访问事件被 触发,获取目标容器组的配置信息;若配置信息中的数据源标识云端的分布式缓存系统,分布式缓存系统缓存有本地端的本地存储系统中的数据,则根据数据源标识,向分布式缓存系统发送数据访问请求。
本申请实施例提供一种电子设备,包括:存储器和处理器;存储器,用于存储计算机程序;处理器耦合至存储器,用于执行计算机程序以用于执行容器编排方法或数据访问方法中的步骤。
本申请实施例提供一种存储有计算机程序的计算机可读存储介质,当计算机程序被处理器执行时,致使处理器能够实现容器编排方法或数据访问方法中的步骤。
本申请实施例提供一种容器编排与数据访问方法、电子设备及存储介质,在本申请实施例中,容器组调度到云端时,可以修改容器组的配置信息中的数据源标识,修改后的数据源标识使得容器组可以就近访问云端的缓存有本地存储系统的分布式缓存系统,极大地降低了访问时延,减少了带宽资源浪费,保证了容器组的整体性能。进一步可选的,当容器组调度到本地端时,还可以支持容器组就近访问本地端的本地存储系统,极大地降低了访问时延,减少了带宽资源浪费,保证了容器组的整体性能。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种示例性的系统架构图;
图2为本申请实施例提供的一种容器编排方法的流程图;
图3为本申请实施例提供的一种数据访问方法的流程图;
图4为本申请实施例提供的一种示例性的应用场景图;
图5为本申请实施例提供的一种容器编排装置的结构示意图;
图6为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请的实施例中,“至少一个”是指一个或者多个,“多个”是指两个或 两个以上。“和/或”,描述关联对象的访问关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。在本申请的文字描述中,字符“/”一般表示前后关联对象是一种“或”的关系。此外,在本申请实施例中,“第一”、“第二”、“第三”、等只是为了区分不同对象的内容而已,并无其它特殊含义。
下面对本申请实施例涉及的一些词语进行介绍。
容器组:包括若干个容器,是容器服务系统中最小调度的资源单元。容器组中的容器被自动安排到集群中的同一物理机或虚拟机上,并可以一起进行调度。在K8s(Kubernetes)场景中,容器组是指Pod。
边车容器(也称作为sidecar容器):是为容器组中的原有容器提供辅助功能的容器(也称作为辅助容器),辅助功能例如为日志代理、请求转发、文件拷贝或下载等。
容器编排装置:是指提供容器编排服务的装置,例如,创建、调度或管理容器或容器组等。
本地端:是一个与云端相对的概念,是指提供本地计算服务的系统,可以理解为在本地部署的计算机系统。在本申请实施例中,将部署在本地端的存储系统称作为本地存储系统。
云端:是一个与本地端相对的概念,是指提供云计算服务的系统,可以理解为在远端部署的计算机系统。
服务器计算实例(Serverful Instance):是基于Serverful架构的计算实例,可以理解为一种虚拟化的计算资源,包含VCPU(Virtual Center Processing Unit,虚拟处理器)、内存、操作系统、网络和磁盘等基础的计算组件。其中,Serverful架构是以服务器(Server)为基本计算单元,用中间件应用层技术管理服务器集群应用层面的一种软件架构。Server可以是虚拟机、物理机、以及基于硬件实现的云服务器等等。
无服务器计算实例(Serverless Instance):是基于Serverless架构的计算实例,例如,可以是提供容器化服务的弹性容器实例等等。其中,Serverless架构是指是由开发者实现的服务端逻辑运行在无状态的计算容器中,它由事件触发,完全被第三方管理,其服务层面的状态则被开发者使用的数据库和存储资源所记录。
在混合云场景下,用户可以使用本地IDC(Internet Data Center,数据中心)的资源,也能使用云上资源。具体而言,运行与用户的服务相关的Pod(容器组)可以调度到本地IDC,也可以调度到云上资源,实现线上线下服务混合部署,达到服务高可用,服务可以根据波峰波谷进行弹性资源调度等。当Pod调度到云端时,Pod通常仍然需要访问本地数据中心中的本地存储系统, 然而,云端距离本地IDC较远,导致访问延时较高,造成带宽资源浪费,Pod的性能较差。
为此,本申请实施例提供一种容器编排与数据访问方法、电子设备及存储介质,在本申请实施例中,容器组调度到云端时,可以修改容器组的配置信息中的数据源标识,修改后的数据源标识使得容器组可以就近访问云端的缓存有本地存储系统的分布式缓存系统,极大地降低了访问时延,减少了带宽资源浪费,保证了容器组的整体性能。进一步可选的,当容器组调度到本地端时,还可以支持容器组就近访问本地端的本地存储系统,极大地降低了访问时延,减少了带宽资源浪费,保证了容器组的整体性能。
另外,现有技术中,Pod调度到云端的无服务器计算实例时,还可能因无服务器计算实例自身限制访问本地存储系统失败,导致混合云场景为用户服务弹性扩容计算资源失败。但是本申请提供的技术方案即便是Pod调度到云端的无服务器计算实例,也能突破无服务器计算实例自身限制,访问与本地存储系统关联的云端分布式缓存中的数据,保证混合云场景为用户服务弹性扩容计算资源的成功。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1为本申请实施例提供的一种示例性的系统架构图。参见图1,整个系统包括:容器编排装置、本地端和云端。
其中,容器编排装置承担容器组创建和调度等工作。当用户有容器组创建需求时,向容器编排装置发送容器组创建指令,以触发容器编排装置创建容器组,以及按照调度逻辑将所创建的容器组调度到本地端或云端。
本地端可以包括多个物理机和本地存储系统,利用多个物理机提供的计算资源执行计算任务,利用本地存储系统提供的存储资源进行数据存储。本地端例如为本地数据中心,本地数据中心是指本地部署的数据中心(Internet Data Center,IDC)。
云端可以包括多个服务器计算实例、多个无服务器计算实例和分布式缓存系统。利用多个服务器计算实例或多个无服务器计算实例提供的计算资源执行计算任务,利用分布式缓存系统提供的存储资源进行数据存储。在本实施例中,本地存储系统中的数据可缓存至分布式缓存系统中。本地存储系统和分布式缓存系统之间的专线不做限制,专线例如包括但不限于:高速通道(Express Connect)专线、数字数据专线(Digital Data Network Leased Line,DDN)或光纤专线。
在容器组创建阶段,用户按需配置所需创建的容器组的配置信息,容器编排装置根据容器创建指令中所携带的容器组的配置信息创建容器组。其中,容器组的配置信息中的数据源标识为本地存储系统的标识,容器组根据本地 存储系统的标识确定可访问的数据源为本地存储系统。
值得注意的是,对用户来说,无论后续容器组是调度到本地端还是云端,在容器组创建阶段,用户按照容器组调度到本地端的原则配置所需创建的容器组的配置信息即可,后续若容器组调度到云端,由容器编排装置自动自适应修改容器组的配置信息,无需用户参与。也就是说,在容器组创建阶段,用户按照统一的方式配置所需创建的容器组的配置信息。
在容器组调度阶段,分为以下三种情况:
情况1:若所创建的容器组需要调度至本地端的任意物理机上,则保持容器组的配置信息不变,容器编排装置将所创建的容器组及其原始的配置信息调度至本地端的物理机上。
情况2:若所创建的容器组需要调度至云端的任意服务器计算实例上,则对容器组的配置信息进行修改,将原始的配置信息的数据源标识删除,以及在删除后的配置信息中添加分布式缓存系统的标识,得到新的配置信息,容器编排装置将所创建的容器组及新的配置信息调度至云端的服务器计算实例上。
情况3:若所创建的容器组需要调度至云端的任意无服务器计算实例上,则对容器组的配置信息进行修改,将原始的配置信息的数据源标识删除,以及在删除后的配置信息中添加边车(sidecar)容器的容器配置信息,得到新的配置信息,容器配置信息中包括分布式缓存系统的标识。容器编排装置根据容器配置信息在容器组中创建边车容器,并将新的容器组及新的配置信息调度至云端的无服务器计算实例上。
值得注意的是,在容器组调度阶段,根据调度结果自适应修改容器组的配置信息中的数据源标识,使得容器组调度到本地端时可以访问本地存储系统,容器组调度到云端时可以访问云端的分布式缓存系统,实现了容器组自适应访问不同数据源。
在数据访问阶段,分为以下三种情况:
情况1:若所创建的容器组需要调度至本地端的任意物理机上,容器组通过CSI(Container Storage Interface,容器存储接口)创建的客户端,根据配置信息中的本地存储系统的标识向本地存储系统发送数据访问请求,以满足容器组就近访问需求。
情况2:若所创建的容器组需要调度至云端的任意服务器计算实例上,容器组通过CSI创建的客户端,根据配置信息中的分布式缓存系统的标识向分布式缓存系统发送数据访问请求,以满足容器组就近访问需求。
情况3:若所创建的容器组需要调度至云端的任意无服务器计算实例上,容器组通过边车容器根据容器配置信息中的分布式缓存系统的标识向分布式 缓存系统发送数据访问请求,以满足容器组就近访问需求。
综上,在本实施例中,当容器组调度到本地端时,容器组就近访问本地端的本地存储系统。当容器组调度到云端时,容器组就近访问云端的缓存有本地存储系统的分布式缓存系统,极大地降低了访问时延,减少了带宽资源浪费,保证了容器组的整体性能。
图2为本申请实施例提供的一种容器编排方法的流程图。该方法可由容器编排装置执行,该装置可由软件和/或硬件组成。参见图2,该方法可以包括以下步骤:
201、获取创建目标容器组所需的第一配置信息,第一配置信息中的数据源标识用于标识部署在本地端的本地存储系统。
202、根据第一配置信息创建目标容器组,以及确定目标容器组需要调度至的目标计算节点。
203、若目标计算节点部署在云端,则更新第一配置信息中的数据源标识,得到第二配置信息,其中,第二配置信息中的数据源标识用于标识云端的分布式缓存系统,分布式缓存系统缓存有本地存储系统中的数据。
204、将目标容器组和第二配置信息调度至云端的目标计算节点,其中,第二配置信息中的数据源标识用于在数据访问阶段以使目标容器组访问分布式缓存系统。
205、若目标计算节点部署在本地端,则将目标容器组和第一配置信息调度至本地端的目标计算节点,其中,第一配置信息中的数据源标识用于在数据访问阶段以使目标容器组访问本地存储系统。
具体而言,在容器创建阶段,用户向容器编排装置提交创建容器组所需的配置信息。在此将待创建的容器组称作为目标容器组,用户提交的配置信息称作为第一配置信息。以在K8s中创建容器组为例,第一配置信息例如为:

以上述举例的第一配置信息为例,用户在配置第一配置信息,在Pod spec中定义Pod可访问的共享存储卷列表volumes,共享存储卷列表中包括与本地存储系统对应的存储卷。在此,与本地存储系统对应的存储卷的名称即为标识本地存储系统的数据源标识。
在本实施例中,根据第一配置信息创建目标容器组。创建完目标容器组之后,进入容器组调度阶段。首先,确定目标容器组需要调度至的目标计算节点,根据调度结果修改第一配置信息,在此将修改后的第一配置信息称作为第二配置信息。
在本实施例中,若目标容器组需要调度到云端,更新第一配置信息中的数据源标识,得到第二配置信息。第二配置信息中的数据源标识用于标识云端的分布式缓存系统,分布式缓存系统缓存有本地存储系统中的数据。在配置信息更新结束后,将目标容器组和第二配置信息调度云端。在数据访问阶段,调度到云端的目标容器组根据第二配置信息中的数据源标识访问云端的缓存有本地存储系统的数据的分布式缓存系统,实现就近访问。
进一步可选的,为了满足用户按需选择容器组所需访问的数据源,用户还可以在第一配置信息中添加数据源自适应启动标签。若数据源自适应启动标签指示启动数据源自适应功能,则根据容器组的调度结果决策是否修改容器组的数据源标识。若数据源自适应启动标签指示关闭数据源自适应功能,则对容器组的配置信息中的数据源标识不做修改,保持不变。
基于上述,在执行步骤203之前,还可以判断第一配置信息中的数据源自适应标签是否指示启动数据源自适应功能;若判断结果为是,则执行步骤203。若判断结果为否,则将目标容器组和第一配置信息调度至云端的目标计算节点,其中,第一配置信息中的数据源标识用于在数据访问阶 段以使目标容器组访问本地存储系统。
可以理解的是,若数据源自适应启动标签指示关闭数据源自适应功能,即便目标容器组调度到云端,仍然需要访问本地存储系统。
进一步可选的,为了提高目标容器组访问云端的分布式缓存系统的可靠性,步骤203的实现方式为:若目标计算节点部署在云端,在第一配置信息中增加调度结果标签,调度结果标签指示目标容器组需要调度至云端;响应于第一配置信息中存在调度结果标签,更新增加调度结果标签后的第一配置信息中的数据源标识,得到第二配置信息。
例如,若目标计算节点是云端的服务器计算实例,可以在第一配置信息的标签选择器中增加一个调度结果标签,该调度结果标签指示目标容器组需要调度云端的服务器计算实例上。又例如,若目标计算节点是云端的无服务器计算实例,可以在第一配置信息的标签选择器中增加一个调度结果标签,该调度结果标签指示目标容器组需要调度云端的无服务器计算实例上。
在本实施例中,若目标计算节点部署在云端,目标计算节点可能是部署在云端的服务器计算实例,也可能是部署在云端的无服务器计算实例,对此不做限制。
在本实施例中,若目标计算节点是部署在云端的服务器计算实例,在更新第一配置信息时,可以将第一配置信息中的数据源标识更新为标识分布式缓存系统的数据源标识,得到第二配置信息。
以下为示例性的修改后第一配置信息得到的第二配置信息:

在上述举例的第二配置信息,相比前述举例的第一配置信息,一处变化是:将与本地存储系统关联的存储卷的名称,修改为与分布式缓存系统关联的存储卷的名称,与分布式缓存系统关联的存储卷的名称即为标识分布式缓存系统的数据源标识。另一处变化是:增加了调度结果标签,该标签指示目标容器组需要调度云端的服务器计算实例。
在本实施例中,若目标计算节点是部署在云端的无服务器计算实例,则在更新第一配置信息时,可以删除第一配置信息中的数据源标识,以及在删除后的第一配置信息中添加边车容器的容器配置信息,得到第二配置信息,容器配置信息中的数据源标识用于标识分布式缓存系统。
以下为示例性的修改后第一配置信息得到的第二配置信息:

在上述举例的第二配置信息,相比前述举例的第一配置信息,变化之处是:删除了与本地存储系统关联的存储卷的名称,以及增加了边车容器的容器配置信息。容器配置信息中包括了与分布式缓存系统关联的存储卷的名称即为标识分布式缓存系统的数据源标识。另一处变化是:增加了调度结果标签,该标签指示目标容器组需要调度云端的无服务器计算实例。
在本实施例中,若目标计算节点是部署在云端的服务器计算实例,则在得到第二配置信息之后,将目标容器组和第二配置信息调度至云端的服务器计算实例。
若目标计算节点是部署在云端的无服务器计算实例,则在得到第二配置信息之后,可以直接将目标容器组和第二配置信息调度至云端的无服务器计算实例,然后在基于第二配置信息中的容器配置信息在目标容器组中创建边车容器。进一步可选的,为了提高目标容器组的性能,在得到第二配置信息之后,首先根据容器配置信息在目标容器组中创建边车容器,然后将目标容器组和第二配置信息调度至云端的目标计算节点。
实际应用中,目标计算节点也可能部署在本地端,则将目标容器组和第一配置信息调度至本地端的目标计算节点,其中,第一配置信息中的数据源标识用于在数据访问阶段以使目标容器组访问本地存储系统。也就是说,若目标计算节点部署在本地端,不需要修改第一配置信息,可以直接将目标容器组和第一配置信息调度至本地端的目标计算节点。
本申请实施例提供的容器编排方法,当容器组调度到云端时,可以修改容器组的配置信息中的数据源标识,修改后的数据源标识使得容器组可以就近访问云端的缓存有本地存储系统的分布式缓存系统,极大地降低了 访问时延,减少了带宽资源浪费,保证了容器组的整体性能。进一步可选的,当容器组调度到本地端时,还可以支持容器组就近访问本地端的本地存储系统,极大地降低了访问时延,减少了带宽资源浪费,保证了容器组的整体性能。
在基于上述实施例提供的容器编排方法创建并调度容器组到本地端或云端之后,根据容器组中的配置信息访问本地端的本地存储系统或云端的分布式缓存系统。为此,本申请实施例还提供一种数据访问方法。
图3为本申请实施例提供的一种数据访问方法的流程图。参见图3,该方法可以包括以下步骤:
301、响应于数据访问事件被触发,获取目标容器组的配置信息。
302、若配置信息中的数据源标识云端的分布式缓存系统,分布式缓存系统缓存有本地端的本地存储系统中的数据,则根据数据源标识,向分布式缓存系统发送数据访问请求。
303、若配置信息中的数据源标识本地端的本地存储系统,则通过CSI创建的客户端根据数据源标识,向本地存储系统发送数据访问请求。
具体而言,在目标容器组完成调度之后,检测数据访问事件是否被触发,若数据访问事件被触发,说明目标容器组有数据访问需求。此时,目标容器组的配置信息。若配置信息中的数据源标识云端的分布式缓存系统,则需要区分目标容器组是部署在云端的服务器计算实例还是无服务器计算实例上。若目标容器组部署在云端的服务器计算实例,则通过CSI创建的客户端根据数据源标识,向分布式缓存系统发送数据访问请求。若目标容器组部署在云端的无服务器计算实例,则通过目标容器组中的边车容器根据数据源标识,向分布式缓存系统发送数据访问请求。若配置信息中的数据源标识本地端的本地存储系统,则通过CSI创建的客户端根据数据源标识,向本地存储系统发送数据访问请求。
本申请实施例提供的技术方案,当容器组调度到云端时,容器组可以就近访问云端的缓存有本地存储系统的分布式缓存系统,极大地降低了访问时延,减少了带宽资源浪费,保证了容器组的整体性能。进一步可选的,当容器组调度到本地端时,还可以支持容器组就近访问本地端的本地存储系统,极大地降低了访问时延,减少了带宽资源浪费,保证了容器组的整体性能。
为了更好地理解本申请实施例提供的技术方案,下面以K8s场景为例进行介绍。
具体而言,容器编排装置可以包括:接口服务器(API Server)、控制器(例如Controller Manager)、调度器(例如为Scheduler)和自适应模块。接口服 务器可以控制控制器、调度器和自适应模块等进行协调工作。其中,Controller Manager通过API Server检测整个集群的状态,并确保集群处于预期的工作状态。自适应模块是任意具有根据调度结果自适应修改容器组的配置信息的功能模块。参见图4中的①和②所示,接口服务器接收用户发送的容器组创建指令并向控制器转发,容器组创建指令包括创建Pod所需的原始配置信息,原始配置信息中注入标签datasource-policy:auto,以及在Pod Spec中添加与本地存储系统关联的存储卷的名称。参见图4中的③所示,控制器响应接收到的容器组创建指令,创建Pod。在接口服务器的协助下,参见图4中的④所示,调度器监听到Pod创建事件,确定Pod的调度结果。参见图4中的⑤所示,Pod需要调度至云端的服务器计算实例,调度器在Pod的配置信息中增加标签CSI-target:Serverful Instance,并触发自适应模块更新Pod Spec。参见图4中的⑥所示,自适应模块删除Pod Spec中的与本地存储系统关联的存储卷的名称,以及在Pod Spec中增加与分布式缓存系统关联的存储卷的名称,以更新Pod Spec。参见图4中的⑦所示,调度器将Pod以及更新后的配置信息调度至云端的服务器计算实例。参见图4中的⑧所示,Pod需要调度至云端的无服务器计算实例,调度器在Pod的配置信息中增加标签sidecartarget:Serverless Instance,并触发自适应模块更新Pod Spec。参见图4中的⑨所示,自适应模块删除Pod Spec中的与本地存储系统关联的存储卷的名称,以及在Pod Spec中增加边车容器的容器配置信息,以更新Pod Spec。参见图4中的⑩所示,调度器将Pod以及更新后的配置信息调度至云端的无服务器计算实例。参见图4中的所示,Pod需要调度至本地端,调度器将Pod以及原始配置信息调度至本地端。
在数据访问阶段,若容器组部署在云端的服务器计算实例,则通过CSI创建的客户端根据Pod Spec中的与分布式缓存系统关联的存储卷的名称,向分布式缓存系统发送数据访问请求。若容器组部署在云端的无服务器计算实例,则通过目标容器组中的边车容器根据Pod Spec中的与分布式缓存系统关联的存储卷的名称,向分布式缓存系统发送数据访问请求。若容器组部署在本地端,则通过CSI创建的客户端根据Pod Spec中与本地存储系统关联的存储卷的名称,向本地存储系统发送数据访问请求。
图5为本申请实施例提供的一种容器编排装置的结构示意图。参见图5,该装置可以包括:
获取模块51,用于获取创建目标容器组所需的第一配置信息,第一配置信息中的数据源标识用于标识部署在本地端的本地存储系统。
创建模块52,用于根据第一配置信息创建目标容器组。
确定模块53,用于确定目标容器组需要调度至的目标计算节点;
更新模块54,用于若目标计算节点部署在云端,则更新第一配置信息中的数据源标识,得到第二配置信息,其中,第二配置信息中的数据源标识用于标识云端的分布式缓存系统,分布式缓存系统缓存有本地存储系统中的数据;
调度模块55,用于将目标容器组和第二配置信息调度至云端的目标计算节点,其中,第二配置信息中的数据源标识用于在数据访问阶段以使目标容器组访问分布式缓存系统。
进一步可选的,更新模块54还用于判断第一配置信息中的数据源自适应标签是否指示启动数据源自适应功能;若判断结果为是,则执行若目标计算节点部署在云端,则更新第一配置信息中的数据源标识的步骤。
进一步可选的,更新模块54还用于:若判断结果为否,则将目标容器组和第一配置信息调度至云端的目标计算节点,其中,第一配置信息中的数据源标识用于在数据访问阶段以使目标容器组访问本地存储系统。
进一步可选的,更新模块54具体用于:若目标计算节点部署在云端,在第一配置信息中增加调度结果标签,调度结果标签指示目标容器组需要调度至云端;响应于第一配置信息中存在调度结果标签,更新增加调度结果标签后的第一配置信息中的数据源标识,得到第二配置信息。
进一步可选的,更新模块54具体用于:若目标计算节点是部署在云端的服务器计算实例,则将第一配置信息中的数据源标识更新为标识分布式缓存系统的数据源标识,得到第二配置信息;若目标计算节点是部署在云端的无服务器计算实例,则删除第一配置信息中的数据源标识,以及在删除后的第一配置信息中添加边车容器的容器配置信息,得到第二配置信息,容器配置信息中的数据源标识用于标识分布式缓存系统。
进一步可选的,创建模块52还用于:根据容器配置信息在目标容器组中创建边车容器。
进一步可选的,调度模块55,还用于若目标计算节点部署在本地端,则将目标容器组和第一配置信息调度至本地端的目标计算节点,其中,第一配置信息中的数据源标识用于在数据访问阶段以使目标容器组访问本地存储系统。
图5所示的装置可以执行图2所示实施例的方法,其实现原理和技术效果不再赘述。对于上述实施例中的图5所示装置其中各个模块、单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
需要说明的是,上述实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤301至步骤 303的执行主体可以为设备A;又比如,步骤301和302的执行主体可以为设备A,步骤303的执行主体可以为设备B;等等。
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如301、302等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
图6为本申请实施例提供的一种电子设备的结构示意图。如图6所示,该电子设备包括:存储器61和处理器62;
存储器61,用于存储计算机程序,并可被配置为存储其它各种数据以支持在计算平台上的操作。这些数据的示例包括用于在计算平台上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器61可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random-AccessMemory,SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable read only memory,EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM),可编程只读存储器(Programmable read-only memory,PROM),只读存储器(Read-Only Memory,ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器62,与存储器61耦合,用于执行存储器61中的计算机程序,以用于:容器编排方法或数据访问方法中的步骤。
进一步,如图6所示,该电子设备还包括:通信组件63、显示器64、电源组件65、音频组件66等其它组件。图6中仅示意性给出部分组件,并不意味着电子设备只包括图6所示组件。另外,图6中虚线框内的组件为可选组件,而非必选组件,具体可视电子设备的产品形态而定。本实施例的电子设备可以实现为台式电脑、笔记本电脑、智能手机或IOT(物联网,Internet of things)设备等终端设备,也可以是常规服务器、云服务器 或服务器阵列等服务端设备。若本实施例的电子设备实现为台式电脑、笔记本电脑、智能手机等终端设备,可以包含图6中虚线框内的组件;若本实施例的电子设备实现为常规服务器、云服务器或服务器阵列等服务端设备,则可以不包含图6中虚线框内的组件。
关于处理器执行各动作的详细实施过程可参见前述方法实施例或设备实施例中的相关描述,在此不再赘述。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述方法实施例中可由电子设备执行的各步骤。
相应地,本申请实施例还提供一种计算机程序产品,包括计算机程序/指令,当计算机程序/指令被处理器执行时,致使处理器能够实现上述方法实施例中可由电子设备执行的各步骤。
上述通信组件被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如WiFi(Wireless Fidelity,无线保真)、2G(2Generation,2代)、3G(3Generation,3代)、4G(4Generation,4代)/LTE(long Term Evolution,长期演进)、5G(5Generation,5代)等移动通信网络,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件还包括近场通信(Near Field Communication,NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(Radio Frequency Identification,RFID)技术,红外数据协会(The Infrared Data Association,IrDA)技术,超宽带(Ultra Wide Band,UWB)技术,蓝牙(Bluetooth,BT)技术和其他技术来实现。
上述显示器包括屏幕,其屏幕可以包括液晶显示器(Liquid Crystal Display,LCD)和触摸面板(Touch Panel,TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。
上述电源组件,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
上述音频组件,可被配置为输出和/或输入音频信号。例如,音频组件包括一个麦克风(microphone,MIC),当音频组件所在设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器或经由通信组件发送。在一些 实施例中,音频组件还包括一个扬声器,用于输出音频信号。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可读存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(Central Processing Unit,CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(Random Access Memory,RAM)和/或非易失性内存等形式,如只读存储器(Read Only Memory,ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变化内存(Phase Change RAM,PRAM)、静态随机存取存储器(Static Random-Access Memory,SRAM)、动态随机存取存储器(Dynamic Random Access Memory,DRAM)、其他类型的随机存取存储器(Random Access Memory,RAM)、只读存储器(Read Only Memory,ROM)、电可擦除可编程只读存储器 (Electrically-Erasable Programmable Read-Only Memory,EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(Digital versatiledisc,DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (12)

  1. 一种容器编排方法,其特征在于,包括:
    获取创建目标容器组所需的第一配置信息,所述第一配置信息中的数据源标识用于标识部署在本地端的本地存储系统;
    根据所述第一配置信息创建所述目标容器组,以及确定所述目标容器组需要调度至的目标计算节点;
    若所述目标计算节点部署在云端,则更新所述第一配置信息中的数据源标识,得到第二配置信息,其中,所述第二配置信息中的数据源标识用于标识所述云端的分布式缓存系统,所述分布式缓存系统缓存有所述本地存储系统中的数据;
    将所述目标容器组和所述第二配置信息调度至所述云端的所述目标计算节点,其中,所述第二配置信息中的数据源标识用于在数据访问阶段以使所述目标容器组访问所述分布式缓存系统。
  2. 根据权利要求1所述的方法,其特征在于,若所述目标计算节点部署在云端,则更新所述第一配置信息中的数据源标识之前,包括:
    判断所述第一配置信息中的数据源自适应标签是否指示启动数据源自适应功能;
    若判断结果为是,则执行若所述目标计算节点部署在云端,则更新所述第一配置信息中的数据源标识的步骤。
  3. 根据权利要求2所述的方法,其特征在于,还包括:
    若判断结果为否,则将所述目标容器组和所述第一配置信息调度至所述云端的所述目标计算节点,其中,所述第一配置信息中的数据源标识用于在数据访问阶段以使所述目标容器组访问所述本地存储系统。
  4. 根据权利要求1所述的方法,其特征在于,若所述目标计算节点部署在云端,则更新所述第一配置信息中的数据源标识,得到第二配置信息,包括:
    若所述目标计算节点部署在云端,在所述第一配置信息中增加调度结果标签,所述调度结果标签指示所述目标容器组需要调度至所述云端;
    响应于所述第一配置信息中存在所述调度结果标签,更新增加所述调度结果标签后的所述第一配置信息中的数据源标识,得到第二配置信息。
  5. 根据权利要求1所述的方法,其特征在于,若所述目标计算节点部署在云端,则更新所述第一配置信息中的数据源标识,得到第二配置信息,包括:
    若所述目标计算节点是部署在所述云端的服务器计算实例,则将所述第一配置信息中的数据源标识更新为标识所述分布式缓存系统的数据源标 识,得到所述第二配置信息;
    若所述目标计算节点是部署在云端的无服务器计算实例,则删除所述第一配置信息中的数据源标识,以及在删除后的所述第一配置信息中添加边车容器的容器配置信息,得到所述第二配置信息,所述容器配置信息中的数据源标识用于标识所述分布式缓存系统。
  6. 根据权利要求5所述的方法,其特征在于,在将所述目标容器组和所述第二配置信息调度至所述云端的所述目标计算节点之前,还包括:
    根据所述容器配置信息在所述目标容器组中创建所述边车容器。
  7. 根据权利要求1所述的方法,其特征在于,还包括:
    若所述目标计算节点部署在所述本地端,则将所述目标容器组和所述第一配置信息调度至所述本地端的所述目标计算节点,其中,所述第一配置信息中的数据源标识用于在数据访问阶段以使所述目标容器组访问所述本地存储系统。
  8. 一种数据访问方法,其特征在于,包括:
    响应于数据访问事件被触发,获取目标容器组的配置信息;
    若所述配置信息中的数据源标识云端的分布式缓存系统,所述分布式缓存系统缓存有本地端的本地存储系统中的数据,则根据所述数据源标识,向所述分布式缓存系统发送数据访问请求。
  9. 根据权利要求8所述的方法,其特征在于,根据所述数据源标识,向所述分布式缓存系统发送数据访问请求,包括:
    若所述目标容器组部署在所述云端的服务器计算实例,则通过容器存储接口CSI创建的客户端根据所述数据源标识,向所述分布式缓存系统发送数据访问请求;
    若所述目标容器组部署在云端的无服务器计算实例,则通过所述目标容器组中的边车容器根据所述数据源标识,向所述分布式缓存系统发送数据访问请求。
  10. 根据权利要求8所述的方法,其特征在于,还包括:
    若所述配置信息中的数据源标识本地端的本地存储系统,则通过CSI创建的客户端根据所述数据源标识,向所述本地存储系统发送数据访问请求。
  11. 一种电子设备,其特征在于,包括:存储器和处理器;所述存储器,用于存储计算机程序;所述处理器耦合至所述存储器,用于执行所述计算机程序以用于执行权利要求1-10任一项所述方法中的步骤。
  12. 一种存储有计算机程序的计算机可读存储介质,其特征在于,当所述计算机程序被处理器执行时,致使所述处理器能够实现权利要求1-10任一 项所述方法中的步骤。
PCT/CN2024/097250 2023-06-09 2024-06-04 容器编排与数据访问方法、电子设备及存储介质 Ceased WO2024251107A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202310684370.0 2023-06-09
CN202310684370.0A CN116846889B (zh) 2023-06-09 2023-06-09 容器编排与数据访问方法、电子设备及存储介质

Publications (1)

Publication Number Publication Date
WO2024251107A1 true WO2024251107A1 (zh) 2024-12-12

Family

ID=88173492

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2024/097250 Ceased WO2024251107A1 (zh) 2023-06-09 2024-06-04 容器编排与数据访问方法、电子设备及存储介质

Country Status (2)

Country Link
CN (1) CN116846889B (zh)
WO (1) WO2024251107A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116846889B (zh) * 2023-06-09 2026-06-19 阿里云计算有限公司 容器编排与数据访问方法、电子设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140108474A1 (en) * 2012-10-16 2014-04-17 Rackspace Us, Inc. System and Method for Exposing Cloud Stored Data to a Content Delivery Network
US20190361618A1 (en) * 2018-05-22 2019-11-28 International Business Machines Corporation Maintaining container to storage volume relations
CN114143315A (zh) * 2021-11-30 2022-03-04 阿里巴巴(中国)有限公司 边缘云系统、主机访问方法及设备
US20220329651A1 (en) * 2021-04-12 2022-10-13 Electronics And Telecommunications Research Institute Apparatus for container orchestration in geographically distributed multi-cloud environment and method using the same
CN115525300A (zh) * 2022-08-18 2022-12-27 中国电子科技集团公司第十五研究所 一种容器云场景下的增量式镜像打包方法及系统
CN115576669A (zh) * 2022-09-26 2023-01-06 阿里巴巴(中国)有限公司 一种容器调度方法、系统、计算机设备及存储介质
CN116846889A (zh) * 2023-06-09 2023-10-03 阿里云计算有限公司 容器编排与数据访问方法、电子设备及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111723110B (zh) * 2019-03-21 2025-05-02 阿里巴巴集团控股有限公司 分布式缓存系统及关联查询和更新方法、设备与存储介质
US12169736B2 (en) * 2021-04-29 2024-12-17 Netapp, Inc. Management and orchestration of microservices
CN115640110B (zh) * 2022-11-07 2023-11-17 北京百度网讯科技有限公司 分布式云计算系统调度方法和装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140108474A1 (en) * 2012-10-16 2014-04-17 Rackspace Us, Inc. System and Method for Exposing Cloud Stored Data to a Content Delivery Network
US20190361618A1 (en) * 2018-05-22 2019-11-28 International Business Machines Corporation Maintaining container to storage volume relations
US20220329651A1 (en) * 2021-04-12 2022-10-13 Electronics And Telecommunications Research Institute Apparatus for container orchestration in geographically distributed multi-cloud environment and method using the same
CN114143315A (zh) * 2021-11-30 2022-03-04 阿里巴巴(中国)有限公司 边缘云系统、主机访问方法及设备
CN115525300A (zh) * 2022-08-18 2022-12-27 中国电子科技集团公司第十五研究所 一种容器云场景下的增量式镜像打包方法及系统
CN115576669A (zh) * 2022-09-26 2023-01-06 阿里巴巴(中国)有限公司 一种容器调度方法、系统、计算机设备及存储介质
CN116846889A (zh) * 2023-06-09 2023-10-03 阿里云计算有限公司 容器编排与数据访问方法、电子设备及存储介质

Also Published As

Publication number Publication date
CN116846889B (zh) 2026-06-19
CN116846889A (zh) 2023-10-03

Similar Documents

Publication Publication Date Title
CN109976667B (zh) 一种镜像管理方法、装置及系统
US9298747B2 (en) Deployable, consistent, and extensible computing environment platform
US10515058B2 (en) Unified file and object data storage
US11782756B2 (en) Method and apparatus for scheduling processor core, and storage medium
US12073263B1 (en) Dynamic processing of API requests
CN112019475A (zh) 无服务器架构下的资源访问方法、设备、系统及存储介质
CN114125028B (zh) 微应用的运行方法、装置、设备、存储介质及程序产品
CN108536538A (zh) 处理器核心调度方法、装置、终端及存储介质
CN106533713B (zh) 一种应用部署方法及设备
WO2020052337A1 (zh) 信息处理方法、装置、存储介质及电子设备
WO2023066053A1 (zh) 业务请求处理方法、网络设备及计算机可读存储介质
CN112243016A (zh) 一种中间件平台、终端设备、5g人工智能云处理系统及处理方法
WO2024174753A1 (zh) 定制化容器引擎、方法、宿主机及介质
CN112187916A (zh) 一种跨系统的数据同步方法与装置
CN116801008A (zh) 媒体信息素材处理方法、装置、电子设备以及存储介质
CN116263768B (zh) 基于云平台的信息推送方法及装置
CN112114804A (zh) 应用程序的生成方法、装置及系统
WO2023179183A1 (zh) 子程序同步处理
CN118694819A (zh) 微服务管理系统、方法、设备、存储介质及程序产品
CN116846889A (zh) 容器编排与数据访问方法、电子设备及存储介质
CN110750316B (zh) 处理内部任务或输入事件的方法和应用程序架构系统
CN110120963A (zh) 一种数据处理方法、装置、设备和机器可读介质
US20250251999A1 (en) Database connection management for integration flows in a cloud environment
CN121940282A (zh) 存储资源切换系统、方法、设备、存储介质及计算机程序产品
CN119211005A (zh) 租户集群部署方法、装置、物理机以及存储介质

Legal Events

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

Ref document number: 24818639

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 24818639

Country of ref document: EP

Kind code of ref document: A1