locked
Windows サービスの依存関係・サービスの再起動設定についいて RRS feed

  • 質問

  • Windowsサービスの起動について教えてください。
    (Windows2003Serverを利用しております)

    バッチファイルに、
    -------------------------------
     test.bat
    -------------------------------
    net stat "Windowsサービス1" /y
    net stat "Windowsサービス2" /y
    -------------------------------

    のように記述して、サービスを順次起動するプログラムを作成しております。
    また、Windowsのサービスの設定で「サービス2」は「サービス1」と依存関係があり
    「サービス2」は「サービス1」が起動している必要がある設定となっております。

    ①まず 「サービス1」の起動で失敗した場合は、「サービス2」のサービスは起動
    しないという認識で宜しいでしょうか?

    ②サービスの設定の「回復」のタブで、「サービス1」のサービスがエラーとなった
    場合の応答として、「最初のエラー」の設定で「サービスの再起動」と設定した
    場合は、「サービス2」は「サービス1」の起動を待ってからサービスの起動を行って
    くれる、という認識で宜しいでしょうか?

    以上、宜しくお願い致します。

     

    2009年8月18日 1:16

回答

  • こんにちは、フォーラムオペレーターの三沢健二です。

    サービスの起動時の動作について、簡単にですがご説明させていただきますね。

    各サービスが開始される際には、まず、そのサービスと依存関係にあるサービスを開始しようとします。
    そのため、2つのご質問については Mixed Nuts さんのご認識で問題ないと思われます。
    (2番目のご質問については、その時の状況によって、うまく再起動が行われない可能性も考えられます)

    例)
    ---
    "サービス 1" と "サービス 2" が存在し、サービス 2 は サービス 1 と依存関係があるとします。
    (サービス 2 の DependOnService にサービス 1 が設定してあるとします)

    どちらのサービスも停止状態の時に、サービス 2 を起動しようとすると、自動的にサービス 1 が起動し、次にサービス 2 が起動するようになっています。
    ここで、サービス 1 の起動に問題があれば、サービス 2 の起動も失敗します。

    コマンドで起動する場合、「net start "サービス 2"」 だけで、依存関係にあるサービス 1 も自動で起動するようになっています。
    ---

    ただ、何らかの問題があってサービスが起動出来ない事も想定されますので、バッチでサービスの起動を制御される場合には、サービスが起動しない場合の処理もご検討いただければと。
    サービスの起動失敗時にメッセージを送信するような設定を行われたり、監視ツールを使用するなど。
    (余計なアドバイスかもしれませんが念のために、、、)


    - 参考資料
    特定のサービスの読み込みを遅らせる方法
    http://support.microsoft.com/kb/193888/ja

    サービスの操作方法
    http://technet.microsoft.com/ja-jp/library/cc758812(WS.10).aspx


    それでは、こちらの情報が少しでもお役にたてれば幸いです。


    ______________________________________
    マイクロソフト株式会社 フォーラム オペレーター 三沢健二

     

    • 回答としてマーク 服部清次 2009年9月4日 8:14
    2009年8月21日 5:46

すべての返信

  • こんにちは、フォーラムオペレーターの三沢健二です。

    サービスの起動時の動作について、簡単にですがご説明させていただきますね。

    各サービスが開始される際には、まず、そのサービスと依存関係にあるサービスを開始しようとします。
    そのため、2つのご質問については Mixed Nuts さんのご認識で問題ないと思われます。
    (2番目のご質問については、その時の状況によって、うまく再起動が行われない可能性も考えられます)

    例)
    ---
    "サービス 1" と "サービス 2" が存在し、サービス 2 は サービス 1 と依存関係があるとします。
    (サービス 2 の DependOnService にサービス 1 が設定してあるとします)

    どちらのサービスも停止状態の時に、サービス 2 を起動しようとすると、自動的にサービス 1 が起動し、次にサービス 2 が起動するようになっています。
    ここで、サービス 1 の起動に問題があれば、サービス 2 の起動も失敗します。

    コマンドで起動する場合、「net start "サービス 2"」 だけで、依存関係にあるサービス 1 も自動で起動するようになっています。
    ---

    ただ、何らかの問題があってサービスが起動出来ない事も想定されますので、バッチでサービスの起動を制御される場合には、サービスが起動しない場合の処理もご検討いただければと。
    サービスの起動失敗時にメッセージを送信するような設定を行われたり、監視ツールを使用するなど。
    (余計なアドバイスかもしれませんが念のために、、、)


    - 参考資料
    特定のサービスの読み込みを遅らせる方法
    http://support.microsoft.com/kb/193888/ja

    サービスの操作方法
    http://technet.microsoft.com/ja-jp/library/cc758812(WS.10).aspx


    それでは、こちらの情報が少しでもお役にたてれば幸いです。


    ______________________________________
    マイクロソフト株式会社 フォーラム オペレーター 三沢健二

     

    • 回答としてマーク 服部清次 2009年9月4日 8:14
    2009年8月21日 5:46
  • Mixed Nuts さん、

    こんにちは!
    フォーラム オペレーターの服部 清次です。
    Mixed Nuts さんがこちらの質問を投稿されてから少し時間が経ちましたが、弊社の三沢健二が紹介しました情報はご確認いただけましたでしょうか?

    今回、弊社の三沢の回答が参考になるのではないかと思いましたので、同じ疑問を持たれた他の方々に参照いただくためにも、ひとまず私の方で、[回答としてマーク] のチェックを付けさせていただきました。
    もし Mixed Nuts さんの方で不明な部分が残っているようでしたら、お気軽に [回答としてマーク] のチェックを外して返信してください。 (^^)

    今後とも、TechNet フォーラムをよろしくお願いします。
    それでは、また! (^_^)/


    __________________________________________________
    マイクロソフト株式会社 フォーラム オペレーター 服部 清次

    2009年9月4日 8:17