轻松管理上万台Linux服务器,5分钟安装,一键完成!--出新版本啦,改名为TriAqua,带WEB界面

Alexander-li 2012-12-23 06:39:42

如果你有以下需求,本文章或许会对你有所帮助:
1. 网络里LINUX服务器较多,缺乏统一管理的工具。
2. 系统经常需要更改,如果定期更改所有服务器密码、批量更新特定文件等。
3. 需实时获得所有服务器的运行信息,例如,需立刻查看每台服务上装分别装了多少根内存条该怎么办,难道一台台登录 上去看?当然一般的系统监控软件是不会收集服务器有多少条内存条这样的信息的。
4. 如果想往所有服务器上放一个文件,怎么办?
5. 想在所有服务器上启动一个服务或执行一个脚本怎么办?
_____________________________________________________________________________________

推出新版本啦,新版本实现以下功能:
先Show下功能:
IT批量运维管理软件-- TriAquae
1. 服务器分组管理
2. 批量命令执行
3. 批量文件传送、接收
4. 服务器运行状态抓取、分析
5. 服务器硬件信息收集
6. 定时计划任务
7. 批量软件部署
8. 系统密码更改

我推荐大家使用 TriAquae的理由:
1、 它如此方便,你可以像管理本地一台服务器一样可以轻松的让成千上万台服务器做同样的事情,比如 uname –a查一下系统版本,执行一个收集日志的脚本,修改所有服务器上的一个文件……,当然它能做的不至这些……
2、 它如此之轻,只要你的机器上装有Python,那么你就可以开始使用它,它不需要你装数据库,不需PHP、不需要JAVA虚拟机,only Python。你甚至不需要在客户机上装客户端,只需要支持SSH,当然你得知道用户名密码
3、 它如此简单,你无需学习特殊的语法、花数天的时间研究软件的结构,只需5分钟,你就可以开始自如的使用它管理你的系统了
4、 它是开源的,它是免费的……

#####比以前的版本,多了好多功能呢,还不需要在被管理机上装客户端了呢,飞跃了亲……哈哈




大家在读下文时如有不理解的地方或其它问题,可以随时联系我,大家互相交流,共同成长
############################################

做Linux系统管理以来,由于维护过比较大的网络,例如在飞信做支持的时候,面对上千台的服务器,有时候可能要对每台机子打一个补丁,或者是修改一个文件,如果只有10台服务器,那一一修改也就罢了,但是如果让你一台一台的登录1000台服务器只是为了去改一个文件,那一定痛苦死,并且效率低下,没有任何技术含量,如果一直做这种工作,那被称为IT民工也不能怪别人了,因为我一直想找一个可以批量管理的工具,后来发现了两种方式可以实现:

1.    通过SSH密钥认证,这样登录到远程机器上后就不需要输入密码了,这样就可以通过脚本去批量登录到远程服务器并且修改你想要文件或操作等,但是这有一个缺点,就是这个在管理端的私钥你一定要保存好,万一管理服务器系统重装或其它原因导致私钥丢失,那你就没办法登录远程机器了。还有,如果需要管理的机器更改了IP,那你还得重新把公钥COPY到那台机子上,这样管理起来可能不是那么灵活。

2.    通过expect 工具进行批量管理,expect工具很强大,可以实现交互式管理,比如如果你想改密码,输入passwd命令后,系统会提示你输入New Password: ,如果使用普通脚本的话,那你是没办法进行交互式的。但是expect就可以做到检测系统的返回值并且根据返回的提示来自动交互


这样此脚本就会调用ha-switch.exp脚本并登录到192.168.193.100-200的机器上分别执行"/etc/init.d/heartbeat stop 命令了。

很强大吧,但使通过我使用的经验,我觉得expect 有个缺点就是有慢,因为它是一台一台的去登录 然后执行命令,因为有的时候由于DNS解析或什么原因 ,通过SSH登录到一台机子时可能需要等待30s才能登录进去,假如1000台机子的话那就需要50分钟才能完成在所有机器上的操作,对于要求在1分钟内实现数千台机器执行相同操作的需要来讲这显然达不到要求。



以上两种方法各有利弊,我个人建议在50-100台的小网络中可以考虑使用SSH认证或expect的方法。但是想像一下,如果我有一万台机器 ,分别处于全国各地不同的网络中,要求我在1分钟内更改所有机器的root密码,显然以上两种方法均是做不到的,当然有这样大型网络的公司中国也并不多见,但是从技术的角度上来讲这还是有一定挑战性的,由于在网上一直找不到这样的工具,我就自己索性写了一个,经过多天的努力,终于将这个批量管理工具写完了,此工具是用的Python写的,基于socket server的模式,即需要在所有的需要管理的服务器上启动一个客户端(可能好多朋友不太喜欢这种还需要装客户端的东东),客户端会开启一个端口,你的管理服务器就是通过此端口与被管理端通信,然后对被管理端进行操作,你可以远程修改密码,查看系统信息,内存情况等操作,操作结果会在你的管理端实现显示出来(这也是我比较喜欢的地方,就跟在本地操作命令一样)。并且还可以向远程服务器批量COPY文件,

...全文
260 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
morris88 2013-01-09
  • 打赏
  • 举报
回复
支持!
woaimingde 2013-01-09
  • 打赏
  • 举报
回复
哇啊,我正要试试用expect呢,多谢楼主分享该文章。请问你开始用这个TriAquae了吗?如何?真的好用吗?期待啊!!
ljc007 2012-12-24
  • 打赏
  • 举报
回复
感谢分享

19,619

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