Вы находитесь на странице: 1из 12

Introduction to Control-M

Control-M is a software application product developed by a team of software engineers in Israel


to provide enterprise-level job scheduling and management. According to BMCs literature
CONTROL-M for Distributed Systems is a business integrated scheduling product that focuses
on the production environment's business applications and platforms. Simply put, Control-M is
an application able to execute programs on many different types of servers, manage the timing of
them and report the results to a central point.

Control-M Components

CONTROL-M/Enterprise Manager (CONTROL-M/EM): This application provides a single,


centralized point of access and control of your batch processing environment. Through EM we
can connect to multiple control-m servers.
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.
As an alternative to having a dedicated CONTROL-M/Agent installed on each computer under
the control of a CONTROL-M/Server, CONTROL-M/Server can also submit jobs to agentless
computers known as remote hosts.
CONTROL-M/Agents and remote hosts are identified by their node IDs. Jobs are assigned to
specific node IDs.
You can balance processing loads by grouping a number of CONTROL-M/Agents together into a
node group, and then assigning jobs to the node group, instead of to a specific CONTROLM/Agent. The job will be processed on any agent in the group, according to the processing load
at that particular moment. You can also submit a single job to all the nodes in a Node Group.
This is all depends on the scenario.
Control Modules: To bring CONTROL-M functionality to your external, packaged application
environment (for example SAP and Oracle E-Business Suite), CONTROL-M provides Control
Modules (CMs) that enable CONTROL-M/Agents to interface with the external applications

=========================================================

Introduction to Control-M
Control-M is a software application product developed by a team of software engineers in
Israel to provide enterprise-level job scheduling and management. According to BMCs
literature CONTROL-M for Distributed Systems is a business integrated scheduling product
that focuses on the production environment's business applications and platforms. Simply
put, Control-M is an application able to execute programs on many different types of servers,
manage the timing of them and report the results to a central point.

What are the default port numbers from Server to Agent and Agent to Server?
CONTROL-M/Server and CONTROL-M/Agent communicate by means of two TCP/IP
ports. They are "Server-to-Agent Port" and "Agent-to-Server Port". The default "Server-toAgent Port Number" is 7006 and "Agent-to-Server Port Number" is 7005. Normally these
values will be in the range of 1025 to 65535[inclusive].
What is Datacenter?
Control-M datacenter is comprised of Control-M/Server, Database, and ControlM/Agents.
If you see the diagram here, you can observe 2 datacenters in that picture.
Normally we will be having different datacenters for Test, Dev, Prod.. etc. in some
organizations for few critical applications they may maintain a different datacenter.
Datacenter design is completely depend upon the organizations design plan for
scheduling solution.
What are The Control-M Accessories?
Control-M/Enterprise Manager GUI (EM/GUI or ECS GUI), Gateways, Global Alert
Server (GAS), Global Condition Server (GCS) and Control-M GUI Server.
It is important to understand what each of these components does and its place in the
Control-M architecture.
What is GAS?
Expansion of GAS is Global Alert Server. This is one of the components of Control-M
EM Server.
This will be used to store all the alerts generated from datacenters under the Control-M
EM.
What is GCS?
Expansion of GCS is Global Condition Server. This is also one of the components of
Control-M EM Server.
This will be used to store all the conditions generated from datacenters under the
Control-M EM.
What is New Day Process(NDP)?
At a set time each day (defined during installation as the start of day at the site), CONTROLM performs New Day processing, during which:
CONTROL-M performs a number of maintenance and cleanup functions that the operator

would otherwise have to perform manually.


Job scheduling definitions are selected from the scheduling tables (based on their basic
scheduling criteria) and are placed in the Active Jobs file. These jobs can then be submitted
and tracked by the CONTROL-M monitor.
During New Day processing, jobs that have ended OK or whose retention period has
expired according to job scheduling definition parameters are deleted from the Active Jobs
file.
In simple terms "this loads all of the jobs that Control-M knows should run that day. ControlM does not necessarily know all of the jobs to run. it only knows the ones scheduled to run
that day. In process of cleanup Control-M will clear all the jobs (ended OK, Deleted Jobs,
Maxwait expired jobs, Eligible Failed jobs) except the jobs which are in Hold and Jobs which
are having MAXWAIT".
Note: The jobs which were ended OK will be retained for one day.
Control-M Viewpoints
Viewpoints
Batch flows at most sites exist in a distributed environment spanning many computers of
different types. CONTROL-M provides a powerful graphic user interface that allows you to
view, monitor, and control all enterprise-wide batch flows from a single console, called the
CONTROL-M/Enterprise Manager console (sometimes referred to as CONTROL-M/EM
GUI or CONTROL-M/EM).
Using CONTROL-M/EM, you can see the progress of your batch flows, and identify
problems and potential problems. CONTROL-M/EM provides a customizable, dynamic tool
called ViewPoints to allow you to display only those jobs and job flows of interest. For
example, you can view and monitor:
Jobs on a particular CONTROL-M
Jobs belonging to a specific user
Jobs having a particular status, such as failed jobs
ViewPoints are constantly updated and show in real-time the execution status of the batch
production. CONTROL-M provides a set of predefined ViewPoints. You can define other
ViewPoints according to need.
Opening a Viewpoint:

