You are on page 1of 50

CONTROL-M Concepts Guide

Supporting
CONTROL-M/Enterprise Manager version 6.4.01 CONTROL-M/Server version 6.4.01 CONTROL-M/Agent version 6.4.01 CONTROL-M/Forecast version 6.4.01 BMC Batch Impact Manager version 6.4.01 BMC Batch Discovery version 6.4.01
September 2008

www.bmc.com

Contacting BMC Software


You can access the BMC Software website at http://www.bmc.com. From this website, you can obtain information about the company, its products, corporate offices, special events, and career opportunities.

United States and Canada


Address BMC SOFTWARE INC 2101 CITYWEST BLVD HOUSTON TX 77042-2827 USA Telephone 713 918 8800 or 800 841 2031 Fax 713 918 8000

Outside United States and Canada


Telephone (01) 713 918 8800 Fax (01) 713 918 8000

Copyright 2008 BMC Software, Inc. BMC, BMC Software, and the BMC Software logo are the exclusive properties of BMC Software, Inc., are registered with the U.S. Patent and Trademark Office, and may be registered or pending registration in other countries. All other BMC trademarks, service marks, and logos may be registered or pending registration in the U.S. or in other countries. All other trademarks or registered trademarks are the property of their respective owners. All IBM trademarks that are referred to or displayed in the document are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. ITIL is a registered trademark, and a registered community trademark of the Office of Government Commerce, and is registered in the U.S. Patent and Trademark Office, and is used here by BMC Software, Inc., under license from and with the permission of OGC. Linux is the registered trademark of Linus Torvalds. Oracle is a registered trademark of Oracle Corporation. All Sun trademarks that are referred to or displayed in the document are trademarks or registered trademarks of Sun Microsystems, Inc., in the U.S. and other countries. UNIX is the registered trademark of The Open Group in the US and other countries. BMC Software considers information included in this documentation to be proprietary and confidential. Your use of this information is subject to the terms and conditions of the applicable End User License Agreement for the product and the proprietary and restricted rights notices included in this documentation.

Restricted rights legend


U.S. Government Restricted Rights to Computer Software. UNPUBLISHED -- RIGHTS RESERVED UNDER THE COPYRIGHT LAWS OF THE UNITED STATES. Use, duplication, or disclosure of any data and computer software by the U.S. Government is subject to restrictions, as applicable, set forth in FAR Section 52.227-14, DFARS 252.227-7013, DFARS 252.227-7014, DFARS 252.227-7015, and DFARS 252.227-7025, as amended from time to time. Contractor/Manufacturer is BMC SOFTWARE INC, 2101 CITYWEST BLVD, HOUSTON TX 77042-2827, USA. Any contract notices should be sent to this address.

Customer support
You can obtain technical support by using the BMC Software Customer Support website or by contacting Customer Support by telephone or e-mail. To expedite your inquiry, see Before contacting BMC.

Support website
You can obtain technical support from BMC 24 hours a day, 7 days a week at http://www.bmc.com/support_home. From this website, you can

read overviews about support services and programs that BMC offers find the most current information about BMC products search a database for issues similar to yours and possible solutions order or download product documentation download products and maintenance report an issue or ask a question subscribe to receive proactive e-mail alerts when new product notices are released find worldwide BMC support center locations and contact information, including e-mail addresses, fax numbers, and telephone numbers

Support by telephone or e-mail


In the United States and Canada, if you need technical support and do not have access to the web, call 800 537 1813 or send an e-mail message to customer_support@bmc.com. (In the subject line, enter SupID:<yourSupportContractID>, such as SupID:12345). Outside the United States and Canada, contact your local support center for assistance.

Before contacting BMC


Have the following information available so that Customer Support can begin working on your issue immediately:

product information product name product version (release number) license number and password (trial or permanent)

operating system and environment information machine type operating system type, version, and service pack or other maintenance level such as PUT or PTF system hardware configuration serial numbers related software (database, application, and communication) including type, version, and service pack or maintenance level

sequence of events leading to the issue commands and options that you used messages received (and the time and date that you received them) product error messages messages from the operating system, such as file system full messages from related software

License key and password information


If you have questions about your license key or password, contact BMC as follows:

(USA or Canada) Contact the Order Services Password Team at 800 841 2031, or send an e-mail message to ContractsPasswordAdministration@bmc.com. (Europe, the Middle East, and Africa) Fax your questions to EMEA Contracts Administration at +31 20 354 8702, or send an e-mail message to password@bmc.com. (Asia-Pacific) Contact your BMC sales representative or your local BMC office.

CONTROL-M Concepts Guide

Contents
About this book Chapter 1 Introducing CONTROL-M 9 11 11 13 13 14 16 19 20 22 23 23 24 25 25 26 26 26 27 29

Understanding CONTROL-M architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Performing basic CONTROL-M tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modeling your batch production environment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Organizing batch flows into hierarchies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Key batch modeling concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Placing your model into the production environment. . . . . . . . . . . . . . . . . . . . . . . . . . Using CONTROL-M to schedule the batch flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Automating daily job scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Monitoring job processing in your batch environment . . . . . . . . . . . . . . . . . . . . . . . . . Monitoring jobs by exception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Monitoring mission-critical batch services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Analyzing your production environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Performing analysis using CONTROL-M tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . Forecasting production flows and scheduling with CONTROL-M/Forecast . . . Performing CONTROL-M administrative tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Performing main administrative tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Implementing security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 2 Implementing work flows

Planning and implementing business logic according to SLAs . . . . . . . . . . . . . . . . . . 29 Monitoring and intervening in production . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Analyzing and optimizing the system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Glossary Index 35 47

Contents

CONTROL-M Concepts Guide

Figures
Main CONTROL-M components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Write, upload, load, and download operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Job ordering and forcing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Figures

CONTROL-M Concepts Guide

About this book


This book contains important concepts and background information about the suite of CONTROL-M products. You should read and familiarize yourself with the material in this guide before using CONTROL-M. Like most BMC Software documentation, this book is available in printed and online formats. Visit the BMC Software Customer Support page at http://www.bmc.com/support_home to request additional printed books or to view online books and notices (such as release notes and technical bulletins). Some product shipments also include the online books on a documentation CD.

NOTE
Online books are formatted as Portable Document Format (PDF) or HTML files. To view, print, or copy PDF books, use the free Acrobat Reader from Adobe Systems. If your product installation does not install the reader, you can obtain the reader at http://www.adobe.com.

The software also offers online Help. To access Help, press F1 within any product, or click the Help button in graphical user interfaces (GUIs).

About this book

10

CONTROL-M Concepts Guide

Chapter

1
11 13 13 19 20 23 25 26

Introducing CONTROL-M
This chapter presents the following topics Understanding CONTROL-M architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Performing basic CONTROL-M tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modeling your batch production environment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Placing your model into the production environment. . . . . . . . . . . . . . . . . . . . . . . . . . Using CONTROL-M to schedule the batch flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Monitoring job processing in your batch environment . . . . . . . . . . . . . . . . . . . . . . . . . Analyzing your production environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Performing CONTROL-M administrative tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

CONTROL-M is a unified, enterprise-wide, dynamic system that offers a comprehensive solution to your batch processing production control requirements. CONTROL-M lets you totally automate the scheduling of your batch flows, and lets you monitor the processing of your batch flows across the enterprise from a single point of control.

