AWS CLI:无法在Opsworks上注册EC2 EBS支持的实例

时间:2015-03-12 14:46:59

标签: amazon-ec2 aws-opsworks aws-cli

通过使用AWS CLI,我试图在指定的DateTime创建我的OpsWorks堆栈的克隆。

为了做到这一点,我确保我有以下内容:

  • 我正在运行的 EBS支持的 OpsWorks实例的每小时快照。
  • 我的数据库的时间点RDS快照

与RDS相关的一切工作正常,但我似乎无法在OpsWorks中正确附加EC2实例。

首先,我尝试从我的快照创建AMI,将其作为EC2实例运行,然后将其注册到我的堆栈中,这会产生以下错误:

  

[星期四,2015年3月12日11:48:14 +0000] opsworks-init:启动安装程序   构建原生扩展。这可能需要一段时间......   /tmp/opsworks-agent-installer.APUKk5gzWGKpIB4l/opsworks-agent-installer/opsworks-agent/lib/bootstrap/installer.rb:74:in install_instance_agent': /opt/aws/opsworks/releases/20150210181912_33600020150210181912 already exists and is current - aborting. (RuntimeError) from /tmp/opsworks-agent-installer.APUKk5gzWGKpIB4l/opsworks-agent-installer/opsworks-agent/lib/bootstrap/instance_agent_registration_installer.rb:30:in阻止运行'       来自/tmp/opsworks-agent-installer.APUKk5gzWGKpIB4l/opsworks-agent-installer/opsworks-agent/lib/bootstrap/log.rb:96:in measure' from /tmp/opsworks-agent-installer.APUKk5gzWGKpIB4l/opsworks-agent-installer/opsworks-agent/lib/bootstrap/instance_agent_registration_installer.rb:30:in运行'       来自/tmp/opsworks-agent-installer.APUKk5gzWGKpIB4l/opsworks-agent-installer/opsworks-agent/lib/bootstrap/instance_agent_registration_installer.rb:13:in run' from /tmp/opsworks-agent-installer.APUKk5gzWGKpIB4l/opsworks-agent-installer/opsworks-agent/bin/opsworks-agent-registration-installer.rb:18:in'   [星期四,2015年3月12日11:50:08 +0000] opsworks-init:代理安装失败。   [星期四,2015年3月12日11:50:08 +0000] opsworks-init:请验证在/ var / log / aws / opsworks下找到的日志文件,并将结果提交给AWS Support。

我的第二次尝试是使用我的快照创建一个卷,然后用它替换我的EC2实例的根设备。结果就是:

  

调用DetachVolume操作时发生客户端错误(IncorrectState):无法分离根卷[...]

然后,我想我会测试使用亚马逊的Ubuntu LTS 14.04 AMI附加一个新创建的EC2实例,这也不成功:

  

命令' [' ssh',' -tt','',u' / bin / sh -c \&# 39; set -e \ numask 007 \ nAGENT_TMP_DIR = $(mktemp -d /tmp/opsworks-agent-installer.XXXXXXXXXXXXXXXX)\ncurl --retry 5 -L https://opsworks-instance-agent.s3.amazonaws.com/33600020150210181912/opsworks-agent-installer.tgz | tar xz -C $ AGENT_TMP_DIR \ ncat> $ AGENT_TMP_DIR / opsworks-agent-installer / preconfig< https://opsworks-instance-agent.s3.amazonaws.com" \ n:agent_installer_tgz:" opsworks -agent-installer.tgz" \ n:assets_download_bucket:" opsworks-instance-assets-us-east-1.s3.amazonaws.com" \ n:charlie_public_key:" --- --BEGIN PUBLIC KEY ---------- END PUBLIC KEY -----" \ n:import:true \ n:instance_service_endpoint:" opsworks-instance-service.us- east-1.amazonaws.com" \ n:instance_service_port:" 443" \ n:instance_service_region:" us-east-1" \ n:instance_service_ssl_verify_peer:" true& #34; \ n:instance_service_use_ssl:" true" \ n:ops_works_endpoint:" opsworks.us-east-1.amazonaws.com" \ n:ops_works_port:" 443&# 34; \ n:ops_works_region:" us-east-1" \ n:ops_works_ssl_verify_peer:" true" \ n:ops_works_use_ssl:" true" \ n:secret_access_key: " YCsdiyHlR9zwUO7WvQrr3xNPIQqL89XcgmgIUC7h" \ n:stack_id:" 54bc78bc-d9bd-469a-ae31-2fae7e43762 e" \ n:详细:" false" \ n:wait_between_runs:" 60" \ nEOF \ nexec sudo / bin / sh -c" OPSWORKS_ASSETS_DOWNLOAD_BUCKET = opsworks-instance -assets-us-east-1.s3.amazonaws.com $ AGENT_TMP_DIR / opsworks-agent-installer / boot-registration; rm -rf $ AGENT_TMP_DIR" \ n \'']'返回非零退出状态255

尝试在计算机上安装OpsWorks代理时,似乎遇到了一些问题。

使用AWS CLI在全新堆栈中注册正在运行的 EBS Backed Opsworks堆栈的克隆的最佳方法是什么?

谢谢!

1 个答案:

答案 0 :(得分:1)

出于好奇,您在制作自己时是否遵循了the documentation on creating AMIs from OpsWorks instances

在对映像进行映像之前,您需要对该实例执行某些操作。我想它可能会干扰opsworks init / bootstrap进程。你似乎遇到的错误暗示着这一点。