

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

# 透過 Session Manager 將 SSH 或 RDP 轉換為截止日期的雲端工作者
<a name="examples-jb-ssh-to-worker"></a>

[ssh\_to\_smf](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/job_bundles/ssh_to_smf) (Linux) 和 [ssh\_to\_smf\_windows](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/job_bundles/ssh_to_smf_windows) (Windows) 任務套件會將無效雲端工作者註冊為 SSM 混合受管節點，以便在任務期間透過 Session Manager 啟用 SSH、RDP 或 PowerShell 存取。使用這些套件以互動方式偵錯任務，或轉送在工作者上執行之 Web UIs 和 Jupyter 筆記本的連接埠。

任務遵循以下順序：

1. 提交指令碼會透過呼叫 來建立一次性 SSM 混合啟用`aws ssm create-activation`。

1. Deadline Cloud 任務會在工作者上執行、將工作者註冊為受管節點，並將`mi-*`受管節點 ID 列印至任務日誌。

1. 您可以使用 連線`aws ssm start-session --target mi-{{XXXXXXXXX}}`。

1. 在設定的工作階段持續時間之後，任務會取消註冊節點並清除。

**為每個帳戶和區域設定一次 SSH 存取**

1. 建立名為 的 IAM 角色`SSMServiceRole`，並附加 SSM 服務委託人信任和 `AmazonSSMManagedInstanceCore`受管政策。

1. 啟用 advanced-instances 方案：

   ```
   aws ssm update-service-setting \
     --setting-id "arn:aws:ssm:{{region}}:{{account-id}}:servicesetting/ssm/managed-instance/activation-tier" \
     --setting-value "advanced" \
     --region {{region}}
   ```

1. Linux 變體需要 [sudo\_for\_job\_user](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/host_configuration_scripts/sudo_for_job_user) 主機組態指令碼。Windows 變體需要套件的 `setup/host_config.ps1`做為機群主機組態指令碼。

**重要**  
Windows 變體提供 RDP 使用者本機管理員存取權，並`job-user`新增至 `Administrators`。僅將此組態用於除錯。偵錯完成後關閉機群中的所有工作者。

提交任務：

```
# Linux: 60-minute session
./submit.sh

# Linux: 120-minute session
./submit.sh 120

# Windows: 60-minute session
./submit.sh farm-{{XXX}} queue-{{XXX}}
```

任務執行後，請在任務日誌中找到受管節點 ID 並連線：

```
aws ssm start-session --target mi-{{XXXXXXXXX}} --region {{region}}
```