DIY“自动化”机房

在小公司工做,有一点好处就是能够接触到方方面面,而且能够自由的发挥想象力把事情作得不同。

公司这边大概十几人的团队,版本控制等重要的服务器放在比较省心的地方,可是开发服务器仍是须要放在本地局域网环境中,保证访问速度,减小网速等因素对工做效率的影响。因为开发服务器不须要不间断的工做,所以合理的利用以及节约资源是须要的。其实因为前面彻底人工管理开发服务器,常常忘记关机,已经报废了好几块硬盘,早上到公司后也不是第一时间开启服务器,连不上数据库了才想起开发服务器没开启,也很耽误时间。linux

初步的需求设想:
1.自动开机关机,延长机器寿命。
2.大部分server都是在这台机器上挂的虚拟机,因此也须要管理虚拟机开机关机。
3.炎热夏季,控制空调开关。ios

自动开机关机方案: 如今的主板bios中通常都支持自动开机,电源管理里面能够设置自动开机时间,缺点是只能按照星期设定。自动关机就更简单了,windows里面制定任务计划执行bat(linux下任务计划执行shell也是同样的), 自动关机命令shell

shutdown -s

为何选择执行bat的方式关机?----------由于还要关闭虚拟机。数据库

虚拟机自动开机关机方案: 虚拟机采用的是virtualbox,经过bat调用virtualbox的启动和关机命令便可,可是这里须要注意的是:a.有时候挂了虚拟机会忘记设置虚拟机的屏保时间,形成虚拟机是屏保状态,调用一次关机只是唤醒了虚拟机,而不是关机,这里须要注意间隔上一两分钟再次调用关机命令。b.virtualbox有一个headless模式,即不启动虚拟机的图形界面,一headless模式启动虚拟机会节省很多资源,缺点是不能远程桌面链接了,咱们选择的是节省资源。windows

cd C:\Program Files\Oracle\VirtualBox

关机命令api

VBoxManage controlvm {c7a8b98d-c571-44a6-ba99-964274dd3a0b} acpipowerbutton

开机命令服务器

VBoxManage startvm {c7a8b98d-c571-44a6-ba99-964274dd3a0b} --type headless

括号内是虚拟机的惟一标识,显示uuid的命令(startvm 命令的参数也能够是虚拟机名称,名称内有空格的时候,给整个名字加上引号)app

VBoxManage list vms

控制空调方案: 用智能开关直接控制空调的电源?固然你想这么作也不是不能够,会不会忽然断电把空调的压缩机给废了,我就不解了。less

咱们采用的方案是遥控。如今的空调几乎都带遥控,遥控的原理就是红外信号,淘宝上能够买到一种插到手机耳机接口上的红外发射器(很便宜,几块钱一个),原理是播放wav音频,产生电流,红外发射器根据电流的变化,发射出红外信号,进而达到控制目的,经常使用的app有遥控精灵、遥控大师。ui

如何让这个接耳机接口的红外发射器在电脑上工做起来,其实就是在电脑上播放wav文件而已。。。bat直接调用media player便可,须要注意的是电脑音量开到最大,电脑声卡功率不一样效果会有差异。接红外发射器以及播放wav文件都很简单,如何获取开空调关空调命令的wav数据才是关键,随后再专门写一篇文章讲解。

下一步的计划: 1.买一个arduino板子,把各种控制独立出来。 2.支持语音控制,好比导出某服务器的某数据这样子的操做经过语音控制,相信会极大提升效率(脑子太笨了,命令太多了,记不住啊记不住) 3.自动备份各种数据到网盘全(免费空间真不小,不利用起来太浪费)。这部分已经作了一些工做,起初想的是经过调用网盘api来上传,无奈世界太现实,能够看看个人另外一篇博文《国内巨头OPEN现状》。简单有效的办法就是装一个网盘客户端,把要备份的数据导出到指定目录,让网盘客户端同步那个目录吧。

相关文章
相关标签/搜索