在 Windows 服务器上更新 CodeDeploy 代理 - AWS CodeDeploy

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

在 Windows 服务器上更新 CodeDeploy 代理

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

使用设置自动 CodeDeploy代理更新 AWS Systems Manager

要配置 Systems Manager 并启用 CodeDeploy 代理的自动更新,请按照使用安装 CodeDeploy 代理中的说明进行操作 AWS Systems Manager。

手动更新 CodeDeploy 代理

要手动更新 CodeDeploy 代理,可以从 CLI 或使用 Systems Manager 安装最新版本。按照安装 CodeDeploy代理中的说明进行操作。建议您按照卸载 CodeDeploy 代理中的说明卸载该 CodeDeploy代理的旧版本。

(已弃用)使用 Windows 服务器更新程序更新 CodeDeploy 代理

注意

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

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

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

如果要强制更新 CodeDeploy 代理,请按照中的说明进行操作安装适用于 Windows 服务器的 CodeDeploy 代理

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

使用 Windows PowerShell

登录实例,然后在 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

b@@ ucket-nam e 是包含您所在地区的 CodeDeploy 资源包文件的 Amazon S3 存储桶的名称。例如,对于美国东部(俄亥俄州)区域,将 bucket-name 替换为 aws-codedeploy-us-east-2。有关存储桶名称的列表,请参阅各区域的资源工具包存储桶名称

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

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

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

链接是:

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

... 其中 region 是您要更新应用程序的 AWS 区域。

例如:

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

使用 Amazon S3 复制命令

如果实例上安装了,则可以使用 Amazon S3 cp 命令下载 CodeDeploy 代理更新程序,然后手动运行安装程序。 AWS CLI 有关信息,请参阅AWS Command Line Interface 在微软 Windows 上安装

Amazon S3 命令是:

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

... 其中 region 是您要更新应用程序的 AWS 区域。

例如:

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