Control M大全集


Control-M使用手冊
1體系結構
1.1架構說明

CONTROL-M生產管理建立在一個三層結構基礎上,它包括CONTROL-M/Enterprise Manager,CONTROL-M/Server和CONTROL-M/Agents三個組件。
CONTROL-M/Enterprise Manager(以下簡稱:CONTROL-M /EM)提供一個統一的,適用於所有平台的GUI界面。它擁有自己的獨立的數據庫,通過Gateway與Control-M/Server進行連接,管理與控制所有的Control-M/Server與Control-M/Agent。
Control-M的服務器(Server)Control-M 處理的核心,它是調度作業、管理作業處理流程、提供作業流狀態信息的引擎。保存所有作業的定義及其調度規則。同一架構體系中Control-M/Server可以有多個(青島銀行目前只有一個)。
Control-M/Agent負責在應用服務器上執行具體的作業,如批量調度,文件傳輸等等。Control-M/Agent可安裝在各種操作系統上,並提供如AFT(文件傳輸),DATABASES(數據庫存儲過程),SAP(SAP軟件相關)等功能模塊方便不同的應用進行作業執行。

注:另外在CONTROL-M/Server和CONTROL-M/EM Server支持高可用,保障整個系統的不受故障影響。

作業生命周期:
1.作業在Control-M/EM提供的GUI界面中進行定義。
2.作業提交到Control-M/Server進行調度。
3.Control-M/Server將作業提交到所需執行的Control-M/Agent進行執行。
4.Control-M/Agent將作業執行信息返回到Control-M/Server。
5.Control-M/Server將作業信息同步到Control-M/EM供GUI界面進行展示。

青島銀行架構:

青島銀行采用Control-M提供的DB-MIRROR進行災備管理。
DB-MIRROR:通過Control-M的自身的數據庫實時同步對作業調度信息進行實時備份。
1.2Control-M/EM

Client components(EM客戶端組件)(3個GUI):

Configuration Manager
用於管理EM Server的相關組件以及Control-M/Server和Control-M/Agent。
Desktop
定制作業,也可以視為編輯作業。
Enterprise Manager
監控運行環境,必要時也可以介入(比如【hold】、【rerun】)。其實就是連接到EM上,看到的是Control-M Server上的Job(只有order或upload后的job才能傳到Control-M Server上,不然也就保存在EM Server上)

Server components(EM Server組件):
Gateway
處理EM Server與Control-M Server的通信。因為1個EM要對應多個Control-M Server,所以通過Gateway來處理EM具體和哪個Control-M Server通信。Gateway只負責管理誰和誰通信,具體的通信是由CMS來處理。
Configuration Management Server(CMS)
與Control-M Server的Configuration Agent通信,通過它來處理管理員發布的請求。
Global Alerts Server(GAS)
管理報警信息給所有的EM GUI。
Global Conditions Server(GCS)
發布全局條件給不同的Control-M/Server。
Batch Impact Manager(BIM)
進行關鍵作業進行提前告警。
Forecast Server
幫助查看未來某一天所需執行的作業。
Naming Service
用於提供EM Server對外的服務接口。
Configuration Agent
用於與Control-M/Server進行通信,下發作業調度指令。
1.3Control-M/Server 和 Control-M/Agent

Control-M/Server
Control-M/Server通過Gateway與Control-M/EM進行通信,通過Configuration Manager Server與EM進行指令交互。Control-M/Server擁有獨立的數據庫,通過server-to-agent與agent-to-server端口與執行作業的Control-M/Agent進行通信。
Control-M/Agent
如之前所說,Control-M/Agent用於執行作業與收集作業執行情況,並可以在Control-M/Agent上安裝如AFT,Databases等功能模塊(CM)。
Remote Host
Remote Host為Control-M/Agent的一種遠程發送指令形式。即通過某一個Control-M/Agent向另一台未安裝Control-M/Agent的應用服務器去下發作業。由於受網絡以及用戶的限制以及Remote Host無法加載功能模塊,所以使用起來相對沒有Control-M/Agent便捷。
注:如果所需調度的作業為IBM的大機,則需要在大機上單獨安裝大機版Control-M/Server進行作業調度
1.4關鍵詞
1.4.1Database,Definition file,Active Jobs file(AJF)
Control-M/EM和Control-M/Server都含有一個數據庫,主要包含兩部分信息:
Definition file 和 Active Jobs file(AJF),其中

