

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 更新代 CodeDeploy 理
<a name="codedeploy-agent-operations-update"></a>

您可以使用在所有支持的操作系统上配置 CodeDeploy 代理的自动预设更新 AWS Systems Manager。您也可以通过在实例上运行命令来在所有受支持的操作系统上进行强制更新。

**Topics**
+ [在 Amazon Linux 或 RHEL 上更新 CodeDeploy 代理](codedeploy-agent-operations-update-linux.md)
+ [更新 Ubuntu CodeDeploy 服务器上的代理](codedeploy-agent-operations-update-ubuntu.md)
+ [在 Windows 服务器上更新 CodeDeploy 代理](codedeploy-agent-operations-update-windows.md)

# 在 Amazon Linux 或 RHEL 上更新 CodeDeploy 代理
<a name="codedeploy-agent-operations-update-linux"></a>

要使用配置 CodeDeploy 代理的自动预设更新 AWS Systems Manager，请按照[安装 CodeDeploy 代理中的步骤进行](https://docs.aws.amazon.com/codedeploy/latest/userguide/codedeploy-agent-operations-install-ssm.html)操作 AWS Systems Manager。

如果要强制更新 CodeDeploy 代理，请登录实例，然后运行以下命令：

```
sudo /opt/codedeploy-agent/bin/install auto
```

# 更新 Ubuntu CodeDeploy 服务器上的代理
<a name="codedeploy-agent-operations-update-ubuntu"></a>

要使用配置 CodeDeploy 代理的自动预设更新 AWS Systems Manager，请按照[安装 CodeDeploy 代理中的步骤进行](https://docs.aws.amazon.com/codedeploy/latest/userguide/codedeploy-agent-operations-install-ssm.html)操作 AWS Systems Manager。

如果要强制更新 CodeDeploy 代理，请登录实例，然后运行以下命令：

```
sudo /opt/codedeploy-agent/bin/install auto
```

# 在 Windows 服务器上更新 CodeDeploy 代理
<a name="codedeploy-agent-operations-update-windows"></a>

您可以使用启用 CodeDeploy 代理的自动更新 AWS Systems Manager。通过使用 Systems Manager，您可以通过创建与 Systems Manager 状态管理器的关联来为您的 Amazon EC2 或本地实例配置更新计划。您也可以通过卸载当前版本并安装较新的版本来手动更新 CodeDeploy 代理。

**Topics**
+ [使用设置自动 CodeDeploy 代理更新 AWS Systems Manager](#codedeploy-agent-operations-update-windows-ssm)
+ [手动更新 CodeDeploy 代理](#codedeploy-agent-operations-update-windows-manual)
+ [（已弃用）使用 Windows 服务器更新程序更新 CodeDeploy 代理](#codedeploy-agent-operations-update-windows-updater)

## 使用设置自动 CodeDeploy 代理更新 AWS Systems Manager
<a name="codedeploy-agent-operations-update-windows-ssm"></a>

要配置 Systems Manager 并启用 CodeDeploy 代理的自动更新，请按照[使用安装 CodeDeploy 代理中的](https://docs.aws.amazon.com/codedeploy/latest/userguide/codedeploy-agent-operations-install-ssm.html)说明进行操作 AWS Systems Manager。

## 手动更新 CodeDeploy 代理
<a name="codedeploy-agent-operations-update-windows-manual"></a>

要手动更新 CodeDeploy 代理，可以从 CLI 或使用 Systems Manager 安装最新版本。按照[安装 CodeDeploy 代理](https://docs.aws.amazon.com/codedeploy/latest/userguide/codedeploy-agent-operations-install.html)中的说明进行操作。建议您按照卸载 CodeDeploy 代理中的说明卸[载该 CodeDeploy代理的](https://docs.aws.amazon.com/codedeploy/latest/userguide/codedeploy-agent-operations-uninstall.html)旧版本。

## （已弃用）使用 Windows 服务器更新程序更新 CodeDeploy 代理
<a name="codedeploy-agent-operations-update-windows-updater"></a>

**注意**  
Windows Server 的 CodeDeploy 代理更新程序已被弃用，并且不会更新到 1.0.1.1597 之后的任何版本。

要启用 CodeDeploy 代理的自动更新，请在新的或现有实例上安装适用于 Windows Server 的 CodeDeploy 代理更新程序。更新程序定期检查新版本。当检测到新版本时，更新程序将在安装最新版本之前，卸载当前版本的代理（如果已安装）。

如果在更新程序检测到新版本时部署操作已在进行中，则部署操作将会继续完成。如果尝试在更新过程中启动部署操作，则部署操作将失败。

如果要强制更新 CodeDeploy 代理，请按照中的说明进行操作[安装适用于 Windows 服务器的 CodeDeploy 代理](codedeploy-agent-operations-install-windows.md)。

在 Windows 服务器实例上，您可以通过运行 Windows PowerShell 命令、使用直接下载链接或运行 Amazon S3 复制命令来下载和安装 CodeDeploy 代理更新程序。

**Topics**
+ [使用 Windows PowerShell](#codedeploy-agent-operations-update-windows-powershell)
+ [使用直接链接](#codedeploy-agent-operations-update-windows-direct-link)
+ [使用 Amazon S3 复制命令](#codedeploy-agent-operations-update-windows-s3-copy)

### 使用 Windows PowerShell
<a name="codedeploy-agent-operations-update-windows-powershell"></a>

登录实例，然后在 Windows PowerShell 中逐一运行以下命令：

```
Set-ExecutionPolicy RemoteSigned
```

 如果系统提示你更改执行策略，**Y**请选择 Windows PowerShell 要求所有从 Internet 下载的脚本和配置文件都由受信任的发布者签名。

```
Import-Module AWSPowerShell
```

```
New-Item -Path "c:\temp" -ItemType "directory" -Force
```

```
powershell.exe -Command Read-S3Object -BucketName bucket-name -Key latest/codedeploy-agent-updater.msi -File c:\temp\codedeploy-agent-updater.msi
```

```
c:\temp\codedeploy-agent-updater.msi /quiet /l c:\temp\host-agent-updater-log.txt
```

```
powershell.exe -Command Get-Service -Name codedeployagent
```

*bucket-name*是包含您所在地区的 CodeDeploy 资源包文件的 Amazon S3 存储桶的名称。例如，对于美国东部（俄亥俄州）区域，请*bucket-name*替换为`aws-codedeploy-us-east-2`。有关存储桶名称的列表，请参阅[各区域的资源工具包存储桶名称](resource-kit.md#resource-kit-bucket-names)。

如果需要对更新过程错误进行故障排除，请键入以下命令打开 CodeDeploy 代理更新程序日志文件：

```
notepad C:\ProgramData\Amazon\CodeDeployUpdater\log\codedeploy-agent.updater.log
```

### 使用直接链接
<a name="codedeploy-agent-operations-update-windows-direct-link"></a>

如果 Windows Server 实例上的浏览器安全设置提供了所需的权限（例如，向 ` http://s3.*.amazonaws.com `），则可以使用直接链接下载 CodeDeploy 代理更新程序。

链接是：

```
https://s3.region.amazonaws.com/aws-codedeploy-region/latest/codedeploy-agent-updater.msi
```

... 您要更新应用程序的 AWS 区域在哪里。*region*

例如：

```
https://s3.af-south-1.amazonaws.com/aws-codedeploy-af-south-1/latest/codedeploy-agent-updater.msi
```

### 使用 Amazon S3 复制命令
<a name="codedeploy-agent-operations-update-windows-s3-copy"></a>

如果实例上安装了，则可以使用 Amazon S3 [cp](https://docs.aws.amazon.com/cli/latest/reference/s3/cp.html) 命令下载 CodeDeploy 代理更新程序，然后手动运行安装程序。 AWS CLI 有关信息，请参阅[AWS Command Line Interface 在微软 Windows 上安装](https://docs.aws.amazon.com/cli/latest/userguide/awscli-install-windows.html)。

Amazon S3 命令是：

```
aws s3 cp s3://aws-codedeploy-region/latest/codedeploy-agent-updater.msi codedeploy-agent-updater.msi --region region
```

... 您要更新应用程序的 AWS 区域在哪里。*region*

例如：

```
aws s3 cp s3://aws-codedeploy-af-south-1/latest/codedeploy-agent-updater.msi codedeploy-agent-updater.msi --region af-south-1
```