このページの本文へ

前へ 1 2 次へ

SP1までわかる!Windows Server 2008 R2入門 第4回

サービス管理の問題も解消

カーネル改良で省電力を追求したWindows Server 2008 R2

2011年06月08日 06時00分更新

文● 横山哲也/グローバルナレッジネットワーク

  • この記事をはてなブックマークに追加
  • 本文印刷

Windows Server 2008 R2の改良点として、第2回はマルチプロセッサ、第3回はメモリ管理の強化を紹介した。今回は、サービス関連の追加機能、そして大きな特徴でもある省電力化を実現する新機能を見てみよう。

課題が解決されたサービス管理

 Windowsの「サービス」とは、UNIXの「デーモン」とほぼ同じ目的で利用するバックグラウンドプロセスである。広く使われている機能だが、従来のWindowsでは利用に関して以下のような課題があった。

  1. 必要なときだけ起動させるのが面倒
  2. 定期的に実行しなければならない処理が多数ある
  3. サービスアカウントのパスワード管理が面倒

 Windows Server 2008 R2ではこれらのサービスの問題を解決するために、「トリガースタートサービス(Trigger Started Services)」、「タイマー結合」、「マネージドサービスアカウント」が追加された)。

画面1 多くのサービスが登録されているWindows Server 2008 R2 SP1

 トリガースタートサービスは、不要なサービスを停止させる機能である。従来のサービスは、いったん起動したらシャットダウンまで停止することはなかった。しかしサービスのなかには、常時起動する必要がないものも多い。

 たとえば「Windows Time(W32Time)」サービスは時刻同期を行なうが、実際に必要なのはドメインに参加するときだけである。また「TCP/IP NetBIOS Helper(LMHOSTS)」サービスはIPアドレスが有効になったときに必要で、無効になれば不要になる。このほか、一部のサービスは別のサービスから起動されるが、それはサービスプログラムの実装に依存する。

 Windows Server 2008 R2ではこうした事情を考慮して、サービスの開発者がトリガースタートの属性を設定できるようになった。トリガースタートが指定されたサービスは、サービスの起動や停止条件を指定することで必要に応じた自動起動と停止が行なわれ、リソースの消費量を最小限に抑える。現在設定されているトリガーは、コマンド

sc qtriggerinfo <サービス名>

で調査可能だ(画面2)。

画面2 コマンドラインから行なうトリガースタートの確認

割り込みを減らすタイマー結合

 タイマー結合も、パフォーマンスを向上させるための仕組みである。定期的に実行したいサービスは、タイマー割り込みを利用するのが一般的だ。しかし、タイマー割り込みはプロセス単位で設定するため、同じタイミングで複数のタイマーが設定されることがよくある。

 Windows Server 2008 R2の新しいタイマーAPIは、複数のタイマーが等間隔でスケジュールされている場合、それらを統合して割り込み回数を減らす。タイマーAPIを使うサービスやドライバーでは、許容可能な遅延時間を設定することで、複数のサービスの起動タイミングが完全に一致しなくても結合できようになっている。

パスワード管理をActive Directoryで

 3つ目のマネージドサービスアカウントは、サービスに割り当てたアカウントのパスワード管理を、Active Directoryに一任する機能だ。SQL ServerやIIS上で動作するWebアプリケーションなど、一部のサービスはネットワークアクセス可能なアカウントのログイン情報を必要とする。この場合、一般のユーザーアカウントをサービスに割り当てる。もちろんパスワードも必要だ。

 しかし、サービスアカウントは人間が対話的にログインするわけではないので、定期的にパスワードを変更するのは難しい。多くの管理者は、パスワードの有効期限を無期限にして、同じパスワードを使い続けているのが現状だ。

 この問題を解消するのが、マネージドサービスアカウントだ。これを使うには、専用のオブジェクトを作成する必要があり、Windows Server 2008 R2のドメインコントローラーが必須となっている。また、1コンピューターの1サービスあたりで、1アカウントが必要になる。パスワードの更新間隔は既定で30日だが、レジストリを操作すれば変更できる。

 ただし、現状ではセットアッププログラムが、マネージドサービスアカウントを認識しない場合がほとんどである。セットアップ時にエラーがでる場合は、とりあえず従来のユーザーアカウントを使って一度サービスをインストールしたあと、Windows Server 2008 R2のサービス管理ツールでサービスアカウントを手動で変更しなければならない。

 なお、マネージドサービスアカウントの管理ツールは、すべてPowerShellのコマンドとして提供される。GUIツールは存在しないので注意してほしい。

(次ページ、「省電力機能が大幅に強化」に続く)


 

前へ 1 2 次へ

カテゴリートップへ

この連載の記事