Understanding CONTROL-M architecture


Before examining the main tasks that you perform using CONTROL-M, it is worthwhile taking a brief look at CONTROL-M architecture and main components.

Chapter 1 Introducing CONTROL-M

11

Understanding CONTROL-M architecture

Figure 1

Main CONTROL-M components

CONTROL-M/Enterprise Manager (CONTROL-M/EM) The CONTROL-M/Enterprise Manager application provides a single, centralized point of access and control of your batch processing environment.

CONTROL-M/Servers At the heart of CONTROL-M processing are CONTROL-M/Servers. These are the scheduling engines that schedule jobs, manage job processing flows, and provide notification of job flow status. Each CONTROL-M/Server is resident on a particular computer and is specific to its operating system.

CONTROL-M/Agents and remote hosts Though CONTROL-M/Servers are responsible for job scheduling and processing, they do not have to limit their activity to the computer on which they reside; they can schedule jobs on other computers that come under their control. CONTROL-M/Agents are commonly used to place computers under the control of a CONTROL-M/Server. CONTROL-M/Agents submit jobs on behalf of the CONTROL-M/Server, track the jobs processing, and provide status information back to the CONTROL-M/Server.

12

CONTROL-M Concepts Guide

Performing basic CONTROL-M tasks

As an alternative to having a dedicated CONTROL-M/Agent installed on each computer under the control of a CONTROL-M/Server, CONTROL-M/Server can also submit jobs to agentless computers known as remote hosts. CONTROL-M/Agents and remote hosts are identified by their node IDs. Jobs are assigned to specific node IDs. You can balance processing loads by grouping a number of CONTROL-M/Agents together into a node group, and then assigning jobs to the node group, instead of to a specific CONTROL-M/Agent. The job will be processed on any agent in the group, according to the processing load at that particular moment.

Control modules To bring CONTROL-M functionality to your external, packaged application environment (for example SAP and Oracle E-Business Suite), CONTROL-M provides Control Modules (CMs) that enable CONTROL-M/Agents to interface with the external applications.

Performing basic CONTROL-M tasks


The following list briefly outlines the major tasks you perform when you automate your production environment with CONTROL-M.

Modeling your batch production environment Placing your model into the production environment Using CONTROL-M to schedule the batch flow Monitoring job processing in your batch environment Analyzing your production environment Performing CONTROL-M administrative tasks

These tasks are discussed in more detail on the following pages.

Modeling your batch production environment


In CONTROL-M, a job is an execution unit, such as a script or program, that can be executed at the operating system level, or under a packaged external application, such as an ABAP program in SAP. To model your production batch processing flows, you must provide CONTROL-M with the scheduling and processing instructions for each job. You provide these instructions by defining job processing definitions for each job.
Chapter 1 Introducing CONTROL-M 13

Organizing batch flows into hierarchies

To help you define job processing definitions, CONTROL-M provides a robust, graphic user interface called CONTROL-M/Desktop (described in the CONTROL-M User Guide). Using the job editing form of CONTROL-M/Desktop, you provide information for each job, including:

essential information about the job, such as type of job, script, program scheduling instructions, such as on what days to run the job runtime preconditions and instructions, such as required system resources flow dependencies, such as which jobs must precede the current jobs post-processing instructions, such as cleanup, notifications and escalations

NOTE
Alternatively, you can use the CONTROL-M/EM API or command line utilities to model your production environment.

CONTROL-M/Desktop also provides a number of features that streamline the process of creating job processing definitions. The following are some of the more important features:

TemplatesYou can use templates to populate each job processing definitions with a set of common values, and then fill in the rest of the values in the job editing form manually. Templates are operating system-specific. The product comes with a predefined template for each supported operating system, but you can define as many different templates as you need. CalendarsCalendars are reusable job schedules. You define a calendar once, and then apply the calendar to all relevant job processing definitions. This saves you from defining the criteria individually for each job, and allows subsequent schedule changes be made at a single location. Mass job creation and updateusing this facility in conjunction with templates, you can create or update large numbers of jobs with a single request.

Organizing batch flows into hierarchies


Each job processing definition is characterized by the following two functionally different hierarchies.

Application => Group = > Job

14

CONTROL-M Concepts Guide

Organizing batch flows into hierarchies

Your site has many different applications, such as Payroll, Accounting, Inventory, Customer Service. Each application has many jobs, and the jobs within an application may be further divided into groups. For example, the jobs in the Accounting application may be divided into groups such as Receivables, Expenditures, Government Reporting, and so on. Thus, this hierarchy reflects how your sites jobs are organized according to application.

CONTROL-M => Scheduling Table => Job Each application, (for example, the Accounting application) may have jobs that run daily, other jobs that run weekly or monthly, and still others that run once per year. Frequently, jobs that run together are interdependent that is, one job may need to complete before another job can run. They also generally run on the same CONTROL-M. For this reason, you organize jobs that are generally scheduled together into a logical grouping called a scheduling table, with scheduling table running on a particular CONTROL-M

NOTE
You specify values for both types of hierarchies when you define job processing definitions:

Before you can create a job processing definition, you must have previously created its scheduling tables. Furthermore, at the time that you create a scheduling table, you must associate it with its particular CONTROL-M. Therefore, by your very act of creating a job processing definition, you are establishing its CONTROL-M => Scheduling table => Job hierarchy.

At the time that you fill in the details of the job processing definition, you identify the application and group to which it belongs. It is at this time that you define its Application => Group => Job hierarchy.

When you view jobs in CONTROL-M/Desktop, you can toggle between the two types of hierarchy displays, according to need. For example, you can view the jobs belonging to an application or group. You can also view the jobs belonging to a scheduling table in a particular CONTROL-M. When you view jobs in CONTROL-M/EM, the type of hierarchy display is determined by the ViewPoint definition.

Chapter 1 Introducing CONTROL-M

15

Key batch modeling concepts

To change the hierarchical arrangement of the displayed data 1 Choose View => Hierarchy and then choose either the Application/Group/Job
hierarchy or the Data Center/Scheduling Table/Job hierarchy.

NOTE
Changing the hierarchy affects the flow diagram view (and the navigation tree). It does not affect the List view.

Some jobs get scheduled daily, others monthly or quarterly, and so on. Organizing and storing together jobs with similar schedules is very useful. Therefore, job processing definitions are organized into containers called scheduling tables. When you define a job, you associate it with a particular scheduling table. You can define as many scheduling tables as you need, and you assign each scheduling table to a specific CONTROL-M. Jobs in a scheduling table are normally processed independently of each othereach job is handled only according to the parameters in its own job processing definition. However, a special type of scheduling table, called a group scheduling table, allows you to define processing parameters at the group level, not just the job level. For example, just as you can define post-processing tasks that CONTROL-M should perform when a job successfully ends, you can define post-processing tasks that CONTROL-M should perform when all the jobs in a group scheduling table successfully end. You define the group-level processing instructions in an entity called a scheduling group. A scheduling group is an extended set of table definition parameters, and each group scheduling table must contain one, and only one, scheduling group.

Key batch modeling concepts


To effectively model your batch environment, you should understand the following CONTROL-M concepts.

Establishing dependencies between jobs (job flows)


Job flows often require dependencies between jobs so that some jobs run before or after other jobs. CONTROL-M uses conditions (Out conditions and In conditions) to establish job dependencies. Most commonly, the same condition is defined as both:

