0

发射

cap rubber:create_staging

开始检查账户的 EC2 现有安全组。第一个检查是在默认组上,该组不能从 AWS Web 控制台中删除。所以下面提示的响应自然是'N'

  * Security Group already in cloud, syncing rules: default
Rule '{"protocol"=>"tcp", "from_port"=>"1", "to_port"=>"65535", "source_group_name"=>"", "source_group_account"=>"460491791257"}' exists in cloud, but not locally, remove from cloud? [y/N]: N

然而,四次检查之后,

  * Missing rule, creating: {"source_group_name"=>"default", "source_group_account"=>"460491791257", "protocol"=>"tcp", "from_port"=>"1", "to_port"=>"65535"}

/Users/you/.rvm/gems/ruby-1.9.3-p551/gems/excon-0.45.4/lib/excon/middlewares/expects.rb:10:in `response_call': Duplicate => the specified rule \"peer: sg-0910926c, TCP, from port: 1, to port: 65535, ALLOW\" already exists (Fog::Compute::AWS::Error)

显然,有人试图创建一个相同的规则。唯一的区别是,从检查中提取的 source_group_name 的字符串为空字符串,而橡胶例程尝试使用标识的 source_group_name 创建相同的规则

在 EC2 Web 控制台中使用“source_group_name”和默认值创建标签不会改变任何行为。这是否需要通过 EC2 或橡胶修复?

4

1 回答 1

0

编辑 虽然以下确实有效,但问题的根源是橡胶版本。最新版本没有被使用,因此可能是问题的来源版本列表在这里

这可以通过在 EC2 Web 控制台中创建一个新的安全组并将配置文件 Rubber/rubber.yml 编辑为在控制台中创建的相同身份(第 206 行或附近)来克服

security_groups:
  default:
    description: The default security group
    rules:
      - source_group_name: rubber_default

然后,在 config/rubber/instance-env.yml 中,security_groups bloc 需要修改(第 52 行或附近):

  security_groups:
  - rubber-default
于 2015-09-17T15:18:07.280 回答