

# Amazon ECS 托管实例的 Amazon ECS 任务定义差异
<a name="managed-instances-tasks-services"></a>

要使用 Amazon ECS 托管实例，您必须将任务定义配置为使用 Amazon ECS 托管实例启动类型。使用 Amazon ECS 托管实例还需注意其他事项。

## 任务定义参数
<a name="managed-instances-task-parameters"></a>

使用 Amazon ECS 托管实例的任务支持大多数可用的 Amazon ECS 任务定义参数。然而，在与 Amazon ECS 托管实例任务一起使用时，某些参数具有特定行为或限制。

以下任务定义参数在 Amazon ECS 托管实例任务中无效：
+ `disableNetworking`
+ `dnsSearchDomains`
+ `dnsServers`
+ `dockerLabels`
+ `dockerSecurityOptions`
+ `dockerVolumeConfiguration`
+ `ephemeralStorage`
+ `extraHosts`
+ `fsxWindowsFileServerVolumeConfiguration`
+ `hostname`
+ `inferenceAccelerator`
+ `ipcMode`
+ `links`
+ `maxSwap`
+ `proxyConfiguration`
+ `sharedMemorySize`
+ `sourcepath` 卷
+ `swappiness`
+ `tmpfs`

以下任务定义参数在 Amazon ECS 托管实例任务中有效，但应注意以下限制：
+ `networkConfiguration`：Amazon ECS 托管实例任务使用 `awsvpc` 或 `host` 网络模式。
+ `placementConstraints`：支持以下约束属性。
  + `ecs.subnet-id`
  + `ecs.availability-zone`
  + `ecs.instance-type`
  + `ecs.cpu-architecture`
+ `requiresCompatibilities`：必须包含 `MANAGED_INSTANCES`，以确保任务定义与 Amazon ECS 托管实例兼容。
+ `resourceRequirement`：不支持 `InferenceAccelerator`。
+ `operatingSystemFamily`：Amazon ECS 托管实例使用 `LINUX`。
+ `volumes`-当将绑定挂载与 `sourcePath` 搭配使用时，其路径必须指向主机上的可写目录。Amazon ECS 托管实例文件系统的部分内容为只读。可写目录包括 `/var` 和 `/tmp`。有关更多信息，请参阅 [将绑定挂载与 Amazon ECS 结合使用](bind-mounts.md)。

为确保您的任务定义验证能否用于 Amazon ECS 托管实例，可在注册任务定义时指定以下内容：
+ 在 AWS 管理控制台中，为**需要兼容性**字段指定 `MANAGED_INSTANCES`。
+ 在 AWS CLI 中指定 `--requires-compatibilities` 选项。
+ 在 Amazon ECS API 中指定 `requiresCompatibilities` 标记。