Control-M/EM中:
	Definition file包含所有被定義的作業信息。
AJF中包含所有正在調度的作業信息(包括執行情況),Control-M/Server會實時將AJF中的作業調度信息同步給Control-M/EM的AJF,供客戶端能實時查看。

Control-M/Server中:
Definition file包含所有提交等待調度的作業信息。
AJF中包含所有正在調度的作業信息(包括執行情況),即EM客戶端組件Enterprise Manager所查看到的信息

總結,Control-M/Server中Definition file可以認為是所有需要被處理的作業的倉庫,AJF就是從這個倉庫中取出的馬上要處理的作業。

1.4.2Schedule,order,force

Schedule為作業的調度日期。可理解為作業允許被調度的日期,可在作業配置的Scheduling頁進行配置,如下如:

Job被調度,即Job被放置在Control-M/Server的AJF中,分為自動和手動2種方式:
自動調度,每天CONTROL-M會通過NEWDAY形式自動掃描符合調度日期(Schedule)的作業,將作業自動調度。
手動調度,主要是通過【order】和【force】操作。
【order】方式必須符合調度日期(Schedule)
【force】方式就不管作業的調度日期(Schedule)是否符合

注:作業調度與作業運行是兩個概念。作業被調度,並需要滿足前置條件與執行時間的情況下才會運行。

1.4.3Write,upload,load and download

Write/Load:
Write為將作業從本地客戶端保存至Control-M/EM的Definition File中。可理解為僅僅將作業進行保存。Load則相反,從Control-M/EM的Definition File中將作業讀取到本地。
Upload/Download:
upload為將作業從Control-M/EM的Definition File上傳到Control-M/Server的Definition File中。只有將作業上傳,Control-M才能通過order或NewDay方式寫入到Control-M/Server的AJF中進行調度。DownLoad則相反。

注意:我們在新建一個job后,如果想直接upload操作,系統會返回錯誤。必須先write到EM Server上,然后在upload操作。

1.4.4New Day procedure,User Daily jobs
每個Control-M/Server上會在每天的某一時刻運行一個處理過程,這個時刻就被稱為New Day。主要的工作是,刪除前一天的所有job,然后增加新的job到AJF中。
具體操作實現可查看2.2.7。

說明:在銀行系統中,工作日和實際日是不一定一致的.例如,如果每天晚上的批處理要在第二天的凌晨4點才能做完,那么就可以指定銀行系統工作日的變更時間為凌晨四點,而不是自然日的凌晨0點.
AJF的New Day運行時間就是這樣一個切換時間,即工作日切換時間.
工作日和實際日期的不同,是為了滿足業務系統核算的要求.

2操作
2.1啟停各組件
2.1.1Control-M/EM
1.使用emuser用戶執行root_menu命令,並輸入用戶名密碼進行登錄。

2.選擇1 - Activation Menu,其中2 - Start All為啟動 7- Stop All為停止

3.可通過選項1 – Check All進行狀態驗證與查看。

2.1.2Control-M/Server
1.使用emuser用戶執行ctm_menu命令。

2.選擇1 - CONTROL-M Manager,其中2 - Start All為啟動 5- Stop All為停止。

3.可通過選項1 – Check All進行狀態驗證與查看。

2.1.3Control-M/Agent
1.使用root用戶,在/home/ctmAgent/ctm/scripts目錄下

2.執行./start-ag為啟動Control-M/Agent,執行./shut-ag為停止Control-M/Agent

3.可執行ps –ef|grep p_ctm命令對Control-M/Agent進程進行查看驗證,啟動情況下有以下兩進程
root 14614668 1 0 17:42:26 pts/1 0:00 ./ctmAgent/ctm/exe/p_ctmat
root 35586086 1 0 17:42:25 pts/1 0:00 ./ctmAgent/ctm/exe/p_ctmag

