Использование ожидайте, чтобы войти на сервер Amazon с помощью файла.PEM

Мне нужно сделать следующее:

  • Войдите в мой сервер Amazon
  • Перейдите в конкретный каталог и запустите скрипт
  • Сценарий выполняет svn upМне нужно иметь возможность передать свое имя пользователя и пароль для этого сценария.

Я читал, я мог бы сделать это с ожиданием? Могу ли я выполнить вход через сценарий оболочки, а затем вызвать ожидаемый запуск специального сценария?

По сути, я просто ищу хороший способ сделать это и был бы признателен за указатель в правильном направлении.

1 ответ

Вы можете использовать ssh для передачи команд оболочки, которые будут выполняться на удаленном экземпляре.

Например, вот как я проверяю журналы на нескольких серверах:

#!/bin/bash
nas_servers=(
  "ec2-xx-xx-xxx-xxx.ap-xxxx.compute.amazonaws.com"
  "ec2-xx-xx-xxx-xxx.ap-xxxx.compute.amazonaws.com"
  "ec2-xx-xx-xxx-xxx.ap-xxxx.compute.amazonaws.com"
  "ec2-xx-xx-xxx-xxx.ap-xxxx.compute.amazonaws.com"
)

for s in "${nas_servers[@]}"
do
  echo "Cheking $s:"
  ret=$(ssh -i ~/pem/Key.pem "user@$s" bash << 'EOF'
  files=/var/log/syslog*
  for f in $files
  do
if [[ ${f##*.} = 'gz' ]]; then
  cmd=zcat
else
  cmd=cat
fi
$cmd $f | egrep -wi 'error|warn|crit|fail'
  done
EOF
)
  if [[ -z $ret ]]; then
echo "No errors found."
  else
echo "$ret"
  fi
done
Другие вопросы по тегам