

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

# CodeDeploy 代理配置参考
<a name="reference-agent-configuration"></a>

安装 CodeDeploy 代理后，会在实例上放置一个配置文件。此配置文件指定了与实例交互 CodeDeploy 时使用的目录路径和其他设置。可以更改此文件中的某些配置选项。

对于 Amazon Linux、Ubuntu Server 和 Red Hat Enterprise Linux（RHEL）实例，配置文件名为 `codedeployagent.yml`。它放置在 `/etc/codedeploy-agent/conf` 目录中。

对于 Windows Server 实例，配置文件名为 `conf.yml`。它放置在 `C:\ProgramData\Amazon\CodeDeploy` 目录中。

配置设置包括：



|  |  | 
| --- |--- |
| **:log\_aws\_wire:** | 设置`true`为， CodeDeploy 代理可以从 Amazon S3 捕获线路日志，并将它们写入:log\_dir: ** 设置所指向的位置的日志文件中。**<br />对于版本 2.0.x 及更高版本，文件名为`codedeploy-agent.aws_wire.log`（使用 0640 权限创建）。<br />对于 1.8.x 及更早版本，文件名为。`codedeploy-agent.wire.log` 您仅应在捕获线路日志需要的时间内将 **:log\_aws\_wire:** 设置为 `true`。线路日志文件可以快速增长到非常大的大小。线路日志输出可能包含敏感信息，包括将此设置设置为时传入或传出 Amazon S3 的文件的纯文本内容。`true`电汇日志包含有关此设置设置为期间与该 Amazon 账户关联的所有 Amazon S3 活动的信息`true`，而不仅仅是与 CodeDeploy 部署相关的活动的信息。 <br />默认设置为 `false`。<br />此设置适用于所有实例类型。您必须将此配置设置添加到 Windows Server 实例才能使用它。 | 
| **:log\_dir:** | 实例上存储与 CodeDeploy 代理操作相关的日志文件的文件夹。<br />对于 Amazon Linux、Ubuntu Server 和 RHEL 实例，默认设置是 `'/var/log/aws/codedeploy-agent'`，对于 Windows Server 实例，默认设置是 `C:\ProgramData\Amazon\CodeDeploy\log`。 | 
| **:pid\_dir:** | 存储 `codedeploy-agent.pid` 的文件夹。<br />此文件包含 CodeDeploy 代理的进程 ID (PID)。默认设置为 `'/opt/codedeploy-agent/state/.pid'`。<br />此设置仅适用于 Amazon Linux、Ubuntu Server 和 RHEL 实例。 | 
| **:program\_name:** |  CodeDeploy 代理程序名称。<br />默认设置为 `codedeploy-agent`。<br />此设置仅适用于 Amazon Linux、Ubuntu Server 和 RHEL 实例。 | 
| **:root\_dir:** | 实例上用于存储相关修订、部署历史记录和部署脚本的文件夹。<br />对于 Amazon Linux、Ubuntu Server 和 RHEL 实例，默认设置是 `/opt/codedeploy-agent/deployment-root`，对于 Windows Server 实例，默认设置是 `C:\ProgramData\Amazon\CodeDeploy`。 | 
| **:verbose:** | 设置`true`为， CodeDeploy 代理可以在实例上打印调试消息日志文件。<br />默认设置为 `false`。 | 
| **:wait\_between\_runs:** |  CodeDeploy 代理轮询待处理部署之间的间隔，以秒 CodeDeploy 为单位。<br />对于版本 2.0.x 及更高版本，默认设置为。`30`<br />对于 1.8.x 及更早版本，默认设置为。`1` | 
| **:on\_premises\_config\_file:** | 对于本地实例，这是名为 `codedeploy.onpremises.yml`（对于 Ubuntu Server 和 RHEL）或 `conf.onpremises.yml`（对于 Windows Server）的配置文件的备用位置的路径。<br />默认情况下，这些文件存储在 `/etc/codedeploy-agent/conf`/`codedeploy.onpremises.yml`（对于 Ubuntu Server 和 RHEL）以及 `C:\ProgramData\Amazon\CodeDeploy`\\`conf.onpremises.yml`（对于 Windows Server）中。<br />在 CodeDeploy 代理版本 1.0.1.686 及更高版本中可用。 | 
| **:proxy\_uri:** | （可选）您希望代理通过它连接进行 CodeDeploy 操作的 HTTP CodeDeploy 代理。 Amazon 使用类似于 `https://user:password@my.proxy:443/path?query` 的格式。<br />在 CodeDeploy 代理版本 1.0.1.824 及更高版本中可用。 | 
| **:max\_revisions:** | （可选）您希望 CodeDeploy 代理存档的部署组的应用程序修订版本的数量。超过指定数量的任何修订都将被删除。<br />输入任意正整数。如果未指定任何值，则除了当前部署的修订版本外，还 CodeDeploy 将保留五个最新的修订版本。<br />在 CodeDeploy 代理版本 1.0.1.966 及更高版本中受支持。 | 
| **:enable\_auth\_policy：** | （可选）`true`如果您想使用 [ IAM 授权](https://docs.amazonaws.cn/IAM/latest/UserGuide/intro-structure.html#intro-structure-authorization)来配置 CodeDeploy 代理正在使用的 IAM 角色或用户的访问控制和限制权限，请设置为。要[CodeDeploy 与亚马逊 Virtual Private Cloud 配合使用](vpc-endpoints.md)，此值必须是 `true`。<br />默认设置为 `false`。 | 
| **:disable\_imds\_v1:** | 此设置适用于 CodeDeploy 代理 1.7.0 及更高版本。<br />设置为 `true` 可在出现 IMDSv2 错误时禁用回退到 IMDSv1。默认为 `false`（启用回退）。 | 
| **:disable\_core\_dumps: ** | 适用于 2.0.x 及更高版本。<br />设置为`true`以抑制核心转储。设置`false`为进行碰撞调查。<br />默认设置为 `true`。 | 
| **:enable\_command\_port: ** | 适用于 2.0.x 及更高版本。<br />设置`true`为启用仅限环回 (127.0.0.1) 的本地管理接口，用于查询代理状态和在本地注入命令。<br />默认设置为 `false`。 | 
| **:enable\_archive\_reuse: ** | 适用于 2.1.0 及更高版本。<br />设置`false`为始终下载应用程序修订，即使在`RESTART`部署中，修订版本已在实例上也是如此。当此设置为时`true`，代理将从实例上已有的副本中安装，如果副本缺失或不完整，则下载修订版。<br />默认设置为 `true`。<br />有关此行为的更多信息，请参阅[CodeDeploy 代理的版本历史记录](codedeploy-agent.md#codedeploy-agent-version-history)。 | 
| **:reject\_symlinks\_in\_bundle: ** | 适用于 2.0.x 及更高版本。<br />设置为可`true`拒绝包含符号链接或硬链接的捆绑包。<br />默认设置为 `false`。 | 
| **:reject\_path\_traversal\_in\_bundle: ** | 适用于 2.0.x 及更高版本。<br />设置为可`true`拒绝包含`../`路径遍历或绝对路径的存档条目以及逃离包根目录的 AppSpec 源字段。<br />默认设置为 `false`。 | 
| **:reject\_unsafe\_permissions\_in\_bundle: ** | 适用于 2.0.x 及更高版本。<br />设置为可`true`拒绝包含设置 SUID/SGID的 SUID/SGID文件或 AppSpec 权限模式的捆绑包。<br />默认设置为 `false`。 | 
| **:reject\_unconfined\_selinux\_in\_bundle: ** | 适用于 2.0.x 及更高版本。<br />设置为可`true`拒绝包含 MAC-disabling SELinux 类型文件的捆绑包。<br />默认设置为 `false`。 | 
| **:reject\_symlink\_权限\_目标：** | 适用于 2.0.x 及更高版本。<br />设置`true`为可拒绝目标为符号链接的 AppSpec 文件`permissions`条目。默认情况下，代理在应用所有权、模式、ACL 和 SELinux 更改时会使用该链接。<br />默认设置为 `false`。 | 
| **:ignore\_ownership\_in\_bundle: ** | 适用于 2.0.x 及更高版本。<br />设置为，`true`将从中提取的文件`tar`和`tgz`捆绑包的所有权重置为，`root`而不是应用存档中记录的用户 ID 和群组 ID。无论此设置`root`如何，`zip`捆绑包中的文件均归其所有。<br />默认设置为 `false`。 | 
| **:restrict\_agent\_dir\_权限：** | 适用于 2.0.x 及更高版本。仅限 Linux 实例。<br />设置为，`true`将代理安装根目录下的目录和文件限制为仅允许根用户访问，而不是默认情况下使用的全局可读模式。<br />默认设置为 `false`。 | 
| **:restrict\_log\_dir\_persions: ** | 适用于 2.0.x 及更高版本。仅限 Linux 实例。<br />设置`true`为，将包含代理日志和更新程序日志的代理日志目录限制为仅限根用户访问，而不是默认情况下使用的全局可读模式。<br />默认设置为 `false`。 | 
| **:restrict\_hook\_env\_to\_to\_allist: ** | 适用于 2.0.x 及更高版本。<br />设置`true`为可在仅包含基本外壳变量和 CodeDeploy部署变量的最小环境下运行生命周期事件挂钩。默认情况下，挂接会继承代理进程的完整环境。<br />默认设置为 `false`。 | 
| **:strip\_loader\_env\_in\_hooks: ** | 适用于 2.0.x 及更高版本。仅限 Linux 实例。<br />设置`true`为可从生命周期事件挂钩的环境中移除`LD_LIBRARY_PATH`、和`LD_AUDIT`变量。`LD_PRELOAD`<br />默认设置为 `false`。 | 
| **:disable\_powershell\_profile\_in\_hooks: ** | 适用于 2.0.x 及更高版本。仅限 Windows 服务器实例。<br />设置`true`为使用`-NoProfile`和`-NonInteractive`选项运行`.ps1`生命周期事件挂钩。默认情况下，这些挂接加载代理运行的用户的 PowerShell 配置文件。<br />默认设置为 `false`。 | 
| **:archive\_max\_extraction\_size: ** | 适用于 2.0.x 及更高版本。<br />为声明的未压缩包大小设置上限。如果提取的内容超过此值，则部署将失败。<br />默认为无上限（无上限）。 | 
| **:wait\_after\_error: ** | 代理在遇到错误后在恢复正常操作之前等待的秒数。<br />默认设置为 `30`。 | 
| **:http\_read\_timeout: ** | 服务 API 调用的 HTTP 读取超时时间（以秒为单位）。<br />默认设置为 `80`。 | 
| **:kill\_agent\_max\_wait\_time\_seconds: ** | 代理在强制终止之前等待正常关闭的最大秒数。对于版本 2.0.x 及更高版本，此值上限为 24 小时（86400 秒）。<br />默认设置为`7200`（2 小时）。 | 
| **:启用部署日志：** | 设置为`true`以写入聚合的部署日志 (`codedeploy-agent-deployments.log`)。<br />默认设置为 `true`。 | 
| **:use\_fips\_mode: ** | 设置`true`为使用 FIPS-compliant 端点。仅适用于美国地区。<br />默认设置为 `false`。 | 
| **:部署控制端点：** | （可选）服务的自定义控制平面端点 URL。 CodeDeploy <br />默认为不覆盖（代理从该区域解析终端节点）。 | 
| **:s3\_终端节点覆盖：** | （可选）用于捆绑下载的自定义 Amazon S3 终端节点 URL。<br />默认为不覆盖（代理从该区域解析 Amazon S3 终端节点）。 | 
| **:ongoing\_deployment\_tracking: ** | 用于部署跟踪状态的子目录的名称。<br />默认设置为 `ongoing-deployment`。 | 

## 相关主题
<a name="reference-agent-configuration-related-topics"></a>

[与 CodeDeploy 代理合作](codedeploy-agent.md)

[管理 CodeDeploy 代理操作](codedeploy-agent-operations.md)