Я запускаю скрипт пользовательских данных при запуске машины ec2, который выключает машину после проверки состояния выхода последней выполненной команды.Я подтвердил, что последняя выполненная команда была выполнена успешно, поэтому я не уверен, почему машина не завершает работу.Это происходит не каждый раз, а только тогда, когда скрипт пользовательских данных заканчивается быстро.
Вот конец моего скрипта bash (после выполнения нескольких команд):
python myscript.py
ret=$?
echo $ret
if [[ $ret -eq 0 ]]; then
shutdown now
fi
Это приводит к следующему выводу, но не завершает экземпляр:
0
Cloud-init v. 0.7.9 running 'init-local' at Wed, 28 Nov 2018 20:15:38 +0000. Up 11.12 seconds.
Cloud-init v. 0.7.9 running 'init' at Wed, 28 Nov 2018 20:15:41 +0000. Up 14.67 seconds.
ci-info: ++++++++++++++++++++++++++Net device info+++++++++++++++++++++++++++
ci-info: Device Up Address Mask Scope Hw-Address
ci-info: lo: True 127.0.0.1 255.0.0.0 . .
ci-info: lo: True . . d .
ci-info: eth0: True 10.90.1.222 255.255.255.0 . 0e:c9:6e:60:5d:e8
ci-info: eth0: True . . d 0e:c9:6e:60:5d:e8
ci-info: +++++++++++++++++++++++++++Route IPv4 info++++++++++++++++++++++++++++
ci-info: Route Destination Gateway Genmask Interface Flags
ci-info: 0 0.0.0.0 10.90.1.1 0.0.0.0 eth0 UG
ci-info: 1 10.90.1.0 0.0.0.0 255.255.255.0 eth0 U
ci-info: 2 169.254.169.254 0.0.0.0 255.255.255.255 eth0 UH
Cloud-init v. 0.7.9 running 'modules:config' at Wed, 28 Nov 2018 20:15:44 +0000. Up 17.35 seconds.
Cloud-init v. 0.7.9 running 'modules:final' at Wed, 28 Nov 2018 20:15:45 +0000. Up 18.45 seconds.
Connection to 10.90.1.222 closed by remote host. 20:15:46 +0000. Datasource DataSourceEc2. Up 19.56 seconds
Я пытаюсь определить, если Cloud-init каким-то образом препятствует завершению экземпляра.Это потому, что сценарий завершен, в то время как другие фоновые процессы еще инициализируются?