#!/usr/bin/env bash # Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. # The ASF licenses this file to You under the Apache License, Version 2.0 # (the "License"); you may not use this file except in compliance with # the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Delete the groups an local files associated with a cluster. if [ -z $1 ]; then echo "Cluster name required!" exit -1 fi CLUSTER=$1 # Finding Hadoop clusters CLUSTERS=`ec2-describe-instances | \ awk '"RESERVATION" == $1 && $4 ~ /-master$/, "INSTANCE" == $1' | tr '\n' '\t' | \ grep "$CLUSTER" | grep running | cut -f4 | rev | cut -d'-' -f2- | rev` if [ -n "$CLUSTERS" ]; then echo "Cluster $CLUSTER has running instances. Please terminate them first." exit 0 fi # Import variables bin=`dirname "$0"` bin=`cd "$bin"; pwd` . "$bin"/hadoop-ec2-env.sh rm -f $MASTER_IP_PATH rm -f $MASTER_PRIVATE_IP_PATH ec2-describe-group | egrep "[[:space:]]$CLUSTER_MASTER[[:space:]]" > /dev/null if [ $? -eq 0 ]; then echo "Deleting group $CLUSTER_MASTER" ec2-revoke $CLUSTER_MASTER -o $CLUSTER -u $AWS_ACCOUNT_ID fi ec2-describe-group | egrep "[[:space:]]$CLUSTER[[:space:]]" > /dev/null if [ $? -eq 0 ]; then echo "Deleting group $CLUSTER" ec2-revoke $CLUSTER -o $CLUSTER_MASTER -u $AWS_ACCOUNT_ID fi ec2-delete-group $CLUSTER_MASTER ec2-delete-group $CLUSTER