IP Library Granted Patent US 10,924,327
Granted Patent B2
US 10,924,327 · App. 16/831,267 · Granted Feb 16, 2021

Autonomous server agents

Inventors: Rajat Bhargava (Boulder, CO); James Brown (Boulder, CO); Christopher Marie (Boulder, CO)
Assignee: JumpCloud, Inc.
H04L41/046H04L41/28H04L63/04H04L63/166
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,924,327
App. No.
16/831,267
Granted
Feb 16, 2021
Kind
B2
Abstract

Methods, systems, and devices are described for orchestrating server management in a modern IT network. The described techniques may be implemented to manage any number of networked severs, whether local, remote, or both. Server orchestration may leverage a central, cloud-based management system and/or one or more autonomous agents installed on servers with the network. The autonomous agents may each be registered with the supervisory server and may have awareness of one another.

Claims (44)

1. A method for server management, comprising:

registering, at a first server, a unique identifier of an agent running on a second server;

establishing a secure connection between the agent and the first server based at least in part on the registering;

receiving, at the agent, a server management task to manage the second server based at least in part on establishing the secure connection, the server management task comprising a command that an operating system of the second server supports, wherein the server management task is a disk space management task, a log monitoring task, a system configuration task, an email communication task, a security threat identification task, a security threat neutralization task, a user management task, or any combination thereof; and

accepting, at the agent, the server management task.

2. The method of claim 1 , further comprising:

executing the server management task on the second server with the agent.

3. The method of claim 2 , wherein the secure connection between the agent and the first server is lost, and wherein the server management task is executed after or while the secure connection is lost.

4. The method of claim 2 , further comprising:

determining an additional task to execute based at least in part on executing the server management task; and

executing the additional task on the second server.

5. The method of claim 4 , wherein the secure connection between the agent and the first server is lost, and wherein at least one of the server management task or the additional task is executed after or while the secure connection is lost.

6. The method of claim 1 , wherein accepting the server management task comprises executing a server script comprising the command associated with the server management task.

7. The method of claim 1 , further comprising:

identifying another server management task execution by another agent installed on another server; and

executing the server management task on the second server with the agent based at least in part on the identifying.

8. The method of claim 7 , wherein the secure connection between the agent and the first server is lost, and wherein the server management task is executed after or while the secure connection is lost.

9. The method of claim 1 , wherein the receiving comprising receiving a plurality of server management tasks that includes the server management task, the method further comprising:

accepting, at the agent, the plurality of server management tasks; and

executing the plurality of server management tasks on the second server with the agent according to a schedule or on an ad hoc basis.

10. The method of claim 9 , wherein the secure connection between the agent and the first server is lost, and wherein at least one of the plurality of server management tasks is executed after or while the secure connection is lost.

11. The method of claim 1 , wherein the secure connection comprises a transport layer security (TLS) protocol, wherein the first server comprises a cloud-hosted server, or both.

12. A system to manage servers, comprising:

a first hardware-implemented server that manages tasks on a second hardware-implemented server that has a network connection to the first hardware-implemented server; and

an agent on the second hardware-implemented server, wherein a unique identifier of the agent is registered at the first hardware-implemented server and a secure connection is established between the agent and the first hardware-implemented server, the agent configured to receive and accept a server management task to manage the second hardware-implemented server, the server management task comprising a command that an operating system of the second hardware-implemented server supports, wherein the server management task is a disk space management task, a log monitoring task, a system configuration task, an email communication task, a security threat identification task, a security threat neutralization task, a user management task, or any combination thereof.

13. The system of claim 12 , further comprising:

a console that provides access to the first hardware-implemented server for management of the second hardware-implemented server via the agent.

14. The system of claim 13 , further comprising:

a third hardware-implemented server, wherein the first hardware-implemented server manages tasks on the third hardware-implemented server;

a second agent on the third hardware-implemented server, wherein the console provides access to the first hardware-implemented server for management of the third hardware-implemented server via the second agent.

15. The system of claim 12 , wherein the agent comprises:

a task cache module that accepts one or more tasks in response to a script or a second command executed at the first hardware-implemented server.

16. The system of claim 15 , wherein the agent comprises:

a processing module that executes the tasks accepted by the task cache module, wherein the processing module is in communication with the task cache module, and

a timing module that directs the processing module to execute the tasks accepted by the task cache module within a time period, upon expiration of a timer, or both.

17. The system of claim 12 , wherein the first hardware-implemented server comprises:

a server orchestration module that manages, schedules, or executes tasks on the second hardware-implemented server.

18. The system of claim 17 , wherein the first hardware-implemented server comprises:

a command execution module that executes commands utilizing the agent based at least in part on an output of the server orchestration module, and

a scheduler module that executes tasks according to a schedule based at least in part on the output of the server orchestration module.

19. The system of claim 12 , wherein the first hardware-implemented server comprises:

a user management module that stores user credentials, user preferences, a location of the second hardware-implemented server, or any combination thereof, wherein the user management module is in communication with a hardware-implemented data store.

20. The system of claim 12 , further comprising:

a hardware-implemented data store in communication with the first hardware-implemented server, wherein the hardware-implemented data store comprises content, scripts, tasks, event logs, or user data, or any combination thereof.

Assignments (2)
SECURITY INTEREST Recorded Apr 30, 2022
From: JUMPCLOUD INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 059744/0884 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 21, 2020
From: BHARGAVA, RAJAT; BROWN, JAMES; MARIE, CHRISTOPHER
To: JUMPCLOUD, INC.
Reel/Frame 054814/0093 →
Continuity (7)
Continuation 16363240 · Mar 25, 2019
Continuation 14728708 · Jun 2, 2015
Provisional Application 62011087 · Jun 12, 2014
Provisional Application 62007278 · Jun 3, 2014
Provisional Application 62007281 · Jun 3, 2014
Provisional Application 62007285 · Jun 3, 2014
Related Publication 20200228390A1 · Jul 16, 2020