2.1 Basic Orchestrator Terms and Concepts

This section includes the following information:

2.1.1 The Grid

When you install the ZENworks Orchestrator Server, you create an entity called a grid, which is basically an administrative domain container. A grid contains all of the objects in your network or data center that the Orchestrator is responsible to monitor and manage, including Users, Resources, and Jobs.

2.1.2 Users

For ZENworks Orchestrator, a user is an individual who authenticates to the Orchestrator Server for the purpose of managing (that is, running, monitoring, cancelling, pausing, stopping, or starting) a deployed job. The Orchestrator administrator can use the Orchestrator Console to identify users who are running jobs and to monitor the jobs that are currently running or that have run during the current server session.

2.1.3 Resources

For ZENworks Orchestrator, a resource refers to a computing node somewhere in your network (that is, your grid or data center network), which has a ZENworks Orchestrator Agent (Orchestrator Agent) installed on it. When the Orchestrator Agent is installed on a resource, communication between the agent and the ZENworks Orchestrator Server (Orchestrator Server) is established and the computing resource can be discovered and can begin performing jobs that are assigned to it by the Orchestrator Server.

2.1.4 Jobs

For ZENworks Orchestrator, a job is an application module that can run on some or all of the resources. Job logic is written in Python, and can include instructions and policies that dictate how, when, and where that job runs. In addition, the job can embed instructions that dictate any processes or applications that the resource needs to launch.

A Job Developer uses Python in a prepackaged Job Definition Language (JDL) editor to create or modify a job. When the job is ready, the administrator of the Orchestrator system uses the Orchestrator Server functionality to deploy it and to allocate appropriate resources to run it (when so directed), based on its parameters and associated policies.

2.1.5 Typical Use of the Grid

In general, the everyday use of the grid and its computational components follows this sequence:

  1. Jobs containing applications programmed by developers are created. A job component includes the application code, instructions for running the job, and policies to apply to the job.

  2. The Orchestrator Server is started. It identifies all the available computing resources.

  3. The administrator logs in to the server and deploys jobs to it so that users can run these jobs. The administrator also creates and distributes user logins.

  4. Users log in to the server and search for deployed jobs they want to run.

  5. When a user selects a job to run, he or she runs the job based on selected options; for example, he or she might select when to run the job, how many computing resources the job should run on, the type of computing resources to be used, and so on.

  6. Users monitor and control their own jobs by using certain functions, such as canceling a job, pausing a job, or even changing the priority of a job if they have rights to do so.

  7. Administrators can monitor and control all of the running jobs. They can dynamically change how a job runs before or while it is executing, they can change job priorities, or they can turn computing resources off or on.

  8. Steps 5, 6, and 7 can be repeated as long as the Orchestrator Server is running.