Azureでよく利用する仮想マシンサイズのDシリーズ、v3まではページングファイルを配置する用途の一時ディスクが必ずついてきていました。v4以降では一時ディスクのあり・なしで仮想マシンサイズが分かれています。一時ディスクの目的はページングファイル用というわけではなく、パフォーマンスが求められる一時領域用途に変更されており、ディスクサイズはVMのメモリサイズと比べると明らかに大きすぎるサイズが割り当てられています。一時ディスクありのタイプを選択すると$10以上月額が上がるので、不要であれば一時ディスクなしを選択することになります。
参考:Windows Virtual Machines の料金
というわけで、一時ディスクなしのタイプでWindows Serverをデプロイを試してみました。
Windows Server 2019をD2s_v5でデプロイしてみる
一時ディスクがないタイプであるD2s_v5を選択してWindows Server 2019をデプロイしてみます。
デプロイ後、マシンにログインして確認すると想定通り一時ディスクがない状態になっていることがわかります。v3でデプロイした時にはなかったDVDドライブがなぜかついています。
一時ディスクがなくなったので、仮想メモリの設定がどうなっているか確認します。
すると見た目上の設定は「ページングファイルなし」になっていますが、下部の割り当て済みのページングファイルサイズを見ると「1920MB」となっています。どういうこと?
「保護されたオペレーティングシステムファイルを表示しない」を無効化してCドライブ直下を確認してみたら、1.9GBほどのpagefile.sysがあります。
ページングファイルとして機能しているのかを念のため確認するため、Testlimitを使って物理メモリ以上のサイズで負荷をかけてみます。
負荷をかけた状態でページングファイルのサイズを再確認したら、サイズが拡張されていました。やはりページングファイルは有効になっています。
試しに「No paging file」のチェックが入っている状態で「Set」を押し、再起動してみたところ、ちゃんとページングファイルは無効化された状態になりました。
検証結果
一時ディスクなしのタイプでデプロイすると、仮想メモリ設定が見た目は無効、実際は有効、という状態になっていることがわかりました。とても紛らわしい状態になるので、明示的に仮想メモリを有効にする設定に変更することが望ましいですね。
なお、仮想メモリを完全無効化するとメモリダンプが出力できなくなるので、完全無効化はおすすめできません。