Ubuntu20服务器安装AWS Replication Agent失败问题咨询
Ubuntu 20.04安装AWS Replication Agent通用报错排查方案
你遇到的Unexpected Error Installation failed是安装脚本捕获到未做定制化提示的异常时抛出的通用报错,在已经给IAM实体附加足够权限(甚至管理员权限)的前提下,Ubuntu 20环境下的常见触发原因和解决方法按出现概率排序如下:
- 执行身份的凭证读取失败
安装脚本必须以root权限运行,默认只会读取root用户上下文下的AWS凭证:包括/root/.aws/下的配置文件、root用户的环境变量、EC2实例绑定的IAM角色临时凭证。如果你把AK/SK配置在普通用户的~/.aws目录下,或者普通用户的环境变量里存了凭证,sudo执行安装时脚本拿不到有效凭证,就会直接报错。
解决方法:- 若为EC2实例,优先给实例绑定附加了对应DRS策略的IAM角色,不需要本地配置任何凭证即可安装
- 若使用永久AK/SK安装,直接在安装命令中显式传入凭证和区域参数,避免上下文读取问题:
sudo ./aws-replication-agent-installer.run \ --aws-access-key-id <你的AK值> \ --aws-secret-access-key <你的SK值> \ --region <DRS服务所在区域,例如us-east-1> - 系统基础依赖缺失
Ubuntu 20.04最小化镜像默认不带curl、wget、lsb-release、gnupg组件,安装脚本拉取安装包、校验系统版本、校验包签名时会静默失败,触发通用报错。
解决方法:先安装全量依赖再重试:sudo apt update && sudo apt install -y curl wget lsb-release gnupg - 系统时间偏移超标
安装过程中需要和AWS服务端做请求签名校验,若系统时间和UTC标准时间偏移超过15分钟,签名会直接失效,脚本不会单独抛出时间相关错误,直接返回安装失败。
解决方法:执行timedatectl status检查NTP同步状态,若未开启时间同步,执行sudo timedatectl set-ntp on,等待时间同步完成后再重试安装。 - 出站网络访问被拦截
安装过程需要通过443端口访问对应区域的DRS服务端点、S3存储桶拉取安装包和完成注册,若被服务器本地防火墙、安全组、企业代理拦截,会导致流程中断。Ubuntu 20默认的ufw防火墙若配置了出站拒绝规则、服务器配置了全局代理但root用户未继承代理配置,是这类问题的高频诱因。
解决方法:- 临时关闭ufw测试:
sudo ufw disable,若安装成功再按需放通对应区域AWS服务的443出站规则即可 - 若服务器必须通过代理访问公网,执行安装时要保留代理环境变量:
sudo -E ./aws-replication-agent-installer.run,-E参数会让sudo执行时继承当前用户的代理配置
- 临时关闭ufw测试:
- 历史安装残留冲突
若之前运行过安装脚本中途失败,残留的agent进程、安装目录、未卸载的旧包会导致新安装流程无法写入文件、绑定端口,触发失败。
解决方法:先执行清理操作再重试:sudo pkill -f aws-replication-agent sudo rm -rf /var/lib/aws-replication-agent sudo apt remove -y aws-replication-agent 2>/dev/null - 内核版本不兼容
若你手动将Ubuntu 20.04的内核升级到了非官方源分发的自定义版本(例如手动编译安装5.15以上版本内核),DRS代理的内核模块无法正常编译加载,会在安装最后阶段触发失败,且不会抛出明确的兼容错误。
解决方法:执行uname -r查看当前运行内核,若为自定义内核,重启选择Ubuntu 20.04默认的5.4.x GA内核启动后,再重新执行安装。
内容的提问来源于stack exchange,提问作者Lakshminarayanan S
相关产品推荐
相关产品推荐

