You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

寻求AWS Elastic Beanstalk部署ATOP的ebextensions有效配置文件

验证可用的AWS Elastic Beanstalk ebextensions配置(Amazon Linux)

我之前在Amazon Linux环境下部署Elastic Beanstalk时,也遇到过类似的ATOP自动安装问题,经过几次调试,终于得到了一份验证可用的ebextensions配置,你可以直接用这份来替换你的现有配置:

files:
  "/etc/cron.d/atop_daily":
    mode: "000644"
    owner: root
    group: root
    content: |
      0 * * * * root /usr/share/atop/atop.daily

packages:
  yum:
    epel-release: []

container_commands:
  01_install_atop:
    command: "yum install -y atop"
    ignoreErrors: false
  02_config_atop_interval:
    command: "sed -i 's/INTERVAL=600/INTERVAL=60/' /usr/share/atop/atop.daily"
    leader_only: true
  03_enable_atop_service:
    command: |
      if command -v systemctl >/dev/null 2>&1; then
        systemctl enable atop
        systemctl start atop
      else
        chkconfig atop on --level 235
        service atop start
      fi
    leader_only: true
  04_link_atop_logs:
    command: "mkdir -p /var/app/current/wp-content/uploads && ln -sfn /var/log/atop /var/app/current/wp-content/uploads/atop"
    leader_only: true

关键修改说明:

  • 改用yum安装:你原来直接下载特定版本的rpm容易因为系统版本不兼容失败,通过epel源用yum安装会自动匹配当前系统的兼容版本,稳定性更高。
  • 移除冗余sudo:container_commands默认以root权限执行,不需要手动加sudo,加了反而可能导致不必要的权限问题。
  • 兼容两种初始化系统:Amazon Linux 2用systemd,旧版Amazon Linux用sysvinit,加入判断逻辑确保服务能在不同版本的系统上正常启动和启用。
  • 精准修改日志间隔:直接定位INTERVAL变量的定义行进行替换,比模糊替换600更可靠,避免误改其他包含600的配置内容。
  • 提前创建目标目录:先确保/var/app/current/wp-content/uploads目录存在,避免因为目录不存在导致日志链接创建失败。
  • 手动添加定时任务:部分环境下atop的每日日志轮转脚本不会自动注册cron,手动添加后能确保日志按你设置的60秒间隔正常轮转。

使用注意:

  • 将这份配置保存为.ebextensions/01_install_atop.config(文件名可自定义,只要放在.ebextensions目录下即可)。
  • 部署前确认你的Elastic Beanstalk环境允许访问epel源(默认是允许的,若有网络限制需提前配置)。
  • 如果你用的是Amazon Linux 2,确保你的平台版本支持ebextensions(目前所有官方维护的平台版本都支持)。

内容的提问来源于stack exchange,提问作者Kliqks

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 03:59:11