खेद है कि मैं कर रहा हूँ अभी भी नया करने के लिए मार स्क्रिप्टिंग. मैं लगभग 10000 EC2 उदाहरण के लिए, मैं इस बनाया बैश स्क्रिप्ट को बदलने के लिए मेरे EC2 उदाहरण प्रकार, सभी इंस्टेंस नाम और प्रकार हैं, एक फ़ाइल में संग्रहीत. कोड काम कर रहा है लेकिन यह इतने लंबे समय ले माध्यम से चलाने के लिए उदाहरण के द्वारा उदाहरण.
करता है किसी भी है जानता है कि अगर मैं चला सकते हैं एडब्ल्यूएस सीएलआई आदेश पर सभी EC2 के उदाहरण में एक जाना है ? धन्यवाद :)
#!/bin/bash
my_file='test.txt'
declare -a instanceID
declare -a fmo #Future Instance Size
while IFS=, read -r COL1 COL2; do
instanceID+=("$COL1")
fmo+=("$COL2")
done <"$my_file"
len=${#instanceID[@]}
for (( i=0; i < $len; i++)); do
vm_instance_id="${instanceID[$i]}"
vm_type="${fmo[$i]}"
echo Stoping $vm_instance_id
aws ec2 stop-instances --instance-ids $vm_instance_id
echo " Waiting for $vm_instance_id state to be STOP "
aws ec2 wait instance-stopped --instance-ids $vm_instance_id
echo Resizing $vm_instance_id to $vm_type
aws ec2 modify-instance-attribute --instance-id $vm_instance_id --instance-type $vm_type
echo Starting $vm_instance_id
aws ec2 start-instances --instance-ids $vm_instance_id
done