16

CONTROL-M Concepts Guide

Key batch modeling concepts

an Out condition of a predecessor job. Out conditions are post-processing parameters; CONTROL-M adds a jobs Out conditions to the active environment only when the job ends. an In condition of a successor job. In conditions are job submission criteria; CONTROL-M cannot submit a job until its In conditions have been added to the active environment (for example, by completion of the predecessor job).

When a predecessor job ends, the addition of its Out conditions to the active environment enables successor jobs with the corresponding In conditions to run.

EXAMPLE
The payroll calculating job PAYCALC must be run before the payroll check-printing job PRINTPAY. To create the necessary job dependency, the user defines a condition, called PAYCALC-ENDED-OK, as follows:

PAYCALC-ENDED-OK is defined as an Out condition in job PAYCALC. (This condition is added to the active environment when PAYCALC terminates successfully). PAYCALC-ENDED-OK is defined as an In condition for job PRINTPAY. (PRINTPAY cannot be submitted unless the condition has been added to the active environment.)

Because the condition required by job PRINTPAY is not created until job PAYCALC terminates successfully, the dependency of job PRINTPAY on job PAYCALC is established.

When you plan to use conditions, remember the following facts:

Jobs can be dependent on more than one condition. A condition can be used as an In condition in more than one job. Conditions are date-specific. Global conditions can be created to establish dependencies between jobs running on different CONTROL-M/Servers.

Identifying resources required by jobs


You can define the following types of resource requirements for each job:

Control resourcesresources that are generally characterized by the control that a job needs over them: exclusive or shared. Data information resources, such as files, tables, and databases, are frequently considered control resources. Quantitative resourcesresources that are generally quantified. Physical resources, such an quantity of memory, percentage of CPU, megabytes of storage, or number of tape drives, are frequently considered quantitative resources.

Chapter 1 Introducing CONTROL-M

17

Key batch modeling concepts

NOTE
You also define the corresponding resources available on each CONTROL-M/Server. CONTROL-M determines when the resources required by a job are available, and then submits the job and adjusts the availability of those resources accordingly. When the job ends, CONTROL-M frees up those resources for use by other jobs.

Defining variables that are dynamically resolved at runtime


To eliminate the need to manually modify job processing definitions and job scripts with information known only at time of job submission, CONTROL-Ms AutoEdit facility allows you to use AutoEdit terms (predefined system variables, functions, user defined variables, and similar terms) which you specify in place of values that change from job submission to job submission. For example, AutoEdit variables can be used when:

an output file should have the current working date appended you must supply the volume label of a loaded CD the jobs order ID must be passed to the script certain job script steps should only be included for end of month runs

The AutoEdit facility is described in detail in the CONTROL-M Parameters Guide (and the CONTROL-M for z/OS User Guide for mainframe CONTROL-M users).

Automating post-processing
You can define different activities that CONTROL-M should perform after a job has ended. Common activities include notifications, such as emailing a message or shouting a message to the Alerts window, and opening a Remedy ticket in response to problems (or integrating with other external monitoring applications). You can also define automatic interventions, such as rerunning a job or forcing a remedial job, if a job ends with a particular error code. If a minor error that does not impact production occurs, you can, for example, automatically change the jobs status from Ended Not Ok to Ended Ok.

18

CONTROL-M Concepts Guide

Placing your model into the production environment

Placing your model into the production environment


To understand how you place your batch model (the scheduling tables that contain job processing definitions) into production, you must first have a basic understanding of the relevant databasesthe CONTROL-M/EM database and the CONTROL-M/Server databasesand the main files in each of those databases, the Definition file and the Active Jobs file. (The Definition file is discussed here, the Active Jobs file is discussed in the next section.)

CONTROL-M/Server databaseeach CONTROL-M/Server has its own database that contains the job processing definitions (organized by scheduling table) for which it is responsible. These definitions are stored in the Definition file of the database. CONTROL-M/EM databaseto allow you to control your entire batch production enterprise from a single point of control (CONTROL-M/EM), the Definition file of the CONTROL-M/EM database must contain a copy of all job processing definitions in all CONTROL-M/Server databases.

You place the job processing definitions (or more exactly, the scheduling tables) in the Definition file of the CONTROL-M/EM database. This operation is called writing to CONTROL-M/EM. You then copy the job processing definitions from this Definition file into the Definition file of the relevant CONTROL-M/Server database. This operation is called uploading to CONTROL-M/Server. Figure 2 illustrates the process. Figure 2 Write, upload, load, and download operations

Chapter 1 Introducing CONTROL-M

19

Using CONTROL-M to schedule the batch flow

To modify job processing definitions that have already been placed into the CONTROL-M/EM database, you can perform a load operation, which copies the job processing definitions from the CONTROL-M/EM database back into CONTROL-M/Desktop. (To copy job processing definitions from the CONTROL-M/Server database to the CONTROL-M/EM database, you perform a download operation. However, you virtually never need to do this, because the CONTROL-M/Server database is never more up-to-date than the CONTROL-M/EM database.)

Using CONTROL-M to schedule the batch flow


Once you have defined your production batch flows, they are eligible to be scheduled and run under the CONTROL-M/Server to which they have been defined. To understand job scheduling, you must first become familiar with the Active Jobs file in the CONTROL-M/Server and CONTROL-M/EM databases. In the previous section, you saw that job processing definitions are stored in the Definition file of these databases. These are permanent copies of the job processing definitionspermanent insofar as they remain unchanged until you modify or delete them. When a job is ordered, a non-permanent copy of the job processing definition is copied from the Definition file to the Active Jobs file, in both databases.

the copy in the Active Jobs file of the CONTROL-M/Server database gets processed the copy in the Active Jobs file of the CONTROL-M/EM database gets real time status updates from CONTROL-M/Server so that at any given moment, you can monitor the status of jobs in all CONTROL-M/Servers

Having the Active Jobs file separate from the Definition file provides several advantages, including the following:

The active file must only contain those jobs that are scheduled on that day rather than the total of all defined jobs. You can modify instructions in the active copy of the job processing definition (for that particular job execution) without modifying the permanent definition.

20

CONTROL-M Concepts Guide

Using CONTROL-M to schedule the batch flow

Jobs can be scheduled (that is, placed in the Active Jobs file) automatically or manually:

Automated job schedulingCONTROL-M automatically performs job scheduling. Each day, CONTROL-M automatically schedules those jobs whose scheduling criteria (defined in its job processing definition) are satisfied. This is the most efficient way to schedule jobs. Manual job scheduling (ordering or forcing)You can manually schedule jobs as needed. To manually schedule jobs or scheduling tables, you can do either of the following (illustrated in Figure 3): ordering the job or tableAn order request only schedules requested jobs whose scheduling parameters indicate that the jobs are eligible for scheduling that day. forcing the job or tableA force request schedules requested jobs regardless of whether their scheduling parameters are satisfied that day. Both options are available from CONTROL-M/Desktop, the CONTROL-M/EM GUI console (described later), the CONTROL-M/EM API, and command line utilities.

NOTE
The term ordering is often used generically to refer to either ordering or forcing when it does not matter which process is used.

Whether automatically or manually scheduled, scheduled jobs are placed under the control of the CONTROL-M/Server, but are not submitted for execution until their submission criteria are satisfied. Figure 3 Job ordering and forcing

