将自己写的windows服务加入到windows集群中

最近发现windows集群能进行很多自定义,比如在集群中加入自己编写的服务。

能自定义的可不少,截个图:

本次演示中,只想用“通用服务”这个类型。

  • 先列下步骤
    1. 编写一个记录时间的Windows服务,这个服务会每隔1秒钟写入本地文件当前时间
    2. 在两台加入了windows集群的服务器中分别安装这个服务(安装即可,不用启动)
    3. 在windows集群中配置一个新服务,也就是上面这个服务
    4. 进行故障转移试验

 

  • 编写一个记录时间的Windows服务,这个服务会每隔1秒钟写入本地文件当前时间

这个的代码略,没啥可说的,把安装服务、卸载服务的cmd列下面了(InstallUtil.exe需要根据情况从相应的.net framework目录下找)

我的demo项目会生成如下文件:

 

  • 在两台加入了windows集群的服务器中分别安装这个服务(安装即可,不用启动)

将输出的文件拷贝过去,然后double click install.bat,搞定后会看到服务列表最后多了1个名叫“时间记录器”的服务(两台server都要安装)

 

  • 在windows集群中配置一个新服务,也就是上面这个服务

至此,集群服务增加完成,可以看到2个server中的一个节点已经自动运行服务了(另外一个节点上的服务处于停止状态):

 

  • 进行故障转移试验

我们来手动切换服务运行的节点吧:

切换完成后,服务状态会和原先的倒过来,图略,我们来看看日志:

可以看到,切换所损耗的时间为13秒(看性能...)

 

 

posted @ 2014-02-27 16:45  McKay  阅读(4473)  评论(2编辑  收藏  举报