2.2作業管理(Desktop)
2.2.1Login(登錄)
登錄前准備:
在C:\Windows\System32\drivers\etc\hosts中配置所連接的Control-M服務器的IP與主機名映射

1.打開Control-M Desktop 7.0.00,在Advanced中的填寫主機名與端口號(默認13075),點擊apply,輸入用戶密碼進行登錄。

2.2.2Load(將作業從Control-M/EM展示到客戶端)
1.點擊File => Load job form CONTROL-M/EM

2.選擇所需修改或查看的作業表,點擊Load

2.2.3Write(客戶端界面上的作業保存到Control-M/EM)
1.點擊菜單欄File => Write to CONTROL-M/EM

2.選擇所要保存的作業表,點擊write(右下角)

2.2.4Upload與Download(向CTM/Server提交與下載作業)
Upload為:將作業從Control-M/EM的Definition file上傳到Control-M/Server的Definition file,DownLoad則相反

點擊菜單欄tools => Table Manager,選中一張作業表,在菜單欄上可進行upload與download操作。


另外upload也可在作業界面上通過右鍵作業表進行操作

2.2.5Order(將作業進行手動調度)
1.對單個作業進行order,可選中單個作業,右鍵點擊order Job

Upload Table before ordering:調度作業前先進行upload操作
Force:忽略調度日期,強制執行作業
Order/Force with Hold:強制調度作業並且將作業初始為hold狀態

2.Order一個作業表
點擊菜單欄tools => Table Manager,選中一張作業表,在菜單欄上點擊order

2.2.6DELETE(刪除作業)
點擊菜單欄tools => Table Manager,選中一張作業表,在菜單欄上點擊delete
Delete(Remote + Local):同時刪除Control-M/EM與Control/Server中的該作業表
Force Delete(Remote + Local):強制刪除
Local Delete:只刪除Control-M/EM中的該作業表,如果該已設置成每日調度作業表,則調度仍然會正常執行
Remote Delete:刪除Control-M/Server中的該作業表,在Control-M/EM中仍會保存。

2.2.7設置作業表為每日NEWDAY自動加載
1.點擊菜單欄tools => Table Manager,選中一張作業表,在菜單欄上點擊Table Details

2.在User Daily欄中設置SYSTEM(大寫)並保存

3.保存后一定要將該作業表進行upload操作,將User Daily信息上傳到Control-M/Server
4.通過終端,以ctmuser登錄CTM服務器。執行ctmpsm 71 schedule table檢驗已成功設置。確認作業表的Daily Name為“SYSTEM”,如下圖所示。

2.2.8Save,Open(將作業保存為本地文件與讀取作業文件)
1.點擊File => Save將當前界面上的作業保存為本地文件,Open則為打開本地作業文件。

2.2.9Find Jobs(查詢作業)
1.點擊菜單欄Edit => Find Jobs,可對當前界面上的作業進行搜索。

2.填寫過濾條件,可使用通配符,點擊Find Next進行搜索。

2.2.10Find and Update(作業批量修改)
1.點擊菜單欄Edit => Find and Update,可對當前界面上的作業進行搜索。

2.上邊Find為搜索所要修改的作業條件設置,點擊右邊Find可查出所有作業列表。
3.中間Update為填寫需要批量修改的內容,點擊右側update進行修改。
4.下圖修改內容為:修改當前界面上所有作業的Max Wait參數為1.

2.2.11Job Template(作業模板)
1.點擊菜單欄Tools => Template Manager,可對當前界面上的作業進行搜索

2.點擊Add Job Template進行模板設置

3.在作業定義時可以選擇模板,也可將目前作業設置成模板。

2.2.12Authorization(用戶權限設置)
1.點擊菜單欄Tools => Authorizations,進行用戶權限設置

2.權限分為用戶與組,如果改用戶屬於該組,那該組的所有權限該用戶都將默認擁有

3.權限配置:
General:用戶基本信息及密碼設置

Member Of:用戶所屬組