Chapter 1 Introducing CONTROL-M

21

Automating daily job scheduling

Throughout much of this book, we have referred to the production environment. Based on the concepts presented in this topic, we can now differentiate between the production environment and the active environment:

production environmentconsists of all the jobs that you can run at your site, or from a CONTROL-M perspective, all the job processing definitions that you permanently store in the Definition file of the databases. active environmentconsists of the copies of the job processing definitions that have been placed into the Active Jobs for processing on the current day. (The Active environment actually consists of slightly more than this, but this definition will suffice for now.) This is a subset, and quite possibly a very small subset, of the production environment.

Automating daily job scheduling


At the same time each day (known as New Day time), each CONTROL-M/Server runs a procedure known as the New Day procedure. This procedure performs a number of tasks, including scheduling the days jobs, and running maintenance and cleanup utilities (for example, before adding the days jobs to the Active Jobs file, the New Day procedure deletes the old jobs from the previous day.) The New Day procedure can schedule all the current days jobs. However, to handle job automation at large sites, it is more efficient to have the New Day procedure utilize a mechanism called User Daily jobs. User Daily jobs are job processing definitions whose sole purpose is to order jobs. Instead of directly scheduling production jobs, the New Day procedure can schedule User Daily jobs, and those User Daily jobs can schedule the production jobs.

EXAMPLE
New Day time is at 5:00 a.m., but 10,000 jobs are not needed until noon another 20,000 jobs are not needed until 3:00 p.m. another 30,000 jobs are not needed until 8:00 p.m. Instead of all those jobs being scheduled by the New Day procedure at New Day time, the New Day procedure can schedule three User Daily jobs, defined as follows, at New Day time:

One user daily job, which schedules the 10,000 jobs, would be submitted at noon. One user daily job, which schedules the 20,000 jobs, would be submitted at 3:00 p.m. One user daily job, which schedules the 30,000 jobs, would be submitted at 8:00 p.m.

User daily jobs provide an additional advantage. The CONTROL-M administrator is responsible for the New Day procedure, but a site can allow different departments to be responsible for their own User Daily jobs.

22

CONTROL-M Concepts Guide

Monitoring job processing in your batch environment

CONTROL-M date and time concepts


On a regular clock, one day ends and a new day begins at midnight. However, you can set the New Day time according to your sites actual business processing working day. For example, if New Day time is 6:00 a.m., then from 6:00 a.m. on August 4th, until 6:00 a.m. on August 5th, the working day is August 4th. The date that a job is scheduled in CONTROL-M is called the Original Scheduling date abbreviated Odate (or in some cases, Odat). Odates conform to the working days, not midnight to midnight calendar days.

Monitoring job processing in your batch environment


Batch flows at most sites exist in a distributed environment spanning many computers of different types. CONTROL-M provides a powerful graphic user interface that allows you to view, monitor, and control all enterprise-wide batch flows from a single console, called the CONTROL-M/Enterprise Manager console (sometimes referred to as CONTROL-M/EM GUI or CONTROL-M/EM). Using CONTROL-M/EM, you can see the progress of your batch flows, and identify problems and potential problems. CONTROL-M/EM provides a customizable, dynamic tool called ViewPoints to allow you to display only those jobs and job flows of interest. For example, you can view and monitor:

jobs on a particular CONTROL-M jobs belonging to a specific user jobs having a particular status, such as failed jobs

ViewPoints are constantly updated and show in real-time the execution status of the batch production. CONTROL-M provides a set of predefined ViewPoints. You can define other ViewPoints according to need.

Monitoring jobs by exception


CONTROL-M tracks and monitors all jobs scheduled under it. As long as batch job processing proceeds smoothlyjobs are executing on time and ending OKyou can ignore them. You really only need to focus only on problems and potential problems, and intervene as needed. This is known as managing by exception.

Chapter 1 Introducing CONTROL-M

23

Monitoring mission-critical batch services

To monitor by exception, you can use the following tools:

ViewPointsDisplay jobs that ended Not Ok, jobs that were submitted late, and jobs that did not get submitted. Alerts and shoutsEscalate events that you define when you define job postprocessing, such as job was submitted late, ended Not OK, or returned a particular condition code.

Monitoring mission-critical batch services


Using BMC Batch Impact Manager, an add-on product to CONTROL-M, you can monitor critical batch services and intervene if delays or problems are detected or anticipated. BMC Batch Impact Manager

provides you with the status of critical batch business services proactively detects and notifies you of potential delays and errors in critical batch business services allows you to take corrective actions before business services are affected

BMC Batch Impact Manager further enhances Business Service Management by integrating with the following BMC products:

BMC Atrium Configuration Management Database (through BMC Batch Discovery) BMC Atrium Configuration Management Database is a repository that contains information about all the components of your IT environment and how they are configured and interrelated. BMC Batch Discovery identifies batch services defined using BMC Batch Impact Manager, and their dependencies, and inserts the information into the BMC Atrium Configuration Management Database.

BMC Service Impact Manager BMC Service Impact Manager allows you to monitor services and components (not just batch services) defined in the BMC Atrium Configuration Management Database.

For more information, see the BMC Batch Impact Manager User Guide.

24

CONTROL-M Concepts Guide

Analyzing your production environment

Analyzing your production environment


Analyzing your production environment is a very important task. When there are production problems, such as jobs not starting or finishing on time, you will want to analyze and determine root causes of job processing problems and delays. But even when there are no apparent problems, you can use analyses to make the system more efficient (for example, to deallocate unneeded resources and apply them somewhere else).

Performing analysis using CONTROL-M tools


CONTROL-M provides a number of capabilities for analyzing your production environment.

Reporting facility The Reporting facility provides a comprehensive set of predefined reports that let you retrieve all types of information. You can collect and generate detailed data reports and summaries on current production workflow data, historical data, and data about your job definition environment. You can generate alert reports, audit reports, CONTROL-M/Forecast reports and BMC Batch Impact Manager reports. The Reporting facility comes with predefined report templates, and allows you to define your own templates that you can use to generate reports about your production environment. It also allows you to export and copy reports.

Reviewing old data (Archived Net and Playback features) Normally, you monitor your production environment in real time. However, for analysis purposes, you may want to view job processing data accumulated over a particular period. CONTROL-M can archive each days processing events. This powerful tool then lets you replay these events and view problems or potential problems as they unfold, or capture a snapshot of your batch production environment and job flow status from any give moment. Using this available data, you can determine how best to eliminate these problems in the future and how to optimize your batch processing environment.

Collecting and examining runtime statistics The CONTROL-M ctmjsa utility enables CONTROL-M/Servers to compile runtime statistics for each job that executes. These statistics can be used by the CONTROL-M/Server to determine certain critical issues, such as if a job is unlikely to finish in time.

Chapter 1 Introducing CONTROL-M

25

Forecasting production flows and scheduling with CONTROL-M/Forecast

You can also view statistics online, and use these for analysis.

Forecasting production flows and scheduling with CONTROL-M/Forecast


Using CONTROL-M/Forecast, a powerful, separately licensed, add-on product, you can validate your batch production modeling. CONTROL-M/Forecast loads and simulates the processing of your batch flows, allowing you to validate job dependencies and scheduling criteria for any future dates. For example, you can use it to:

forecast on what date a given job or a scheduling table will be submitted generate an estimate of the full production flow for a given future date, as an enterprise-wide view forecast the impact of adding or shifting resources in your production site

For more information, see the CONTROL-M Business Service Management Solutions User Guide.

Performing CONTROL-M administrative tasks


Though your enterprise is a distributed environment across many computers, CONTROL-M provides you with a single point of control. The CONTROL-M Configuration Manager lets you administer, manage, monitor, configure, and maintain all CONTROL-M components, including CONTROL-M/Servers, CONTROL-M/Agents, remote hosts, and so on.

Performing main administrative tasks


The main administrative tasks that administrators perform include:

ensuring that CONTROL-M components are up, active, and connected ensuring that maintenance, job scheduling and data backup is performeddaily tasks are generally performed as part of New Day processing (for details, see Automating daily job scheduling on page 22). You perform other maintenance, for example, extending the database size, as needed.

26

CONTROL-M Concepts Guide

Implementing security

performing migrations and upgradesadministrators must ensure a smooth upgrade to a new release, including migration of data. Instructions are provided with the release or fix pack. defining new CONTROL-M/Servers, and their corresponding CONTROL-M/Agents and remote hosts ensuring security by setting and assigning user and group permissions. For details see Implementing security on page 27.

For more information on the CONTROL-M Configuration Manager, see the CONTROL-M Administrator Guide.

Implementing security
CONTROL-M security is three-tiered; it is defined at the CONTROL-M/EM, CONTROL-M/Server and CONTROL-M/Agent levels. CONTROL-M/EM security and CONTROL-M/Server security are centered around the user that is defined for each job. These security mechanisms authorize:

the operations (for example, Hold or Rerun) that each user is allowed to perform the entities (for example, jobs, resources, ViewPoints) that each user can view or modify

CONTROL-M/EM interacts directly with CONTROL-M/Server security. For each user request that CONTROL-M/EM receives, it seeks authorization from CONTROL-M/Server. If the CONTROL-M/Server security modules determine that the user is not authorized, the operation is rejected and the application issues an appropriate message. You define CONTROL-M/EM security using the Authorization facility. Security can be defined at the user level and group level. Users can be associated with multiple groups. User and group authorizations are discussed in detail in the CONTROL-M Administrator Guide. A CONTROL-M/EM Audit facility records data about the occurrence of a wide variety of security-sensitive activities. Security for communications between CONTROL-M/Server and CONTROL-M/EM components can be enhanced by using SSL (for details, see the CONTROL-M SSL Guide). At CONTROL-M for z/OS sites, the CONTROL-M security mechanism interacts with external security tools used at the site (such as RACF, ACF2/SAF, and TOP SECRET).

Chapter 1 Introducing CONTROL-M

27

Implementing security

CONTROL-M/Agents, which actually process the jobs, utilize operating system security; it is centered around the owner that is defined for each job. When a CONTROL-M/Agent receives a job execution request, it submits the job on behalf of the owner, but only if the owner is defined to the operating system security.

28

CONTROL-M Concepts Guide

Chapter

Implementing work flows


This chapter presents the following topics: Planning and implementing business logic according to SLAs . . . . . . . . . . . . . . . . . . 29 Monitoring and intervening in production . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Analyzing and optimizing the system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 The previous chapter provided an overview of CONTROL-M. As such, it described the tasks you perform to implement automated job processing from a CONTROL-M perspective. This chapter describes some of those same tasks, but from the perspective of your production environment. It identifies the workflow of that implementationsome of your sites needs that must be examined, decisions you must make, and planning that you should perform as a prelude to implementing automated job scheduling.

Planning and implementing business logic according to SLAs


You plan and implement scheduling tasks:

when you initially set up the production environment whenever a new job must be added to production whenever you must modify existing job requirements

Chapter 2

Implementing work flows

29

Planning and implementing business logic according to SLAs

To plan and implement the production environment 1 Get information about production jobs (work flow, tasks, priorities, and other
criteria). Often this information is provided to the IT department using SLAs (service license agreements) provided by other departments.

2 Design the production environment or modifications to the existing environment


using CONTROL-M/Desktop as a tool. For details about designing the production environment, see To define jobs on page 30.

3 Validate the design to ensure it implements business logic. If it does not meet your
requirements, repeat the preceding steps starting with Step 1. To test your design, you can temporarily identify the job processing definitions as type Dummy, which executes the batch flow without actually running the jobs. (For details, see the CONTROL-M User Guide.)

4 When the design is implemented correctly, deploy the jobs and related entities to
either a test or production environment:

A Define security requirements. B Move the jobs to production by placing the definitions into the appropriate
databases (using the Write process and the Upload process).

C Set up remaining entities for automated scheduling of jobs, such as setting up


daily automation (also known as the New Day Procedure), defining resources and global conditions, and so on.

5 Check that the jobs work as intended. If they do not, repeat preceding steps as
necessary. Optimize the system as necessary.

To define jobs 1 Determine whether you can group jobs according to:

Scheduling criteria If jobs will run on similar schedules, or need to run at the same time, it is advantageous to group them into the same scheduling table or group scheduling table. All jobs in a scheduling table are ordered for scheduling at the same time.

30

CONTROL-M Concepts Guide

Planning and implementing business logic according to SLAs

EXAMPLE
Examples of scheduling tables are: End of year jobs Daily jobs Jobs that must run to produce reports for an audit Jobs that must run as a group to handle emergency situations, such as backup procedures in the event of a natural disaster

Applications You can group jobs that are related to each other, but do not necessarily have to run at the same time.

EXAMPLE
Examples of applications are: Inventory Accounting Payroll

Groups Similar to applications, groups are another level of categorization that you can use to organize your jobs.

EXAMPLE
Examples of groups are:

Jobs in an Accounting application might be divided into groups such as Budgets, Finance, Receivables, and Expenditures. Jobs in an Employees application might be divided into groups called Pilots, Flight Attendants, Ground Crew, and Reservations. Jobs in any application might be divided into groups called Managers, since processing of managers remains the same regardless of the department (application) in which they work. Jobs that calculate the bonuses of managers of the ground crew staff and managers of the reservations staff might be similar enough to include in the same group.

2 Determine the type of job you are automating. Is the job a script, operating system
command, or a job designed by your developers?

3 Determine:

where the job should run. On which computer at which location should the job run? Is workload balancing on several computers an option?

Chapter 2

Implementing work flows

31

Monitoring and intervening in production

when the job should run. Shall it run daily? Shall it run based on specific days indicated in a calender? Shall it run repeatedly throughout the day (cyclically)? Should it take precedence over other jobs because it is high priority? whether the job depends on other jobs, or whether other jobs depend on it. Does this job depend on the successful completion of other jobs? Conversely, should this job trigger other jobs? required resources. What physical resources, such as tape drives, are required? Does the job need exclusive access to these resources?

4 Decide whether specific actions should be taken if


the job finishes as expected the job does not finish as expected

5 For BMC Batch Impact Manager: Decide whether any jobs represent batch tasks
that will seriously impact critical business services if delayed. If so, define these jobs as a batch service, so BMC Batch Impact Manager can provide early warning.

EXAMPLE
Examples of critical batch business services are:

A set of jobs that, if delayed, will cause a shipping company to miss the express mail delivery truck. A set of jobs that, if they finish way ahead of schedule, indicate that proper processing did not occur. A payroll application that finishes too soon might indicate that the proper calculations did not occur to process employees salaries.

