View a markdown version of this page

CodeDeploy 代理配置参考 - AWS CodeDeploy

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

CodeDeploy 代理配置参考

安装 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: 设置所指向的位置的日志文件中。

对于 2.0.x 及更高版本,文件名为codedeploy-agent.aws_wire.log(使用 0640 权限创建)。

对于 1.8.x 及更早版本,文件名为。codedeploy-agent.wire.log

警告

您仅应在捕获线路日志需要的时间内将 :log_aws_wire: 设置为 true。线路日志文件可以很快增长到非常大的大小。线路日志输出可能包含敏感信息,包括将此设置设置为时传入或传出 Amazon S3 的文件的纯文本内容。true此设置设置为时,电汇日志包含与 AWS 账户关联的所有 Amazon S3 活动的信息true,而不仅仅是与 CodeDeploy 部署相关的活动。

默认设置为 false

此设置适用于所有实例类型。您必须将此配置设置添加到 Windows Server 实例才能使用它。

:log_dir:

实例上存储与 CodeDeploy 代理操作相关的日志文件的文件夹。

对于 Amazon Linux、Ubuntu Server 和 RHEL 实例,默认设置是 '/var/log/aws/codedeploy-agent',对于 Windows Server 实例,默认设置是 C:\ProgramData\Amazon\CodeDeploy\log

:pid_dir:

存储 codedeploy-agent.pid 的文件夹。

此文件包含 CodeDeploy 代理的进程 ID (PID)。默认设置为 '/opt/codedeploy-agent/state/.pid'

此设置仅适用于 Amazon Linux、Ubuntu Server 和 RHEL 实例。

:program_name:

CodeDeploy 代理程序名称。

默认设置为 codedeploy-agent

此设置仅适用于 Amazon Linux、Ubuntu Server 和 RHEL 实例。

:root_dir:

实例上用于存储相关修订、部署历史记录和部署脚本的文件夹。

对于 Amazon Linux、Ubuntu Server 和 RHEL 实例,默认设置是 /opt/codedeploy-agent/deployment-root,对于 Windows Server 实例,默认设置是 C:\ProgramData\Amazon\CodeDeploy

:verbose:

设置true为, CodeDeploy 代理可以在实例上打印调试消息日志文件。

默认设置为 false

:wait_between_runs:

CodeDeploy 代理轮询待处理部署之间的间隔,以秒 CodeDeploy 为单位。

对于 2.0.x 及更高版本,默认设置为。30

对于 1.8.x 及更早版本,默认设置为。1

:on_premises_config_file:

对于本地实例,这是名为 codedeploy.onpremises.yml(对于 Ubuntu Server 和 RHEL)或 conf.onpremises.yml(对于 Windows Server)的配置文件的备用位置的路径。

默认情况下,这些文件存储在 /etc/codedeploy-agent/conf/codedeploy.onpremises.yml(对于 Ubuntu Server 和 RHEL)以及 C:\ProgramData\Amazon\CodeDeploy\conf.onpremises.yml(对于 Windows Server)中。

在 CodeDeploy 代理版本 1.0.1.686 及更高版本中可用。

:proxy_uri:

(可选)您希望代理通过它连接以 AWS 进行 CodeDeploy 操作的 HTTP CodeDeploy 代理。使用类似于 https://user:password@my.proxy:443/path?query 的格式。

在 CodeDeploy 代理版本 1.0.1.824 及更高版本中可用。

:max_revisions:

(可选)您希望 CodeDeploy 代理存档的部署组的应用程序修订数量。超过指定数量的任何修订都将被删除。

输入任意正整数。如果未指定任何值,则除了当前部署的修订版外, CodeDeploy 还将保留最新的五个修订版。

在 CodeDeploy 代理版本 1.0.1.966 及更高版本中受支持。

:enable_auth_policy:

(可选)true如果您想使用 IAM 授权来配置访问控制并限制 CodeDeploy 代理正在使用的 IAM 角色或用户的权限,请将其设置为。要CodeDeploy 与亚马逊 Virtual Private Cloud 配合使用,此值必须是 true

默认设置为 false

:disable_imds_v1:

此设置适用于 CodeDeploy 代理 1.7.0 及更高版本。

设置为 true 可在出现 IMDSv2 错误时禁用回退到 IMDSv1。默认为 false(启用回退)。

:disable_core_dumps:

适用于 2.0.x 及更高版本。

设置true为可抑制核心转储。设置为false进行碰撞调查。

默认设置为 true

:enable_command_port:

