ممکنه پیش اومده باشه که نیاز داشته باشید روی چندین سرور لینوکسی یک کلاستر، دستورات مشابهی رو اجرا کنید، مثلا روی ۱۰ تا وب سرور همزمان دستور top یا df رو اجرا کنید.
من همیشه طرفدار استفاده از اسکریپت و Automation هستم، ولی خیلی وقت ها پیش اومده که بخوام سریع دستور رو اجرا کنم و وقت برای اسکریپت یا انسیبل نگذارم.
ابزار cssh کمک میکنه همزمان به چند سرور لینوکس ssh بزنید و دستورات مورد نظرتون رو اجرا کنید.
Managing Multiple Linux Servers with ClusterSSH
https://linux.die.net/man/1/cssh
کارکردن با سی اس اس اچ ساده است:
cssh -l username -p sshport machine_names/ips
cssh -l masoud -p 2222 srv1 srv2 srv3 srv4
با این دستور، همزمان ۴ تا پنجره باز میشه و به ۴ تا سرور ssh میزنه.
دستور cssh تنظیمات زیادی داره که میتونید توی این مسیر تغییرشون بدید:
~/.clusterssh/config
مثلا میتونید کنسول رو انتخاب کنید یا سایز پنجره ها رو تنظیم کنید و یا ssh args مورد نظرتون رو زمان ssh اتوماتیک اضافه کنید.
با این ابزار توی کامند لاین میشه کارهای جالبی انجام داد،
این مدلی رو شاید برنامه نویس ها بیشتر دوست داشته باشند، یا شاید هم دواپس کار ها یا حتی ادمین ها.
با این دستور به آی پی های ۱۹۲.۱۶۸.۱۰۰.۱۰ تا ۱۹ وصل میشید:
cssh 192.168.100.1{0..9}
با این دستور به آی پی های ۱۹۲.۱۶۸.۱۰۲.۱۱ - ۱۹۲.۱۶۸.۱۰۳.۱۱ تا ۱۹۲.۱۶۸.۱۰۹.۱۱ وصل بشید:
cssh 192.168.10{2..9}.11
اون هایی که توی دیزاین هاشون Rack Awareness استفاده میکنند، این خیلی به کارشون میاد.
اگر هم برا ماشین هاتون نام گذاری کردید اینم میتونه جالبه باشه:
cssh Cluster-Web-{1..8}