Control m
Control-M is an automated batch scheduling tool and the current standard for ANZ on the Midrange Systems (Unix, Linux and Windows).
Control-M Functions and Capabilities
Control-M is a BMC product, which provides comprehensive batch scheduling capabilities. The tool schedules different types of batch jobs, which enable updates, reporting and the exchange of files within the bank and between agreed banks and financial institutions.
In other words, you can run any process or script on any distributed system. You can link those executions together via dependencies. ANZ uses Control-M for distributed (Windows, LINUX and UNIX) batch processing only.
The BMC product used in ANZ consists of the following:
--> Control-M - Workload Automation
--> Control-M Configuration Manager
-->Usage utility
The Control-M Workload Automation is a single main interface to all components, including add on components and Control-M databases.
This course provides an overview of using these products.
Control-M provides:
--> Workload automation
-->Application integration
-->Enhanced robustness
--> Automated alerts during execution
-->Built in security and auditing
-->Batch analytics and forecasting
-->Control-M API Support
Control-M Refresh/New Day Activities
A Control-M day has 24 hours from 7.00am - 6.59am AEST.
The job order date is called ODAT and is usually expressed as MM/DD. For example:
* JOB A running at 8.00pm on June 21 has an ODAT of 06/21.
* JOB B running at 4.00pm on June 22 also has an ODAT of 06/21 as it was ordered on June 21.
New Day Process (NDP) is a procedure that runs at the start of a new Control-M day (7.00am). It orders new jobs and cleans up old jobs based on the following:
--Jobs that successfully completed (OK) are deleted.
--Jobs waiting to execute and whose "Max Wait" has been exceeded are deleted.
--Held jobs, regardless of the execution status or the "Max Wait" status, will not be deleted.
--Failed jobs will not be deleted until the "Max Wait" is exceeded.
All jobs are ordered into the Active Job File (AJF) by a series of User Daily jobs that run at set times during the day.
Different panes:
Planning - The Planning domain is the user working space for defining and modifying job definitions.
Monitoring - The Monitoring domain provides a single, centralized point of access to manage all active batch executions. All jobs that are scheduled can be viewed, monitored and actioned (based on the incident).
History - The History domain provides a ViewPoint to review the previous day's batch executions.
Forecast - The Forecast domain enables you to forecast and check the batch flow for likely impact.
Tools The Tools domain enables you to use tools such as Calendar Manager, Communication Status, Configuration and Reports. Also provides quick access to few common actions under Planning and Monitoring.
Planning Domain: Understanding Job Templates Accessible Version
Control-M V9 comes with a range of predefined job templates, which can be used while defining new Control-M jobs. Given below are some most commonly used job templates.
OS It is a regular Control-M job, which should be provided with file name and file path or command line.
File Watcher It is a template used to define the file watcher job, which should be provided with the details of the file.
Dummy It is a template to be used for a dummy job. This doesn't execute any script, but is very useful with post processing actions.
Batch Impact Manager It is a template to define a BIM job, which would monitor all the upstream jobs.
Database It is a template to define a database job to execute the database query.
Planning Domain: Control-M Job Definitions
Users can log into Control-M Workload Manager and choose the Planning domain to define jobs and the Monitoring domain to see the defined job details. Control-M job definitions contain job information. There are four main panels as given below.
General This panel defines job details such as job type, job name and node to run. It can have different parameters for different job types. Common job types include OS, PeopleSoft and Dummy. Scheduling This panel defines Scheduling details when the job is run.
Prerequisites This panel enables you to set parameters that define job submission criteria that must be met for a job to run.
Actions This panel enables you to set parameters that define actions for Control-M to perform based on various job run events, such as specific output patterns and the job completion status.
Scheduling
The Scheduling panel defines scheduling details when the job is run.
The following are the different types of scheduling:
* Every Day - This defines the scheduling to be every day, and only runs if all the prerequisite running criteria are met.
* None (Manual Order) - This defines no scheduling.
* Month Days - This defines scheduling according to the selected days of month, such as 1-31.
* Week Days - This defines scheduling according to the selected weekdays, such as Monday - Friday.
* Using Specific Rule-Based Calendar (RBC) - This defines scheduling according to the scheduling criteria of the selected RBCs in the RBCs list and in the Excluded RBCs list.
* Based on Calendar - This defines scheduling options that are based on specific calendars.
* Specific Dates - This defines specific dates for the schedule up to 12 dates.
Prerequisites
The Prerequisites panel enables you to set parameters that define job submission criteria that must be met for a job to run. You can define the following types of job prerequisites.
* In Condition - This enables you to specify one or more In Conditions, which correspond to the successful completion of another job.
* Control Resources - This enables you to specify whether the job requires exclusive or shared access to a physical resource, such as the tape drive.
* Quantitative Resources - This enables you to specify the resource in the Control-M and, for each job, the quantity required/used by that job.
Actions
The Actions panel enables you to set parameters that define actions for Control-M to perform based on various job run events, such as specific output patterns and the job completion status. The following are the different actions.
* Creating an Out Condition - This enables you to create an Out Condition that is added or deleted to the Conditions table when the job ends OK for a predecessor job.
* Creating Notifications - This enables you to create notifications that are sent to the Alerts window, Control-M/Server log file, User Console, any defined location or the Shout destination. There can be:
* Notifications before job's completion options based on various times, for example, jobs not being submitted or finished by a certain time, or a job's average execution time
* Notifications after job's completion options based on a job completing OK or Not OK
* Creating On-Do Actions - This enables you to create automatic interventions, such as rerunning a job or ordering a remedial job, if a job ends with a particular error code.
Monitoring domain : control m job status:
Monitoring Domain: Managing Control-M Conditions
Conditions are used to set dependencies between jobs to design the job flow. Given below are the types of Control-M conditions.
In Condition - In Conditions are one of the pre-requisites to a job. A job can execute only when the In Conditions are available. Multiple In Conditions can be defined in the job with the OR/AND conditions between them.
Out Condition - These are conditions that the job creates upon successful completion.
Global Condition - Usually prerequisite conditions are used to establish job dependencies locally, so that they apply on Control-M where they are defined. However, you can also define global prerequisites to establish job dependencies across different Control-M/Servers by defining condition name prefixes, which indicate that a condition is global.
Conditions with Global Prefix - When the dependencies are to be defined between jobs residing on different Control-M/Servers, the conditions should use the predefined global condition prefix. Managing Conditions-
All conditions being generated by a job must also be deleted when the job completes, unless it is further required. It can be done by selecting the check box at the end of the condition.
However, if the conditions are not deleted within the job, conditions older than previous 30 Order Dates (ODATS) are deleted.
Monitoring Domain: Quantitative and Control Resources
You will use resources to control the job execution in Control-M. Given below are the types of resources for controlling a job execution
Quantitative Resources
The Quantitative Resources parameter indicates the name and quantity of the Quantitative resources required by a job. When a Quantitative resource is specified for a job, Control M determines whether a sufficient quantity of the specified resource is available before submitting the job. When the job is submitted, the specified quantity of resource is assigned to that job and is not available to other jobs. When the job finishes executing, the resource is made available to other jobs.
NOTE: A maximum of 9999 Quantitative resources can be specified for a job.
The Quantitative Resources parameter is used to control the use of Quantitative resources in the installation, for example, tape drives and CPU utilization.
For load balancing, Quantitative Resources is used to specify the resources that must be available on the agent computer selected by Control M to execute the job.
For example, we have an End-of-Day (EOD) job stream. The day starts at 8am and ends at 6am. All the jobs in the stream "Must Complete By" 6am as the
system/application should be handed over to users by 8am.
Let's say this job stream has 80 jobs. The stream is executing as usual but today the 63rd job is running longer than usual. Instead of completing in 15 mins (average run time), it has completed after 35 minutes. A BIM job is defined with "Must Complete By" 6am.
BIM jobs generate an alert that there could be a 20 minutes delay in the job stream (due to the 63rd job). Now we can take corrective actions. Since we can't compromise on "Must Complete By" 6am, we can skip/bypass some jobs in the successors or run some jobs simultaneously. This way, we can ensure that the EOD job stream completes by 6am.
The four types of events are:
--Job failure on service path
--Service is late
--Job ran too long
--job finished too quickly
Comments
Post a Comment