Monitoring and intervening in production


Once you have implemented job scheduling under CONTROL-M, you will want to be sure that CONTROL-M is up and running, and that jobs are processing as required. Ideally no intervention should be required, but if intervention becomes necessary, you want to know about it. Therefore, you will likely want to monitor special critical processes, and potentially problematic situations indicated by user complaints or error messages. If you do identify a problem or temporary business need, you will want to ensure that business stays on track. This means not only getting at the root cause of the problem and fixing it, but sometimes bypassing the problem or applying a temporary fix to it.

32

CONTROL-M Concepts Guide

Analyzing and optimizing the system

To monitor and intervene in job processing while CONTROL-M is running 1 On an ongoing basis, look for or view exceptions and alerts. For a special or critical
process, view the relevant jobs for exceptions.

2 If you find exceptions, if there is a user complaint, or if there is a general error


message that impacts production:

A Identify what or where the problem is (job identification, alerts). B Gather the information and perform an entry-point root cause analysis. C Identify the owner of the problem and relevant information. 3 If intervention is necessary for an identified problem, or if there is a temporary
business need, perform an immediate fix or bypass. Examples of possible immediate fixes or bypasses in CONTROL-M include:

Forcing a job to end OK (for a minor error that does not require rerun) Viewing and modifying details of the job order Reordering or forcing that or a different job Changing resources Changing the job script

4 Perform further root cause analysis, if needed. 5 Change the existing application definition if necessary.

Analyzing and optimizing the system


In many cases you can analyze your system immediately after implementing job scheduling under CONTROL-M. Analysis offers the following benefits:

helps you identify the root causes of problems (such as tasks running over their deadlines) helps you identify resource shortages helps you identify poor workload balancing helps you determine the potential impact of adding applications or changing resources helps you optimize the system

Chapter 2

Implementing work flows

33

Analyzing and optimizing the system

To analyze the system for problems (and optimize it) 1 If you cannot fit a new application into existing schedules, or existing tasks start
running over deadlines:

A Issue a report on current tasks and workload. B Identify conflicts with the new application. C See if the current task or tasks can be rearranged to eliminate the problem.
Examples of such rearrangement include (many of these are administrator tasks):

Move jobs between environments Optimize the self configuration of the CONTROL-M/Server Check load balancing Modify system parameters Improve maintenance procedures (for example, manage conditions better)

Where necessary, update job processing definitions accordingly.

D If you cannot adequately rearrange tasks, continue with Step 3. 2 For housekeeping issues regarding existing tasks: A Issue a report on current tasks. B Determine if improvements and adjustments are necessary, and if so perform
them. If you cannot perform needed adjustments, continue with Step 3.

3 Do any combination of the following:

ask for a redefinition or prioritization of requirements, and modify existing applications. buy more resources.

34

CONTROL-M Concepts Guide

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Glossary
A
Active Jobs file (AJF) The Active Jobs file contains all jobs scheduled for submission in the current day. Each job in the Active Jobs file is not submitted until all conditions in the job processing definition for the job are satisfied. The Active Jobs file is in the CONTROL-M database. Active environment The Active Jobs file, the status of all quantitative and control resources, and all conditions in all CONTROL-M installations that are currently connected to CONTROL-M/EM. Agent computer Computer on which CONTROL-M/Agent runs. The Agent computer handles requests from CONTROL-M/Server to execute jobs or provide information. Agentless computer Remote host computer. Computer on which jobs can run without having a resident agent installed. Agentless job scheduling Ability to run jobs on computers without a resident CONTROL-M/Agent. API

See Application Programmers Interface.


Application In a CONTROL-M ViewPoint, jobs are organized into a hierarchy based on certain parameters in the job processing definition for each job. Application is one of these parameters. It is in the default hierarchy which is: CONTROL-M installation followed by application, group and job. (This term is also sometimes used in the context of external applications to refer to an external application. For a definition, see External application.) Application Programmers Interface

Interface that allows requests for services from other computer programs to CONTROL-M, and allows data to be exchanged between CONTROL-M and those programs.
AutoEdit variables AutoEdit variables enable the automatic assignment of dynamic environmental values to the execution parameters of the job. Before the job is submitted, its AutoEdit variables are resolved
Glossary 35

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
by CONTROL-M/Server. The resolved values can then be passed as parameters of the job submission command, and are used for the current execution of the job. The contents of the original job processing definition remain unchanged.

B
Batch service A set of batch jobs that are critical to the clients business. BMC Atrium Configuration Management database Repository that lists all the components of your IT environment and details how the components are configured and interrelated. BMC Batch Discovery BMC Software product that identifies batch services and their dependencies in the IT environment, and inserts the information into the BMC Atrium CMDB. BMC Batch Impact Manager Add-on product to CONTROL-M that lets you monitor critical batch services and intervene if delays or problems are detected or anticipated. BMC Remedy Action Request System BMC Software product that provides a platform for automating and managing service management business processes. BMC Remedy Change Management Application BMC Software product that provides a system that identifies the impact and risk that proposed IT changes have on business objectives. BMC Topology Discovery BMC Software product that identifies IT components and the relationships between them. Business service See Batch service. Business Service Impact Manager BMC product that allows you to monitor services and components in your IT environment.

C
Calendar A collection of dates that are used by CONTROL-M to schedule the ordering of jobs. Calendar Manager A window where you can view or modify calendars. The Calendar Manager is accessed through CONTROL-M/Desktop.

36

CONTROL-M Concepts Guide

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
CCM See CONTROL-M Configuration Manager. CDM See Common Data Model. CMDB See Configuration Management database. Collection Criteria that determine which jobs from the Active Jobs file are loaded into memory in CONTROL-M/EM. Common Data Model Schema for the BMC Atrium Configuration Management database (CMDB). Condition See Prerequisite condition. Conditions table A component of the CONTROL-M database that lists the status of all conditions in the CONTROL-M installation. Configuration Management database Repository that lists all the components of an IT environment and details how the components are configured and interrelated. Control module Mechanism supplied with CONTROL-M that enables CONTROL/Agents to interface with external, packaged application environments (for example SAP and Oracle E-Business Suite). Control resource User-defined physical or logical resource in a CONTROL-M installation. For each job the user specifies whether the job requires exclusive or shared access to the resource. CONTROL-M verifies that a job is not submitted for execution unless the Control resources required by the job are available in the required state (shared/exclusive). This prevents deadlock situations or contention between jobs for a given resource. Control resources are recorded in the Resources table. CONTROL-M Software product that schedules, submits, tracks and follows up the execution of jobs in a specific installation. (Note: In certain contexts, the term CONTROL-M refers to a CONTROL-M/Server. For example, in context of the job organization hierarchy, or in context of defining CONTROL-Ms, the term refers to CONTROL-M/Servers.)

Glossary

