Убедитесь, что у вас есть маршрут к Интернету из вашего экземпляра EC2. Обычно это означает либо общедоступный IP-адрес, либо маршрут к экземпляру / шлюзу NAT, а также шлюз Интернета в вашем VPC.
Может случиться так, что сценарий пользовательских данных начнет выполняться до того, как будет установлено соединение. Вам может потребоваться проверить, что экземпляр имеет исходящий доступ к сети, прежде чем ваш скрипт запустит обновление yum, например:
#!/bin/bash
echo "launch script.."
until ping -c1 www.google.com &>/dev/null; do
echo "Waiting for network ..."
sleep 1
done
yum update -y
# other things here
Существуют и другие варианты ожидания сети ( здесь и здесь ).
Также обратите внимание, что сценарии пользовательских данных выполняются от имени пользователя root, поэтому вам не нужен sudo.