株式会社ネットワールドのエンジニアがお届けする技術情報ブログです。
各製品のエキスパートたちが旬なトピックをご紹介します。

Citrix XenAppのためのWindows Server 2016最適化

本記事の原文はCitrixのアーキテクトである Daniel Feller氏 (@djfeller) によるものです。

原文を参照したい方はWindows Server 2016 Optimizations for Citrix XenAppをご確認ください。

情報は原文の投稿時のままの情報ですので、現時点では投稿時の情報と製品とで差異が出ている場合があります。


「OSの最適化」についてお話しますと、私は「2つの側面」があると考えています。

最適化はサーバー単体のスケーラビリティを向上させますが、OSを複雑に設定するほどOSを破損させてしまう可能性が高くなると思います。

デフォルトアプリケーション

Windows 10にはユーザーのログオン時間を増加させる既定のアプリケーションが多数ありますが、
Windows Server 2016にはこのような追加機能はありません。

サービス

Windows 10で無効にしたサービスの多くは、Windows Server 2016では既に手動として構成されています。
もう少し深いところに目を向けますと、これらのサービスの多くはアプリケーションによる要求に基づいて開始されるか、スケジュールされたタスクに基づいて起動されます。
サービスの起動が無効になっている場合、サービスとの連携が必要なアプリケーションまたはシステムコンポーネントは起動に失敗します。
このサービス起動の無効化設定によってアプリケーション/システムの問題が引き起こされ、サポートを呼び出したうえで長時間のトラブルシューティングを行わなければならない、という結果となってしまいます。
これらに基づき、無効にするべき唯一のサービスは次のとおりです。

注:マイクロソフトは無効化にすることができるサービスと無効化するべきではないサービスの一覧を公開しています。無効化することができるサービスのほとんどは手動起動モードに設定されています。

名前(サービス名)

スタートアップ
の種類

状態

公開アプリ
での設定

公開デスクトップでの設定
Themes 自動 実行中 無効 有効にすると : ユーザーエクスペリエンスの向上
無効にすると : サーバーでの集約率の向上

スケジュールされたタスク

スケジュールされたタスクは、トリガーが条件を満たしたときだけ実行されますので、集約度に対する影響は部分的です。
無効にする対象を決定するときは、非永続な環境でタスクによる影響を調べる必要があります。
この前提はXenApp Best Practice #3:Consistencyに基づきます。

スケジュールされたタスク - アプリケーション

タスク 説明

Application Experience \ Microsoft Compatibility Appraiser

アプリケーションの互換性の問題を解決するのに役立ちます。
Application Experience \ StartupTask 起動エントリーが多すぎるかどうかを判断し、ユーザーに通知します。

スケジュールされたタスク - Microsoft Customer Experience Program

タスク 説明
AutoCHK \ Proxy このタスクはMicrosoftカスタマーエクスペリエンス向上プログラムに
同意した場合、autochk SQMデータを収集してアップロードします。
Customer Experience Improvement Program \Consolidator このタスクはWindowsカスタマエクスペリエンス向上プログラムに
参加することに同意した場合、Microsoftに使用データを収集して
送信します。
Customer Experience Improvement Program \KernelCeipTask このタスクはシステムに関する追加情報を収集し、カーネルCEIP
(Customer Experience Improvement Program)のデータを
マイクロソフトに送信します。
ユーザーがCEIPに参加することに同意しない場合、このタスクは
何も行いません。
Customer Experience Improvement Program \UsbCeip このタスクは、ユニバーサルシリアルバス関連の統計情報と
コンピュータに関する情報を収集し、MicrosoftWindows
Device Connectivityエンジニアリンググループに送信します。
受け取った情報は、WindowsのUSBの信頼性、安定性、および
全体的な機能を向上させるのに役立ちます。
ユーザーがCEIPへの参加に同意しなかった場合、このタスクは
何も行いません。

スケジュールされたタスク - 安全性

タスク 説明
Windows Defender \ Windows Defender Cache Maintenance 別のウイルスとマルウェアの保護がインストールされている場合は無効にすることができます。
Windows Defender \ Windows Defender Cleanup 別のウイルスとマルウェアの保護がインストールされている場合は無効にすることができます。
Windows Defender \ Windows Defender Scheduled Scan 別のウイルスとマルウェアの保護がインストールされている場合は無効にすることができます。
Windows Defender \ Windows Defender Verification 別のウイルスとマルウェアの保護がインストールされている場合は無効にすることができます。
Windows Filtering Platform \BfeOnServiceStartTypeChange このタスクは、BFE(Base Filtering Engine)のスタートアップの種類が無効になっている場合に、
ファイアウォールによって実行されるサービスのスタートアップの種類を調整します。

スケジュールされたタスク - メンテナンス

タスク 説明
CHKDSK \ Proactive Scan NTFSボリュームの健全性スキャンをします。
Diagnosis \ Scheduled Windowsの定期メンテナンスタスクは、問題を自動的に解決するか、
またはアクションセンターを通じて報告することによって、コンピューターの
定期的なメンテナンスを実行します。
DiskDiagnostic \ Microsoft-Windows-DiskDiagnosticDataCollector Windows Disk Diagnosticは、Customer Experience Programに参加している
ユーザーのために、一般的なディスクおよびシステム情報をMicrosoftに報告します。
Maintenance \ WinSAT システムのパフォーマンスと機能を測定します。
Power Efficiency Diagnostics \ AnalyzeSystem このタスクは、高いバッテリー使用を引き起こす可能性のある状態を探して
システムを分析します
RecoveryEnvironment \ VerifyWinRE Windowsの回復オプション環境を検証します。
Registry \ RegIdleBackup レジストリアイドルバックアップタスクです。