37

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
CONTROL-M Configuration Manager Graphic user interface that enables administrators to administer CONTROL-M components from a single point of control. This interfaces incorporates functionality previously provided by the Administration facility. CONTROL-M database See CONTROL-M/Server database. CONTROL-M installation One or more computers controlled by a single installation of CONTROL-M. In older implementations of CONTROL-M, a CONTROL-M installation typically consists of a single computer. In server/agent implementation of CONTROL-M, a CONTROL-M installation consists of a server platform and all the agent and agentless platforms that it handles. CONTROL-M log Log containing a complete audit trail of every event occurring under the CONTROL-M production environment. CONTROL-M working date Date used by CONTROL-M when assigning the scheduling date (Odate) to jobs. This date does not necessarily conform to the calendar date, and changes to the next day at New Day time. CONTROL-M/Agent Under the server/agent implementation of CONTROL-M, the component of CONTROL-M that runs on each agent platform. CONTROL-M/Agent submits jobs, performs requests from CONTROL-M/Server, and performs post-processing analysis of completed jobs. CONTROL-M/Desktop Application used to define job processing definitions, scheduling tables and calendars. CONTROL-M/Desktop is a stand-alone application that can also be activated directly using the CONTROL-M/EM GUI. Creation and modification of job definitions, uploading and downloading tables, and forcing and ordering jobs are executed via CONTROL-M/Desktop. CONTROL-M/EM See CONTROL-M/Enterprise Manager. CONTROL-M/EM Server Process that handles communication between CONTROL-M/EM GUI computers and other components of CONTROL-M/EM. The CONTROL-M/EM Server executes database queries, calculations and procedures for each GUI, and enables data-sharing between GUIs. Multiple CONTROL-M/EM Servers can be installed in a CONTROL-M/EM environment. CONTROL-M/Enterprise Manager Component of CONTROL-M that provides a central point of control for CONTROL-M installations. CONTROL-M/EM provides the GUI that allows users to graphically view the status of job schedules and execution in CONTROL-M installations, to issue requests for

38

CONTROL-M Concepts Guide

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
additional information, to make changes in the Active Jobs file, and to handle problems. CONTROL-M/EM also passes global conditions among CONTROL-M installations. CONTROL-M/Enterprise Manager database Repository of operational data relating to the functioning of all CONTROL-M installations. Contents of the database include the Active Jobs file, scheduling tables (job processing definitions) and the Resources/Conditions table. The database is maintained by CONTROL-M/EM. It is commonly referred to as the CONTROL-M/EM database. CONTROL-M/Forecast Separately licensed, add-on product that you can use to validate your batch production modeling. CONTROL-M/Forecast loads and simulates the processing of your batch flows, allowing you to validate job dependencies and scheduling criteria for any future dates. CONTROL-M/Server Under server/agent implementation of CONTROL-M, the component of CONTROL-M that runs on the server platform. CONTROL-M/Server maintains the CONTROL-M/Server database (including the Active Jobs file), schedules jobs, performs load balancing, sends jobhandling requests to agent platforms, and handles requests from CONTROL-M/EM. CONTROL-M/Server database Repository of operational data relating to the functioning of the CONTROL-M installation. Contents of the database include the Active Jobs file, Scheduling tables (job processing definitions) and the Resources/Conditions table.

D
Discovery Process of identifying physical and logical components located on a given network. Download (of Active environment) Transmission of the Active environment from a CONTROL-M installation to the CONTROL-M/EM database. This allows CONTROL-M/EM to display of the current situation in the CONTROL-M installation. Download occurs upon completion of the New Day procedure, after which updates are constantly issued to maintain the accuracy of the Active environment. You can also perform download manually. Draft Locally stored file containing job processing definitions for purposes of editing and modification by the user in CONTROL-M/Desktop.

E
End user An end user is any user, whether internal or external to the organization, who has triggered a CONTROL-M job by submitting a transaction to be processed by the CONTROL-M installation.

Glossary

39

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
extension A logical set of classes and attributes, usually in its own name-space, that is not part of the Common Data Model (CDM). External application Packaged third-party application environments (for example SAP and Oracle E-Business Suite) with which CONTROL-M can interface.

F
Federated data Data linked from a configuration item (CI) in the BMC Atrium CMDB, but stored externally federated data might represent more attributes of the CI or related information, such as change requests on the CI. Forecasts Batch flow simulations that enable you to validate job dependencies and scheduling criteria for any future dates. Force Operation that instructs CONTROL-M to place the job in the Active Jobs file for possible submission, regardless of the scheduling parameters in the job processing definition for the job. See also Order.

G
Gateway The process that handles communication between CONTROL-M and CONTROL-M/EM. There are gateway processes on both the CONTROL-M platform and on the CONTROL-M/EM computer. General Daily procedure See New Day procedure. Global Alerts server The process that identifies and distributes alerts between CONTROL-M installations and CONTROL-M/EM computers. The Global Alerts Server connects to each CONTROL-M/EM Gateway to receive alerts from CONTROL-M and transmit them to the CONTROL-M/EM GUIs. Global condition Condition that is passed between CONTROL-M installations. Global conditions allow jobs in one CONTROL-M to depend on completion of a job in a different CONTROL-M.

40

CONTROL-M Concepts Guide

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Global Conditions server The process that identifies and distributes global conditions between CONTROL-M installations. The Global Conditions Server connects to each CONTROL-M/EM gateway to receive and transmit conditions to the appropriate CONTROL-M. Group In a CONTROL-M ViewPoint, jobs are organized into a hierarchy based on certain parameters in the job processing definition for each job. Group is one of these parameters. Group scheduling table Scheduling table that contains an extended set of table definition parameters called a scheduling group. The scheduling group enables processing instructions to be applied to the jobs as a group.

H
Hierarchy Criteria that determine how jobs selected by the collection and filter are displayed in the CONTROL-M ViewPoint window.

J
Job Daemon utility Utility used to track and detect job termination (Extended and Standard versions are the same). Job editing form Used to view, specify, or modify job processing parameters for the job. The job editing form is accessed through CONTROL-M/Desktop for purposes of job definition, and through CONTROL-M/EM for job monitoring and intervention. Job processing definition Set of user-defined parameters for each job which provide CONTROL-M with detailed instructions on processing the job. Job processing definitions are organized into scheduling tables. Job processing parameter Generic name for one of the user-defined parameters that comprise a job processing definition.

K
Key attributes Attributes that CMDB reconciliation rules use to identify identical CIs. Examples of key attributes are host and domain names for Windows and UNIX systems and Name for mainframe systems.

Glossary

41

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

L
Load Operation that copies selected scheduling tables and job processing definitions from the CONTROL-M/EM database to the Online or Local workspace in which the user is working in CONTROL-M/Desktop. Load balancing Mechanism for maximizing throughput of production jobs by automatic selection of the platform on which to execute each job, based on workload considerations. Local workspace Area on the users computer in which the user defines or modifies job processing definitions using CONTROL-M/Desktop. LPAR (Logical partition) Virtual computer environment. A mainframe computer can have a number of LPARs.

M
Manual Conditions file The Manual Conditions file contains conditions which are required by jobs in the Active Jobs file but which will not be available (that is, added to the Conditions/Resources table) unless there is some form of manual intervention. These conditions include conditions which are never added automatically by scheduled jobs because manual confirmation is always desired, as well as conditions which are normally added automatically, but the jobs which add them are not scheduled for the day. Migration Transfer of data, with necessary modifications, from an earlier CONTROL-M version to a later CONTROL-M version. Mirror database A backup copy of the CONTROL-M/Server database which is constantly updated. The Mirror database allows CONTROL-M to resume functioning with minimal time loss in the event of a primary database failure.

N
New Day procedure Formerly General Daily Procedure. Daily scheduling and housekeeping procedures that run on the CONTROL-M/Server platform. The CONTROL-M date is advanced to the next day when this procedure runs.

