US 11,811,885 B2
Apparatus and methods for dynamic scaling and orchestration
Mani Shankar, Princeton, NJ (US)
Assigned to Bank of America Corporation, Charlotte, NC (US)
Filed by Bank of America Corporation, Charlotte, NC (US)
Filed on May 24, 2021, as Appl. No. 17/327,876.
Prior Publication US 2022/0377146 A1, Nov. 24, 2022
Int. Cl. H04L 67/51 (2022.01); H04L 41/0816 (2022.01); H04L 9/40 (2022.01); G06F 9/455 (2018.01); H04L 12/66 (2006.01); H04L 67/1001 (2022.01)
CPC H04L 67/51 (2022.05) [G06F 9/45558 (2013.01); H04L 12/66 (2013.01); H04L 41/0816 (2013.01); H04L 63/08 (2013.01); H04L 67/1001 (2022.05); G06F 2009/45595 (2013.01)] 7 Claims
OG exemplary drawing
 
1. An apparatus for automatically and without user intervention providing dynamic scaling and orchestrating network services over a network without using the cloud or Internet connections, the network being contained within an internal intranet, the apparatus comprising:
(i) two or more computers, within the network, forming a network cluster, each computer assigned to a user and comprising:
(a) a communication link configured to access the network cluster and communicate between each computer in the network cluster;
(b) a non-transitory memory configured to store at least:
a plurality of network services; and
an operating system;
(c) an agent service comprising executable code configured to interface with one or more gateway services;
(d) at least one processor core coupled to the memory and configured to:
operate the agent service and the operating system;
operate a user service providing an interface for each user;
operate the communication link; and
operate at least one of the plurality of network services within the memory;
(ii) a pool of network services comprised of the plurality of network services in each memory;
(iii) two or more director services, within the network, wherein:
(a) each director service is configured to run on a single computer in the network cluster and to manage the network cluster;
(b) each director service is synced with each other director service, said syncing enabling one director service to manage the network cluster if another director service fails or is taken offline such that at least one director service is running while the network cluster is operable;
(c) each director service is configured to enable the user to add to the plurality of network services on the computer assigned to the user, from the pool of network services, and remove network services from the plurality of network services while the network cluster is operating;
(d) each director service is configured to expand or contract the pool of network services in part based on an artificial intelligence algorithm configured to predict the network services required by the user; and
(e) each director service is configured to enable the user to add and remove computers from the cluster while the network cluster is operating;
(iv) a data store, within the network, installed on at least one of the computers, the data store storing a plurality of configurations comprising:
(a) one or more network cluster configurations associated with the network cluster;
(b) one or more computer configurations associated with the two or more computers;
(c) one or more agent service configurations associated with the agent services of the two or more computers; and
(d) one or more commands for network cluster startup and shutdown;
wherein the data store is configured respond to requests from the director services, the agent services, and the gateway services to enable management and orchestration of the network services based on the stored configurations;
(v) the one or more gateway services, within the network, configured to interface between each agent service and the two or more director services, wherein a number of gateway services in the network cluster is less than the number of computers in the network cluster;
(vi) an authorization service, within the network, configured to authenticate user services of the network cluster; and
wherein:
each agent service is configured to interface between each computer in the cluster and the cluster through the one or more gateway services and the two or more director services; and
each of the one or more gateway services is configured to:
interface between each agent service and the cluster through the two or more director services; and
schedule and direct requests from each agent service through a fair scheduler algorithm.