Amazon EC2では、セキュリティグループを削除することはできず、グループにはまだ依存関係があるとの不満があります。これらの依存関係を見つけるにはどうすればよいですか?
aws ec2 describe-security-groupsは言っていません。
Amazon EC2では、セキュリティグループを削除することはできず、グループにはまだ依存関係があるとの不満があります。これらの依存関係を見つけるにはどうすればよいですか?
aws ec2 describe-security-groupsは言っていません。
回答:
EC2の[ネットワークインターフェイス]セクションにセキュリティグループIDを貼り付けます。これにより、EC2、EB、RDS、ELB全体で使用状況がわかります。
CLI: aws ec2 describe-network-interfaces --filters Name=group-id,Values=sg-123abc45
AWS EC2コンソールでこれを行う最良の方法は、[EC2-> Instances]セクションの検索フィールドにセキュリティグループ名を貼り付けることです。
貼り付けられたセキュリティグループに関連付けられたすべてのインスタンスが生成され、それらがec2オブジェクトになります(依存関係)。
この検索は、ELBセクションや、セキュリティグループを利用する他のAWSオファリングでも実行できます。
セキュリティグループを削除しようとしている場合、各インスタンスの「セキュリティグループの変更」(VPCにある場合)か、AMIを作成して別のセキュリティグループを使用して再起動してから、古いインスタンスを削除する必要があります( EC2クラシックを使用)
お役に立てば幸いです
グループ自体ではなく、EC2インスタンスオブジェクトを確認する必要があります。
$ aws ec2 describe-instances --output text
次に、「sg- *」を探すか、標準のUNIXテキストストリーム処理ツールを使用して、必要なデータを引き出します。
または、インスタンスの数が少ない場合--output table
は、適切にフォーマットされたリストを使用します。
aws ec2 describe-instances --output text | grep sg-
aws cliに問い合わせて、必要なデータを取得できます。
あなたがする必要があります:
raw aws cliの代わりに、boto https://code.google.com/p/boto/などのライブラリを使用することもできます。
別の問題は、他のSecurityGroupsに依存するSecurityGroupsです。このコマンドを使用して、隣接リスト(直接依存関係)を生成できます。
aws ec2 describe-security-groups --query "SecurityGroups[*].{ID:GroupId,Name:GroupName,dependentOnSGs:IpPermissions[].UserIdGroupPairs[].GroupId}
理想的には、この結果を使用して、推移的閉包(すべての依存関係、直接および間接)を見つける必要があります。残念ながら、推移的なクロージャーutilを見つけることができませんでした。
このPythonツールを使用して、セキュリティグループとその依存関係を一覧表示できます。また、使用されていない(廃止された)セキュリティグループを一覧表示することもできます。
マークされた答えは間違っています。依存関係違反が発生している場合は、IP許可(入力)構成で別のセキュリティグループが参照されている可能性があります。ソースとしてセキュリティグループを含むすべての入力許可を取り消す必要があります。