Click on File/Open Viewpoint in the Control-M/Enterprise Manager window to load the list
of viewpoints. You can have more then one viewpoint open at a time.

Each window can use a different Viewpoint to display the environment.


Click on All Active Jobs/your desired viewpoint and then click the OK button.
Click on NOTOK Only/Your desired viewpoint and then click the OK button

In this example two viewpoints have been opened. One viewpoint shows All Active Jobs.
The other viewpoint shows Ended NOTOK jobs only.
You can open as many viewpoints as you wish and click on the Window/Tile and the
Window/Cascade menu options to rearrange the view. You can simply click and drag the
viewpoint windows around to the desired place. All viewpoints will default to show at the
datacenter level.
The CONTROL-M/Enterprise Manager window consists of the following parts:
Navigation Tree Hierarchical view of jobs in the current environment.
Flow Diagram Graphic representation of job production flow, based on job dependencies
established by prerequisite conditions specified in job processing definitions. Components of
the active environment are represented by boxes called nodes. The information displayed in a
node varies depending on the type of node and on how certain customization options.
Net Overview Miniature version of the flow diagram, indicating the part of the network
currently displayed in the Flow Diagram view. By ragging the selected area in this view to a
different part of the network, you can quickly navigate in a complex environment.
Understanding the flow diagram:
In the flow diagram, components of the environment (definition environment or active
environment) are represented by node boxes. The information displayed in a node varies
depending on the type of node and on customization options.

What is Archived Viewpoint?


This is the place Where you can see historical data. In this you can see 'N' no.of days
viewpoints which were completed. The 'N' days will be set in Control-M Server settings.
How will you Order or Load the jobs?
Order/Force a Job:
Click the Icon on the Toolbar or select Tools -> Order/Force a Job (Cntrl+R is the shortcut
key)
You will get Order/Force dialog box. You have to select Control-M (Data center) and Table
from the dropdown list to display all the jobs in that table. Then you can select the job which
you want to order/force job.

Difference between Order and Force


Order will check with the job scheduling criteria and brings into AJF only If the
scheduling criteria met.
Force will ignore the scheduling criteria and bring the job(s) to AJF
What is meant by Control-M Documentation?

It is the escalation procedure to use in case of any event occur. Event may be Job
Failure, Long Running, Not started by a particular time or Not completed by a specified time.
What is Owner field denotes in Control-M job properties?
This is the actual ID which will be used to execute the job in the given node-id.
Simple terms, The Owner should have permissions to execute the job at the target
machine.
What is Filewatcher?
It is an utility provided by BMC to watch for a File Event to occur. It might be a File
Create, Update or Delete.
For Eg: If I want to start a job based on a File Created at a particular location, I'll setup a
Filewatcher job to look for that particular file and this FileWatcher job will finished OK
when It finds the file. Once this job finished I'll run the NEXT job.
There will be different parameters which we will be using to setup a FileWatcher job.
How will you use Filewatcher?
We can use this in 2 types.
Method 1: Using CTMFW Utility. This should be defined in Command field of a Job.
Method 2: We can use FileWatcher plug-in given by BMC. You have to import the XML
file given by BMC to use this.
Explain Advance File Transfer (AFT)
AFT is another plug-in (application form) given by BMC.
Using this we can transfer File(s) from one location (Source) to another location
(Destination).
To use this, AFT should be setup in Agent Configuration.
What is Job Type?
It is the type of job which you are going to define.
Eg: OS, File Watcher, AFT, FTP, SAP, WINDOWS, Web Service..etc.
Normally we'll select this option in the job properties window, on top of properties tabs.
What is a Template?
Template is nothing but a sample, which will contain certain default values in job
properties.

You can also define a template for later use.


