

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 與 Control-M 的受管 AWS Mainframe Modernization 整合
<a name="aws-mainframe-modernization-managed"></a>

本節說明 Control-M 如何與 整合，並支援在部署 Micro Focus 執行期引擎的受管 AWS Mainframe Modernization 環境中執行的批次任務。如果您要在 Amazon EC2 AWS 上實作具有 Micro Focus 環境的自訂 Replatform，請參閱 [AWS Mainframe Modernization Amazon EC2 上的 與 Control-M 整合](aws-mainframe-modernization-ec2.md)一節。

本節假設下列先決條件：
+ 作用中 AWS 帳戶。
+ 大型主機應用程式會在具有多個定義批次任務的 AWS Replatform with Micro Focus 受管執行期環境中遷移和執行。
+ 在此試行中，會設定 BankDemo 範例應用程式 AWS Mainframe Modernization。如需設定說明，請參閱[教學課程：Micro Focus 的受管執行期](https://docs.aws.amazon.com/m2/latest/userguide/tutorial-runtime.html)。

下列主題說明 Control-M 排程器與不同類型整合工作流程 AWS Mainframe Modernization 的環境之間整合所需的step-by-step設定：
+ [部署 Control-M 資源](deploy-control-m-resources.md)
+ [為 AWS Mainframe Modernization 建立 Control-M 連線設定檔](connection-profile.md)
+ [在 Control-M Planning 中建立作業和排程](jobs-schedules-control-m.md)
+ [監控作業](monitor-jobs.md)

# 部署 Control-M 資源
<a name="deploy-control-m-resources"></a>

整合 AWS Mainframe Modernization 與 Control-M 的前兩個步驟是部署外掛程式和任務類型。

## 部署 AWS Mainframe Modernization Control-M 外掛程式
<a name="deploy-plug-in"></a>

外掛程式為 Control-M 協調的應用程式和服務提供整合和支援。針對 受管 AWS Mainframe Modernization 服務，部署 AWS Mainframe Modernization 外掛程式。

外掛程式部署是不常發生的活動。如果是第一次安裝外掛程式，請遵循 [Control-M 文件](https://docs.bmc.com/docs/ctm_integrations/control-m-for-aws-mainframe-modernization-1244652367.html)中的步驟。如果您有要使用的現有外掛程式，請略過此步驟，並[建立連線設定檔](connection-profile.md)。

## 在 Control-M 應用程式整合器中部署 AWS Mainframe Modernization 任務類型
<a name="deploy-job-type"></a>

作業類型部署通常是一次性活動。如果您已具有要使用的現有作業類型，請略過此步驟，並繼續[建立連線設定檔](connection-profile.md)的下一步。

git 儲存庫中提供了作業類型範例 [AIJOB.ctmai](https://github.com/aws-samples/aws-mainframe-modernization-controlm-integration/blob/main/assets/AIJOB.ctmai)。若要部署任務類型，您必須使用[應用程式整合器](https://documents.bmc.com/supportu/9.0.21/en-US/Documentation/Application_Integrator.htm)執行下列步驟：

1. 複製 [aws-mainframe-modernization-controlm-integration](https://github.com/aws-samples/aws-mainframe-modernization-controlm-integration) GitHub 儲存庫，並將`AIJOB.ctmai`檔案下載到應用程式整合器可存取的檔案系統位置。

1. 登入 Application Integrator。

1. 在**首頁**標籤上，選取**從檔案匯入作業類型**，然後選取 `AIJOB.ctmai` 的位置。

1. 如果您要對提供的範例進行任何修改，請熟悉 Application Integrator。

1. 遵循 [Control-M 文件](https://documents.bmc.com/supportu/9.0.21/en-US/Documentation/Deploying_and_Publishing_a_Plug-in.htm)中的指示部署作業類型。

# 建立 的 Control-M 連線設定檔 AWS Mainframe Modernization
<a name="connection-profile"></a>

連線設定檔定義應用程式特定執行個體的連線屬性和安全憑證。每個連線設定檔都可以被多個作業參考。您可以為應用程式和憑證的每個唯一組合建立不同的設定檔。

若要[定義連線設定檔](https://documents.bmc.com/supportu/9.0.21/en-US/Documentation/Creating_a_centralized_connection_profile.htm)，您可以使用 Control-M Web 介面的**組態**網域中可用的圖形使用者介面 (GUI)，也可以使用 [JSON](https://docs.bmc.com/docs/automation-api/monthly/connection-profiles-1116950312.html)。如需 AWS Mainframe Modernization 外掛程式連線設定檔的相關資訊，請參閱 [Control-M 文件](https://documents.bmc.com/supportu/9.0.21/en-US/Documentation/Mainframe_Modernization_Connection_Profiles.htm#AWSMainframeModernizationConnectionProfileParameters)。

下列程式碼是使用 JSON 的範例：

```
{
  "MANAGED-M2-REPLATFORM": {
    "Type": "ConnectionProfile:AWS Mainframe Modernization",
    "Mainframe Modernization URL": "https://m2.{{AwsRegion}}.amazonaws.com",
    "Connection Timeout": "30",
    "AWS Region": "us-west-2",
    "Authentication": "NoSecret",
    "IAM Role": "--- IAM Role name ---",
    "AWS Logs URL": "https://logs.{{AwsRegion}}.amazonaws.com",
    "Description": "",
    "Centralized": true
  }
}
```

建立類似範例的 JSON 檔案，並使用 [Control-M Automation API 部署服務進行部署](https://docs.bmc.com/docs/automation-api/monthly/deploy-service-1116950327.html)。例如，如果 JSON 程式碼儲存至名為 的檔案`cp-MANAGED-M2-REPLATFORM.json`，則部署此連線設定檔的 `ctm` CLI 語法如下：

```
 ctm deploy cp-MANAGED-M2-REPLATFORM.json
```

Control-M Automation API 的回應類似下列內容：

```
[
  {
    "deploymentFile": "cp-Managed-M2-REPLATFORM.json",
    "deploymentState": "DEPLOYED_CONNECTION_PROFILES",
    "deploymentStatus": "ENDED_OK",
    "successfulFoldersCount": 0,
    "successfulSmartFoldersCount": 0,
    "successfulSubFoldersCount": 0,
    "successfulJobsCount": 0,
    "successfulConnectionProfilesCount": 1,
    "successfulDriversCount": 0,
    "isDeployDescriptorValid": false,
    "deployedConnectionProfiles": [
      "MANAGED-M2-REPLATFORM"
    ]
  }
]
```

# 在 Control-M Planning 中建立作業和排程
<a name="jobs-schedules-control-m"></a>

現在您已部署任務類型和 AWS 連線的連線設定檔，您可以開始建立和執行任務。

每個 AWS Mainframe Modernization 服務任務由一組屬性組成，分為四個部分。每個部分都可以具有許多屬性。下列清單顯示一些較常用的屬性。
+ 一般：
  + 作業名稱
  + 作業所屬的應用程式和子應用程式
  + 要提交的 JCL
  + 文件的連結
+ 排程：
  + 此作業有資格執行的月份和天數
  + 行事曆，例如商業會計期間、假日或其他無法以演算法定義的特殊日期
  + 時段
  + 循環行為
+ 事前準備：
  + 上游相依性 (通常為作業，必須先成功完成此作業才有資格執行)
  + 可能需要的資源
  + 可能需要的使用者動作
+ Control-M 完成作業後執行的動作：
  + 確定任務成功或失敗 （通常根據任務的完成代碼，但您可以覆寫該設定，以使用輸出文字或檢查特定狀態）
  + 失敗或成功的通知，例如電子郵件
  + 下游相依性的發佈狀態

與連線設定檔一樣，您可以[在 GUI 中](https://documents.bmc.com/supportu/9.0.21/en-US/Documentation/Creating_a_Job.htm)或[在 JSON 中](https://docs.bmc.com/docs/automation-api/monthly/code-reference-1116950299.html)建立和部署作業，並使用 Control-M Automation API 進行部署。

下列各節會檢查一些常見的工作流程案例：
+ [根據先前作業的狀態碼啟動作業](status-code.md)
+ [以排定的頻率自動執行作業](scheduled.md)
+ [基本作業根據事件執行](event-based.md)

# 根據先前作業的狀態啟動作業
<a name="status-code"></a>

建立稱為工作流程的作業流程。在成功完成先前作業後，工作流程中的作業與相依性相互關聯。

## 使用 Control-M Web GUI
<a name="using-gui"></a>

若要從 Control-M 使用者介面啟動任務，請執行下列動作：

1. 在**規劃**網域中，新增**工作區**。這將開啟一個具有空資料夾物件的畫布。

1. 選取 AWS Mainframe Modernization 任務類型 （如果您使用提供的任務類型範本，這稱為 [M2JOB](https://github.com/aws-samples/aws-mainframe-modernization-controlm-integration/blob/main/assets/AWS-jobs.json))，並將其拖曳到 資料夾。

1. 在任務類型的顏色變更為綠色後，將其捨棄。右側的窗格包含**一般**、**排程**、**先決條件**和**動作**區段。若要建立任務，請參閱 [Control-M 文件](https://documents.bmc.com/supportu/9.0.21/en-US/Documentation/Creating_a_Job.htm)中的標準說明。

1. 接著，您需要**任務名稱**值來設定任務類型。您可以在 主控台**的應用程式**定義畫面上 AWS Mainframe Modernization 或執行 [ListBatchJobDefinitions API](https://docs.aws.amazon.com/m2/latest/APIReference/API_ListBatchJobDefinitions.html) 來尋找**任務名稱**值。在此試行中，針對數個任務重複步驟 2–4，以您選擇的任何名稱命名每個任務。範例名稱為 `CBANK`、`CURRENCY`、I`NVFUNDS`、`BROKERAGE`、 `RISKMGMT`和 `BANK-SERVICE-Managed-M2`。

1. 若要將這些任務連接到您想要的流程，請選擇任務物件下方的條件三角形，然後將其拖曳至下一個任務。例如，選擇 下方的條件三角形`CBANK`，然後將其拖曳至 `CURRENCY`。此動作會成為 的前`CBANK`身`CURRENCY`。根據預設， `CBANK` 現在必須成功完成，CURRENCY 才有資格執行。

下列螢幕擷取畫面顯示基本任務流程的 Control-M Planning 檢視。



![\[左側的任務流程和右側的屬性。\]](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/control-m-batch-scheduler/images/workflow-control-m-web-1.png)


*影像由 BMC Software, Inc. 提供 ©2022*

## 使用 JSON
<a name="using-json"></a>

相同的流程可以用 JSON 編碼：

```
{
  "Defaults": {
    "Application": "AWSM2",
    "SubApplication": "Replatform-Managed",
    "Job": {
      "Host": "ctm-worker",
      "Output": {}
    }
  },
  "jog-managed-m2": {
    "Type": "Folder",
    "ControlmServer": "psctm",
    "OrderMethod": "Manual",
    "SiteStandard": "_z_DemoBusinessFlows",
    "CBANK": {
      "Type": "Job:AWS Mainframe Modernization",
      "ConnectionProfile": "MANAGED-M2-REPLATFORM",
      "JCL Name": "iefbr14",
      "Retrieve CloudWatch Logs": "checked",
      "Action": "Start Batch Job",
      "Application Version": "1"
    },
    "CURRENCY": {
      "Type": "Job:AWS Mainframe Modernization",
      "ConnectionProfile": "MANAGED-M2-REPLATFORM",
      "JCL Name": "iefbr14",
      "Retrieve CloudWatch Logs": "checked",
      "Action": "Start Batch Job",
      "Application Version": "1"
    },
    "BROKERAGE": {
      "Type": "Job:AWS Mainframe Modernization",
      "ConnectionProfile": "MANAGED-M2-REPLATFORM",
      "JCL Name": "iefbr14",
      "Retrieve CloudWatch Logs": "checked",
      "Action": "Start Batch Job",
      "Application Version": "1"
    },
    "INVFUNDS": {
      "Type": "Job:AWS Mainframe Modernization",
      "ConnectionProfile": "MANAGED-M2-REPLATFORM",
      "JCL Name": "iefbr14",
      "Retrieve CloudWatch Logs": "checked",
      "Action": "Start Batch Job",
      "Application Version": "1"
    },
    "RISKMGMT": {
      "Type": "Job:AWS Mainframe Modernization",
      "ConnectionProfile": "MANAGED-M2-REPLATFORM",
      "JCL Name": "iefbr14",
      "Retrieve CloudWatch Logs": "checked",
      "Action": "Start Batch Job",
      "Application Version": "1"
    },
    "BANK-SERVICE-Managed-M2": {
      "Type": "Job:SLAManagement",
      "ServiceName": "Bank Service - Managed M2",
      "RunAs": "ctmagent",
      "CompleteBy": {
        "Time": "12:00",
        "Days": "0"
      }
    },
    "leftbranch": {
      "Type": "Flow",
      "Sequence": [
        "CURRENCY",
        "RISKMGMT",
        "BANK-SERVICE-Managed-M2"
      ]
    },
    "middlebranch": {
      "Type": "Flow",
      "Sequence": [
        "CBANK",
        "CURRENCY",
        "INVFUNDS",
        "BANK-SERVICE-Managed-M2"
      ]
    },
    "rightbranch": {
      "Type": "Flow",
      "Sequence": [
        "CURRENCY",
        "BROKERAGE",
        "BANK-SERVICE-Managed-M2"
      ]
    }
  }
}
```

若要部署此流程，請使用 部署服務：

```
ctm deploy folder-MANAGED-M2-REPLATFORM.json
```

# 以排定的頻率自動執行作業
<a name="scheduled"></a>

使用您在先前步驟中建立的流程，您可以新增基本和執行期排程。
+ 基本排程定義作業可以執行的天數 (例如，每個工作日、僅在工作日、月底或季末)。
+ 執行時間排程會決定任務何時會在其有資格執行的日期執行 （例如，每小時、指定資源可用後，或僅在手動確認後）。

您可以在**排程**標籤上設定基本和執行期排程。

# 基本作業根據事件執行
<a name="event-based"></a>

Control-M Managed File Transfer (MFT) 是一種 FTP/SFTP 用戶端和伺服器，可用於在本機主機與遠端主機之間監看和傳輸檔案。如需有關定義檔案傳輸作業的詳細資訊，請參閱 [Control-M 文件](https://documents.bmc.com/supportu/9.0.21/en-US/Documentation/File_Transfer_Job.htm)。

此試驗使用檔案傳輸作業來監看名為 `bmc-poc-bucket` 的 S3 儲存貯體的 `/bmcfile` 資料夾中副檔名為 .poc 的檔案的檔案建立事件。在該事件發生時，系統會啟動 Control-M 作業以執行下一個作業。您可以選擇性地傳遞完整路徑，包括儲存貯體名稱。

# 監控作業
<a name="monitor-jobs"></a>

您可以監控和驗證 Control-M Monitoring 網域和 內任務的處理 AWS 管理主控台，確保在這些平台上進行全面的觀察和驗證。

## Control-M 監控
<a name="control-m-monitoring"></a>

您可以在 *Control-M 監控域*中監控作業提交和執行。根據預設， AWS Mainframe Modernization 服務任務將與所有其他 Control-M 工作一起顯示。如果只想查看沒有任何其他工作負載 （或任何其他篩選需求） AWS Mainframe Modernization 的服務任務，您可以建立*檢視點*。

視點不僅顯示作業資訊，還顯示與上游和下游相依性的關係。此外，如果您的工作流程包含 AWS Mainframe Modernization 和其他 Control-M 任務類型，您可以在監控網域中查看和管理整個流程。

若要遵循詳細步驟，請參閱 Control-M 文件中的[監控的檢視點一節](https://documents.bmc.com/supportu/9.0.21/en-US/Documentation/Viewpoints.htm)。

下列螢幕擷取畫面顯示兩個工作流程的輸出。在左側，工作流程會以綠色成功完成所有任務。在右側，工作流程僅部分成功，因為任務`CURRRENCY`傳回**失敗**狀態，以紅色表示。工作流程在那裡停止，將剩餘的任務保留在**等待排程**狀態。



![\[左側的工作流程圖表，右側的任務屬性。\]](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/control-m-batch-scheduler/images/monitor-jobs.png)


*影像由 BMC Software, Inc. 提供 ©2022*

## 在 主控台上監控
<a name="console"></a>

若要檢視任務和登入資訊 AWS，請登入 AWS 管理主控台，然後導覽至 [AWS Mainframe Modernization 主控台](https://console.aws.amazon.com/m2/home?region=us-east-1#/applications)。



![\[AWS Mainframe Modernization 主控台上列出的任務和狀態。\]](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/control-m-batch-scheduler/images/monitor-jobs-aws-management-console.png)


此檢視不包含相依性，也不包含非由 AWS Mainframe Modernization 服務管理的任何工作負載。