42

CONTROL-M Concepts Guide

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
New Day Processing Processing for the new day that CONTROL-M initiates each day at the same time (New Day time). During this processing, CONTROL-M runs the New Day procedure which runs cleanup utilities and loads jobs to the Active Jobs file for the current days processing. New Day time Site-defined time at which the new processing day begins. At this same time each day, CONTROL-M begins New Day processing by running the New Day procedure, which cleans up the database from the previous days processing and loads new jobs to the Active Jobs file for the current days processing. Node group Under server/agent implementation of CONTROL-M, a user-defined collection of Node IDs. A node group is specified in a job processing definition to indicate a group of agent platforms on which CONTROL-M/Server can execute the job. Node ID Under the Agent Technology implementation of CONTROL-M, name by which an Agent platform is identified to the Server platform. This is generally the Agent platforms host name.

O
Odat, Odate See Original scheduling date. Online workspace Work area that the user can use in CONTROL-M/Desktop for defining or modifying job processing definitions in the CONTROL-M/EM database. Order Request that CONTROL-M review the scheduling parameters in the job processing definition for the job and, if the parameters are satisfied, place the job in the Active Jobs file for possible submission. See also Force. Original scheduling date CONTROL-M working date at the time a job is ordered (placed in the Active Jobs file) and represents the date on which the job should be submitted for execution. It is abbreviated Odate. Odate is also the default date assigned to conditions at the time they are created. The variable ODAT (representing the Odate) is used when defining job dependencies to ensure that a job waiting for completion of another job is only triggered by a job with the same working date.

P
Prerequisite condition A flag representing a user-specified situation or condition. Submission of a job for execution can be made dependent upon the existence of one or more conditions. Conditions are recorded in the Conditions table.
Glossary 43

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Production environment Complete set of job processing definitions and related entities defined to automate batch processing at your site.

Q
Quantitative resource User-defined variable representing a resource in the CONTROL-M installation. The user defines the total quantity of this resource in the CONTROL-M and, for each job, the quantity required/used by that job. CONTROL-M verifies that a job is not submitted for execution unless the Quantitative resources required by the job are available. Quantitative resources are recorded in the Resources table.

R
Remote host Agentless computer. Computer that runs jobs without using a resident CONTROL-M/Agent. Resources table A component of the CONTROL-M database that lists the current status of all Control resources and Quantitative resources in the CONTROL-M installation.

S
Scheduling group Extended set of table definition parameters in a group scheduling table. It is this set of parameters that enable the jobs in the table to be handled as a group. Scheduling table A collection of related job processing definitions. Scheduling tables are stored in the CONTROL-M database (and duplicated in the CONTROL-M/EM database). Scheduling tables are ordered by the New Day procedure or User Daily jobs. Scheduling Table Manager Used to define, maintain and control Scheduling tables in the CONTROL-M/EM database. The Scheduling Table Manager is accessed through CONTROL-M/Desktop. Service Set of jobs that are critical to the clients business. Sleep time The length of time that a CONTROL-M/Server process lies dormant before waking up to determine if any request to perform an action was received. The value assigned to Sleep Time affects CONTROL-M/Server throughput and the load on the Server computers resources. SYSOUT Output of the commands run on a job.
44 CONTROL-M Concepts Guide

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
System parameter Configuration parameters that influence the behavior of a wide range of CONTROL-M components and features.

T
Template Set of job processing definition parameter values that can be used to populate job processing definitions, thereby simplifying the process of defining jobs. (Templates replace the skeleton editor that was formerly available in earlier versions of CONTROL-M/Desktop.) TokenID Key attribute that CMDB reconciliation rules use before other key attributes. Topology Physical or logical layout of a communication network.

U
Upgrade Transition from an earlier version of CONTROL-M to a new version that does not necessitate a migration of data in the databases. Upload Operation that copies scheduling tables and job processing definitions from the CONTROL-M/EM database to the CONTROL-M/Server database. User Daily job User-defined job that can be used to automate the ordering of production jobs. User exits Mechanism which enables users to modify CONTROL-M operations to suit site needs.

V
ViewPoint Criteria that determine which jobs in the Active Jobs file are loaded into the database (collection), which jobs are displayed (filter), and how they are displayed (hierarchy) in the CONTROL-M/EM window.

W
Write (to CONTROL-M/EM database) Operation that copies scheduling tables and job processing definitions from the local or online workspace into the CONTROL-M/EM database.

Glossary

45

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

46

CONTROL-M Concepts Guide

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Index
A
active environment 22 Active Jobs file 19, 20 administrative tasks 26 agentless computers 13 agentless job scheduling 13 alerts 24 analyzing the production environment 25 analyzing the system 33 architecture 11 archived data 25 Archived Net feature 25 Audit facility 27 Authorization facility 27 AutoEdit facility 18 automated job scheduling 21, 22 CONTROL-M/Forecast 26 CONTROL-M/Server 12 CONTROL-M/Server database 19 ctmjsa utility 25 customer support 3

D
Definition file 19, 20 dependencies between jobs 16 documentation electronic online Help 9 online 9 related 9 download operation 20 dynamic variables, variables 18

B
balancing processing loads 13 basic CONTROL-M tasks 13 batch services 24 BMC Atrium Configuration Management Database 24 BMC Batch Discovery 24 BMC Batch Impact Manager, 24 BMC Service Impact Manager 24 BMC Software, contacting 2 business logic 29

E
electronic documentation online Help 9

F
forcing 21 forecasting production flows 26

C
calendars 14 cleanup utilities 22 conditions 16 Control module 13 control resources 17 CONTROL-M administrative tasks 26 CONTROL-M architecture 11 CONTROL-M security 27 CONTROL-M tasks 13 CONTROL-M/Agent 12 CONTROL-M/Desktop 14 CONTROL-M/EM database 19 CONTROL-M/Enterprise Manager 12 CONTROL-M/Enterprise Manager console 23

G
group scheduling table 16

I
implementing business logic 29 interface, Windows online Help 9 intervening in production 32

Index

47

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

J
job dependencies 16 job forcing 21 job ordering 21 job processing definitions 14 job scheduling 20

Q
quantitative resources 17

R
related documentation 9 remote host 12 Reporting facility 25 resources 17 runtime statistics 25

L
load balancing 13 load operation 20

M
main administrative tasks 26 maintenance utilities 22 managing by exception 23 manual job scheduling 21 mass job creation 14 mass job update 14 mission-critical batch services 24 modeling batch flows 13 monitoring job processing 23 monitoring jobs by exception 23 monitoring mission-critical batch services 24 monitoring production 32

S
scheduling table 16 security 27 shouts 24 SLA 29 SSL 27 successor job 17 support, customer 3

T
technical support 3 templates 14

N
New Day procedure 22 New Day time 22

U
uploading to CONTROL-M/Server 19 User Daily jobs 22

O
Odat 23 Odate 23 online Help 9 optimizing the system 33 ordering 21 Organizing batch flows 14 original scheduling date 23

V
ViewPoints 23

W
working day 23 writing to CONTROL-M/EM 19

P
planning business logic 29 Playback feature 25 predecessor job 17 Prerequisite Condition Example 17 product support 3 production environment 22

48

CONTROL-M Concepts Guide

Notes

*14049* *14049* *14049* *14049*

*94041*