Active:用戶在監控視圖中Control-M Enterprise Manager 7.0.00 (Default)所能查 看的作業與執行的權限

Privileges:用戶對各組件的操作權限

Tables:用戶對作業表的操作權限

Prerequstite Conditions:用戶對Condition條件的操作權限

Owmer:允許調度的作業定義用戶

Control Resources:用戶對控制資源設置的權限
Quantitave Resources:用戶對定量資源設置的權限
Gblbal Condition:用戶對全局變量設置的權限
Calenders:用戶對日歷表的設置權限

2.2.13Load Forecast(查看未來某一天將調度的作業)
1.點擊菜單欄File => Load Forecast,可對當前界面上的作業進行搜索。

2.選擇調度日期,點擊Load進行打開。

3.展示結果。

2.3普通類型作業定制
2.3.1General
Control-M:作業所屬的Control-M/Server名
Job Type:作業類型,例如:OS(普通作業),AFT(文件傳輸),FileWatch(文件監測)Databases(數據庫存儲過程)
Job Name:作業名(系統名_操作簡稱)
Task Type:Job - 后台運行的腳本等等。
Detached - 運行可執行的文件。
Command - 執行操作系統命令。
Dummy - 不負責job和系統命令的執行,而是指示control-M執行后續動作,如增加輸出條件等。
File Name:文件名(腳本程序名)
File Path:路徑
Command:命令(也可用於全路徑執行腳本)
Description:作業描述(可使用中文)
Parent Table,Application,Group:三層分類分組。Parent Table就是該作業的Table名
Owner:腳本或命令執行用戶
Author:作業的制定人(用於描述)

2.3.2Scheduling
作業允許調度日期,如允許每天調度,則選擇所有的Month Days與Months即可

2.3.3Execution
Node ID/Group:填寫該作業所需運行CTM/Agent的名字(該名字可在CCM中查看)
Wait for confirmation:作業運行時是否需要進行手動確認(測試時可進行勾選)
Priorit:作業搶占系統資源優先級(0<9<a<z<A<Z<AA)
Critical:作業搶占系統資源最高級
Submit:作業允許調度的時間范圍。
例如:
19:00 to _____ 表示作業19點之后到第二天NEWDAY之前該作業滿足前置condition的情況下運行。
1900 to 2100 表示作業19點之后到21點時間段范圍內如果前置條件滿足則進行調度,如果前置條件在21點之后到達,則該作業不運行。
Cyclic:作業循環,點擊Set后可以進行循環運行的設置。
Maximum:作業最多運行次數
MaxWait:作業運行出錯或未運行在AJF(監控界面)中保存的的天數。(建議上線時設置為1)

2.3.4Conditions
In Condition:作業運行所需的前置條件。
Out Condition:該作業執行完成生成的條件。(建議格式為:JobName-ENDED-OK)

Condition設置可以為一對一,一對多和多對一。

2.3.5Resources
1.Quantitative Resources 數量資源,可控制作業並發數
需要在Control-M Enterprise Manager 7.0.00 (Default)中 Tools => Quantitative Resources中設置資源名與數量

作業配置時可配置該作業使用該資源的份額。

2.Control Resources 控制資源,類似文件、數據庫,將其設置為共享或者獨享形式。控制資源則用於控制不同的作業對系統共享資源的使用.假設一個作業A在寫一個文件時,另外兩個需要從此文件中讀數據的的作業B,C不能啟動,於是你可以為此文件定義一個控制資源,作業A定義此資源為排它性資源(exclusive),作業B,C中定義此資源為共享資源,這樣,當作業調度執行時,如果A在執行,則B, C不能被調度執行,同一時間只能有一個作業占有該資源。

2.3.6Set
1.設置變量,供作業定義或作業執行的腳本中使用。
常用:%%$CALCDATE %%DATE-1
代表作業運行時當前系統日期的前一天,格式為YYYYMMDD
%%CALCDATE %%ODATE-1
代表作業運行時當前系統日期的前一天,格式為YYMMDD
%%$ODATE
代表作業的調度日期,格式為YYYYMMDD
%%ODATE
代表作業的調度日期,格式為YYMMDD
在作業定義時,如命令行中可用%%PARM形式使用。在執行的腳本中也可通過$PARM進行讀取。

