Multi-role application orchestration in a distributed storage system

    公开(公告)号:US11748203B2

    公开(公告)日:2023-09-05

    申请号:US15868613

    申请日:2018-01-11

    IPC分类号: G06F11/14 G06F16/188

    摘要: A new snapshot of a storage volume is created by instructing computing nodes to suppress write requests. Once pending write requests from the computing nodes are completed, storage nodes create a new snapshot for the storage volume by allocating a new segment to the new snapshot and finalizes and performs garbage collection with respect to segments allocated to the previous snapshot. Subsequent write requests to the storage volume are then performed on the segments allocated to the new snapshot. An orchestration layer implements a multi-role application that is provisioned with virtualized storage and computation resources. A snapshot of the application may be created and used to rollback or clone the application. Clone snapshots of storage volumes may be gradually populated with data from prior snapshots to reduce loading on a primary snapshot.

    Snapshot Backup And Recovery
    2.
    发明申请

    公开(公告)号:US20220091942A1

    公开(公告)日:2022-03-24

    申请号:US17028891

    申请日:2020-09-22

    IPC分类号: G06F11/14

    摘要: Snapshots are created of a unit of storage such that the snapshot includes all segments allocated to the unit of storage until a subsequent snapshot is created. A backup of a first snapshot may be performed by copying segments of the snapshot to backup storage. If a preceding snapshot has been backed up, those segments of the first snapshot are copied to backup storage without copying the segments of the preceding snapshot, otherwise all segments of the snapshot are copied. Metadata describing the snapshot may be retained but storage may be freed to be overwritten. The metadata may reference identifiers of segments copied to backup storage. Data stored in backup storage may also be labeled as individual segments or be associated with snapshot metadata in backup storage.

    Implementing advanced networking capabilities using helm charts

    公开(公告)号:US11271895B1

    公开(公告)日:2022-03-08

    申请号:US17065317

    申请日:2020-10-07

    摘要: A KUBERNETES installation processes a script and invokes a scheduling agent in response to encountering an instruction to create a pod. The scheduling agent is an agent of an orchestrator and performs tasks such as identifying a selected node, creating multiple interface objects with multiple IP addresses, and creating storage volumes in coordination with the orchestrator. Upon creation, the pod may call a CNI that is an agent of the orchestrator in order to configure the pod to use the multiple interface objects. The pod may call a CSI that is an agent of the orchestrator in order to bind a storage volume to the pod. The scheduling agent may coordinate with the orchestrator to implement affinity and anti-affinity rules for placement of pods and storage volumes. The script may also be transformed by the orchestrator in order to insert instructions implementing affinity and ant-affinity rules.

    Creating snapshots of a storage volume in a distributed storage system

    公开(公告)号:US11249851B2

    公开(公告)日:2022-02-15

    申请号:US16562062

    申请日:2019-09-05

    IPC分类号: G06F11/14 G06F3/06

    摘要: A new snapshot of a storage volume is created by instructing computing nodes to suppress write requests. Storage nodes create a new snapshot for the storage volume by allocating a new segment to the new snapshot and finalizes and performs garbage collection with respect to segments allocated to the previous snapshot. Subsequent write requests to the storage volume are then performed on the segments allocated to the new snapshot. A segment maps segments to a particular snapshot and metadata stored in the segment indicates storage volume addresses of data written to the segment. The snapshots may be represented by a storage manager in a hierarchy that identifies an ordering of snapshots and branches to clone snapshots. A non-snapshot volume may be converted to a snapshot volume at any point after creation.

    Implementing an application manifest in a node-specific manner using an intent-based orchestrator

    公开(公告)号:US11226847B2

    公开(公告)日:2022-01-18

    申请号:US16555886

    申请日:2019-08-29

    IPC分类号: G06F9/46 G06F9/50 G06F9/48

    摘要: An orchestrator generated pod specifications for role instances of a bundled application and submits these pod specifications to a KUBERNETES master. The pod specification specifies a node on which to implement a container executing the role instance, the node being selected according to an application manifest that may include affinity and anti-affinity constraints. The pod specification may be implemented by a KUBELET executing on the node, which may invoke interfaces to the orchestrator in order to obtain a network address for the container. A storage volume to be used by the container may have been mounted to the node previously by the orchestrator and be ready for use by the container. Upon failure of the node, the orchestrator generates a new pod specification according to the application manifest that instructs the master to create a new container having a same identity and state as the former container.

    Persistent Non-Homogeneous Worker Pools

    公开(公告)号:US20210406079A1

    公开(公告)日:2021-12-30

    申请号:US16915878

    申请日:2020-06-29

    摘要: Function calls, such as function calls from a workflow, may be added to queues. Function calls are selected from the queue and executed by workers of a worker pool, each worker being a container. The workers may be of different types and function calls may require execution by a worker of a specific type. The workers of the worker pool may be created or deleted such that workers are of the type required by function calls in the queue. Creation and deletion of workers may be performed according to priority of function calls in the queue. Creation and deletion of workers may be scheduled according to a workflow including the plurality of function calls.

    Automated Deployment And Management Of Network Intensive Applications

    公开(公告)号:US20210373868A1

    公开(公告)日:2021-12-02

    申请号:US16888600

    申请日:2020-05-29

    IPC分类号: G06F8/61 G06F3/0482

    摘要: Deployment of a network service pipeline may be automated by defining workflows comprising functions of instances of elements. Workflows may be defined in a graphical user interface including menus for the selection of elements, functions, and predefined workflows. A workflow may be dynamic such that addition or modification of a function invokes a trigger that automatically populates or modifies parameters of the functions of the workflow. Elements may each have a same set of functions that may be invoked by an orchestrator to perform automated implementation of the workflow. Functions of a workflow may be implemented in batches and may retrieve executable. data from a distributed file store. A test platform with hardware and network simulation may be used to develop functions and workflows.

    Automated management of bundled applications

    公开(公告)号:US11036439B2

    公开(公告)日:2021-06-15

    申请号:US16167109

    申请日:2018-10-22

    IPC分类号: G06F3/06 G06F1/18 G06F11/26

    摘要: A new snapshot of a storage volume is created by instructing computing nodes to suppress write requests. Once pending write requests from the computing nodes are completed, storage nodes create a new snapshot for the storage volume by allocating a new segment to the new snapshot and finalizes and performs garbage collection with respect to segments allocated to the previous snapshot. An orchestration layer implements a bundled application that is provisioned with virtualized storage and computation resources. A snapshot of the bundled application may be created and used to rollback or clone the application. Clones snapshots of storage volumes may be gradually populated with data from prior snapshots to reduce loading on a primary snapshot. Chaos testing of the bundled application may be performed and storage volumes may be created, expanded, and/or moved based on usage of the bundled application.

    Creating Snapshots of a Storage Volume in a Distributed Storage System

    公开(公告)号:US20210073079A1

    公开(公告)日:2021-03-11

    申请号:US16562062

    申请日:2019-09-05

    IPC分类号: G06F11/14 G06F3/06

    摘要: A new snapshot of a storage volume is created by instructing computing nodes to suppress write requests. Storage nodes create a new snapshot for the storage volume by allocating a new segment to the new snapshot and finalizes and performs garbage collection with respect to segments allocated to the previous snapshot. Subsequent write requests to the storage volume are then performed on the segments allocated to the new snapshot. A segment maps segments to a particular snapshot and metadata stored in the segment indicates storage volume addresses of data written to the segment. The snapshots may be represented by a storage manager in a hierarchy that identifies an ordering of snapshots and branches to clone snapshots. A non-snapshot volume may be converted to a snapshot volume at any point after creation.

    Performing Root Cause Analysis in a Multi-Role Application

    公开(公告)号:US20210073062A1

    公开(公告)日:2021-03-11

    申请号:US16561994

    申请日:2019-09-05

    IPC分类号: G06F11/07 G06F9/455

    摘要: A new snapshot of a storage volume is created by instructing computing nodes to suppress write requests. A snapshot of the application may be created and used to rollback or clone the application. Clones snapshots of storage volumes may be gradually populated with data from prior snapshots to reduce loading on a primary snapshot. Components of cloned applications may communicate with one another using addresses of these components in the parent application. Jobs implementing a bundled application may be referenced with a simulated file system that generates reads to hosts only when the job log file is actually read. Job logs and a job hierarchy may be used to perform root cause analysis. Job logs may be for tasks such as creating the bundled application, cloning, rolling back, backing up, scaling out, scaling in, deleting, pruning unused application images, or the like.