Sammeln Sie Daten von 100 AWS-Servern

Sammeln Sie Daten von 100 AWS-Servern

Ich habe 100 Server, die auf AWS laufen. Ich muss problemlos ermitteln können, wie viele Daten jeder Benutzer auf den Remote-Systemen verwendet, und diese Daten in eine Textdatei ausgeben. Wie kann ich dies am besten erreichen?

Antwort1

Sie können eine parallele Shell verwenden, wieClusterschaleoderpdsh.

Auf diese Weise können Sie, vorausgesetzt, Sie haben bereits eine kennwortlose SSH-Authentifizierung von einem zentralen Rechner aus eingerichtet, auf jedem der 100 Server gleichzeitig einen Befehl ausführen. Sie können auch noch weiter gehen und verschiedene Gruppen erstellen, um sie logisch zu organisieren.

Nehmen wir an, Ihre Maschinen heißen aws0, aws1, aws2, … aws99.

Mit Clustershell können Sie auf allen davon einen Befehl (uptime in diesem Beispiel) folgendermaßen ausführen:

# clush -w aws[0-100] uptime
aws0: 21:49:12 up  5:46,  1 user,  load average: 0.07, 0.02, 0.00
aws1: 21:49:12 up  5:46,  1 user,  load average: 0.07, 0.02, 0.00
aws2: 21:49:12 up  5:46,  1 user,  load average: 0.07, 0.02, 0.00
[...]
aws99: 21:49:12 up  5:46,  1 user,  load average: 0.07, 0.02, 0.00

Sie können den Befehl auf diese Weise für eine Teilmenge davon ausführen

clush -w aws[22-55,73-82,90,99] uptime
aws22: 21:49:12 up  5:46,  1 user,  load average: 0.07, 0.02, 0.00
aws23: 21:49:12 up  5:46,  1 user,  load average: 0.07, 0.02, 0.00
[...]
aws55: 21:49:12 up  5:46,  1 user,  load average: 0.07, 0.02, 0.00
aws73: 21:49:12 up  5:46,  1 user,  load average: 0.07, 0.02, 0.00
[...]
aws82: 21:49:12 up  5:46,  1 user,  load average: 0.07, 0.02, 0.00
aws90: 21:49:12 up  5:46,  1 user,  load average: 0.07, 0.02, 0.00
aws99: 21:49:12 up  5:46,  1 user,  load average: 0.07, 0.02, 0.00

Wenn Sie dann die identischen Ergebnisse gruppieren möchten, können Sie die Option -b von clush verwenden oder mit pdsh eine Weiterleitung zu dshbak -c durchführen.

# clush -bw aws[0-99] uptime
---------------
aws[0-99] (100)
---------------
21:49:12 up  5:46,  1 user,  load average: 0.07, 0.02, 0.00

verwandte Informationen