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.

Control Resources
The Control Resources parameter (from Forecast only) indicates the resources required by the job during execution and the type of control (shared or exclusive) the job requires over each resource. This parameter is used to control parallel execution of jobs.
Sub-parameters of Control Resources include:
•Resource Name: Defines the name of the Control resource
•Type: Defines if the Control resource is "Shared" or "Exclusive"
If a job requires exclusive use of a Control resource, only that job can use the Control resource. If another job requests the same resource in the "Exclusive" or "Shared" state, this second job is not submitted by ControlM until the resource is released by the first job.
If a job requires a Control resource in the "Shared" state, that job can run in parallel with other jobs that request the same resource in the "Shared" state.

Forecast Domain: Viewing Future Jobs

Control-M/Forecast adds forecasting capabilities to Control-M that enable you to estimate your scheduling environment behaviour with respect to specific dates in the future. Both graphic and tabular representations of the forecast provide the future dates where a job or a folder is predicted to be submitted. In addition, Control-M/Forecast generates an estimate of the full production flow for a future date, as an enterprise-wide view.
Control-M/Forecast bases its projections on Control-M/Server's New Day procedures and User Dailies. Control-M/Forecast analyses folder, User Daily jobs, calendars, job dependencies (in and out conditions), time execution windows, Control-M time zone settings, resources and priorities in the Control-M/EM database and based on existing statistics, estimates how jobs will run on specific days.

History Domain: Viewing Archived Jobs
In the History domain, you can access job processing data that has been accumulated over a specific period of time.
You can perform the following tasks in the History domain:
--Set up an archived ViewPoint to enable you to playback events from the History domain
--Filter the archived ViewPoint by filtering according to a customized view
--Playback events from the archived ViewPoint, which enables you to review events from a specific time, second-by-second, or from event-to-event, at the speed you require
--search for archived data

Control-M Calendars
Calendars enable you to define a set of scheduling criteria and then apply those criteria to job schedules by specifying the calendar name in the job definition, which saves having to define those sets of criteria individually in each job.
You can define, view, edit or delete calendars based on specific scheduling criteria that are used to define scheduling in a job definition from the Tools domain. If you want to use a predefined calendar when defining a job, it must be checked into Control-M.
Given below are the types of Control-M calendars 

Regular Calendar
This option in Control-M enables you to create a predefined calendar based on certain dates (the days of the month and/or the days of the week) in a selected year. Other scheduling parameters can be used with a regular calendar to further control the dates on which the job is ordered.
Periodic Calendar
This option enables you to create a predefined calendar based on different calendar periods that you define. Periodic calendars are used to divide the year into working periods, for example, 13 periods, 20 periods and so on, instead of 12 months. Periods can be non-consecutive, of varying length and overlapping, but no single period can exceed 255 days.
Rule-Based Calendar
This option enables you to create a predefined calendar based on specific rules, independent of specific years. These calendars can apply over several years, as they do not need to be redefined each year. Rule-based calendars give you the flexibility to address different scenarios. For example, if you want to run a job at the end of each month, you need to create a Rule-Based calendar, otherwise if you select 31 at the end of each month, it is not correct as there are months with less than 31 days.

Control-M Global and Standard Calendars
Calendars created in Control-M now can be made global. A Global calendar will be available on all datacentres, unlike in the previous version of Control-M where it was datacentre-specific.
Control-M Support also maintains and manages Standard calendars, which can be used by all Control-M Users. These calendars are mainly holiday calendars for all countries, which are generic in usage. A benefit of a Standard calendar is that a user does not require to maintain it as these calendars are managed by Control-M Support.

Export/Import Control-M Job Definitions
You can export job and folder definitions from Control-M. This enables you to save your definitions as an XML file, and later import them to another environment. You can also use the Job and Folder File Editor tool to transfer job and folder definitions in a workspace between environments.
Exporting and importing job and folder definitions between environments:
--Exporting jobs: Saves your jobs and folder definitions or the whole workspace as an XML file
--Editing jobs and folders in the Job and Folder File Editor tool: Transfers job and folder definitions by loading the jobs and folders from a workspace to an XML file editor; after you are done editing the workspace and saving the XML file, you can import the XML file to any environment
--Importing jobs to a workspace: Retrieves job and folder definitions from an XML file to the workspace

Keep Active
The "Keep Active" status for Control-M jobs must not exceed:
* Seven (7) days for regular jobs
* Zero (0) days for cyclic jobs, which are ordered daily

Jobs on Hold
No jobs should be put on hold for more than two days (48 hours) from hold time. The held jobs remain in the active utilises the Control-M resources and can impact performance for the whole environment.
quepe (AJF) and are deleted automatically after 30 days of their Order Time. This

What Is the Batch Impact Manager (BIM)?
The BIM job generates alerts/events at a business process level when any of its predecessor jobs fail or are delayed. The last job in the critical job stream can be made as a BIM type job which dynamically scans the predecessor job streams to determine and analyse the critical path.
If there is a failure or delay on an event in the execution in any of the critical path's job, it sends Shouts as defined in the BIM 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

Popular posts from this blog

Teradata

Git

work