Generating package profiles in software package repositories using selective subsets of packages
First Claim
1. A method comprising:
- receiving an inventory of a set of installed packages from a plurality of clients populating a managed network;
generating an aggregate package population record from the inventory of the set of installed packages received from the plurality of clients;
generating, by a processor, a first table comprising an identification of the managed network and the aggregated package population having the set of installed packages hosted by the plurality of clients associated with the identification;
generating a package subset, the package subset comprising selected packages of the set of installed packages from the aggregate package population record, wherein the package subset is distributed throughout the managed network;
generating, by the processor, a second table comprising each client among the plurality of clients, the set of installed packages associated with the each client among the plurality of clients, and an identifier identifying the package subset associated with the each client among the plurality of clients;
encoding, by the processor, a relationship between the each client among the plurality of clients and the package subset in view of the first and the second table;
comparing, by the processor, the package subset to the set of installed packages for the each client among the plurality of clients in view of the encoded relationship;
identifying, by the processor, a client among the plurality of clients having packages matching the package subset; and
managing, by the processor, a plurality of tasks associated with the package subset for the identified client.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments relate to systems and methods for generating package profiles in software package repositories using selective subsets of packages. A physical or virtual client machine can host a set of installed software packages, including operating system, application, and/or other software. A package manager tracks the set of installed packages and reports the inventory of those packages to one or more package servers. The package server(s) can build an aggregate package population record reflecting all packages installed on all machines in the managed network. The package server(s) can then generate arbitrarily selected package subsets from the aggregate package collection, and group or configure sets of machines based on common or compatible package subsets. Machine groups dedicated to different tasks or applications as reflected in their package subsets can then have updating, security, and/or other management tasks carried out on a collective basis.
33 Citations
20 Claims
-
1. A method comprising:
-
receiving an inventory of a set of installed packages from a plurality of clients populating a managed network; generating an aggregate package population record from the inventory of the set of installed packages received from the plurality of clients; generating, by a processor, a first table comprising an identification of the managed network and the aggregated package population having the set of installed packages hosted by the plurality of clients associated with the identification; generating a package subset, the package subset comprising selected packages of the set of installed packages from the aggregate package population record, wherein the package subset is distributed throughout the managed network; generating, by the processor, a second table comprising each client among the plurality of clients, the set of installed packages associated with the each client among the plurality of clients, and an identifier identifying the package subset associated with the each client among the plurality of clients; encoding, by the processor, a relationship between the each client among the plurality of clients and the package subset in view of the first and the second table; comparing, by the processor, the package subset to the set of installed packages for the each client among the plurality of clients in view of the encoded relationship; identifying, by the processor, a client among the plurality of clients having packages matching the package subset; and managing, by the processor, a plurality of tasks associated with the package subset for the identified client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 20)
-
-
12. A system comprising:
-
a processor; a memory coupled to the processor to provide instructions to the processor, and in response to the instructions, the processor to; receive an inventory of a set of installed packages from a plurality of clients populating a managed network; generate an aggregate package population record from the inventory of the set of installed packages received from the plurality of clients; generate a first table comprising an identification of the managed network and the aggregated package population having the set of installed packages hosted by the plurality of clients associated with the identification; generate a package subset, the package subset comprising selected packages of the set of installed packages from the aggregate package population record, wherein the package subset is distributed throughout the managed network; generate a second table comprising each client among the plurality of clients, the set of installed packages associated with the each client among the plurality of clients, and an identifier identifying the package subset associated with the each client among the plurality of clients; encode a relationship between the each client among the plurality of clients and the package subset in view of the first and the second table; compare the package subset to the set of installed packages for the each client among the plurality of clients in view of the encoded relationship; identify a client among the plurality of clients having packages matching the package subset; and manage a plurality of tasks associated with the package subset for the identified client. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
Specification