【问题标题】:Insert rule into a SG previously created manually将规则插入先前手动创建的 SG
【发布时间】:2015-09-01 17:18:47
【问题描述】:

我会解释这个场景:

我已经创建了一个 cloudformation 模板,基本上是这些资源:

  • 服务器SG
  • serverAutoScallingGroup
  • serverLaunchConfig
  • serverIAMInstProf
  • serverIAMPolicy
  • serverIAMRole

“serverLaunchConfig”启动一个名为“MyServer”的实例,这种实例有一个私有子网,并且在这个子网中有一个先前手动创建的 NAT 服务器。 cloudformation 模板工作正常,但 cnf-init 不起作用,因为我的实例安全组 (serverSG) 没有在 NAT 安全组 (natSG) 中创建允许互联网访问的规则,因此“MyServer”没有可以上网。

我的问题:

我需要在 natSG(手动创建)中插入一条规则,允许 serverSG(cloudformation 创建)访问互联网,以执行正确的引导。 是否有任何技巧可以做到这一点(使其工作),或者 cloudformation 无法执行此任务?

【问题讨论】:

  • 您确定安全组是问题的原因吗?通常,安全组允许所有出站流量。如果您的实例位于私有子网中,请确保子网的路由表通过 NAT 服务器正确路由。
  • 您可以随时编辑安全组(例如通过控制台或 CLI)。您是说要进行一次性更改,还是要修改创建安全组的 CloudFormation 模板?

标签: amazon-cloudformation


【解决方案1】:

cfn-init 在这里是错误的工具。要将规则添加到现有安全组,您需要将AWS::EC2::SecurityGroupIngress 用于入站规则,将AWS::EC2::SecurityGroupEgress 用于出站规则

cfn-init 脚本应仅在您希望在您的实例中运行的操作系统内部 进行某些自定义时使用。您希望做的是与 AWS 基础设施而不是实例的操作系统进行交互。

【讨论】:

    猜你喜欢
    • 2020-07-31
    • 1970-01-01
    • 1970-01-01
    • 2019-02-22
    • 2012-10-17
    • 1970-01-01
    • 2021-12-02
    • 2014-08-23
    • 2019-05-04
    相关资源
    最近更新 更多