Control M
Control M
This is currently a Work In Progress. Ignore any spelling errors or anything else really. Consider it a draft.
Thanks.
The goal of this guide is to provide a jump in point for Control-M. It is going to cover only the basic understanding
of Control-M to allow someone with very little scheduling knowledge to jump into creating and uploading test jobs
and learn on the fly.
Disclaimer: When in doubt read the manual. BMC provides very easy to read manuals (compared to other
applications) they are full of details and tidbits you just wont find anywhere else. I would have to say Control-M is
very user intuitive and you can use the manuals as a great reference for any issues that arise.
What is covered?
How Control-M works
Parts of Control-M
How to create a job
How to upload a table
How Control-M works:
A basic overview of Control-M requires you to only know 3 parts. The Control-M Data Center, The Agent, and
Your server.
Basically the Data Center is the Servers that Control-M itself resides on. There are several parts to these servers but
it is not necessary for you to know this. Just understand the data center is where your jobs are contained.
The Agent is a Control-M component that resides on your server. (there is agent less ability in Control-M 7+) The
agent gives you many of the features Control-M offers and acts as a translator between the Data Center and your
server.
Your Server is where all the actual processing is done. Your scripts reside there that Control-M will trigger and
monitor, or it is where commands are issue to from Control-M.
Aging this is a very basic understanding of the way control-M works. There are several Servers combined housing
various parts of Control-M its database and attached storage.
Parts of Control-M.
By parts I am referring to the interfaces you will use, GUI's or applications. Average users will use only two of
these, Desktop and Enterprise Manager. There are however other interfaces like Configuration manager, Reporting
facility and BIM. For the purpose of this we will cover Desktop and Enterprise Manager (EM).
Desktop
Desktop is used to create Tables and jobs. You will do all of you actual manipulation of the jobs in Desktop. If you
were building a chair it would be the workshop you would cut and assemble the pieces.
Enterprise Manager (EM)
EM is where you follow your job and manipulate it daily. It is where if a job was scheduled to run and you wanted
to hold it you would do so. If you wanted to see why the job hasn't run yet, Delete the job, rerun it etcetera you
would do this all in EM. With our chair example this is the house you would sit in it at.
How to create a job.
Now lets get to the best part creating the job. There are several Job types, we are going to cover the following types;
Job Type OS : Command, Job & Dummy. We will assume that most jobs are on a Linux platform but will also
include a windows job as an example.
We will go Tab by Tab in the job creation starting from the General Tab. Also here is a test Draft(Draft to be linked
soon) ,the one used in the examples below. Right click on the link and do a Save Target as otherwise it will open as
xml in your browser. Follow the steps below and\or use the sample as well.
1. Open Control-M Desktop
Sign in using your Control-M ID and password.
3. (Shortcut Step) Click on Edit| New| Job - This is going to create a new job into a blank table. It is a shortcut step
because you are not creating a table first. The average group (in CompanyXYZ) does not use Smart tables so if you
do refer to the manual. This will create a basic job and give you an error stating that No Control-M has been defined.
Just acknowledge the error.
4. Create your Job - The most important items to start out with are Control-M, Parent Table, Application, Group.
These tend to remain the same throughout all of your jobs and are the strictest when it comes to following standards.
Refer to the screenshot for our test Jobs information.
This section will allow you to pick the days and times a job is allowed or wanted to run. In Control-M job
only come in when they are scheduled or demanded to run by another job. Here you will define when they
can run as long as all other requirements on the job are satisfied. We will cover only the following field
here:
Month Days
Week Days
Months
Month Days - These are the actual days you want the job to run. Highlight every day the job will run. If
you want it to run with additional restrictions for example you want the job to run 5 days before the last
day of the month you will use the Rules Box in the Days: section.
Week Days - These are set up exactly the same as Month days except use the Days of the week. Using
the And\Or option between the two fields will allow you to select if you want it to run on the 5 only if its a
Wednesday or always on Wednesday's. There is also a Rules box for specific Day of the week rules you
may need. Example: Need a job to run the First Tuesday of the month.
Moths - Like above can be used in combination with Days and Weeks information or on its own. Example
- Allow jobs to run All months or on January March and April.
Image below - Show's jobs running on the 1,7,9,13,17,19,25,29 all months and ignores the Week Days.
Image below - Shows the schedule as 8 days from the last day of the month and any Sunday or
Saturday, but only in the months Jan, Mar, Jun, Aug, Oct and Dec. So this job would run only once if the
8th day from the last day was a Sunday or a Saturday but if it was not it would also run regardless of the
day.
Note: For any calendar information see the Manual. Smart Tables also operate differently. Please refer to
the manual.
7. Execution Tab - Define where and how the job should run on dates scheduled
Now if you wanted 002 to run if 007 finished NOTOK or OK but only after 007 completed then
you would set it up like this.
(Be sure to set a NOTOK step condition like we did in 001)