スケジュールされたタスク - 一般的なもの

タスク 説明
Mobile Broadband Accounts / MNO Metadata Parser モバイルブロードバンドユーザーに関する情報を解析します。
Power Efficiency Diagnostics \ AnalyzeSystem このタスクは、高いバッテリー使用を引き起こす可能性のある状態を探してシステムを分析します。
RAS / MobilityManager 既定のインターフェイスがダウンしたときに、モビリティ対応VPN接続切り替えへのサポートを提供します。
Shell / IndexerAutomaticMaintenance 検索インデックスのメンテナンスをします。
WDI \ ResolutionHost Windows診断インフラストラクチャ解決ホストは、診断ポリシーサービスによって検出されたシステム
問題の対話型の解決を可能にします。
これは、適切なユーザーセッションで診断ポリシーサービスによって必要に応じて実行されます。
診断ポリシーサービスが実行されていない場合、このタスクは実行されません。

ユーザーインタフェース

ユーザーインターフェイスの最適化の多くはWindows 2000 Server以降で使用されています。
これにはユーザーからサーバーの管理ツールを隠すための設定と、ユーザーインターフェイスの機能を無効化することにより全体的な集約率を高める設定があります。

最適化項目 設定個所
スクリーンセーバーを無効化 HKEY_USERS\.DEFAULT\ControlPanel\Desktop
“ScreenSaveActive”=dword: 00000000
ハードウェアに関するエラーを非表示 [HKEY_LOCAL_MACHINE\System\CurrentControlSet\
Control\Windows]
“ErrorMode”=dword:00000002
視覚効果をカスタムに設定する [HKEY_CURRENT_USER\Software\Microsoft\Windows\
CurrentVersion\Explorer\VisualEffects]
“VisualFXSetting”=dword:00000003
「半透明の[選択]ツールを表示する」を無効化 [HKEY_CURRENT_USER\Software\Microsoft\Windows\
CurrentVersion\Explorer\Advanced]
“ListviewAlphaSelect”=dword:00000000
「ウィンドウの下に影を表示する」を無効化 [HKEY_CURRENT_USER\Software\Microsoft\Windows\
CurrentVersion\Explorer\Advanced]
“ListviewShadow”=dword:00000000
ウィンドウを最大化や最小化するときにアニメーションで表示する [HKEY_CURRENT_USER \ControlPanel\Desktop\WindowMetrics]
“MinAnimate”=”0”
「タスクバーでアニメーションを表示する」を無効化 [HKEY_CURRENT_USER\Software\Microsoft\Windows\
CurrentVersion\Explorer\Advanced]
“TaskbarAnimations”=dword:00000000
プレビューを有効にする」を無効化 [HKEY_CURRENT_USER\Software\Microsoft\Windows\DWM]
“EnableAeroPeek”=dword:00000000
タスクバーの縮小版のプレビューを保存する」を無効化 [HKEY_CURRENT_USER\Software\Microsoft\Windows\DWM]
“AlwaysHibernateThumbnails”=dword:00000000
スクリーンフォントの縁を滑らかにする」を無効化 [HKEY_CURRENT_USER \Control Panel\Desktop]
“FontSmoothing”=”0”
視覚効果の無効化 [HKEY_CURRENT_USER \Control Panel\Desktop\]
“UserPreferencesMask”=RegBin: “90,12,03,80,10,00,00,00”
マウスカーソルの点滅を無効化 [HKEY_CURRENT_USER \Control Panel\Desktop]
“CursorBlinkRate”=”-1″
Internet Explorerの初回起動時のウィザードを無効化 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\
Microsoft\InternetExplorer\Main]
“DisableFirstRunCustomize”=dword:00000001
メニューの遅延表示を減らす [HKEY_CURRENT_USER\ControlPanel\Desktop]
MenuShowDelay”, “0”

システム

最終的な最適化はシステムレベルの設定にフォーカスしており、お客様の組織はシステムの価値を最大限に引き出すことができます。

システム - BIOS

最適化項目 設定個所
最大パフォーマンス (電源) BIOSが低電力モードではなく最大パフォーマンスで設定されていることを確認します。

システム - コマンド

最適化項目 設定個所
休止状態の無効化 Powercfg -h off

システム - レジストリの更新

最適化項目 設定個所
NTFSの最終アクセス日時の更新を無効化 [HKEY_LOCAL_MACHINE\SYSTEM\
CurrentControlSet\Control\FileSystem]
“NtfsDisableLastAccessUpdate”=dword:00000001
メモリダンプの生成を無効化 [HKEY_LOCAL_MACHINE\SYSTEM\
CurrentControlSet\Control\CrashControl]
“CrashDumpEnabled”=dword:00000000
“LogEvent”=dword:00000000
“SendAlert”=dword:00000000
ディスクI/Oのタイムアウト値を200秒に増やす [HKEY_LOCAL_MACHINE\SYSTEM\
CurrentControlSet\Services\Disk]
“TimeOutValue”=dword:000000C8

記事担当者 : SI技術本部 海野 航 (うんの わたる)