Patents Assigned to Portworx, Inc.
  • Patent number: 11375014
    Abstract: Clustered containerized applications are implemented with scalable provisioning. Methods include receiving a data storage request to store one or more data values in a storage volume implemented across a storage node cluster, the storage node cluster including a plurality of storage nodes including one or more storage devices having storage space allocated for storing data associated with the storage volume. Methods may further include identifying a cluster hierarchy associated with the storage node cluster, the cluster hierarchy identifying storage characteristics of the plurality of storage nodes, the cluster hierarchy also identifying physical location information for the plurality of storage nodes, the physical location information indicating node-to-node proximity on a network graph.
    Type: Grant
    Filed: November 4, 2020
    Date of Patent: June 28, 2022
    Assignee: Portworx, Inc.
    Inventors: Goutham Rao, Vinod Jayaraman, Ganesh Sangle
  • Patent number: 11354060
    Abstract: A single application may rely on data storage provided by a plurality of virtual data storage volumes mounted on one or more compute nodes. A crash-consistent snapshot of the state of the application may be generated. Each of the virtual data storage volumes may be quiesced prior to the capture of a plurality of volume-level snapshots, after which each volume is unquiesced. The crash-consistent snapshot may be used to restore the application to the state at the time the snapshot was captured.
    Type: Grant
    Filed: September 11, 2018
    Date of Patent: June 7, 2022
    Assignee: Portworx, Inc.
    Inventors: Vinod Jayaraman, Ganesh Sangle
  • Patent number: 11334372
    Abstract: Two servers implemented as containerized applications may manage the storage of data and the access of that data by compute jobs in a distributed system. A metadata server may distribute data on ingress and assign files to particular storage volumes. The metadata server may then provide a lookup function for files and be configured to distribute a file to other volumes when necessary. A job server may launch jobs as containerized applications and coordinate data access across jobs.
    Type: Grant
    Filed: July 31, 2020
    Date of Patent: May 17, 2022
    Assignee: Portworx, Inc.
    Inventors: Dinesh Israni, Saurabh Deoras, Vinod Jayaraman, Goutham Rao
  • Publication number: 20220057947
    Abstract: Distributed storage systems are implemented with application aware provisioning. Methods include receiving a volume provision request to allocate data storage space for a storage volume implemented across a storage node cluster. Methods also include selecting a storage pool among a set of candidate storage pools for provisioning the storage volume. Selecting the storage pool includes using application aware provisioning rules.
    Type: Application
    Filed: August 20, 2020
    Publication date: February 24, 2022
    Applicant: Portworx, Inc.
    Inventors: Ganesh Sangle, Harsh Desai, Vinod Jayaraman
  • Patent number: 11243825
    Abstract: A custom file system in a containerized software architecture facilitates the instantiation of application containers. Each container is composed of one or more application image layers. An application container instance includes read-only application image layer data shared among application container instances associated with the same application container. An application container instance may also include read/write application container instance data that is specific to the application container instance.
    Type: Grant
    Filed: February 28, 2020
    Date of Patent: February 8, 2022
    Assignee: Portworx, Inc.
    Inventors: Joseph Jobi, Goutham Rao
  • Patent number: 11237750
    Abstract: A virtual storage volume that includes storage space on potentially many different physical disks may be mounted at a compute node. In order to replicate the virtual storage volume to a target compute node, a sequence of snapshots may be created that capture the state of the virtual storage volume at a sequence of points in time. The data associated with these snapshots may be transferred to the target compute node. When the difference between the snapshots is sufficiently small, the target virtual storage volume may be resynchronized.
    Type: Grant
    Filed: August 30, 2018
    Date of Patent: February 1, 2022
    Assignee: Portworx, Inc.
    Inventor: Ganesh Sangle
  • Patent number: 11216220
    Abstract: A clustered storage system may include potentially many different nodes, each including a storage driver and a kernel module. A node may mount a virtual storage volume for the use of a container application at the node. The storage driver and kernel module may receive a request from a storage driver at a different node and respond by indicating whether the virtual storage volume is in active use. In this way, the clustered storage system may safely but forcibly unmount a virtual storage volume having a failed or hanging mount point so that the volume may be mounted on a different node.
    Type: Grant
    Filed: December 10, 2019
    Date of Patent: January 4, 2022
    Assignee: Portworx, Inc.
    Inventors: Dinesh Israni, Vinod Jayaraman, Goutham Rao
  • Publication number: 20210405902
    Abstract: Distributed storage systems are implemented with rule-based provisioning. Methods include receiving a volume provision request to allocate data storage space for a storage volume implemented across a storage node cluster. Methods also include receiving one or more rules for provisioning the storage volume, each rule being based on labels for one or more storage pools. Methods may also include applying each rule to each candidate storage pool in a set of candidate storage pools to generate a rule score for each rule. Methods may further include adding rule scores for each candidate storage pool to generate a storage pool score for each storage pool. Methods may also include selecting a storage pool among the set of candidate storage pools for provisioning the storage volume, wherein selecting the storage pool includes comparing each storage pool score to determine which candidate storage pool has the highest storage pool score.
    Type: Application
    Filed: June 30, 2020
    Publication date: December 30, 2021
    Applicant: Portworx, Inc.
    Inventors: Ganesh Sangle, Harsh Desai, Vinod Jayaraman
  • Patent number: 11023128
    Abstract: A scalable storage infrastructure may be provided by dynamically adjusting the size of a storage volume implemented across one or more storage devices. When data is added to or removed from the storage volume, the system may compare the current amount of data stored on the volume to a threshold value. Then storage capacity may then be adjusted so as to accommodate future storage requests without maintaining an inefficiently large amount of reserved but unused storage space.
    Type: Grant
    Filed: March 16, 2018
    Date of Patent: June 1, 2021
    Assignee: Portworx, Inc.
    Inventor: Luis Pablo Pabon
  • Patent number: 11003372
    Abstract: A container orchestrator may communicate with a scheduler agent on a compute node to mount and/or unmount a virtual storage volume at the compute node. The scheduler agent may perform operations such as creating and/or deleting a mount path, mounting and/or unmounting the virtual storage volume, and/or marking the mount path as writable and/or read-only in order to eliminate cross-node race conditions.
    Type: Grant
    Filed: May 31, 2018
    Date of Patent: May 11, 2021
    Assignee: Portworx, Inc.
    Inventors: Dinesh Israni, Harsh Desai, Goutham Rao, Vinod Jayaraman
  • Patent number: 10860536
    Abstract: Techniques and mechanisms described herein provide for a custom file system in a containerized application system in which an application instance may be created as a container based on an application image, which itself may be composed of some number of application image layers. By being aware of these application image layers, the file system can perform image layer level operations such as image layer multisourcing and image layer garbage collection.
    Type: Grant
    Filed: April 14, 2017
    Date of Patent: December 8, 2020
    Assignee: Portworx, Inc.
    Inventors: Joseph Jobi, Goutham Rao
  • Publication number: 20200364063
    Abstract: Two servers implemented as containerized applications may manage the storage of data and the access of that data by compute jobs in a distributed system. A metadata server may distribute data on ingress and assign files to particular storage volumes. The metadata server may then provide a lookup function for files and be configured to distribute a file to other volumes when necessary. A job server may launch jobs as containerized applications and coordinate data access across jobs.
    Type: Application
    Filed: July 31, 2020
    Publication date: November 19, 2020
    Applicant: Portworx, Inc.
    Inventors: Dinesh Israni, Saurabh Deoras, Vinod Jayaraman, Goutham Rao
  • Patent number: 10838914
    Abstract: Techniques and mechanisms described herein facilitate the execution of a software program container having a plurality of layers. Each layer may include a plurality of files. For instance, a base layer may include a version of an operating system, while an upper layer may include a software program configured to run within the operating system. Different layers may store, create, or modify the same file. However, the precedence of the version of the data for the file may be based on an ordering of the layers. For example, the version of the file in a higher layer should supersede the version of the file in a lower layer. In some implementations, a privileged storage container that runs atop a virtualization layer may manage storage resources for other containers. The privileged storage container may store each file in a software program container as a snapshotable object.
    Type: Grant
    Filed: June 19, 2018
    Date of Patent: November 17, 2020
    Assignee: Portworx, Inc.
    Inventors: Goutham Rao, Vinod Jayaraman
  • Patent number: 10834190
    Abstract: Clustered containerized applications are implemented with scalable provisioning. Methods include receiving a data storage request to store one or more data values in a storage volume implemented across a storage node cluster, the storage node cluster including a plurality of storage nodes including one or more storage devices having storage space allocated for storing data associated with the storage volume. Methods may further include identifying a cluster hierarchy associated with the storage node cluster, the cluster hierarchy identifying storage characteristics of the plurality of storage nodes, the cluster hierarchy also identifying physical location information for the plurality of storage nodes, the physical location information indicating node-to-node proximity on a network graph.
    Type: Grant
    Filed: January 18, 2018
    Date of Patent: November 10, 2020
    Assignee: Portworx, Inc.
    Inventors: Goutham Rao, Vinod Jayaraman, Ganesh Sangle
  • Patent number: 10831540
    Abstract: A clustered storage system may include potentially many different nodes, each including a storage driver and a scheduler agent. A node may mount a virtual storage volume for the use of a container application at the node. When a master node receives a request to instantiate a new containerized application, a scheduler at the master node may determine prioritization information for the new containerized application. The prioritization information may prioritize one or more nodes at which a virtualized storage volume employed by the application container instance is mounted.
    Type: Grant
    Filed: February 27, 2018
    Date of Patent: November 10, 2020
    Assignee: Portworx, Inc.
    Inventors: Dinesh Israni, Vinod Jayaraman, Goutham Rao
  • Patent number: 10732995
    Abstract: Two servers implemented as containerized applications may manage the storage of data and the access of that data by compute jobs in a distributed system. A metadata server may distribute data on ingress and assign files to particular storage volumes. The metadata server may then provide a lookup function for files and be configured to distribute a file to other volumes when necessary. A job server may launch jobs as containerized applications and coordinate data access across jobs.
    Type: Grant
    Filed: May 31, 2018
    Date of Patent: August 4, 2020
    Assignee: Portworx, Inc.
    Inventors: Dinesh Israni, Saurabh Deoras, Vinod Jayaraman, Goutham Rao
  • Publication number: 20200183621
    Abstract: A clustered storage system may include potentially many different nodes, each including a storage driver and a kernel module. A node may mount a virtual storage volume for the use of a container application at the node. The storage driver and kernel module may receive a request from a storage driver at a different node and respond by indicating whether the virtual storage volume is in active use. In this way, the clustered storage system may safely but forcibly unmount a virtual storage volume having a failed or hanging mount point so that the volume may be mounted on a different node.
    Type: Application
    Filed: December 10, 2019
    Publication date: June 11, 2020
    Applicant: Portworx, Inc.
    Inventors: Dinesh Israni, Vinod Jayaraman, Goutham Rao
  • Publication number: 20200167185
    Abstract: Systems, devices, and methods are disclosed herein for containerized scalable storage applications. Methods may include instantiating an application instance based on a plurality of application instance parameters, the application instance being configured to utilize a plurality of storage volumes implemented in a storage cluster. Methods may also include enumerating a plurality of unattached storage volumes included in the cluster associated with the application instance, the plurality of unattached storage volumes having a plurality of underlying physical storage devices, and the plurality of unattached storage volumes being identified based on a plurality of application instance parameters. The methods may further include attaching at least some of the plurality of unattached storage volumes to the application instance, wherein the attaching enables the application instance to access data stored in the attached storage volumes.
    Type: Application
    Filed: January 29, 2020
    Publication date: May 28, 2020
    Applicant: Portworx, Inc.
    Inventors: Goutham Rao, Vinod Jayaraman, Ganesh Sangle
  • Patent number: 10613917
    Abstract: A custom file system in a containerized software architecture facilitates the instantiation of application containers. Each container is composed of one or more application image layers. An application container instance includes read-only application image layer data shared among application container instances associated with the same application container. An application container instance may also include read/write application container instance data that is specific to the application container instance.
    Type: Grant
    Filed: March 15, 2019
    Date of Patent: April 7, 2020
    Assignee: Portworx, Inc.
    Inventors: Joseph Jobi, Goutham Rao
  • Publication number: 20200081623
    Abstract: A single application may rely on data storage provided by a plurality of virtual data storage volumes mounted on one or more compute nodes. A crash-consistent snapshot of the state of the application may be generated. Each of the virtual data storage volumes may be quiesced prior to the capture of a plurality of volume-level snapshots, after which each volume is unquiesced. The crash-consistent snapshot may be used to restore the application to the state at the time the snapshot was captured.
    Type: Application
    Filed: September 11, 2018
    Publication date: March 12, 2020
    Applicant: Portworx, Inc.
    Inventors: Vinod Jayaraman, Ganesh Sangle