2.3.7Steps
用於作業的異常邏輯處理
例如 ON Statement Statement=* Code=COMPSTAT=1
DO OK
以上代表當作業返回碼是1的情況下 作業標識為成功
ON Statement Statement=* Code=NOTOK
DO Force-Job Table=XXXX JobName=XXX Date=ODAT
以上代表作業執行出錯的情況下強制執行Force-Job所配置的作業
DO操作中說明: OK 作業執行成功
NOTOK 作業執行失敗
Rerun 作業重跑
Stop Cyclic 停止循環
Set-Var 設置變量
Shout 告警
Force-Job 強制執行作業
Sysout 屏幕輸出
Condtiion 對Condition進行添加或刪除
Mail 發送郵件
Remedy Remedy軟件相關

2.3.8PostProc
作業處理結束后來發送告警(在alert告警台生成告警信息)

【PostProc】when中,例如
late sub 9:00 這個作業晚於9:00還未被agent執行,進行告警。
late time 9:00 這個作業完成時間晚於9:00,進行告警。
executing >30 執行時間超過30分鍾,進行告警。

Urgency中選擇告警級別。
在Message中可以設置自定義告警信息。

2.4特殊類型作業的配置
2.4.1AFT(文件傳輸類型作業)
帳號配置:
1.登陸Control-M Configuration Manager,點開Agent on control(control某Control-M/Agent的名字),選擇CM(FILE_TRANS)。

2.右鍵點擊右側CM(FILE-TRANS)行,列出對話框,選擇Account Management,彈出AFT賬戶管理菜單:

3.添加賬戶:點擊左上角“+”號(New Account),輸入一個Account Name,選擇一個EM Users,點擊“Add”將其加到右側欄:

4.設置host1的信息。通訊協議缺省為FTP,可修改為SFTP:(如為Agent本機則直接勾選Local CM)

5.設置host2的信息:

6.點擊“Next”:

7.點擊“Next”,顯示之前的配置信息:

8.點擊“Test”,測試設置是否正確:

9.點擊“Finish”,完成AFT賬號設置。

作業配置:
10.創建一個新的作業,選擇CONTROL-M,選擇Job Type為AFT。點開Execution欄,填寫Node ID:XXX(XXX為賬號所在Control-M/Agent名字)

11.打開FILE_TRANS欄,點擊“Load…”,選擇賬號,點擊“OK”。

12.填寫傳輸的指定路徑和文件,Adcanced中可對傳輸的源文件與目標文件進行特殊處理設置(如傳輸完成后進行權限修改等)。

  1. 其他信息與普通作業一樣,正常填寫。
    2.4.2FileWatch(文件監測作業)
    監測單個文件
    1.將作業Job Type選擇File Watcher,注:owner一定要填寫Control-M/Agent安裝時所創建的用戶(ctmAgent/ctmagent)

2.填寫FileWatch欄:
Path:所檢測文件的絕對路徑;
備注:每層路徑必須是ctmagent用戶有權限訪問的;
Mode:CREATE——檢測文件生成;DELETE——檢測文件刪除(不常用)
Min detected size:文件有效檢測的最小容量,單位字節。通常可設置為0;
Interval between file searches:檢測文件生成的輪詢時間,單位秒;
Interval between filesize comparison iterations:檢測文件容量變化的輪訓時間,單位秒;
Number of iterations:檢測文件容量變化的輪詢次數
Time limit for the process:作業執行時間,單位分;
或設置時間段,如下:
Starting time for detecting files:作業開始時間;
Absolute stop time:作業結束時間;

監測多個文件

1.輪詢多個文件需要使用底層utility來實現,配置作業為普通類型,執行命令ctmfw –input 配置文件(全路徑)
該配置文件需放置在所需輪詢文件的應用服務器上