适用于 2.0.x 及更高版本。

设置true为可启用仅限环回 (127.0.0.1) 的本地管理接口,用于查询代理状态和在本地注入命令。

默认设置为 false

:reject_symlinks_in_bundle:

适用于 2.0.x 及更高版本。

设置为可true拒绝包含符号链接或硬链接的捆绑包。

默认设置为 false

:reject_path_traversal_in_bundle:

适用于 2.0.x 及更高版本。

设置为可true拒绝包含../路径遍历或绝对路径的存档条目以及转义包根目录的 AppSpec 源字段。

默认设置为 false

:reject_unsafe_permissions_in_bundle:

适用于 2.0.x 及更高版本。

设置为true可拒绝包含已设置 SUID/SGID SUID/SGID的文件或 AppSpec 权限模式的分发包。

默认设置为 false

:reject_unconfined_selinux_in_bundle:

适用于 2.0.x 及更高版本。

设置为可true拒绝包含 MAC-disabling SELinux 类型的文件的捆绑包。

默认设置为 false

:reject_symlink_权限_目标:

适用于 2.0.x 及更高版本。

设置为true可拒绝以符号链接为目标 AppSpec 的文件permissions条目。默认情况下,代理在应用所有权、模式、ACL 和 SELinux 更改时会跟随链接。

默认设置为 false

:ignore_ownership_in_bundle:

适用于 2.0.x 及更高版本。

设置true为可将从存档中提取的文件tartgz捆绑包文件的所有权重置为,root而不是应用存档中记录的用户 ID 和组 ID。无论此设置root如何,zip捆绑包中的文件均归所有。

默认设置为 false

:限制代理目录权限:

适用于 2.0.x 及更高版本。仅限 Linux 实例。

设置为,true将代理安装根目录下的目录和文件限制为仅限 root 用户访问,而不是默认使用的全局可读模式。

默认设置为 false

:限制日志目录权限:

适用于 2.0.x 及更高版本。仅限 Linux 实例。

设置为,true将代理日志目录(包含代理日志和更新程序日志)限制为仅限 root 用户访问,而不是默认使用的全局可读模式。

默认设置为 false

:restrict_hook_env_to_allist:

适用于 2.0.x 及更高版本。

设置true为可在仅包含基本外壳变量和 CodeDeploy部署变量的最小环境中运行生命周期事件挂钩。默认情况下,挂钩会继承代理进程的完整环境。

默认设置为 false

:strip_loader_env_in_hooks:

适用于 2.0.x 及更高版本。仅限 Linux 实例。

设置true为可从生命周期事件挂钩的环境中删除LD_PRELOADLD_LIBRARY_PATH、和LD_AUDIT变量。

默认设置为 false

:disable_powershell_profile_in_hooks:

适用于 2.0.x 及更高版本。仅限 Windows 服务器实例。

设置为true,使用-NoProfile-NonInteractive选项运行.ps1生命周期事件挂钩。默认情况下,这些挂钩会加载代理以其身份运行的用户的 PowerShell 配置文件。

默认设置为 false

:archive_max_extraction_size:

适用于 2.0.x 及更高版本。

为声明的未压缩包大小设置上限。如果提取的内容超过此值,则部署将失败。

默认值为无上限(无限制)。

:wait_after_error:

代理在遇到错误后等待恢复正常操作的秒数。

默认设置为 30

:http_read_timeout:

服务 API 调用的 HTTP 读取超时时间(以秒为单位)。

默认设置为 80

:kill_agent_max_wait_time_seconds:

代理在强制终止之前等待正常关闭的最大秒数。对于 2.0.x 及更高版本,此值的上限为 24 小时(86400 秒)。

默认设置为7200(2 小时)。

:enable_deployments_l

设置为true以写入聚合部署日志 (codedeploy-agent-deployments.log)。

默认设置为 true

:use_fips_mode:

设置true为使用 FIPS-compliant 终端节点。仅适用于美国地区。

默认设置为 false

:部署控制端点:

(可选)服务的自定义控制平面端点 URL。 CodeDeploy

默认值为不覆盖(代理从区域解析终端节点)。

:s3_endpoint_override:

(可选)用于下载捆绑包的自定义 Amazon S3 终端节点 URL。

默认值为无覆盖(代理解析来自该区域的 Amazon S3 终端节点)。

:ongoing_deployment_track

用于部署跟踪状态的子目录的名称。

默认设置为 ongoing-deployment

与 CodeDeploy 代理合作

管理 CodeDeploy 代理操作