For example in your environment you'll be defining jobs with most common values then
you can define that and save as a Template. Once you have saved then you can use this
whenever you needed in future.
What are the TASK Types?
There are 4 TASK types available in Control-M. They are Job, Command, Dummy and
Detached.
Job is to execute a programme.
Command to execute any command at the node.
Dummy job does nothing. but we'll use this in certain scenarios to design some batches.
Detached will be used to execute ".EXE" files. You can also use Command to execute
".EXE" files but the job will FAIL with "FORK FAILURE" error.
Explain color coding in Control-M?
In Control-M you can find the status of the job based on the color of the job.
There are 7 colors used in Control-M to denote job status.
GREEN - Job Ended OK
RED - JOB FAILED / Ended NOT OK
GREY - Job in WAITING Status
BLUE - Waiting for RESOURCE
PINK - WAIT for USER Conformation
WHITE - UNKNOWN Status
YELLOW - Job is in EXECUTION
What are the default/basic Properties of a Control M job?
we have 8 default tabs for any job in Control-M.
General, Scheduling, Execution, Conditions, Resources, Set, Steps and PostProc
In Control-M/EM (AJF) Scheduling tab will be replaced by ACTIVE tab.
Apart from these based on the job type we'll be getting additional tabs.
What is Retro option?
If you select this "Retro" option in Scheduling tab, job can be scheduled to run even
after actual scheduling date has been passed.
Ex: If a job scheduled to run on 20th of every month, but on 20th the Control-M Server
is down, and Came up on 21st or later, then while performing the Newday Process Control-M

will check for this option and bring the job into AJF though the job scheduled date has been
crossed.
What is Forecast?
Additional feature control-m has to foresee the job schedule.
You can see this option in 'Scheduling' tab of the job properties dialog box. When you
click on this option it will show you next 12 months schedule of the job based on the options
you have specified in this tab.
Using this you can make sure your scheduling criteria is perfect as per the user request.
What is meant by Agent or Node? Is there any difference?
It is the target system where the control-m job is going to execute.
Agent or Node both are same.
Difference between Node and Node Group?
Node is a Single Agent where as Node Group is a collection of agents (more than 1
agent).
What is wait for confirmation? What is the use of it?
It is similar to a HOLD but the job won't be in Held Status.
Sometimes if any manual confirmation is required before executing a job, we'll use
"Wait for confirmation" in Execution tab.
If you select this option, the job will turn in "PINK" color.
You have to Right click and "Confirm" the job to run (it may go in Wait status, if it has
any other prerequisite conditions or time dependency)
What is MAXWAIT?
Maximum number of days that the job can wait to be executed after its original
scheduling date has passed.
How many types of conditions you use in Control-M?
2 types. Prerequisite Conditions and Global Conditions
Prerequisite Conditions scope will be in the same server/datacenter
Global Conditions scope will be across servers/datacenters
What are Global Conditions?

If you would like to make dependency across the datacenter, then you have to use
Global Conditions.
These Global Conditions needs to be defined using Tools -> Global Conditions option.
Types of Conditions in Condition Tab?
2 types. In Condition and Out Condition.
In Conditions are of Predecessor job(s)
Out Conditions are for Successor job(s)
What are resources? And how many types of resources are available in Control-M?
Resources will be used to make mutual exclusive jobs (jobs not to run at the same time).
There are 2 types or resources.
1 - Quantitative Resources and 2 - Control Resources
Explain Control and Quantitative Resources?
Control Resources are the ones which you can specify the type of control the jobs needs
(Exclusive or Shared). They are often used to represent files, or database tables.
Quantitative Resources are resource definitions for which you specify in CONTROLM/EM an overall quantity available to the CONTROL-M, and the amount required by the job
in the Resource tab. Examples of quantitative resources you might define are CPU (%), RAM
(MB), Hard Disk (GB), and Tape Drives (#).
Use of Set Tab?
It will be used to define variables to pass as parameters to the jobs.
What do you mean by Auto-Edit variable?
AutoEdit variables are resolved at time of job submission, during job execution, or
immediately following job execution (depending on the variable).
These can be used to send as parameters to jobs.
What is PostProc tab?
This tab is used to send Alerts or Shouts to GAS or Shout Destinations (Mail or Page or
Message) based on the event defined.
Possible events are on Job ended "OK" or "NOT OK" or "Rerun" or "Not Submitted on
time" or "Not Completed On time" or "Executing for Long time".

What is COMPSTAT?
It is a Control-M variable which will holds the job Return Code of the current run.
What is MayBe Condition?
If you would like to add a In Condition only if the predecessor job exist else ignore
condition, then you have to use May Be Condition.
It is nothing but a Conditional Dependency.
Ex: If JOB-B is depending on JOB-A, but JOB-B have to wait on ONLY when JOB-A is
in AJF. In this case we'll give Out Condition of JOB-A as #-JOB-A-OK and in Condition of
JOB-B as #-JOB-A-OK.
If you add #- before the condition name that will be taken into account only when the
job is in AJF.

Вам также может понравиться