我编写了一个服务器程序来监控某些设备(通过使用 udp),并且该程序(带有服务器计算机)需要发送给我的客户。
他们对计算机一无所知,而且离得很远,网络状况也很差(也许我无法远程登录这台计算机),所以我不希望发生任何不好的事情。
我应该考虑哪些问题?
ps:一些细节:我正在使用 ubuntu10.04 桌面版 + tornado + sqlalchemy + mysql + zeromq,我正在使用 monit 来保持这些程序运行。
编辑:
也许这个主题很笼统,我认为它对于那些面临同样问题的人来说很重要。系统管理员总是面临以前从未遇到过的问题,从失败中学习的代价是昂贵的。也许有一本关于这方面的书?
答案1
在将您的计算机部署到他们的系统之前,您可能需要了解很多事情。
- 默认系统管理员密码
- 要分配的 IP 地址,或者应该使用 DHCP
- 断电后系统是否应该自动启动
您很可能需要去他们的站点安装机器,否则就无法知道它是否正确启动,以及网络路由器是否已设置好以便您在需要时进行远程控制。
答案2
通过提供 UPS 和软件来监控系统并在电池耗尽之前自动关闭系统,保护系统免受意外断电。
假设上述情况发生故障,电源意外断电。您可以让您的“服务器”使用实时 CD(或类似设备)运行吗?
提供自动备份解决方案,将动态数据(根据需要频繁地)转储到可移动媒体。提供有关此问题的文档以及如何在需要时恢复数据 - 测试所有这些。
记录并测试用户需要在系统上执行的所有流程。
你还应该列出你不负责的事情,例如
提供备份媒体
更改备份媒体
...