DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Status of Claims
Claims 1-20 are presented for examination in this application. The application filing date on 04/08/2024. Claims 1, 13 and 17 are independent.
Examiner notes
(A). Drawings submitted on 04/08/2024 comply with the provisions of 37 CFR 1.121(d), have been fully considered by the Examiner.
(B). IDS submitted on 10/06/2025 considered by the Examiner.
(C). Limitations have been provided with the Bold fonts in order to distinguish from the cited part of the reference (Italic).
(D). Examiner has cited particular columns, line numbers, references, or figures in the references applied to the claims above for the convenience of the applicant. Although the specified citations are representative of the teachings of passages and figures may apply as well. It is respectfully requested from the applicant in preparing responses to fully consider the reference in entirety, as potentially teaching all or part of the claimed invention. See MPEP §§ 2141.02 and 2123.
The examiner requests, in response to this Office action, support be shown for language added to any original claims on amendment and any new claims. That is, indicate support for newly added claim language by specifically pointing to page(s) and line number(s) in the specification and/or drawing figure(s). This will assist the examiner in prosecuting the application.
When responding to this office action, Applicant is advised to clearly point out the patentable novelty which he or she thinks the claims present, in view of the state of the art disclosed by the references cited or the objections made. He or she must also show how the amendments avoid such references or objections See 37 CFR 1.111 (c).
Claim Objections
Claims 9, 10, 14, 16, and 17-20 are objected to because of the following informalities:
Claim 9, line 5, before “first services” –the-- should be inserted.
Claim 10, “the generated dashboard UI” in line 1 and “the device” in lines 7-8 lack proper antecedent basis.
Claim 14, “the second particular severs” lacks antecedent basis.
Claim 16, line 4-5, before “first services” –the-- should be inserted.
Claim 17, line 9, before “first services” –the-- should be inserted.
Claim 18, line 2-3 “the first services” and “the at least one second server” lack antecedent basis.
Claim 19, line 4, “the at least second service” and “the second sever” lack antecedent basis.
Claim 20, line 7 “the at least one second service” lacks antecedent basis.
Appropriate correction is required.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 12, 18 and 19 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claim 12, line 1, “the configurations” is unclear whether it refers to “configurations” in line 2 or 14 of claim 1. For the examination purposes, “configurations” in line 14 will be treated as --the configurations--.
Claim 18, line 2, “the first services” is unclear whether it refers to “first services” in line 5 or 9 of claim 17. For the examination purposes, “first services” in line 9 of claim 17 will be treated as --the first services--.
Claim 19, lines 16 and 18, “the second server” is unclear whether it refers to “second server” in line 14 of claim 17 or line 8 of claim 19. For the examination purposes, “second server” in line 14 of claim 17 will be treated as --the second server--.
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.
The text of those sections of Title 35, U.S. Code not included in this action can be found in a prior Office action.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1-5, 7-13 and 15-16 are rejected under 35 U.S.C. 103 as being unpatentable over Fu et al. (IDS provided) (US 20210224093 A1, hereinafter Fu) in view of El-Assir et al. (US 20090158272 A1, hereinafter El-Assir) and Li et al. (CN 112328267 A, hereinafter Li).
As to claim 1, Fu discloses a method, comprising:
receiving, by a computing system, a configuration file outlining configurations (abstract, facilitate specification [i.e. outline], configuration, orchestration, deployment, and management of composable distributed systems. A method to realize a composable distributed system may comprise: determining, based on a system composition specification for the distributed system … First software stack images applicable to a first plurality of nodes in a first cluster may be obtained based on a corresponding first software stack specification, which may be comprised in a first cluster profile associated with the first cluster. Deployment of the first cluster may be initiated by instantiating the first cluster in a first cluster configuration. Further par. 0031, … the application's runtime environment (e.g. environment variables, privileges etc.), application libraries, other executables, and configuration files … ) and services to be applied to each of a plurality of first servers that is installed(Figs. 1A-1F, 2, par. 0045, A host system or Deployment and Provisioning Entity (“DPE”) (e.g. a computer, VM, cloud based deployment/provisioning cluster, or cloud-based service) may obtain and read the cluster profile and cluster specification, and take actions to configure and deploy the composed distributed system (in accordance with system composition specification S), and then manage the running distributed system to maintain consistency with a target state. In some embodiments, the DPE may use cluster profile B, the cluster specification C with associated parameters to build a cluster image for each cluster. Further, par. 0091, … as a cloud-based service (e.g. SaaS), while the user-composed distributed system may run over physical hardware. As another example, DPE 202 may be provided as a cloud-based service (e.g. SaaS), and the user-composed distributed system may run on cloud-infrastructure (e.g. a private cloud, public cloud, and/or a hybrid public-private cloud). As a further example, DPE 202 may be a server running on a physical computer … . Note: any first server in the plurality / multiple server is considered as a first server);
orchestrating, by the computing system, at least one of:
configuration of each of the plurality of first servers, by application of corresponding first configurations for each of the plurality of first servers (par. 0045, A host system or Deployment and Provisioning Entity (“DPE”) (e.g. a computer, VM, cloud based deployment/provisioning cluster, or cloud-based service) may obtain and read the cluster profile and cluster specification, and take actions to configure and deploy the composed distributed system (in accordance with system composition specification S [i.e. configuration file]), and then manage the running distributed system to maintain consistency with a target state. … );
based on a determination that configurations applied to a first server among the plurality of first servers are inconsistent with configurations as outlined in the configuration file for the first server (par. 0040, (a) changes to system composition specification (e.g. selection of a different application for a layer, application updates such as new versions, and/or changes such as additions/deletions of one or more layers) may be monitored; (b) inconsistencies with the specified composition may be identified; and (c) actions may initiated to ensure that the deployed system reflects the modified composition specification. … ), orchestrating, by the computing system, reconfiguration of the first server ar. 0059, … when a corresponding implementation (e.g. Ubuntu Core 18) is selected for a layer (e.g. OS layer 106), then: (a) all pre-requisites for running the selected implementation may also be included and/or specified when the implementation is selected; and/or (b) any incompatible implementations for another layer (e.g. orchestrator layer 116) may be excluded from selection menu 102. Thus, cluster profile layer selection menu 102 may prevent incompatible inter-layer implementations from being used together thereby preventing potential failures, errors, and decreasing the need for later rollbacks and/or reconfiguration.), by re-application of corresponding first configurations for the first server (par. 0040-0041, (b) inconsistencies with the specified composition may be identified; and (c) actions may initiated to ensure that the deployed system reflects the modified composition specification. … (a) changes to a target (or desired) system state specification (e.g. adding or decreasing a number of VMs in a cluster) may be monitored; … (a) changes to a target (or desired) system state specification (e.g. adding or decreasing a number of VMs in a cluster) may be monitored; (b) inconsistencies between a current state of the system and the target state specification may be identified; and (c) actions may initiated to remediate the inconsistencies (e.g. the number of VM may be adjusted—e.g. new VMs added or existing VMs may be torn down in accordance with the changed target state specification). Conversely, when the target state specification has not changed, then runtime failures or configuration errors, which may result in a current state of the system being inconsistent with the target state specification, may be flagged, and remedial action may be initiated to bring the state of the system into compliance with the target system state specification. For example, a VM that may have crashed or been inadvertently deleted may be restarted/instantiated. Note: any first server in the plurality / multiple server is considered as a first server).
Fu does not explicitly disclose the following limitation but,
El-Assir disclose a method, comprising: services to be applied to each of a plurality of first servers that is installed within a first data center (par. 022, ] Data center 140 may include one or more server entities, or other types of computation or communication devices, that gather, process, search, and/or provide information in a manner described herein. In one implementation, data center 140 may include one or more target devices that may receive one or more IT infrastructure changes or package installations (e.g., software installations (or uninstalls), application software configurations, server and/or middleware software installations, etc.) from cmcenter server 120).
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed invention to modify the system disclosed by Fu to include the method a method, comprising: services to be applied to each of a plurality of first servers that is installed within a first data center, as disclosed by El-Assir, for the purpose of remote installation to the server that provides an IT infrastructure change or package installation (e.g., provided by data center server to any of the components of network. (see paragraph 21 of El-Assir).
Li discloses monitoring, by the computing system, at least one of the configuration of each of the plurality of first servers (pars. 0040-0041, … (a) changes to system composition specification (e.g. selection of a different application for a layer, application updates such as new versions, and/or changes such as additions/deletions of one or more layers) may be monitored; (b) inconsistencies with the specified composition may be identified; and (c) actions may initiated to ensure that the deployed system reflects the modified composition specification. … (a) changes to a target (or desired) system state specification (e.g. adding or decreasing a number of VMs in a cluster) may be monitored; … ) (abstract, a plurality of server mounting method, applied to the terminal, the method comprises the following steps: analyzing the configuration file, generating installation task information; step two: sending software configuration and script file to multiple servers according to the installation task information; step three: checking whether the multiple servers finish the installation task according to the software configuration… . Note: the initial server among plurality of server is considered the first server);
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed invention to modify the system disclosed by Fu to include the method monitoring, by the computing system, at least one of the configuration of each of the plurality of first servers, as disclosed by Li, for the purpose of simplified, unified mounting step, realizing one-step configuration on one terminal, the automatic test of one-key type installation and starting, so as to reduce the error rate of manual configuration in the existing technology, and saving cost. (see abstract of Li).
As to claim 2, Fu discloses the method further comprising:
based on a determination that the first services that are installed on the first server are inconsistent with the first services that are selected for installation on the first server as outlined in the configuration file, orchestrating, by the computing system (par. 0095, Cluster profile management block 232 may facilitate the specification and creation of cluster profile 104 for composable distributed systems and applications. For example, cluster profiles (e.g. cluster profile104 in FIG. 1A) may be used to facilitate composition of one or more distributed systems and/or applications. As an example, a UI may provide cluster profile layer selection menu 102 (FIG. 1A), … credentials, and/or other parameters for configuration of a selected layer implementation. In some embodiments, adapters for various layers/implementations may be specified and stored as part of cluster configuration related information 288. Adapters may be managed using cluster profile management block 232. Adapters may facilitate installation and/or configuration of layer implementations on a composed distributed system), re-installation of corresponding first services on the first server (par. 0122, … if a system application is accidentally or deliberately deleted, then DPE 207 and/or management agent 262.sub.i.sup.l may reinstall (or be instructed to reinstall) the deleted system application during a subsequent reconciliation. As another example, changes to the OS layer implementation, such as the deletion of a kernel module, may result in the module being reinstalled. … . Note: any first server in the plurality / multiple server is considered as a first server).
As to claim 3, Fu discloses the method further comprising:
receiving, by the computing system and from a device, order information regarding numbers and characteristics of the plurality of first servers for a cloud network to be established (pars. 0044-0045, As shown in FIG. 1A, a system composition specification may include cluster profile 104, which may be used to facilitate description of a composable distributed system. … cluster profile 104 may be associated with, a cluster specification. The system composition specificationS may be expressed as S={(C.sub.i, B.sub.i)|1≤i≤N}, where C.sub.i is the cluster specification describing the configuration of the i.sup.th cluster (e.g. number of VMs in cluster i, number of master nodes in cluster i, number of worker nodes in cluster i, etc.), and B.sub.i is the cluster profile associated with the i.sup.th cluster, and N is the number of clusters specified in the composable distributed system specification S. … A host system or Deployment and Provisioning Entity (“DPE”) (e.g. a computer, VM, cloud based deployment/provisioning cluster, or cloud-based service) may obtain and read the cluster profile and cluster specification … ); and
generating, by the computing system, the configuration file based at least in part on the received order information (pars. 0095-0096, … Cluster profile related information may be stored as cluster configuration information 288 in repository 280. In some embodiments, cluster configuration related information 288 (such as Ubuntu Core 18 configuration 109) may be used during deployment and/or to create a cluster profile definition … cluster configuration related information 288 may include version numbers and/or version metadata (e.g. “latest”, “stable” etc.), credentials, and/or other parameters for configuration of a selected layer implementation. In some embodiments, adapters for various layers/implementations may be specified and stored as part of cluster configuration related information 288 … Pack configuration information 284 in repository 280 may further include information pertaining to each pack, and/or pack implementation such as: an associated layer (which may be a default or custom layer), a version number, dependency information (i.e. prerequisites such as services [i.e. order information]).
As to claim 4, Fu discloses the method wherein the order information includes at least one of information regarding types of services (par. 0096, Pack configuration information 284 in repository 280 may further include information pertaining to each pack, and/or pack implementation such as: an associated layer (which may be a default or custom layer), a version number, dependency information (i.e. prerequisites such as services that the layer/pack/implementation may depend on), incompatibility information (e.g. in relation to packs/implementations associated with some other layer), file type, environment information, storage location)
As to claim 5, Fu discloses the method further comprising:
receiving, by the computing system, first data regarding the plurality of first servers (par. 0095, Cluster profile management block 232 may facilitate the specification and creation of cluster profile 104 for composable distributed systems and applications. For example, cluster profiles (e.g. cluster profile104 in FIG. 1A) may be used to facilitate composition of one or more distributed systems and/or applications. As an example, a UI may provide cluster profile layer selection menu 102 (FIG. 1A), … credentials, and/or other parameters for configuration of a selected layer implementation. In some embodiments, adapters for various layers/implementations may be specified and stored as part of cluster configuration related information 288. Adapters may be managed using cluster profile management block 232. Adapters may facilitate installation and/or configuration of layer implementations on a composed distributed system), the plurality of first servers having been preconfigured with basic services to enable installation of the first services (par. 0061, … As shown in FIG. 1B, cluster profile may be pre-configured and presented to the user as pre-defined cluster profile 150 in a cluster profile selection menu 103. In some embodiments, a provider or user may save or publish the cluster profiles (e.g. after testing), which may then be selected and used by other users thereby simplifying orchestration and deployment. … );
updating, by the computing system, the configuration file with the first data to tailor the configuration file to the plurality of first servers (par. 0038, … software, services [i.e. first data]. Orchestration may also include cloud provisioning, which refers to the process or obtaining and allocating resources and services (e.g. to a user). Configuration refers to the setting up of the various components of a distributed system (e.g. in accordance with a specification). Monitoring, which may be an ongoing process, refers to the process of determining a system state (e.g. number of VMs, workloads, resource use, Quality of Service (QoS), performance, errors, etc.). Management refers to actions that may be taken to administer the distributed system (including applications/services on the system) such as updates, rollbacks, changes (e.g. replacing a first application—such as a load balancer—with a second application), etc. Note: any first server in the plurality / multiple server is considered as a first server);
determining, by the computing system, whether characteristics of first particular servers among the plurality of first servers are consistent with corresponding first configurations for application on the first particular servers as outlined in the configuration file (abstract, facilitate specification [i.e. outline], configuration, orchestration, deployment, and management of composable distributed systems. A method to realize a composable distributed system may comprise: determining, based on a system composition specification [i.e. particular servers among the plurality of first servers] for the distributed system … First software stack images applicable to a first plurality of nodes in a first cluster may be obtained based on a corresponding first software stack specification, which may be comprised in a first cluster profile associated with the first cluster. Deployment of the first cluster may be initiated by instantiating the first cluster in a first cluster configuration. Further par. 0031, … the application's runtime environment (e.g. environment variables, privileges etc.), application libraries, other executables, and configuration files … ); and
based on a determination that characteristics of the first particular servers are consistent with corresponding first configurations for application on the first particular servers as outlined in the configuration file, orchestrating, by the computing system, application of corresponding first configurations for each of the first particular servers (par. 0095, Cluster profile management block 232 may facilitate the specification and creation of cluster profile 104 for composable distributed systems and applications. For example, cluster profiles (e.g. cluster profile104 in FIG. 1A) may be used to facilitate composition of one or more distributed systems and/or applications. As an example, a UI may provide cluster profile layer selection menu 102 (FIG. 1A), … credentials, and/or other parameters for configuration of a selected layer implementation. In some embodiments, adapters for various layers/implementations may be specified and stored as part of cluster configuration related information 288. Adapters may be managed using cluster profile management block 232. Adapters may facilitate installation and/or configuration of layer implementations on a composed distributed system), and orchestrating, by the computing system, installation of the first services on each of the first particular servers, based on the configuration file (par. 0061, … As shown in FIG. 1B, cluster profile may be pre-configured and presented to the user as pre-defined cluster profile 150 in a cluster profile selection menu 103. In some embodiments, a provider or user may save or publish the cluster profiles (e.g. after testing), which may then be selected and used by other users thereby simplifying orchestration and deployment. … );
As to claim 7, Fu discloses the method wherein the basic services include at least one of network functionalities, software, software applications ("apps") (par. 0030, the cloud infrastructure is made available (e.g. over a network such as the Internet) to users, the cloud infrastructure is often referred to as Infrastructure as a Service (IaaS). IaaS infrastructure is typically managed by the provider. In the Platform-as-a-Service (PaaS) model, cloud providers may supply a platform, (e.g. with a preconfigured software stack) upon which customers may run applications. PaaS providers typically manage the platform (infrastructure and software stack), while the application run-time/execution environment may be user-managed. Software-as-a-Service (SaaS) models provide ready to use software applications such as financial or business applications for customer use. SaaS providers may manage the cloud infrastructure, any software stacks, and the ready to use applications, while users may retain control of data and tailor application configuration as appropriate),
or
As to claim 8, Fu discloses the method wherein the first data includes at least one of a (par. 0154, Thus, a distributed system D may be automatically composed based on a system composition specification S 150, … one or more clusters Q.sub.i or node pools in distributed system D may be composed over bare metal hardware. In addition, two node pools may include BM hardware with different configurations. … ),
As to claim 9, Fu discloses the method further comprising:
generating, by the computing system, a dashboard user interface ("UI") that is configured to display at least one of status information regarding configuration of each of the plurality of first servers (par. 0047, the components associated with each layer of cluster profile 104 may be selected and configured by a user (e.g. through a Graphical User Interface (GUI)) using cluster profile layer selection menu 102, and the components selected and/or configured … User selection of pack components/implementations may be facilitated by cluster profile layer selection menu 102, which may be provided using a GUI. In some embodiments, a user may build the cluster profile by selecting implementations associated with a layers and packs. In some embodiments, based on the selection, the system may automatically include configuration parameters (such as version numbers, image location etc.), and also facilitate inclusion of any additional user defined parameters. In addition, the system may also support orchestration, deployment, and management of a composed system based on the cluster profile (e. g cluster profile 104). )
causing the generated dashboard UI to be presented (par. 0047, … A GUI may facilitate selection and/or configuration of components associated with a corresponding layer pack. For each layer, cluster profile layer selection menu 102 may facilitate selection of the corresponding available layer components or implementation choices or “Packs”. Packs represent available implementation choices for a corresponding layer. In some embodiments, (a) packs may be built … ).
Fu does not explicitly disclose the following limitation but,
El-Assir discloses the method further comprising: configuration of each of the plurality of first servers within the first data center (par. 022, ] Data center 140 may include one or more server entities, or other types of computation or communication devices, that gather, process, search, and/or provide information in a manner described herein. In one implementation, data center 140 may include one or more target devices that may receive one or more IT infrastructure changes or package installations (e.g., software installations (or uninstalls), application software configurations, server and/or middleware software installations, etc.) from cmcenter server 120).
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed invention to modify the system disclosed by Fu to include the method further comprising: configuration of each of the plurality of first servers within the first data center, as disclosed by El-Assir, for the purpose of remote installation to the server that provides an IT infrastructure change or package installation (e.g., provided by data center server to any of the components of network. (see paragraph 21 of El-Assir).
As to claim 10, Fu discloses the method wherein causing the generated dashboard UI to be presented includes at least one of:
or causing the generated dashboard UI to be presented, via an app that is running on the device (par. 0047, … A GUI may facilitate selection and/or configuration of components associated with a corresponding layer pack. For each layer, cluster profile layer selection menu 102 may facilitate selection of the corresponding available layer components or implementation choices or “Packs”. Packs represent available implementation choices for a corresponding layer. In some embodiments, (a) packs may be built … ) and that is communicatively coupled to the computing system over at least one network (par. 0007, a computer system may comprise a processor coupled to a memory and a network interface, wherein the processor is configured to: determine, based on a system composition specification for a composable distributed computing system, one or more cluster configurations … ).
As to claim 11, Fu discloses the method wherein the configuration file further outlines configurations and services to be applied to servers that are installed in ((par. 0039, … specification of the composable distributed system may be based on a declarative [i.e. outlined] scheme or declarative model. In some embodiments, based on the specification, components of the distributed system may be automatically configured, orchestrated, deployed, and managed in a consistent and repeatable manner (across systems/cloud providers and across deployments). Further, inconsistencies, dependencies, and incompatibilities may be addressed at the time of specification. … Further, par. ),
Fu does not explicitly disclose the following limitation but,
El-Assir discloses the method wherein (Fig. 1, par. 0016, FIG. 1 is an exemplary diagram of a network 100 in which systems and methods described herein may be implemented. As illustrated, network 100 may include user devices 110-1 and 110-2 (referred to collectively as "user devices 110" or singularly as "user device 110"), a configuration management center … data centers 140-1, 140-2, and 140-3 (referred to collectively as "data centers 140" or singularly as "data center 140"), and/or firewalls 150 interconnected by a network 160. User devices 110, cmcenter server 120, cmcenter nexus servers 130, data centers 140, and/or firewalls 150 may connect to network 160 via wired and/or wireless connections. Two user devices, a single cmcenter server, two cmcenter nexus servers, three data centers, three firewalls, and a single network have been illustrated in FIG. 1 for simplicity. In practice, there may be more or less user devices, cmcenter servers, cmcenter nexus servers, data centers).
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed invention to modify the system disclosed by Fu to include the method wherein servers that are installed in another data center, in a plurality of data centers within a first region, as disclosed by El-Assir, for the purpose of remote installation to the server that provides an IT infrastructure change or package installation (e.g., provided by data center server to any of the components of network. (see paragraph 21 of El-Assir).
As to claim 12, Fu discloses the method wherein inconsistency with the configurations as outlined in the configuration file (par. 0039, … specification of the composable distributed system may be based on a declarative [i.e. outlined] scheme or declarative model. In some embodiments, based on the specification, components of the distributed system may be automatically configured, orchestrated, deployed, and managed in a consistent and repeatable manner (across systems/cloud providers and across deployments). Further, inconsistencies, dependencies, and incompatibilities may be addressed at the time of specification. …)
As to claim 13, Fu discloses a system, comprising:
a processing system (par. 0007, a computer system may comprise a processor coupled to a memory …); and
memory coupled to the processing system, the memory comprising computer executable instructions that, when executed by the processing system, causes the system to perform buildout operations comprising (par. 0007, a computer system may comprise a processor coupled to a memory …):
receiving first data regarding a plurality of first servers installed within a (par. 0095), the plurality of first servers having been preconfigured with basic services to enable installation of first services (Fig. 1B, pars. 0030 and 0061);
receiving a configuration file outlining configurations and services to be applied to each of the plurality of first servers (abstract);
updating the configuration file with the received first data to tailor the configuration file to the plurality of first servers (par. 0074, … update the current system. In some embodiments, the updates may be logged and/or recorded (e.g. as parameters 155 in the configuration specification 150 …);
determining whether characteristics of first particular servers among the plurality of first servers are consistent with corresponding configurations for application on the first particular servers as outlined in the configuration file (abstract, facilitate specification [i.e. outline], configuration, orchestration, deployment, and management of composable distributed systems. A method to realize a composable distributed system may comprise: determining, based on a system composition specification [i.e. particular servers among the plurality of first servers] for the distributed system … First software stack images applicable to a first plurality of nodes in a first cluster may be obtained based on a corresponding first software stack specification, which may be comprised in a first cluster profile associated with the first cluster. Deployment of the first cluster may be initiated by instantiating the first cluster in a first cluster configuration. Further par. 0031, … the application's runtime environment (e.g. environment variables, privileges etc.), application libraries, other executables, and configuration files … );
based on a determination that characteristics of the first particular servers are consistent with corresponding configurations for application on the first particular servers as outlined in the configuration file, orchestrating application of corresponding configurations for each of the first particular servers (par. 0095, Cluster profile management block 232 may facilitate the specification and creation of cluster profile 104 for composable distributed systems and applications. For example, cluster profiles (e.g. cluster profile104 in FIG. 1A) may be used to facilitate composition of one or more distributed systems and/or applications. As an example, a UI may provide cluster profile layer selection menu 102 (FIG. 1A), … credentials, and/or other parameters for configuration of a selected layer implementation. In some embodiments, adapters for various layers/implementations may be specified and stored as part of cluster configuration related information 288. Adapters may be managed using cluster profile management block 232. Adapters may facilitate installation and/or configuration of layer implementations on a composed distributed system) and orchestrating installation of the first services on each of the first particular servers, based on the configuration file (par. 0061, … As shown in FIG. 1B, cluster profile may be pre-configured and presented to the user as pre-defined cluster profile 150 in a cluster profile selection menu 103. In some embodiments, a provider or user may save or publish the cluster profiles (e.g. after testing), which may then be selected and used by other users thereby simplifying orchestration and deployment. … ); and
based on a determination that configurations of a first server among the plurality of first servers is inconsistent with configurations as outlined in the configuration file for the first server (par. 0040), reconfiguring the first server based on the configuration file (pars. 0059 and 0040-0041),
Fu does not explicitly disclose the following limitation but,
El-Assir disclose a plurality of first servers installed within a first data center (par. 022, ] Data center 140 may include one or more server entities, or other types of computation or communication devices, that gather, process, search, and/or provide information in a manner described herein. In one implementation, data center 140 may include one or more target devices that may receive one or more IT infrastructure changes or package installations (e.g., software installations (or uninstalls), application software configurations, server and/or middleware software installations, etc.) from cmcenter server 120);
logging a report in an incident log (par. 0035, Error recovery logic 305 may include any hardware and/or software based logic that enables cmcenter server 120 to recover any errors generated during installation of a package in any device of network 100. For example, in one implementation, error recovery logic 305 may receive one or more errors (or error messages [i.e. report incident])).
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed invention to modify the system disclosed by Fu to include the a plurality of first servers installed within a first data center and logging a report in an incident log, as disclosed by El-Assir, for the purpose of remote installation to the server that provides an IT infrastructure change or package installation (e.g., provided by data center server to any of the components of network and report any error / incident. (see paragraphs 21 and 35 of El-Assir).
Fu as modified by El-Assir does not explicitly disclose the following limitation but,
Li discloses monitoring the configurations applied to each of the plurality of first servers to determine whether the monitored configurations are consistent with corresponding configurations as outlined in the configuration file (abstract, a plurality of server mounting method, applied to the terminal, the method comprises the following steps: analyzing the configuration file, generating installation task information; step two: sending software configuration and script file to multiple servers according to the installation task information; step three: checking whether the multiple servers finish the installation task according to the software configuration… . Note: the initial server among plurality of server is considered the first server);
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed invention to modify the system disclosed by Fu to include the method monitoring the configurations applied to each of the plurality of first servers to determine whether the monitored configurations are consistent with corresponding configurations as outlined in the configuration file, as disclosed by Li, for the purpose of simplified, unified mounting step, realizing one-step configuration on one terminal, the automatic test of one-key type installation and starting, so as to reduce the error rate of manual configuration in the existing technology, and saving cost. (see abstract of Li).
As to claim 15, Fu discloses the system wherein the buildout operations further comprise:
(pars. 0040-0041); and
based on a determination that the first services that are installed on the first server are inconsistent with the first services that are selected for installation on the first server as outlined in the configuration file (par. 0095), orchestrating re-installation of corresponding first services on the first server (par. 0122).
Li discloses monitoring the first services that have been installed on each of the plurality of first servers(abstract, a plurality of server mounting method, applied to the terminal, the method comprises the following steps: analyzing the configuration file, generating installation task information; step two: sending software configuration and script file to multiple servers according to the installation task information; step three: checking whether the multiple servers finish the installation task according to the software configuration… . Note: the initial server among plurality of server is considered the first server);
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed invention to modify the system disclosed by Fu to include the method monitoring the first services that have been installed on each of the plurality of first servers, as disclosed by Li, for the purpose of simplified, unified mounting step, realizing one-step configuration on one terminal, the automatic test of one-key type installation and starting, so as to reduce the error rate of manual configuration in the existing technology, and saving cost. (see abstract of Li).
As to claim 16, Fu disclose the system wherein the buildout operations further comprise:
generating a buildout dashboard user interface ("UI") that is configured to display at least one of status information regarding configuration of each of the plurality of first servers (par. 0047, the components associated with each layer of cluster profile 104 may be selected and configured by a user (e.g. through a Graphical User Interface (GUI)) using cluster profile layer selection menu 102, and the components selected and/or configured … User selection of pack components/implementations may be facilitated by cluster profile layer selection menu 102, which may be provided using a GUI. In some embodiments, a user may build the cluster profile by selecting implementations associated with a layers and packs. In some embodiments, based on the selection, the system may automatically include configuration parameters (such as version numbers, image location etc.), and also facilitate inclusion of any additional user defined parameters. In addition, the system may also support orchestration, deployment, and management of a composed system based on the cluster profile (e. g cluster profile 104). ); and
presenting the generated buildout dashboard UI to a user (par. 0047, … A GUI may facilitate selection and/or configuration of components associated with a corresponding layer pack. For each layer, cluster profile layer selection menu 102 may facilitate selection of the corresponding available layer components or implementation choices or “Packs”. Packs represent available implementation choices for a corresponding layer. In some embodiments, (a) packs may be built … )
Claims 6 and 14 are rejected under 35 U.S.C. 103 as being unpatentable over Fu et al. , El-Assir et al. and Li as applied to claims 5 and 13 and further in view of Holzman et al. (US 20230037199 A1, hereinafter Holzman).
As to claim 6, Fu discloses the method further comprising:
based on a determination that characteristics of the first particular servers are inconsistent with corresponding first configurations for application on the first particular servers as outlined in the configuration file, performing at least one of:
orchestrating, by the computing system, application of first configurations for each of the first particular servers on the second particular servers (par. 0061, … As shown in FIG. 1B, cluster profile may be pre-configured and presented to the user as pre-defined cluster profile 150 in a cluster profile selection menu 103. In some embodiments, a provider or user may save or publish the cluster profiles (e.g. after testing), which may then be selected and used by other users thereby simplifying orchestration and deployment. … . ) and orchestrating, by the computing system, installation of the first services on each of the second particular servers, based on the configuration file (par. 0095, Cluster profile management block 232 may facilitate the specification and creation of cluster profile 104 for composable distributed systems and applications. For example, cluster profiles (e.g. cluster profile104 in FIG. 1A) may be used to facilitate composition of one or more distributed systems and/or applications. As an example, a UI may provide cluster profile layer selection menu 102 (FIG. 1A), … credentials, and/or other parameters for configuration of a selected layer implementation. In some embodiments, adapters for various layers/implementations may be specified and stored as part of cluster configuration related information 288. Adapters may be managed using cluster profile management block 232. Adapters may facilitate installation and/or configuration of layer implementations on a composed distributed system. Note: any server beside the first server in the plurality / multiple server is considered as a second server).
Fu as modified by El-Assir does not explicitly disclose the following limitation but,
Holzman discloses sending, by the computing system, a message to a user requesting information regarding which other particular servers to configure (Fig. 2, par. 0037, Cloud management platform 122 can be configured to periodically check on deployments 210 using native or non-native code to keep users of cloud management platform 122 informed [i.e. message] as to the state of deployments 210. Cloud management tool 122 can also include a policies and governance module 212 that helps a customer implement policies for cloud templates 204. In some embodiments, policies and governance module 212 can be configured to automatically implement policies that are specified by configuration file 202 … );
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed invention to modify the system disclosed by Fu to include the method sending, by the computing system, a message to a user requesting information regarding which other particular servers to configure, as disclosed by Holzman, for the purpose of informing state of deployments status. (see paragraph 37 of Holzman).
As to claim 14, Fu discloses the system wherein the buildout operations further comprise:
based on a determination that characteristics of the second particular servers are inconsistent with corresponding configurations for application on the second particular servers as outlined in the configuration file, performing at least one of (par. 0040, (a) changes to system composition specification (e.g. selection of a different application for a layer, application updates such as new versions, and/or changes such as additions/deletions of one or more layers) may be monitored; (b) inconsistencies with the specified composition may be identified; and (c) actions may initiated to ensure that the deployed system reflects the modified composition specification. … ):
orchestrating application of configurations for each of the second particular servers on the third particular servers (par. 0095, Cluster profile management block 232 may facilitate the specification and creation of cluster profile 104 for composable distributed systems and applications. For example, cluster profiles (e.g. cluster profile104 in FIG. 1A) may be used to facilitate composition of one or more distributed systems and/or applications. As an example, a UI may provide cluster profile layer selection menu 102 (FIG. 1A), … credentials, and/or other parameters for configuration of a selected layer implementation. In some embodiments, adapters for various layers/implementations may be specified and stored as part of cluster configuration related information 288. Adapters may be managed using cluster profile management block 232. Adapters may facilitate installation and/or configuration of layer implementations on a composed distributed system), and orchestrating installation of second services among the first services on each of the third particular servers, based on the configuration file (par. 0061, … As shown in FIG. 1B, cluster profile may be pre-configured and presented to the user as pre-defined cluster profile 150 in a cluster profile selection menu 103. In some embodiments, a provider or user may save or publish the cluster profiles (e.g. after testing), which may then be selected and used by other users thereby simplifying orchestration and deployment. … ).
Holzman discloses sending a message to a user requesting information regarding which other particular servers to configure (Fig. 2, par. 0037, Cloud management platform 122 can be configured to periodically check on deployments 210 using native or non-native code to keep users of cloud management platform 122 informed [i.e. message] as to the state of deployments 210. Cloud management tool 122 can also include a policies and governance module 212 that helps a customer implement policies for cloud templates 204. In some embodiments, policies and governance module 212 can be configured to automatically implement policies that are specified by configuration file 202 … );
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed invention to modify the system disclosed by Fu to include the system sending a message to a user requesting information regarding which other particular servers to configure, as disclosed by Holzman, for the purpose of informing state of deployments status. (see paragraph 37 of Holzman).
Claims 17-20 are rejected under 35 U.S.C. 103 as being unpatentable over Fu et al. in view of Li et al. and Mutnuru et al. (US 20220214998 A1, hereinafter Mutnuru.
As to claim 17, Fu discloses a computer-implemented method, comprising:
performing run state operations of first cloud network, the run state operations comprising (par. 0060, dynamically (e.g. during runtime operation of the distributed system). Remedial actions may be effectuated dynamically both in response to composition specification changes and/.or target system state specification changes as well as operational or runtime deviations (e.g. from errors/failures during system operation). … ):
determining updates to the initial configuration file to address at least one of changes to the first configurations (par. 0203, In block 750, it may be determined (e.g. based on updates/configuration/state information 747 from a lead node 270.sub.1.sup.l and/or a management agent 262 and/or DPE 202) that the first [i.e. initial] cluster configuration Q.sub.1 varies from the first cluster specification C.sub.1. The first cluster configuration Q.sub.1 may vary from the first cluster specification C.sub.1 on account of: (a) updates to system composition specification S 150 that pertain to the first cluster T.sub.1 (e.g. changes to C.sub.1 or B.sub.1; or (b) errors, failures, or other events that result in changes to the operational configuration and/or state of the deployed first cluster T.sub.1 (e.g. which may occur without changes to system composition specification S 150));
orchestrating reconfiguration of a second server among the plurality of first servers, based on the first run state configuration file (par. 0059, … when a corresponding implementation (e.g. Ubuntu Core 18) is selected for a layer (e.g. OS layer 106), then: (a) all pre-requisites for running the selected implementation may also be included and/or specified when the implementation is selected; and/or (b) any incompatible implementations for another layer (e.g. orchestrator layer 116) may be excluded from selection menu 102. Thus, cluster profile layer selection menu 102 may prevent incompatible inter-layer implementations from being used together thereby preventing potential failures, errors, and decreasing the need for later rollbacks and/or reconfiguration. Further, par. 0204, In block 760, the first cluster T.sub.1 may be dynamically [i.e. runtime] reconfigured to maintain compliance with the first cluster specification. The term dynamic is used to refer to cluster configuration changes that are effected during operation of the first cluster T.sub.1. In some embodiments, … . Note: any first server in the plurality / multiple server is considered as a first server and any server beside the first server in the plurality / multiple server is considered as a second server).
Fu does not explicitly disclose the following limitations but,
Li discloses monitoring at least one of first configurations that are applied to each of a plurality of first servers (abstract, a plurality of server mounting method, applied to the terminal, the method comprises the following steps: analyzing the configuration file, generating installation task information; step two: sending software configuration and script file to multiple servers according to the installation task information; step three: checking whether the multiple servers finish the installation task according to the software configuration… . Note: the initial server among plurality of server is considered the first server);
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed invention to modify the system disclosed by Fu to include the method monitoring at least one of first configurations that are applied to each of a plurality of first servers, as disclosed by Li, for the purpose of simplified, unified mounting step, realizing one-step configuration on one terminal, the automatic test of one-key type installation and starting, so as to reduce the error rate of manual configuration in the existing technology, and saving cost. (see abstract of Li).
Mutnuru discloses updating the initial configuration file to generate a first run state configuration file, based at least in part on the determination (par. 0013, The processor can receive base configuration files for a set of devices forming at least a portion of a computing network, pull current configuration files from each device of the set of devices forming the at least the portion of the computing network, for each device, determine a discrepancy when a base configuration file of the device and a current [i.e. initial] configuration file of the device do not match, when the discrepancy is determined for a device, generate a patch file based on the determined discrepancy for that device, extract a last configuration commit time from that device, the last configuration commit time identifying a most recent update to a configuration of that device … );
Therefore, it would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed invention to modify the system disclosed by Fu to include the method updating the initial configuration file to generate a first run state configuration file, based at least in part on the determination, as disclosed by Mutnuru, for the purpose to allocate a unique snapshot identifier to the patch file and associated with the last configuration (see par. 0011 of Mutnuru).
As to claim 18, Fu discloses the computer-implemented method further comprising:
orchestrating re-installation of a second service among the first services on the at least one second server, based on the run state configuration file (par. 0122, … if a system application is accidentally or deliberately deleted, then DPE 207 and/or management agent 262.sub.i.sup.l may reinstall (or be instructed to reinstall) the deleted system application during a subsequent reconciliation. As another example, changes to the OS layer implementation, such as the deletion of a kernel module, may result in the module being reinstalled. … . Note: any first server in the plurality / multiple server is considered as a first server and any server beside the first server in the plurality / multiple server is considered as a second server).
As to claim 19, Fu discloses the computer-implemented method further comprising:
monitoring one or more of: configurations of the second server (par. 0041, … system state specification (e.g. adding or decreasing a number of VMs in a cluster) may be monitored; (b) inconsistencies between a current state of the system and the target state specification may be identified; and (c) actions may initiated to remediate the inconsistencies (e.g. the number of VM may be adjusted—e.g. new VMs added or existing VMs may be torn down in accordance with the changed target state specification). Conversely, when the target state specification has not changed, then runtime failures or configuration errors. … . Note: any first server in the plurality / multiple server is considered as a first server and any server beside the first server in the plurality / multiple server is considered as a second server);
performing at least one of: based on a determination that configurations applied to a second server are inconsistent (par. 0040, (a) changes to system composition specification (e.g. selection of a different application for a layer, application updates such as new versions, and/or changes such as additions/deletions of one or more layers) may be monitored; (b) inconsistencies with the specified composition may be identified; and (c) actions may initiated to ensure that the deployed system reflects the modified composition specification. … Note: any first server in the plurality / multiple server is considered as a first server and any server beside the first server in the plurality / multiple server is considered as a second server),
As to claim 20, Fu discloses the computer-implemented method further comprising:
generating a run state dashboard user interface ("UI") that is configured to display at least one of (par. 0047, the components associated with each layer of cluster profile 104 may be selected and configured by a user (e.g. through a Graphical User Interface (GUI)) using cluster profile layer selection menu 102, and the components selected and/or configured … User selection of pack components/implementations may be facilitated by cluster profile layer selection menu 102, which may be provided using a GUI. In some embodiments, a user may build the cluster profile by selecting implementations associated with a layers and packs. In some embodiments, based on the selection, the system may automatically include configuration parameters (such as version numbers, image location etc.), and also facilitate inclusion of any additional user defined parameters. In addition, the system may also support orchestration, deployment, and management of a composed system based on the cluster profile (e. g cluster profile 104) ):
information regarding configurations of each of the plurality of first servers (par. 0047, the components associated with each layer of cluster profile 104 may be selected and configured by a user (e.g. through a Graphical User Interface (GUI)) using cluster profile layer selection menu 102, and the components selected and/or configured … User selection of pack components/implementations may be facilitated by cluster profile layer selection menu 102, which may be provided using a GUI. In some embodiments, a user may build the cluster profile by selecting implementations associated with a layers and packs. In some embodiments, based on the selection, the system may automatically include configuration parameters (such as version numbers, image location etc.), and also facilitate inclusion of any additional user defined parameters. In addition, the system may also support orchestration, deployment, and management of a composed system based on the cluster profile (e. g cluster profile 104). );
and presenting the generated run state dashboard UI to a device associated with a user (par. 0047, the components associated with each layer of cluster profile 104 may be selected and configured by a user (e.g. through a Graphical User Interface (GUI)) using cluster profile layer selection menu 102, and the components selected and/or configured … User selection of pack components/implementations may be facilitated by cluster profile layer selection menu 102, which may be provided using a GUI. In some embodiments, a user may build the cluster profile by selecting implementations associated with a layers and packs. In some embodiments, based on the selection, the system may automatically include configuration parameters (such as version numbers, image location etc.), and also facilitate inclusion of any additional user defined parameters. In addition, the system may also support orchestration, deployment, and management of a composed system based on the cluster profile (e. g cluster profile 104) … )
Conclusion
Prior arts made of record are considered pertinent to applicant's disclosure. See MPEP § 707.05 (C) For Examples:
I. Huang et al. (US 7788477 B1) discloses: “A system controls operating system images for a group of diskless servers and comprises an operating system builder, an operating system image manager and a run-time configuration and management tool. The operating system builder is configured to create a binary image of an operating system and modify components of the image by automated operation. The binary image is operative as common base operating system image for multiple servers. The operating system image manager discovers and manages a set of diskless servers in conjunction with a server manageability interface and a boot server. The run-time configuration and management tool for the diskless server set is configured for high-availability management, server and application health monitoring, and enforcing a security protocol between a network and a host server and individual diskless servers. (please see [abstract])”.
II. Karnik et al. (US 8037289 B1) discloses: “A system administrator may desire to provision numerous computers (e.g., servers) in a data center (e.g., a production environment, a server farm and/or the like) with identical or near identical configurations of various computer resources (e.g., software applications, hardware devices, operating system, network components, clustering software and the like). For example, the data center may comprise numerous clones of a particular computer with a gold standard configuration of the various computer resources. Such a gold standard configuration may be based upon the current best practices for data centers” (please see [col. 1, ll. 12-22]).
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Mohammad Kabir whose telephone number is (571)270-13411. The examiner can normally be reached on M-F, 8:00 am - 5:00 pm. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Sam Sough can be reached on (571) 272-6799. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/Mohammad Kabir/
Examiner, Art Unit 2192
/S.SOUGH
spe, art unit 2192