

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

# Systems Manager 代理程式
<a name="systems-manager-agent-component"></a>

Agent AWS Systems Manager 元件 (`aws.greengrass.SystemsManagerAgent`) 會安裝 Systems Manager Agent，因此您可以使用 Systems Manager 管理核心裝置。Systems Manager 是一項 AWS 服務，可讓您用來檢視和控制 上的基礎設施 AWS，包括 Amazon EC2 執行個體、內部部署伺服器和虛擬機器 VMs)，以及邊緣裝置。Systems Manager 可讓您檢視操作資料、自動化操作任務，以及維護安全性和合規性。如需詳細資訊，請參閱*AWS Systems Manager 《 使用者指南*》中的[什麼是 AWS Systems Manager？](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html)以及[關於 Systems Manager 代理](https://docs.aws.amazon.com/systems-manager/latest/userguide/prereqs-ssm-agent.html)程式。

<a name="about-systems-manager-capabilities"></a>Systems Manager 工具和功能稱為*功能*。Greengrass 核心裝置支援所有 Systems Manager 功能。如需這些功能以及如何使用 Systems Manager 管理核心裝置的詳細資訊，請參閱*AWS Systems Manager 《 使用者指南*》中的 [Systems Manager 功能](https://docs.aws.amazon.com/systems-manager/latest/userguide/features.html)。

**Topics**
+ [版本](#systems-manager-agent-component-versions)
+ [類型](#systems-manager-agent-component-type)
+ [作業系統](#systems-manager-agent-component-os-support)
+ [要求](#systems-manager-agent-component-requirements)
+ [相依性](#systems-manager-agent-component-dependencies)
+ [Configuration](#systems-manager-agent-component-configuration)
+ [本機日誌檔案](#systems-manager-agent-component-log-file)
+ [另請參閱](#systems-manager-agent-component-see-also)
+ [變更記錄](#systems-manager-agent-component-changelog)

## 版本
<a name="systems-manager-agent-component-versions"></a>

此元件具有下列版本：
+ 1.3.x
+ 1.2.x
+ 1.1.x
+ 1.0.x

## 類型
<a name="systems-manager-agent-component-type"></a>

<a name="public-component-type-generic"></a>此<a name="public-component-type-generic-phrase"></a>元件是一般元件 (`aws.greengrass.generic`)。[Greengrass 核](greengrass-nucleus-component.md)會執行元件的生命週期指令碼。

<a name="public-component-type-more-information"></a>如需詳細資訊，請參閱[元件類型](develop-greengrass-components.md#component-types)。

## 作業系統
<a name="systems-manager-agent-component-os-support"></a>

此元件只能在 Linux 核心裝置上安裝。

## 要求
<a name="systems-manager-agent-component-requirements"></a>

此元件有下列需求：
+ 在 64 位元 Linux 平台上執行的 Greengrass 核心裝置：Armv8 (AArch64) 或 x86\$164。
+ 您必須擁有 Systems Manager 可以擔任的 AWS Identity and Access Management (IAM) 服務角色。此角色必須包含 [AmazonSSMManagedInstanceCore](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore) 受管政策或定義同等許可的自訂政策。如需詳細資訊，請參閱[《 使用者指南》中的為邊緣裝置建立 IAM 服務角色](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-setting-up-edge-devices.html#systems-manager-setting-up-edge-devices-service-role)。 *AWS Systems Manager *

  部署此元件時，您必須指定此角色的`SSMRegistrationRole`組態參數名稱。
+ [Greengrass 裝置角色](device-service-role.md)必須允許 `ssm:AddTagsToResource`和 `ssm:RegisterManagedInstance`動作。裝置角色也必須允許符合先前需求的 IAM 服務角色的 `iam:PassRole`動作。下列範例 IAM 政策會授予這些許可。

  ```
  {
    "Version": "2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "iam:PassRole"
        ],
        "Effect": "Allow",
        "Resource": [
          "arn:aws:iam::account-id:role/SSMServiceRole"
        ]
      },
      {
        "Action": [
          "ssm:AddTagsToResource",
          "ssm:RegisterManagedInstance"
        ],
        "Effect": "Allow",
        "Resource": "*"
      }
    ]
  }
  ```

### 端點和連接埠
<a name="systems-manager-agent-component-endpoints"></a>

除了基本操作所需的端點和連接埠之外，此元件還必須能夠對下列端點和連接埠執行傳出請求。如需詳細資訊，請參閱[允許透過代理或防火牆的裝置流量](allow-device-traffic.md)。


| Endpoint | 連線埠 | 必要 | 說明 | 
| --- | --- | --- | --- | 
|  `ec2messages.region.amazonaws.com`  | 443 | 是 |  在 中與 Systems Manager 服務通訊 AWS 雲端。  | 
|  `ssm.region.amazonaws.com`  | 443 | 是 |  將核心裝置註冊為 Systems Manager 受管節點。  | 
|  `ssmmessages.region.amazonaws.com`  | 443 | 是 |  在 中與 Systems Manager 的功能 Session Manager 通訊 AWS 雲端。  | 

如需詳細資訊，請參閱*AWS Systems Manager 《 使用者指南*》中的[參考：ec2messages、ssmmessages 和其他 API 呼叫](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-setting-up-messageAPIs.html)。

## 相依性
<a name="systems-manager-agent-component-dependencies"></a>

當您部署元件時， AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求，才能成功部署元件。本節列出此元件[發行版本的](#systems-manager-agent-component-changelog)相依性，以及為每個相依性定義元件版本的語意版本限制。您也可以在 [AWS IoT Greengrass 主控台](https://console.aws.amazon.com//greengrass)中檢視每個版本元件的相依性。在元件詳細資訊頁面上，尋找**相依性**清單。

下表列出此元件 1.0.0 到 1.3.0 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [權杖交換服務](token-exchange-service-component.md) |  >=2.0.0 <3.0.0 | 硬式 | 

如需元件相依性的詳細資訊，請參閱[元件配方參考](component-recipe-reference.md#recipe-reference-component-dependencies)。

## Configuration
<a name="systems-manager-agent-component-configuration"></a>

此元件提供下列組態參數，您可以在部署元件時自訂這些參數。

`SSMRegistrationRole`  
Systems Manager 可擔任的 IAM 服務角色，其中包含 [AmazonSSMManagedInstanceCore](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore) 受管政策或定義同等許可的自訂政策。如需詳細資訊，請參閱[《 使用者指南》中的為邊緣裝置建立 IAM 服務角色](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-setting-up-edge-devices-service-role.html)。 *AWS Systems Manager *

`SSMOverrideExistingRegistration`  
（選用） 如果核心裝置已執行以混合啟用註冊的 Systems Manager Agent，您可以覆寫裝置現有的 Systems Manager Agent 註冊。將此選項設定為 `true`，以使用此元件提供的 Systems Manager Agent 將核心裝置註冊為受管節點。  
此選項僅適用於使用混合啟用註冊的裝置。如果核心裝置在已安裝 Systems Manager Agent 且已設定執行個體描述檔角色的 Amazon EC2 執行個體上執行，Amazon EC2 執行個體的現有受管節點 ID 會以 開頭`i-`。安裝 Systems Manager 代理程式元件時，Systems Manager 代理程式會註冊新的受管節點，其 ID 開頭為 `mi-`，而不是 `i-`。然後，您可以使用 ID 開頭為 的受管節點`mi-`，透過 Systems Manager 管理核心裝置。
預設：`false`

`SSMResourceTags`  
（選用） 要新增至 Systems Manager 受管節點的標籤，此元件會為核心裝置建立。您可以使用這些標籤，透過 Systems Manager 管理核心裝置的群組。例如，您可以在具有您指定之標籤的所有裝置上執行命令。  
指定清單，其中每個標籤都是具有 `Key`和 的物件`Value`。例如， 的下列值會`SSMResourceTags`指示此元件在核心裝置的受管節點**richard-roe**上將**Owner**標籤設定為 。  

```
[
  {
    "Key": "Owner",
    "Value": "richard-roe"
  }
]
```
如果受管節點已存在且 `SSMOverrideExistingRegistration`為 ，此元件會忽略這些標籤`false`。

**Example 範例：組態合併更新**  
下列範例組態指定 使用名為 的服務角色`SSMServiceRole`，以允許核心裝置註冊並與 Systems Manager 通訊。  

```
{
  "SSMRegistrationRole": "SSMServiceRole",
  "SSMOverrideExistingRegistration": false,
  "SSMResourceTags": [
    {
      "Key": "Owner",
      "Value": "richard-roe"
    },
    {
      "Key": "Team",
      "Value": "solar"
    }
  ]
}
```

## 本機日誌檔案
<a name="systems-manager-agent-component-log-file"></a>

Systems Manager Agent 軟體會將日誌寫入 Greengrass 根資料夾以外的資料夾。如需詳細資訊，請參閱*AWS Systems Manager 《 使用者指南*》中的[檢視 Systems Manager Agent 日誌](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-agent-logs.html)。

Systems Manager Agent 元件使用 shell 指令碼來安裝、啟動和停止 Systems Manager Agent。您可以在下列日誌檔案中找到這些指令碼的輸出。

```
/greengrass/v2/logs/aws.greengrass.SystemsManagerAgent.log
```

**檢視此元件的日誌**
+ 在核心裝置上執行下列命令，以即時檢視此元件的日誌檔案。`/greengrass/v2` 將 取代為 AWS IoT Greengrass 根資料夾的路徑。

  ```
  sudo tail -f /greengrass/v2/logs/aws.greengrass.SystemsManagerAgent.log
  ```

## 另請參閱
<a name="systems-manager-agent-component-see-also"></a>
+ [使用 管理 Greengrass 核心裝置 AWS Systems Manager](manage-with-systems-manager.md)
+ 《AWS Systems Manager 使用者指南》**中的[什麼是 AWS Systems Manager？](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html)
+ 《 *AWS Systems Manager 使用者指南*》中的[關於 Systems Manager Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/prereqs-ssm-agent.html) 

## 變更記錄
<a name="systems-manager-agent-component-changelog"></a>

下表說明每個版本元件的變更。


|  **版本**  |  **變更**  | 
| --- | --- | 
|  1.3.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/systems-manager-agent-component.html)  | 
|  1.2.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/systems-manager-agent-component.html)  | 
|  1.2.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/systems-manager-agent-component.html)  | 
|  1.1.0  |  此版本包含錯誤修正和改善。  | 
|  1.0.0  |  初始版本。  | 