web-dev-qa-db-ja.com

サービスが終了する前にシャットダウンスクリプトを実行させることは可能ですか?

現在、プライマリがシャットダウンしたときにレプリカサーバーへの計画的なフェイルオーバーを実行するWindows Server2012のシャットダウンスクリプトを作成しようとしています。

私の問題は、シャットダウンスクリプトが実行されることです Hyper-Vサービスが停止しました。

以前に実行される可能性はありますか?

6
donothingloop

これはやり過ぎかもしれませんが、Hyper-Vサービスに依存し、サービスの終了時に必要なアクションを実行するサービスを作成する可能性があります...

4

Microsoft フェイルオーバークラスタリング テクノロジーは解決策のように見えます:

フェールオーバークラスタリング機能を使用すると、フェールオーバークラスターを作成および管理できます。フェールオーバークラスターは、アプリケーションとサービスの可用性を高めるために連携して機能する独立したコンピューターのグループです。クラスター化されたサーバー(ノードと呼ばれる)は、物理ケーブルとソフトウェアによって接続されます。クラスターノードの1つに障害が発生すると、別のノードがサービスの提供を開始します(フェイルオーバーと呼ばれるプロセス)。ユーザーは、サービスの中断を最小限に抑えます。

Server 2012の場合、 Windows Server 2012フェールオーバークラスターの作成 で詳しく説明されているように、いくつかの小さな変更があります。

多くの追加のドキュメントが利用可能です。例えば ​​:
Windows Server 2012 Hyper-Vフェールオーバークラスタリングの実装

1
harrymc

実際には、scheduleを使用して、サービス停止イベントでトリガーされるタスクを作成してから、shutdown -aを実行し、フェイルオーバーを実行して、shutdown-rを実行することができます。

重要なのは、タスクを起動するための適切なイベントを取得し、シャットダウンを中止できることを確認することです。

また、ウィンドウを更新して自動再起動を実行したり、スケジューラーを使用したり、イベントトリガーを実行してフェイルオーバーを実行したり、再起動を計画したりしないでください。

1
user218473