У меня почти 150 ec2-экземпляров в аккаунте. Я хочу извлечь системную информацию из каждого экземпляра. Я знаю, что могу индивидуально войти в каждую систему и получить информацию, используя определенную команду. Но я хочу всю информацию за один раз. Я могу написать простой скрипт, но проблема в том, что у меня есть хост-бастион, а затем мне нужно ssh для каждого экземпляра, и имя пользователя отличается. Примером для некоторого экземпляра его ec2-user@2.2.2.2 и для некоторого его centos@3.3.3.3.
ssh -i "prod-key-pair.pem" ec2-user@ec2-1-9-1-2.compute-1.amazonaws.com ssh -i "sandbox-key-pair.pem" centos@1.1.4.2 'bash -s' << EOF
cat /etc/*-release|grep -m 1 NAME >>os_detail.txt
ifconfig | grep inet |head -1 |awk -F ' ' '{print $2}' >>os_detail.txt
EOF
Мой вопрос заключается в том, каким образом он может выбрать и centos, и ec2-пользователя один за другим, и если ему не удастся использовать centos, ему следует попробовать ec2-user. Во-вторых, две команды при их выполнении создают файлы на сервере, но я хочу, чтобы эти файлы были в моей локальной системе, откуда я запускаю скрипт.
Любые указатели о том, как я могу решить эту проблему?