IP Library Granted Patent US 11,243,825
Granted Patent B2
US 11,243,825 · App. 16/805,599 · Granted Feb 8, 2022

Containerized application system graph driver

Inventors: Joseph Jobi (Santa Clara, CA); Goutham Rao (Los Altos, CA)
Assignee: Portworx, Inc.
G06F9/545G06F9/455G06F9/5016
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,243,825
App. No.
16/805,599
Granted
Feb 8, 2022
Kind
B2
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.

Claims (37)

1. A system comprising:

a memory; and

at least one processor configured to:

instantiate a first application container based on a plurality of application image layers, the first application container having read-only access to the plurality of application image layers; and

instantiate a second application container based, at least in part, on the plurality of application image layers;

wherein a private page cache stores storage information for the plurality of application image layers and is used by a graph driver to provide shared access to the plurality of application image layers by the first application container and the second application container.

2. The system of claim 1 , further comprising a network interface configured to enable communications over a network.

3. The system of claim 1 , wherein the at least one processor is further configured to store the plurality of application image layers.

4. The system of claim 1 , wherein the plurality of application image layers comprises a stack of layers representing an application image.

5. The system of claim 1 , wherein the second application container has a different hardware configuration than the first application container.

6. The system of claim 1 further comprising a database configured to store and maintain information associated with the plurality of application layers.

7. The system of claim 6 , wherein the database is configured to store a name, a checksum, time information, and an application identifier for each image layer of the plurality of application image layers.

8. The system of claim 1 , wherein the at least one processor is further configured to store a second plurality of application image layers associated with a second application.

9. The system of claim 8 , wherein the at least one processor is further configured to instantiate a third application container based on the second plurality of application image layers.

10. The system of claim 1 , wherein the first application container is a privileged storage container application.

11. The system of claim 1 , wherein the memory and the at least one processor are included in a storage container node.

12. A method comprising:

instantiating, using at least one processor, a first application container based on a plurality of application image layers, the first application container having read-only access to the plurality of application image layers; and

instantiating a second application container based, at least in part, on the plurality of application image layers;

wherein a private page cache stores storage information for the plurality of application image layers and is used by a graph driver to provide shared access to the plurality of application image layers by the first application container and the second application container.

13. The method of claim 12 , further comprising:

identifying the plurality of application image layers, the plurality of application image layers being a stack of layers representing an application image.

14. The method of claim 13 further comprising:

identifying a second plurality of application image layers associated with a second application.

15. The method of claim 14 further comprising:

instantiating a third application container based on the second plurality of application image layers.

16. The method of claim 12 , wherein the first application container is a privileged storage container application.

17. One or more non-transitory computer readable media having instructions stored thereon for performing a method, the method comprising:

instantiating, using at least one processor, a first application container based on a plurality of application image layers, the first application container having read-only access to the plurality of application image layers; and

instantiating a second application container based, at least in part, on the plurality of application image layers;

wherein a private page cache stores storage information for the plurality of application image layers and is used by a graph driver to provide shared access to the plurality of application image layers by the first application container and the second application container.

18. The one or more non-transitory computer readable media recited in claim 17 , wherein the method further comprises:

identifying the plurality of application image layers, the plurality of application image layers being a stack of layers representing an application image.

19. The one or more non-transitory computer readable media recited in claim 17 , wherein the method further comprises:

identifying a second plurality of application image layers associated with a second application.

20. The one or more non-transitory computer readable media recited in claim 19 , wherein the method further comprises:

instantiating a third application container based on the second plurality of application image layers.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 1, 2022
From: PORTWORX, INC.
To: PURE STORAGE, INC., A DELAWARE CORPORATION
Reel/Frame 061033/0742 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 6, 2020
From: JOBI, JOSEPH; RAO, GOUTHAM
To: PORTWORX, INC.
Reel/Frame 053987/0039 →
Continuity (5)
Continuation 16354438 · Mar 15, 2019
Continuation 15488298 · Apr 14, 2017
Provisional Application 62445623 · Jan 12, 2017
Provisional Application 62442795 · Jan 5, 2017
Related Publication 20200201693A1 · Jun 25, 2020
Cited By (1)
US 12,647,480