Control-M Concepts Guide
Supporting Version 7.0.00 of Control-M/Enterprise Manager Version 7.0.00 of Control-M/Server for UNIX® and Microsoft Windows Version 7.0.00 of Control-M/Agent for UNIX and Microsoft Windows
October 2010
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
(01) 713 918 8000
Fax
713 918 8000
Outside United States and Canada Telephone
(01) 713 918 8800
© Copyright 2010 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. The information included in this documentation is the proprietary and confidential information of BMC Software, Inc., its affiliates, or licensors. Your use of this information is subject to the terms and conditions of the applicable End User License agreement for the product and to the proprietary and restricted rights notices included in the product 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. 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
[email protected]. (In the subject line, enter SupID:, 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
3
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
[email protected].
■
(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
[email protected].
■
(Asia-Pacific) Contact your BMC sales representative or your local BMC office.
4
Control-M Concepts Guide
Contents About this book Chapter 1
9
Introducing Control-M
11
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11 13 13 14 16 19 20 22 23 24 24 25 25 26 27 27 27
Chapter 2
29
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
35
Index
47
Contents
5
6
Control-M Concepts Guide
Figures Main Control-M components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Write, upload, load, and download operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Job ordering and forcing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Figures
7
8
Control-M Concepts Guide
About this book This book contains important concepts and background information about the Control-M suite of products. You should read and familiarize yourself with the material in this guide before using Control-M. Like most BMC documentation, this book is available in printed and online formats. To request printed books or to view online books and notices (such as release notes and technical bulletins), see the Customer Support website at http://www.bmc.com/support. Most product shipments also include the books on a documentation CD.
NOTE Online books are formatted as PDF or HTML files. To view, print, or copy PDF books, use the free Adobe 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
9
10
Control-M Concepts Guide
Chapter
1
1
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11 13 13 19 20 23 25 27
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 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 (CM) 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: ■
Templates—You 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.
■
Calendars—Calendars 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 to be made at a single location.
■
Mass job creation and update—using 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. ■
14
Application => Group = > Table => Job
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 site’s jobs are organized according to application. ■
Control-M => 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 table. Furthermore, at the time that you create a 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 => 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 => Table => 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 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/SMART Table/Job hierarchy or the Data Center/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 table are normally processed independently of each other - each job is handled only according to the parameters in its own job processing definition. However, you can enable a table to define extended processing parameters that are applied to the jobs as a whole. When a table which has extended processing parameters enabled is ordered, in the active environment you will be able to monitor the status of the table and perform actions which affect all the jobs in the table. 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 table with extended processing parameters successfully end. You define extended processing instructions in the Table Editing Form in Control-M/Desktop. The submission criteria of the jobs are now dependent on the scheduling parameters of the table. When you select SMART in the Table Editing Form, the extended parameters can be set.
Key batch modeling concepts To effectively model your batch environment, you should understand the following Control-M concepts.
16
Control-M Concepts Guide
Key batch modeling concepts
Workload Automation Control-M’s Workload Management and Nodes Management features help you to better control, manage and balance the workload on Control-M resources and nodes. This is done in three primary areas: ■ ■ ■
Limiting resources available to groups of jobs in the active environment Routing groups of jobs to execute on specific resources Defining a resource’s availability in the dynamic environment according to specific times
With Control-M’s Workload Management you can divide any or all of the jobs in the Control-M active environment into smaller groups of jobs. These groups of jobs are called Workloads. Jobs are grouped together according to shared general attributes in their job definitions. This is done by defining a job attribute filter for a Workload which associates any job with those attributes in the active environment with that Workload. Jobs can be associated with more than one Workload. For information about Workload Management, see the Control-M User Guide. With Nodes Management, the load on any node machine or node group can be controlled. You can limit the usage of a node and the specific times when those limitations will be applied. A node’s participation in a node group can also be defined for specific times. This helps you control the nodes available to the jobs in the active environment. Nodes Management is performed using the Control-M Configuration Manager. For more information about Nodes Management, see the Control-M Administrator Guide
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: ■
an Out condition of a predecessor job. Out conditions are post-processing parameters; Control-M adds a job’s 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.
Chapter 1
Introducing Control-M
17
Key batch modeling concepts
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 resources—resources 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 resources—resources 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.
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.
18
Control-M Concepts Guide
Placing your model into the production environment
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-M’s 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 job’s 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 job’s status from Ended Not Ok to Ended Ok.
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 databases—the Control-M/EM database and the Control-M/Server databases—and 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 database—each 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.
Chapter 1
Introducing Control-M
19
Using Control-M to schedule the batch flow
■
Control-M/EM database—to 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
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. 20
Control-M Concepts Guide
Using Control-M to schedule the batch flow
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 definitions—permanent 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.
Jobs can be scheduled (that is, placed in the Active Jobs file) automatically or manually: ■
Automated job scheduling—Control-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 table—An order request only schedules requested jobs whose scheduling parameters indicate that the jobs are eligible for scheduling that day. — forcing the job or table—A 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.
Chapter 1
Introducing Control-M
21
Automating daily job scheduling
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
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 environment—consists 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 environment—consists 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 day’s jobs, and running maintenance and cleanup utilities (for example, before adding the day’s jobs to the Active Jobs file, the New Day procedure deletes the old jobs from the previous day.)
22
Control-M Concepts Guide
Monitoring job processing in your batch environment
The New Day procedure can schedule all the current day’s 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.
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 site’s 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).
Chapter 1
Introducing Control-M
23
Monitoring jobs by exception
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 smoothly—jobs are executing on time and ending OK—you can ignore them. You only need to focus on problems and potential problems, and intervene as needed. This is known as managing by exception. To monitor by exception, you can use the following tools: ■
ViewPoints—Display jobs that ended Not Ok, jobs that were submitted late, and jobs that did not get submitted.
■
Alerts and shouts—Escalate 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
24
■
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
Control-M Concepts Guide
Analyzing your production environment
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.
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.
Chapter 1
Introducing Control-M
25
Forecasting production flows and scheduling with Control-M/Forecast
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 day’s 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. 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.
26
Control-M Concepts Guide
Performing Control-M administrative tasks
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 performed—daily 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.
■
performing migrations and upgrades—administrators 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.
Chapter 1
Introducing Control-M
27
Implementing security
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). 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
2
2
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 implementation—some of your site’s 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 level 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: ■
30
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 table. All jobs in a table are ordered for scheduling at the same time. In addition, you can enable a table to be a SMART table, thereby exploiting more capabilities, such as, use of conditions in the SMART table level, post processing in the SMART table level, and so on.
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:
34
■
ask for a redefinition or prioritization of requirements, and modify existing applications.
■
buy more resources.
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 Programmer’s 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 Programmer’s 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 client’s 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-M/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 additional information,
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 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 job-handling 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. 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.
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 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.
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 Product Short 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.
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.
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 Local workspace Area on the user’s 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. 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 day’s 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 day’s processing and loads new jobs to the Active Jobs file for the current day’s processing.
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 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 platform’s 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. 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 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 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 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 client’s 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 computer’s resources. SMART Table A table that contains an extended set of definition parameters, such as, post-processing tasks or conditions. When ordered, in the active environment you can monitor the status of the table and perform actions which affect all the jobs in the table. Sub-tables can be defined within the table. Sub-table A table nested inside a SMART table is a sub-table. A sub-table inherits the Rule-Based Calendars from the parent table. SYSOUT Output of the commands run on a job. System parameter Configuration parameters that influence the behavior of a wide range of Control-M components and features.
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
T Table A collection of related job processing definitions. Tables are stored in the Control-M database (and duplicated in the Control-M/EM database). Tables are “ordered” by the New Day procedure or User Daily jobs. 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 publications, related 11
A active environment 22 Active Jobs file 19, 21 administrative tasks 27 agentless computers 13 agentless job scheduling 13 alerts 24 analyzing the production environment 25 analyzing the system 33 architecture 11 archived data 26 Archived Net feature 26 Audit facility 28 Authorization facility 28 AutoEdit facility 19 automated job scheduling 21, 22
CONTROL-M/EM database 19 CONTROL-M/Enterprise Manager 12 CONTROL-M/Enterprise Manager console 23 CONTROL-M/Forecast 26 CONTROL-M/Server 12 CONTROL-M/Server database 19 ctmjsa utility 26 customer support 3
D Definition file 19, 21 dependencies between jobs 17 download operation 20 dynamic variables, variables 19
E
B
electronic documentation 9
balancing processing loads 13 basic CONTROL-M tasks 13 batch services 24 BMC Atrium Configuration Management Database 25 BMC Batch Discovery 25 BMC Batch Impact Manager, 24 BMC Service Impact Manager 25 BMC Software, contacting 2 business logic 29
F
C calendars 14 cleanup utilities 22 conditions 17 Control module 13 control resources 18 CONTROL-M administrative tasks 27 CONTROL-M architecture 11 CONTROL-M security 27 CONTROL-M tasks 13 CONTROL-M/Agent 12 CONTROL-M/Desktop 14
forcing 21 forecasting production flows 26
H Help, online 9
I implementing business logic 29 intervening in production 32
J job dependencies 17 job forcing 21 job ordering 21 job processing definitions 14 job scheduling 20
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
L load balancing 13 load operation 20
S
M main administrative tasks 27 maintenance utilities 22 managing by exception 24 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 24 monitoring mission-critical batch services 24 monitoring production 32
security 27 shouts 24 SLA 29 SSL 28 successor job 17 support, customer 3
T technical support 3 templates 14
U
N New Day procedure 22 New Day time 22
uploading to CONTROL-M/Server 20 User Daily jobs 23
V
O
ViewPoints 24
Odat 23 Odate 23 online Help 9 optimizing the system 33 ordering 21 Organizing batch flows 14 original scheduling date 23
P planning business logic 29 Playback feature 26 predecessor job 17 Prerequisite Condition Example 18 product support 3 production environment 22
Q quantitative resources 18
R remote host 12
48
Reporting facility 25 resources 18 runtime statistics 26
Control-M Concepts Guide
W working day 23 writing to CONTROL-M/EM 20
Notes
*172538* *172538* *172538* *172538* *172538*