aboutsummaryrefslogtreecommitdiff
path: root/ec2
diff options
context:
space:
mode:
authorPeter Sankauskas <peter@admobius.com>2012-11-16 14:02:43 -0800
committerPeter Sankauskas <peter@admobius.com>2012-11-16 14:02:43 -0800
commit6d22f7ccb80f21f0622a3740d8fb3acd66a5b29e (patch)
tree506daf986d0c1d07bc0a0cbf85b080d60667344d /ec2
parentc23a74df0ab1ab105a3ad6b70e93bc0aa614771d (diff)
downloadspark-6d22f7ccb80f21f0622a3740d8fb3acd66a5b29e.tar.gz
spark-6d22f7ccb80f21f0622a3740d8fb3acd66a5b29e.tar.bz2
spark-6d22f7ccb80f21f0622a3740d8fb3acd66a5b29e.zip
Delete security groups when deleting the cluster. As many operations
are done on instances in specific security groups, this seems like a reasonable thing to clean up.
Diffstat (limited to 'ec2')
-rwxr-xr-xec2/spark_ec2.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/ec2/spark_ec2.py b/ec2/spark_ec2.py
index 2ca4d8020d..17276db6e5 100755
--- a/ec2/spark_ec2.py
+++ b/ec2/spark_ec2.py
@@ -509,6 +509,20 @@ def main():
print "Terminating zoo..."
for inst in zoo_nodes:
inst.terminate()
+ # Delete security groups as well
+ group_names = [cluster_name + "-master", cluster_name + "-slaves", cluster_name + "-zoo"]
+ groups = conn.get_all_security_groups()
+ for group in groups:
+ if group.name in group_names:
+ print "Deleting security group " + group.name
+ # Delete individual rules before deleting group to remove dependencies
+ for rule in group.rules:
+ for grant in rule.grants:
+ group.revoke(ip_protocol=rule.ip_protocol,
+ from_port=rule.from_port,
+ to_port=rule.to_port,
+ src_group=grant)
+ conn.delete_security_group(group.name)
elif action == "login":
(master_nodes, slave_nodes, zoo_nodes) = get_existing_cluster(