2.配置文件編寫如下:
INTERVAL:輪詢間隔時間設置
MIN_SIZE:文件監測最小SIZE
MIN_DETECT:輪詢到文件后文件大小比較次數
WAIT_TIME:最長監測時間(分鍾),超過該事件,如有文件未監測到則作業報錯。

2.4.3DataBase存儲過程
數據庫存儲過程帳號配置:
1.需要首先在需要調用存儲過程的Control-M/Agent上安裝存儲過程插件。然后選擇帳號管理

2.選擇數據庫類型與版本:

3.填寫相關數據庫連接信息:

4.設置相關連接參數:

數據庫存儲過程作業配置:
5.創建一個新的作業,選擇CONTROL-M,選擇Job Type為Databases。點開Execution欄,填寫Node ID:例如PAM_81_50(PAM_81_50為賬號所在Control-M/Agent名字)

6.打開Databases欄,點擊“Load…”,選擇賬號,點擊“OK”。

7.填寫或選擇存儲過程的SCHEMA與NAME:

8.其他作業參數正常配置
2.4.4AS400類型作業
1.選擇Job Type為OS/400 Program或OS/400 Full。
2.詳細配置可請OS400工程師參與進行作業配置。
3.其他頁配置與普通作業相同。

2.5監控管理(Enterprise Manager)
2.5.1查看當天作業(AJF)
1.菜單欄File ==> Open ViewPoint ==> 選擇All Active Job(當前正在調度的作業)

2.點擊OK后如下顯示:

2.5.2查看歷史作業運行情況

  1. 菜單欄File ==> Open Archived ViewPoint ==> 選擇All Active Job

2.選擇所需查看的日期

3.作業展示

2.5.3統一監控控制台

  1. 工具欄點擊alerts(紅色感嘆號)。

2.點擊connect。

3.監控台中可以對報錯作業的時間,作業名,以及自定義報錯信息和作業的其他相關信息等(值班人員通過查看監控台即可進行作業監控)。
PS:信息列的排列順序可通過拖拽進行調整。

4.右鍵單條報錯信息,可點擊Find Job直接查詢到報錯作業,可點擊Handle對已處理的報錯進行標識。
2.5.4作業操作

  1. 作業呈現不同顏色代表如下情況:

灰色 等待執行(運行時間未到或前置條件未生成,可通過右鍵=>why查看詳細信息)
粉紅色 需要人工確認才能執行的作業
黃色 正在執行
綠色 作業執行成功
紅色 作業執行出錯
藍色 等待資源或該作業所需CTM/Agent不可用
2.右鍵相關作業操作功能如下:
properties 查看作業配置信息
hold 鎖定當前作業(暫停)
free 釋放當前作業(與hold相反)
confirm 作業確認,只有作業為等待確認(粉紅色)才能點擊
rerun 作業重跑,只有作業為出錯(紅色)時才能點擊
delete/undelete 刪除/恢復作業,將作業從當前作業調度視圖中刪除
kill 強行中止正在執行的作業,只有作業正在執行(黃色)時並且需要先hold才能中止進程
Force OK 強制將作業設置成運行成功(作業不會執行)
Bypass=>run now 忽略任何時間與條件限制,立即執行該作業
Sysout… 查看當前作業的屏幕輸出
Statistics 查看當前作業歷史運行記錄
View JCL/Scripts 查看當前作業腳本,只有配置為job類型的shell腳本作業才能查看
Why 查看當前作業未能運行的理由,只有未執行(灰色)作業才能點擊
Neighbourhood 查詢當前作業相鄰近的作業
2.5.5Condition管理
1.工具欄點擊Tools => Prerequisite Condition

2.Condition條件與日期相綁定,正常生產環境中同一Condition每天生成一次,不會相互沖突。測試環境中如需要將一個批量流程重復跑多次,則需要每次將相應的Condition進行刪除,否則作業將會不安Condition邏輯同時執行。
3.在Condition管理器中可以對Condition進行搜索,添加與刪除動作。

2.5.6Resource管理
1.工具欄點擊Tools => Quantitative Resources

  1. 在資源管理器中可對資源進行定義,用於作業定義時的資源使用(控制並發)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM