У файлі .txt є список IP-адрес, напр .:
1.1.1.1
2.2.2.2
3.3.3.3
За кожною IP-адресою стоїть сервер, а на кожному сервері - sshd, що працює на порту 22. Не кожен сервер знаходиться у known_hosts
списку (на моєму ПК, Ubuntu 10.04 LTS / bash).
Як я можу запускати команди на цих серверах та збирати вихід?
В ідеалі я хотів би запускати команди паралельно на всіх серверах.
Я буду використовувати аутентифікацію відкритих ключів на всіх серверах.
Ось кілька можливих підводних каменів:
- Ssh запропонує мені поставити заданий сервер ключ ssh до мого
known_hosts
файлу. - Дані команди можуть повернути ненульовий код виходу, вказуючи на те, що висновок потенційно недійсний. Мені це потрібно визнати.
- Можливо, не вдалося встановити з'єднання з даним сервером, наприклад, через помилку в мережі.
- Потрібно встановити тайм-аут, якщо команда працює довше, ніж очікувалося, або сервер знизиться під час виконання команди.
Сервери AIX / ksh (але я думаю, це насправді не має значення.