Detailed Action
1. This office action is in response to communication filed November 7, 2025. Claims 1-20 are currently pending and claim 1, 8, and 15 are the independent claims.
Notice of Pre-AIA or AIA Status
2. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Response to Amendment
3. This Final Office Action is in response to the applicant’s remarks and arguments filed on October 16, 2025.
Claims 1, 3, 8-12, and 15-19 are amended. Claims 1-20 remain pending in the application. Claims 2, 4-7, 13-14, and 20 filed on October 28, 2022 are being considered on the merits along with amended claims 1, 3, 8-12, and 15-19.
Response to Arguments
4. Applicant’s arguments filed on November 7, 2025 with respect to claims 1-20 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
In the Claim Rejections – 35 U.S.C. 101 section on page 1 of Remarks, the Applicant respectfully submitted that the rejections are traversed since the Applicant does not agree that the claims 1-20 are directed to an abstract idea without significantly more.
The Examiner respectfully disagrees. The current amendments to claims 1-20, specifically independent claims 1, 8, and 15, do not overcome the prior 101 rejections. The abstract ideas still remain and are not overcome by the amendments to the additional elements in the independent claims. The rejections under 35 U.S.C. 101 still remain for amended claims 1-20.
In the Claim Rejections – 35 U.S.C. 103 section on pages 1-3 of Remarks, the Applicant respectfully submitted that the rejection of claim 1 does not have a reference that suggests all features set forth in the claim.
The Examiner respectfully disagrees. The current amendments to independent claim 1 that added “executing a control plane that makes control and management decisions about a containerized computing cluster” are seen in many forms of prior art disclosed below in the section 7 Claim Rejections - 35 USC § 103 and section 9 Conclusion. Specifically, the amendment is rejected by Olmsted-Thompson (U.S. Patent No. 11,740,921) seen below in section 7. As such, independent claims 1, 8, and 15 remain rejected under 35 U.S.C. 103 despite amendments, and further all claims 1-20 remain rejected under 35 U.S.C. 103.
The Examiner also notes that there was no update to the IDS filed October 28, 2022 that contains a U.S. Patent Number of 1131454 with an issue date of 2022-04-26 which could not be found. Please revise the Patent Number upon submission of Amendment.
Information Disclosure Statement
5. The information disclosure statement filed October 28, 2022 has had its references considered other than the Singh et al. U.S. Patent document. The IDS contains a U.S. Patent Number of 1131454 with an issue date of 2022-04-26 which could not be found. Please revise the Patent Number upon submission of Amendment.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
6. Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
As per claim 1, the claim recites “A method comprising: retrieving, by a processing device executing a control plane that makes control and management decisions about a containerized computing cluster, configuration data of the containerized computing cluster at a frequency, wherein the containerized computing cluster comprises a plurality of virtualized computing environments running on one or more host computer systems; storing the configuration data into a working memory, wherein the working memory is in a stateless session; extracting a fact from the configuration data; evaluating a rule against the fact, wherein the rule specifies a condition and an action to perform if the condition is satisfied; and responsive to determining that the condition specified by the rule matches the fact, performing the action specified by the rule, wherein the action comprises a notification regarding a state of the containerized computing cluster.”
The limitation “evaluating a rule against the fact, wherein the rule specifies a condition and an action to perform if the condition is satisfied” as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person may evaluate a rule against a fact on a sheet of paper with pen or mentally based on comparing the rule’s condition (maintain CPU utilization under 75%) to the fact’s current status (current CPU utilization at 95%). If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea.
The limitation “responsive to determining that the condition specified by the rule matches the fact” as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person may perform an action responsive to a comparison of rule and fact on a sheet of paper with pen or mentally based on determining that the rule and the fact’s conditions match. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea.
This judicial exception is not integrated into a practical application. In particular under Prong II step 2A, claim 1 recites the additional elements “retrieving, by a processing device executing a control plane that makes control and management decisions about a containerized computing cluster, configuration data of the containerized computing cluster at a frequency, wherein the containerized computing cluster comprises a plurality of virtualized computing environments running on one or more host computer systems; storing the configuration data into a working memory, wherein the working memory is in a stateless session; extracting a fact from the configuration data; … performing the action specified by the rule, wherein the action comprises a notification regarding a state of the containerized computing cluster.” The additional elements “retrieving, by a processing device executing a control plane that makes control and management decisions about a containerized computing cluster, configuration data of the containerized computing cluster at a frequency, wherein the containerized computing cluster comprises a plurality of virtualized computing environments running on one or more host computer systems; storing the configuration data into a working memory, wherein the working memory is in a stateless session” represent the well-understood, routine, conventional activity of receiving or transmitting data over a network (buySAFE, Inc. v. Google, Inc., 765 F.3d 1350, 1355, 112 USPQ2d 1093, 1096 (Fed. Cir. 2014)(computer receives and sends information over a network)) and storing and retrieving information in memory (Versata Dev. Group, Inc. v. SAP Am., Inc., 793 F.3d 1306, 1334, 115 USPQ2d 1681, 1701 (Fed. Cir. 2015)). The additional element “extracting a fact from the configuration data” represents the insignificant extra-solution activity of mere data gathering specifically presenting offers to customers in OIP Technologies, 788 F.3d at 1363, 115 USPQ2d at 1092-93. The additional element “performing the action specified by the rule, wherein the action comprises a notification regarding a state of the containerized computing cluster” represents the “apply it” step which is a mere instruction to apply an exception (2106.05(f)). The additional elements amount to mere instructions to apply an exception of receiving data, storing data in memory, gathering specific data from the original data, and applying the exception to perform an action based on the specific data. The claim is directed to an abstract idea.
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract ideas into a practical application, the additional elements amount to mere instructions to apply an exception of receiving data, storing data in memory, gathering specific data from the original data, and applying the exception to perform an action based on the specific data, as discussed above, does not amount to significantly more, and is thus, not an inventive concept. Accordingly, the claim does not appear to be patent eligible under 35 U.S.C. 101. See MPEP 2106.05(f).
As per claim 2, it incorporates the deficiencies of independent claim 1 upon which it depends, and further recites “initiating the stateless session (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 2 fails to correct the deficiencies of claim 1 and is rejected for similar reasoning as claim 1, above.
As per claim 3, it incorporates the deficiencies of independent claim 1 upon which it depends, and further recites “reinitiating the stateless session at the frequency (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 3 fails to correct the deficiencies of claim 1 and is rejected for similar reasoning as claim 1, above.
As per claim 4, it incorporates the deficiencies of independent claim 1 upon which it depends, and further recites “creating one or more rules, wherein the one or more rules are used to monitor one or more states of the containerized computing cluster (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 4 fails to correct the deficiencies of claim 1 and is rejected for similar reasoning as claim 1, above.
As per claim 5, it incorporates the deficiencies of independent claim 1 upon which it depends, and further recites “wherein retrieving the configuration data is performed responsive to initiating or reinitiating the stateless session (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 5 fails to correct the deficiencies of claim 1 and is rejected for similar reasoning as claim 1, above.
As per claim 6, it incorporates the deficiencies of independent claim 1 upon which it depends, and further recites “wherein the configuration data of the containerized computing cluster comprises at least one of a desired state or a current state of the containerized computing cluster (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 6 fails to correct the deficiencies of claim 1 and is rejected for similar reasoning as claim 1, above.
As per claim 7, it incorporates the deficiencies of independent claim 1 upon which it depends, and further recites “wherein the action comprises a corrective action with respect to the state of the containerized computing cluster (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 7 fails to correct the deficiencies of claim 1 and is rejected for similar reasoning as claim 1, above.
Claim 8 is rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. The claim recites “A system comprising: a memory; a processing device operatively coupled to the memory, to: retrieve, by a control plane that makes control and management decisions about a containerized computing cluster, configuration data of the containerized computing cluster at a frequency, wherein the containerized computing cluster comprises a plurality of virtualized computing environments running on one or more host computer systems; store the configuration data into a working memory, wherein the working memory is in a stateless session; extract a fact from the configuration data; evaluate a rule against the fact, wherein the rule specifies a condition and an action to perform if the condition is satisfied; and responsive to a determination that the condition specified by the rule matches the fact, perform the action specified by the rule, wherein the action comprises a notification regarding a state of the containerized computing cluster.”
The limitation “evaluate a rule against the fact, wherein the rule specifies a condition and an action to perform if the condition is satisfied” as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person may evaluate a rule against a fact on a sheet of paper with pen or mentally based on comparing the rule’s condition (maintain CPU utilization under 75%) to the fact’s current status (current CPU utilization at 95%). If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea.
The limitation “responsive to a determination that the condition specified by the rule matches the fact” as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person may perform an action responsive to a comparison of rule and fact on a sheet of paper with pen or mentally based on determining that the rule and the fact’s conditions match. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea.
This judicial exception is not integrated into a practical application. In particular under Prong II step 2A, claim 1 recites the additional elements “a memory; a processing device operatively coupled to the memory, to: retrieve, by a control plane that makes control and management decisions about a containerized computing cluster, configuration data of the containerized computing cluster at a frequency, wherein the containerized computing cluster comprises a plurality of virtualized computing environments running on one or more host computer systems; store the configuration data into a working memory, wherein the working memory is in a stateless session; extract a fact from the configuration data; … perform the action specified by the rule, wherein the action comprises a notification regarding a state of the containerized computing cluster.” The additional elements “a memory; a processing device operatively coupled to the memory …” represent generic computing components that are used to execute the other limitations in the independent claim. The additional elements “retrieve, by a control plane that makes control and management decisions about a containerized computing cluster, configuration data of the containerized computing cluster at a frequency, wherein the containerized computing cluster comprises a plurality of virtualized computing environments running on one or more host computer systems; store the configuration data into a working memory, wherein the working memory is in a stateless session;” represent the well-understood, routine, conventional activity of receiving or transmitting data over a network (buySAFE, Inc. v. Google, Inc., 765 F.3d 1350, 1355, 112 USPQ2d 1093, 1096 (Fed. Cir. 2014)(computer receives and sends information over a network)) and storing and retrieving information in memory (Versata Dev. Group, Inc. v. SAP Am., Inc., 793 F.3d 1306, 1334, 115 USPQ2d 1681, 1701 (Fed. Cir. 2015)). The additional element “extract a fact from the configuration data” represents the insignificant extra-solution activity of mere data gathering specifically presenting offers to customers in OIP Technologies, 788 F.3d at 1363, 115 USPQ2d at 1092-93. The additional element “perform the action specified by the rule, wherein the action comprises a notification regarding a state of the containerized computing cluster” represents the “apply it” step which is a mere instruction to apply an exception (2106.05(f)). The additional elements amount to mere instructions to apply an exception of receiving data, storing data in memory, gathering specific data from the original data, and applying the exception to perform an action based on the specific data using generic computing components. The claim is directed to an abstract idea.
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract ideas into a practical application, the additional elements amount to mere instructions to apply an exception of receiving data, storing data in memory, gathering specific data from the original data, and applying the exception to perform an action based on the specific data using generic computing components, as discussed above, does not amount to significantly more, and is thus, not an inventive concept. Accordingly, the claim does not appear to be patent eligible under 35 U.S.C. 101. See MPEP 2106.05(f).
As per claim 9, it incorporates the deficiencies of independent claim 8 upon which it depends, and further recites “wherein the processing device is further to: initiate the stateless session (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 9 fails to correct the deficiencies of claim 8 and is rejected for similar reasoning as claim 8, above.
As per claim 10, it incorporates the deficiencies of independent claim 8 upon which it depends, and further recites “wherein the processing device is further to: reinitiate the stateless session at the frequency (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 10 fails to correct the deficiencies of claim 8 and is rejected for similar reasoning as claim 8, above.
As per claim 11, it incorporates the deficiencies of independent claim 8 upon which it depends, and further recites “wherein the processing device is further to: create one or more rules, wherein the one or more rules are used to monitor one or more states of the containerized computing cluster (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 11 fails to correct the deficiencies of claim 8 and is rejected for similar reasoning as claim 8, above.
As per claim 12, it incorporates the deficiencies of independent claim 8 upon which it depends, and further recites “wherein to retrieve the configuration data, the processing device is to retrieve the configuration data responsive to an initiation or a reinitiation of the stateless session (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 12 fails to correct the deficiencies of claim 8 and is rejected for similar reasoning as claim 8, above.
As per claim 13, it incorporates the deficiencies of independent claim 8 upon which it depends, and further recites “wherein the configuration data of the containerized computing cluster comprises at least one of a desired state or a current state of the containerized computing cluster (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 13 fails to correct the deficiencies of claim 8 and is rejected for similar reasoning as claim 8, above.
As per claim 14, it incorporates the deficiencies of independent claim 8 upon which it depends, and further recites “wherein the action comprises a corrective action with respect to the state of the containerized computing cluster (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 14 fails to correct the deficiencies of claim 8 and is rejected for similar reasoning as claim 8, above.
Claim 15 is rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. The claim recites “A non-transitory computer-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to: retrieve, by the processing device which executes a control plane that makes control and management decisions about a containerized computing cluster, configuration data of the containerized computing cluster at a frequency, wherein the containerized computing cluster comprises a plurality of virtualized computing environments running on one or more host computer systems; store the configuration data in a working memory in a stateless session; extract a fact from the configuration data; determine whether a condition specified by a rule matches the fact, wherein the rule specifies the condition and an action to perform if the condition is satisfied, and responsive to a determination that the condition specified by the rule matches the fact, perform the action specified by the rule, wherein the action comprises a notification regarding a state of the containerized computing cluster.”
The limitation “determine whether a condition specified by a rule matches the fact, wherein the rule specifies the condition and an action to perform if the condition is satisfied” as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person may evaluate a rule against a fact on a sheet of paper with pen or mentally based on comparing the rule’s condition (maintain CPU utilization under 75%) to the fact’s current status (current CPU utilization at 95%). If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea.
The limitation “responsive to a determination that the condition specified by the rule matches the fact” as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person may perform an action responsive to a comparison of rule and fact on a sheet of paper with pen or mentally based on determining that the rule and the fact’s conditions match. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea.
This judicial exception is not integrated into a practical application. In particular under Prong II step 2A, claim 1 recites the additional elements “A non-transitory computer-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to: retrieve, by the processing device which executes a control plane that makes control and management decisions about a containerized computing cluster, configuration data of the containerized computing cluster at a frequency, wherein the containerized computing cluster comprises a plurality of virtualized computing environments running on one or more host computer systems; store the configuration data in a working memory in a stateless session; extract a fact from the configuration data; … perform the action specified by the rule, wherein the action comprises a notification regarding a state of the containerized computing cluster.” The additional element “A non-transitory computer-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to …” represent generic computing components that are used to execute the other limitations in the independent claim. The additional elements “retrieve, by the processing device which executes a control plane that makes control and management decisions about a containerized computing cluster, configuration data of the containerized computing cluster at a frequency, wherein the containerized computing cluster comprises a plurality of virtualized computing environments running on one or more host computer systems; store the configuration data in a working memory in a stateless session” represent the well-understood, routine, conventional activity of receiving or transmitting data over a network (buySAFE, Inc. v. Google, Inc., 765 F.3d 1350, 1355, 112 USPQ2d 1093, 1096 (Fed. Cir. 2014)(computer receives and sends information over a network)) and storing and retrieving information in memory (Versata Dev. Group, Inc. v. SAP Am., Inc., 793 F.3d 1306, 1334, 115 USPQ2d 1681, 1701 (Fed. Cir. 2015)). The additional element “extract a fact from the configuration data” represents the insignificant extra-solution activity of mere data gathering specifically presenting offers to customers in OIP Technologies, 788 F.3d at 1363, 115 USPQ2d at 1092-93. The additional element “perform the action specified by the rule, wherein the action comprises a notification regarding a state of the containerized computing cluster” represents the “apply it” step which is a mere instruction to apply an exception (2106.05(f)). The additional elements amount to mere instructions to apply an exception of receiving data, storing data in memory, gathering specific data from the original data, and applying the exception to perform an action based on the specific data using generic computing components. The claim is directed to an abstract idea.
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract ideas into a practical application, the additional elements amount to mere instructions to apply an exception of receiving data, storing data in memory, gathering specific data from the original data, and applying the exception to perform an action based on the specific data using generic computing components, as discussed above, does not amount to significantly more, and is thus, not an inventive concept. Accordingly, the claim does not appear to be patent eligible under 35 U.S.C. 101. See MPEP 2106.05(f).
As per claim 16, it incorporates the deficiencies of independent claim 15 upon which it depends, and further recites “wherein the instructions, when executed by the processing device, cause the processing device further to: initiate the stateless session (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 16 fails to correct the deficiencies of claim 15 and is rejected for similar reasoning as claim 15, above.
As per claim 17, it incorporates the deficiencies of independent claim 15 upon which it depends, and further recites “wherein the instructions, when executed by the processing device, cause the processing device further to: reinitiate the stateless session at the frequency (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 17 fails to correct the deficiencies of claim 15 and is rejected for similar reasoning as claim 15, above.
As per claim 18, it incorporates the deficiencies of independent claim 15 upon which it depends, and further recites “wherein the instructions, when executed by the processing device, cause the processing device further to: create one or more rules, wherein the one or more rules are used to monitor one or more states of the containerized computing cluster (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 18 fails to correct the deficiencies of claim 15 and is rejected for similar reasoning as claim 15, above.
As per claim 19, it incorporates the deficiencies of independent claim 15 upon which it depends, and further recites “wherein to retrieve the configuration data, the instructions, when executed by the processing device, cause the processing device to retrieve the configuration data responsive to an initiation or a reinitiation of the stateless session (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 19 fails to correct the deficiencies of claim 15 and is rejected for similar reasoning as claim 15, above.
As per claim 20, it incorporates the deficiencies of independent claim 15 upon which it depends, and further recites “wherein the action comprises a corrective action with respect to the state of the containerized computing cluster (analyzed under Prong II Step 2A & 2B as additional element).” This additional element does not integrate the abstract idea/mental process into a practical application and is not significantly more than the judicial exception. Therefore, claim 20 fails to correct the deficiencies of claim 15 and is rejected for similar reasoning as claim 15, above.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
7. Claims 1-20 are rejected under 35 U.S.C. 103 as being unpatentable over Kleynhans et al. (U.S. Pub. No. 2017/0279678) – hereinafter “Kleynhans” in view of Olmsted-Thompson (U.S. Patent No. 11,740,921), Speeter et al. (U.S. Pub. No. 2006/0143144) – hereinafter “Speeter”, and Proctor et al. (U.S. Pub. No. 2008/0301079) – hereinafter “Proctor”.
Regarding independent claim 1, Kleynhans discloses:
A method comprising:
retrieving, by a processing device … configuration data of a containerized computing cluster at a frequency, wherein the containerized computing cluster comprises a plurality of virtualized computing environments running on one or more host computer systems; ([0014] “Embodiments described herein can implement a containerized based configuration approach. In a containerized based configuration approach, various hierarchical configuration layers are used to configure entities. … Thus, a given configuration layer could be used as part of a configuration for multiple different entities thus economizing storage, network, and compute resources by multi-purposing them.” and [0029] “Embodiments may include a configuration engine 208. The configuration engine 208 can provides a dynamic, unified view of multiple configurations. The configuration engine 208 manages configuration changes for any configuration layer, ensuring the appropriate configuration layers reflect these changes. The configuration engine 208 further provides a filter manger (such as filter manager 120 illustrated in FIG. 1) with operating system-specific filters to bridge configuration gaps (e.g. different operating system versions or types).” and [0030] “The configuration engine 208 may be configured to inspect one or more configuration stores 202 and determine the appropriate configuration data sets for a given set of configuration layers (e.g. based on policy, configuration, available hardware, operating system version, location, etc.).”) The citation is interpreted to read on the claimed invention because under broadest reasonable interpretation, the containerized configuration of the computing environment includes a configuration engine that inspects configuration data of the multiple layers.
storing the configuration data into a working memory … ([0024] “FIG. 1 further illustrates a Host Configuration Store 106. The Host Configuration Store 106 maintains a consistent configuration for the host operating system 100. This may be implemented as a database, as one or more configuration files, in a configuration graph, etc. It may reside on disk, in memory or a combination of both.”) The citation is interpreted to read on the claimed invention because under broadest reasonable interpretation, the working memory holds configuration files.
extracting a fact from the configuration data; ([0034] “The configuration engine 208 may be configured to provide location. The assignment and tracking of an operating system instance and to what configuration layer(s) and location(s) it is assigned can be managed by the configuration engine 208. This may include efficient access to configuration data as configuration settings are read, updated and deleted. The configuration engine 208 may embed this location information in the configuration layers, in configuration store 202, or maintain additional data structures to track this.” and [0030] “The configuration engine 208 may be configured to inspect one or more configuration stores 202 and determine the appropriate configuration data sets for a given set of configuration layers (e.g. based on policy, configuration, available hardware, operating system version, location, etc.).”) The citation is interpreted to read on the claimed invention because under broadest reasonable interpretation, the configuration engine inspects configuration data for specific data such as settings and layer usage.
Kleynhans does not explicitly disclose:
… a processing device executing a control plane that makes control and management decisions about a containerized computing cluster …
storing the configuration data into a working memory, wherein the working memory is in a stateless session;
evaluating a rule against the fact, wherein the rule specifies a condition and an action to perform if the condition is satisfied; and
responsive to determining that the condition specified by the rule matches the fact, performing the action specified by the rule, wherein the action comprises a notification regarding a state of the containerized computing cluster.
However, Olmsted-Thompson discloses:
… a processing device executing a control plane that makes control and management decisions about a containerized computing cluster … (Col. 10, Lines 3-43 “A cluster control plane 270 may be utilized to manage the nodes 250a, 250b in cluster 200. For example, as shown, the cluster control plane 270 may include a provisioning tool 274, a container scheduler 272, and an API server 440, etc. It is noted that cluster 200 may include a plurality of cluster control planes for different processes. For example, cluster 200 may include a plurality of API servers and a plurality of container schedulers for different process proposes. The cluster control plane 270 may be configured to perform administrative tasks for cluster 200, including managing cluster 200, managing nodes running within cluster 200, provisioning nodes, migrating nodes from one cluster to another cluster, and load balancing between clusters. In one or more embodiments, the cluster control plane 270 is configured to perform resource management for the containers 255a1, 255a2, 255b1, 255b2, 255c1, 255c2 in a virtualized environment. The cluster control plane 270 is also configured to deploy, update, or remove instances of containers 255a1, 255a2, 255b1, 255b2, 255c1, 255c2 on each of the nodes. By implementing containers on nodes, such as virtual machines, response time may be improved as booting a container is generally faster than booting a VM. Containers also have smaller footprints than VMs, thus improving density. Storage space can also be saved. In one or more embodiments, the cluster control plane 270 may have multiple components configured to perform resource management for containers 255a1, 255a2, 255b1, 255b2, 255c1, 255c2 in a virtualized environment. The cluster control plane 270 may create a virtual infrastructure by instantiating a packaged group (or pool 291) of a plurality of nodes 250a, 250b, such as virtual machines (VMs), installed therein. The cluster control plane 270 may deploy, update, or remove instances of containers on each of the VMs. In one example, the cluster control plane 270 may further include at least an API server 271, a container scheduler 272 and a provisional tool 274 configured to perform different tasks. It is noted that other components not shown in FIG. 2 may also be included in the cluster control plane 270 to facilitate the operation and arrangement of the containers in the nodes.”) The citation is interpreted to read on the claimed invention because under broadest reasonable interpretation, the cluster control plane 270 performs administrative tasks for cluster 200 as well as resource management for containers 255a-c.
Therefore, it would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention to add a processing device executing a control plane that makes control and management decisions about a containerized computing cluster as seen in Olmsted-Thompson’s invention into Kleynhans's invention because these modifications allow the use of a known technique to improve similar methods in the same way such that the containerized computing cluster is controlled/managed by a control plane.
In addition, Proctor discloses:
… wherein the working memory is in a stateless session; ([0045] “If a rule engine is executed in a stateless manner, then a RuleBase object is used to create a new working memory for each session, and the working memory is discarded when the session is finished. Note that creating a working memory is typically a low cost operation.”) The citation is interpreted to read on the claimed invention because under broadest reasonable interpretation, the working memory is created and ran in the stateless manner with the rule engine.
Therefore, it would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention to add wherein the working memory is in a stateless session as seen in Proctor’s invention into Kleynhans's invention because these modifications allow the “obvious to try” solution with a reasonable expectation of success such that working memory can be small with no need to continuously store data.
In addition, Speeter discloses:
evaluating a rule against the fact, wherein the rule specifies a condition and an action to perform if the condition is satisfied; and ([0149] “A rules engine 504 interprets and applies rules against the known attributes of the servers contained in the configuration database. The rules engine may be used to derive relationships between different configuration elements, and by extension, different computers, software components, or data.” and [0215] “FIG. 14 is a generalized block diagram of a screen 1400 to select and run rules and rule sets. A target is selected in host target entry field 1401. Host target data is selected in host target entry field 1402. The selected host target data may be the configuration data of a given target host, or may be another data set. For example, compliance with rules may be performed by running a rule set against saved versions of configuration data. In systems which take regular snapshots of configuration data, as the present system may be used, this provides for both checking of historical compliance and troubleshooting of problems in that may be impacted by miss-configuration of computer systems.” and [0231] “If at step 1506 the configuration management server determines the rule has not been satisfied, the configuration management server proceeds to step 1508 and records the failure of the rule in the configuration database. Additionally, the configuration management server may send an alert or take other action based upon the failure of the rule.”) The citation is interpreted to read on the claimed invention because under broadest reasonable interpretation, the rules engine applies rules to known attributes (facts) and performs an action if the condition determines the rule is not satisfied (such as a resource being above/below a threshold).
responsive to determining that the condition specified by the rule matches the fact, performing the action specified by the rule, wherein the action comprises a notification regarding a state of the containerized computing cluster. ([0149] “A rules engine 504 interprets and applies rules against the known attributes of the servers contained in the configuration database. The rules engine may be used to derive relationships between different configuration elements, and by extension, different computers, software components, or data.” and [0215] “FIG. 14 is a generalized block diagram of a screen 1400 to select and run rules and rule sets. A target is selected in host target entry field 1401. Host target data is selected in host target entry field 1402. The selected host target data may be the configuration data of a given target host, or may be another data set. For example, compliance with rules may be performed by running a rule set against saved versions of configuration data. In systems which take regular snapshots of configuration data, as the present system may be used, this provides for both checking of historical compliance and troubleshooting of problems in that may be impacted by miss-configuration of computer systems.” and [0231] “If at step 1506 the configuration management server determines the rule has not been satisfied, the configuration management server proceeds to step 1508 and records the failure of the rule in the configuration database. Additionally, the configuration management server may send an alert or take other action based upon the failure of the rule.”) The citation is interpreted to read on the claimed invention because under broadest reasonable interpretation, the comparison of the fact to the rule determining that the rule has not been satisfied (an example of a rule matching a fact such as being below a resource threshold), causes an alert or action to be taken.
Therefore, it would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention to add evaluating a rule against the fact, wherein the rule specifies a condition and an action to perform if the condition is satisfied; and responsive to determining that the condition specified by the rule matches the fact, performing the action specified by the rule, wherein the action comprises a notification regarding a state of the containerized computing cluster as seen in Speeter's invention into Kleynhans's invention because these modifications allow use of known technique to improve similar method in the same way such that a rules engine can verify that the containerized computing cluster is running properly according to the rules set for its execution.
Regarding claim 2, Kleynhans discloses the method of claim 1, but does not explicitly disclose:
initiating the stateless session.
However, Proctor discloses:
initiating the stateless session. ([0045] “If a rule engine is executed in a stateless manner, then a RuleBase object is used to create a new working memory for each session, and the working memory is discarded when the session is finished. Note that creating a working memory is typically a low cost operation.”) The citation is interpreted to read on the claimed invention because under broadest reasonable interpretation, the working memory is created and ran in the stateless manner with the rule engine.
Therefore, it would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention to add initiating the stateless session as seen in Proctor’s invention into Kleynhans's invention because these modifications allow applying a known technique to a known method ready for improvement to yield predictable results such that the working memory to be run in a stateless orientation has the most updated data about the system.
Regarding claim 3, Kleynhans discloses the method of claim 1, but does not explicitly disclose:
reinitiating the stateless session at the frequency.
However, Proctor discloses:
reinitiating the stateless session at the frequency. ([0049] “Modification broadly refers to changing a fact. In general, a rule engine has to be notified of modified facts, so that the modified facts can be re-processed. In some embodiments, a modification includes a retraction followed by an assertion such that the modification clears the working memory and then starts again.”) The citation is interpreted to read on the claimed invention because under broadest reasonable interpretation, the working memory is reinitiated each time a fact is attempted to be modified.
Therefore, it would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention to add reinitiating the stateless session at a predetermined frequency as seen in Proctor’s invention into Kleynhans's invention because these modifications allow use of a known technique to improve similar methods in the same way such that the continuous updating of the data in the working memory is always properly updated to make the correct rules/facts determinations with.
Regarding claim 4, Kleynhans discloses the method of claim 1, but does not explicitly disclose:
creating one or more rules, wherein the one or more rules are used to monitor one or more states of the containerized computing cluster.
However, Speeter discloses:
creating one or more rules, wherein the one or more rules are used to monitor one or more states of the containerized computing cluster. ([0120] “Rules can be defined in the component blueprint, or a rule can be defined directly on the deployment. If defined on the blueprint, the rule is attached to each component instance within the deployment when it is discovered. Many rules are automatically generated, and these are called implicit rules. Implicit rules are created from data type restrictions and default value specification. When an element has it's data type defined in a component blueprint, a rule is generated that will fail if the value of that element does not conform to the data type. If an element has a default value (a value that the system will use if no other value is defined, for example in a configuration file), then an implicit default value rule will be generated.” and [0234] “The application blueprint provides information which guides the process of comparison of two (or more) target servers. The present invention allows for comparisons across time or across space. An example of a comparison across time is the comparison of a server at a given time and the same server at a later time, as may be done when comparing before and after states when a change has been made to a server.”) The citation is interpreted to read on the claimed invention because under broadest reasonable interpretation, the rules that are created are used to track data type restrictions and compare server states.
Therefore, it would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention to add creating one or more rules, wherein the one or more rules are used to monitor one or more states of the containerized computing cluster as seen in Speeter’s invention into Kleynhans's invention because these modifications allow the combining of prior art elements according to known methods to yield predictable results such that the user sets their own rules and actions to perform to have the cluster properly execute in the manner they expect.
Regarding claim 5, Kleynhans discloses the method of claim 1, but does not explicitly disclose:
wherein retrieving the configuration data is performed responsive to initiating or reinitiating the stateless session.
However, Proctor discloses:
wherein retrieving the configuration data is performed responsive to initiating or reinitiating the stateless session. ([0045] “If a rule engine is executed in a stateless manner, then a RuleBase object is used to create a new working memory for each session, and the working memory is discarded when the session is finished. Note that creating a working memory is typically a low cost operation.” and [0046] “Assertion broadly refers to the act of telling a working memory about a set of facts. One example to assert a fact, "yourObject," to a working memory is "WorkingMemory.assertObject(yourObject)." When a fact is asserted in a working memory, the fact is examined for matches against rules in the working memory. Thus, all of the work may be done during assertion; however, in some embodiments, no rules are executed until "fireAllRules( )" is called after asserting the facts.”) The citation is interpreted to read on the claimed invention because under broadest reasonable interpretation, the facts are asserted into the working memory following the creation of the working memory.
Therefore, it would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention to add wherein retrieving the configuration data is performed responsive to initiating or reinitiating the stateless session as seen in Proctor’s invention into Kleynhans's invention because these modifications allow the use of known technique to improve similar methods in the same way such that the latest configuration data in the working memory is used to continuously check fact/rule relationships.
Regarding claim 6, Kleynhans discloses the method of claim 1, but does not explicitly disclose:
wherein the configuration data of the containerized computing cluster comprises at least one of a desired state or a current state of the containerized computing cluster.
However, Speeter discloses:
wherein the configuration data of the containerized computing cluster comprises at least one of a desired state or a current state of the containerized computing cluster. ([0234] “The application blueprint provides information which guides the process of comparison of two (or more) target servers. The present invention allows for comparisons across time or across space. An example of a comparison across time is the comparison of a server at a given time and the same server at a later time, as may be done when comparing before and after states when a change has been made to a server. An example of a comparison across space is comparing a staging server to a production server, as may be done to compare the configuration settings of the production environment to determine what configuration settings of the production server differ from the configuration settings of the staging server.”) The citation is interpreted to read on the claimed invention because under broadest reasonable interpretation, the configuration settings of the environment comprise the current state of the environment.
Therefore, it would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention to add wherein the configuration data of the containerized computing cluster comprises at least one of a desired state or a current state of the containerized computing cluster as seen in Speeter’s invention into Kleynhans's invention because these modifications allow the use of known technique to improve similar methods in the same way such that the configuration data shows the current state such that rule/fact determinations can get the cluster closer to the desired state of execution.
Regarding claim 7, Kleynhans discloses the method of claim 1, but does not explicitly disclose:
wherein the action comprises a corrective action with respect to the state of the containerized computing cluster.
However, Speeter discloses:
wherein the action comprises a corrective action with respect to the state of the containerized computing cluster. ([0029] “Rules or rule sets are enforced against a target computer system to determine whether the rule or rules are satisfied. The system records the results of the application of rules or rule sets, and may provide indication of which rules or rule sets have been satisfied or violated. In the event a rule has failed the system may take action according to a severity attribute specified in the failed rule.”) The citation is interpreted to read on the claimed invention because under broadest reasonable interpretation, the action may be taken to correct a failed rule such that the state of the system will be resolved following the action.
Therefore, it would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention to add wherein the action comprises a corrective action with respect to the state of the containerized computing cluster as seen in Speeter’s invention into Kleynhans's invention because these modifications allow combining prior art elements according to known methods to yield predictable results such that the corrective action of the current state of the cluster is performed to run closer to the user’s desired execution status.
Regarding claim 8, it is a system claim having the same limitations as cited in method claim 1. Thus, claim 8 is also rejected under the same rationale as addressed in the rejection of claim 1 above.
Regarding claim 9, it is a system claim having the same limitations as cited in method claim 2. Thus, claim 9 is also rejected under the same rationale as addressed in the rejection of claim 2 above.
Regarding claim 10, it is a system claim having the same limitations as cited in method claim 3. Thus, claim 10 is also rejected under the same rationale as addressed in the rejection of claim 3 above.
Regarding claim 11, it is a system claim having the same limitations as cited in method claim 4. Thus, claim 11 is also rejected under the same rationale as addressed in the rejection of claim 4 above.
Regarding claim 12, it is a system claim having the same limitations as cited in method claim 5. Thus, claim 12 is also rejected under the same rationale as addressed in the rejection of claim 5 above.
Regarding claim 13, it is a system claim having the same limitations as cited in method claim 6. Thus, claim 13 is also rejected under the same rationale as addressed in the rejection of claim 6 above.
Regarding claim 14, it is a system claim having the same limitations as cited in method claim 7. Thus, claim 14 is also rejected under the same rationale as addressed in the rejection of claim 7 above.
Regarding claim 15, it is a non-transitory computer-readable storage medium claim having the same limitations as cited in method claim 1. Thus, claim 15 is also rejected under the same rationale as addressed in the rejection of claim 1 above.
Regarding claim 16, it is a non-transitory computer-readable storage medium claim having the same limitations as cited in method claim 2. Thus, claim 16 is also rejected under the same rationale as addressed in the rejection of claim 2 above.
Regarding claim 17, it is a non-transitory computer-readable storage medium claim having the same limitations as cited in method claim 3. Thus, claim 17 is also rejected under the same rationale as addressed in the rejection of claim 3 above.
Regarding claim 18, it is a non-transitory computer-readable storage medium claim having the same limitations as cited in method claim 4. Thus, claim 18 is also rejected under the same rationale as addressed in the rejection of claim 4 above.
Regarding claim 19, it is a non-transitory computer-readable storage medium claim having the same limitations as cited in method claim 5. Thus, claim 19 is also rejected under the same rationale as addressed in the rejection of claim 5 above.
Regarding claim 20, it is a non-transitory computer-readable storage medium claim having the same limitations as cited in method claim 7. Thus, claim 20 is also rejected under the same rationale as addressed in the rejection of claim 7 above.
Conclusion
8. Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Prior art including Goud et al. (U.S. Patent No. 11,762,681), K N et al. (U.S. Pub. No. 2022/0334864), and Shepherd et al. (U.S. Pub. No. 2021/0311762) all disclose control planes that regard management decisions about clusters and virtual machine computing environments.
Examiner has cited particular columns/paragraphs/sections and line numbers in the references applied and not relied upon to the claims above for the convenience of the applicant. Although the specified citations are representative of the teachings of the art and are applied to specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested from the applicant in preparing responses, to fully consider the references in entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the Examiner.
When responding to the Office action, applicant is advised to clearly point out the patentable novelty the claims present in view of the state of the art disclosed by the reference(s) cited or the objections made. A showing of how the amendments avoid such references or objections must also be present. See 37 C.F.R. 1.111(c). When responding to this Office action, applicant is advised to provide the line and page numbers in the application and/or reference(s) cited to assist in locating the appropriate paragraphs.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to DANIEL B TRAINOR whose telephone number is (571)272-3710. The examiner can normally be reached Monday-Friday 9AM-5PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Pierre Vital can be reached at (571) 272-4215. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/D.T./Examiner, Art Unit 2198
/PIERRE VITAL/Supervisory Patent Examiner, Art Unit 2198