【问题标题】:AWS EC2 - check if Key-Pair and Security Group doesn't already existAWS EC2 - 检查密钥对和安全组是否不存在
【发布时间】:2017-08-29 14:37:59
【问题描述】:

我目前正在开发一个应用程序,通过 php 的 api 在 AWS 上构建实例。

我无法找到最佳方法来检查密钥对和安全组是否存在,然后再创建另一个。

$CreateKeyPair = $ec2Client->createKeyPair(array('KeyName' => $InstanceName));          

$ec2Client->createSecurityGroup(array('GroupName' => $InstanceName,'Description' => $InstanceName));    

上面创建了密钥对和安全组,但是我想检查密钥对是否存在,如果它停止执行并且与安全组基本相同的概念但是如果密钥对被创建但安全性组由于某种原因失败,然后回滚更改并删除创建的密钥对。

我知道 api 能够创建和删除安全组和密钥对,但无法从我看到的内容中检查它是否存在。

以前有没有人这样做过,或者有没有人有办法做到这一点。

我对 AWS api 完全陌生。

【问题讨论】:

  • 您是在俯瞰describeKeyPairsdescribeSecurityGroups,还是...?
  • 我看了这些,我认为它与描述有关
  • 不,它是“列表”意义上的“描述”,并给我...的属性
  • 是的,我刚刚看到了一些例子,现在它很有意义,我只检查它是否存在,如果不存在,则创建它。如果另一个查询失败,可以使用哪些方法来回滚更改。基本上就像mysql的提交功能。

标签: php amazon-web-services amazon-ec2 key-pair


【解决方案1】:

调用 DescribeKeyPairsDescribeSecurityGroups 以检查它们是否存在,然后仅在它们不存在时创建它们。

您可以要求提供所有密钥对/安全组的列表,也可以提供名称以返回特定的。

【讨论】:

  • 警告....如果您要求不存在的特定键,它将返回错误 400,而不是对象。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-15
  • 2018-10-12
  • 2017-08-08
相关资源
最近更新 更多