Patents Assigned to Portworx, Inc.
-
Patent number: 10585694Abstract: 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: GrantFiled: January 18, 2018Date of Patent: March 10, 2020Assignee: Portworx, Inc.Inventors: Goutham Rao, Vinod Jayaraman, Ganesh Sangle
-
Publication number: 20200073552Abstract: 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: ApplicationFiled: August 30, 2018Publication date: March 5, 2020Applicant: Portworx, Inc.Inventor: Ganesh Sangle
-
Publication number: 20200042393Abstract: Copy-on-Write (CoW) snapshots share data on disk for extents that have not been overwritten, which allows for efficient use of disk space. A chain of snapshots may be created, where each snapshot corresponds to a point in time. A sequence of snapshots may be copied by rebuilding each snapshot for the destination volume based on the source volume, resulting in memory usage at the destination volume substantially similar to the memory usage of the snapshot sequence at the source volume.Type: ApplicationFiled: July 31, 2018Publication date: February 6, 2020Applicant: Portworx, Inc.Inventor: Dinesh Israni
-
Patent number: 10503441Abstract: 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: GrantFiled: November 28, 2017Date of Patent: December 10, 2019Assignee: Portworx, Inc.Inventors: Dinesh Israni, Vinod Jayaraman, Goutham Rao
-
Publication number: 20190369895Abstract: 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: ApplicationFiled: May 31, 2018Publication date: December 5, 2019Applicant: Portworx, Inc.Inventors: Dinesh Israni, Harsh Desai, Goutham Rao, Vinod Jayaraman
-
Publication number: 20190370023Abstract: 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.Type: ApplicationFiled: May 31, 2018Publication date: December 5, 2019Applicant: Portworx, Inc.Inventors: Dinesh Israni, Saurabh Deoras, Vinod Jayaraman, Goutham Rao
-
Publication number: 20190286326Abstract: 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: ApplicationFiled: March 16, 2018Publication date: September 19, 2019Applicant: Portworx, Inc.Inventor: Luis Pablo Pabon
-
Publication number: 20190272204Abstract: 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: ApplicationFiled: March 15, 2019Publication date: September 5, 2019Applicant: Portworx, Inc.Inventors: Joseph Jobi, Goutham Rao
-
Publication number: 20190266022Abstract: 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: ApplicationFiled: February 27, 2018Publication date: August 29, 2019Applicant: Portworx, Inc.Inventors: Dinesh Israni, Vinod Jayaraman, Goutham Rao
-
Publication number: 20190220297Abstract: 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: ApplicationFiled: January 18, 2018Publication date: July 18, 2019Applicant: Portworx, Inc.Inventors: Goutham Rao, Vinod Jayaraman, Ganesh Sangle
-
Publication number: 20190222646Abstract: 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: ApplicationFiled: January 18, 2018Publication date: July 18, 2019Applicant: Portworx, Inc.Inventors: Goutham Rao, Vinod Jayaraman, Ganesh Sangle
-
Publication number: 20190163405Abstract: 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: ApplicationFiled: November 28, 2017Publication date: May 30, 2019Applicant: Portworx, Inc.Inventors: Dinesh Israni, Vinod Jayaraman, Goutham Rao
-
Patent number: 10303499Abstract: 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 graph driver can perform image layer level operations such as selectively updating image layers, storing image layers in a way that reflects class of service objectives, and responding to application level queries.Type: GrantFiled: April 14, 2017Date of Patent: May 28, 2019Assignee: Portworx, Inc.Inventors: Joseph Jobi, Goutham Rao
-
Patent number: 10235222Abstract: 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: GrantFiled: April 14, 2017Date of Patent: March 19, 2019Assignee: Portworx, Inc.Inventors: Joseph Jobi, Goutham Rao
-
Publication number: 20180300348Abstract: 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: ApplicationFiled: June 19, 2018Publication date: October 18, 2018Applicant: Portworx, IncInventors: Goutham Rao, Vinod Jayaraman
-
Publication number: 20180205612Abstract: Disclosed herein are systems, methods, and devices for the implementation of clustered containerized software applications. Methods may include identifying, using a processor of a first storage container node, a storage container node cluster including a plurality of storage container nodes, and sending a packet to at least a second storage container node of the plurality of storage container nodes. The methods may also include receiving a response from the second storage container node, the response including a reply to the packet, and generating a distance map based, at least in part, on the received response, the distance map characterizing a plurality of distances between the plurality of storage container nodes and the first storage container node. The methods may further include identifying at least one additional storage container node based, at least in part, on the generated distance map.Type: ApplicationFiled: May 16, 2017Publication date: July 19, 2018Applicant: Portworx, Inc.Inventors: Goutham Rao, Vinod Jayaraman
-
Patent number: 10025790Abstract: 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: GrantFiled: June 3, 2016Date of Patent: July 17, 2018Assignee: Portworx, Inc.Inventors: Goutham Rao, Vinod Jayaraman
-
Publication number: 20180189176Abstract: 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 sonic 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: ApplicationFiled: April 14, 2017Publication date: July 5, 2018Applicant: Portworx, Inc.Inventors: Joseph Jobi, Goutham Rao
-
Publication number: 20180189122Abstract: 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 graph driver can perform image layer level operations such as selectively updating image layers, storing image layers in a way that reflects class of service objectives, and responding to application level queries.Type: ApplicationFiled: April 14, 2017Publication date: July 5, 2018Applicant: Portworx, Inc.Inventors: Joseph Jobi, Goutham Rao
-
Publication number: 20180189121Abstract: 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: ApplicationFiled: April 14, 2017Publication date: July 5, 2018Applicant: Portworx, Inc.Inventors: Joseph Jobi, Goutham Rao