Nano Server の IIS の概要
互換性
バージョン | メモ |
---|---|
IIS 10.0 | この記事で説明する機能は、IIS 10.0 で導入されました |
IIS 8.5 以前 | この記事で説明されている機能は、IIS 10.0 より前ではサポートされていませんでした |
Nano Server
Nano Server は、Windows Server 2016 における画期的な新しいインストール オプションです。
Nano Server の概要をわかりやすく説明している Nano Server の概要ガイドの引用を次に示します。
"Nano Server は、プライベート クラウドとデータセンター向けに最適化されたリモート管理のサーバー オペレーティング システムです。 Nano Server は Server Core モードの Windows Server に似ていますが、サイズが大幅に小さく、ローカル ログオン機能がありません。さらに、64 ビットのアプリケーション、ツール、およびエージェントのみがサポートされます。 Windows Server と比べて Nano Server の場合は、使用されるディスク領域がかなり小さくなり、セットアップが大幅に速くなり、必要とされる更新と再起動の回数がずっと少なくなります。 再起動も非常に高速化されています。"
そのため、Nano のディスク上の占有領域が大幅に縮小されます。 意思決定。 再起動の回数が少なくなります。 使用メモリが少なくなります。 きっと気に入っていただけます。 :)
Nano Server の IIS
Windows Server 2016 のリリースから、すべてのユーザーにお試しいただけるように、IIS が Nano Server のロールとして利用できるようになりました。メモリが少なくてすみ、ディスク占有領域も大幅に縮小されているため、特に Web ワークロードは Nano Server での実行 (とりわけ高密度ホスティングの場合) に適しています。
作業の開始
Nano Server の概要の手順から始めます
IIS Nano のドキュメントは https://technet.microsoft.com/library/mt627783.aspx にあります
- また、[Getting started with Nano Server] (Nano Server の概要) の左側にあるツリー メニューからもそこにアクセスできます
Nano に IIS をインストールする方法の詳細については、上記のリンクを参照してください。
ただし、基本的に、Nano Server vhd(x) の最も一般的な作成方法は、New-NanoServerImage コマンドレットを使用することです。
IIS を有効にする場合、単に、Microsoft-NanoServer-IIS-Package
を引数として Packages パラメーターに渡します。 例:
New-NanoServerImage -MediaPath f:\ -BasePath .\Base -TargetPath .\Nano1.vhd -GuestDrivers -Packages Microsoft-NanoServer-IIS-Package
Nano および通常のサーバーの IIS の主な相違点
インストール
オンラインとオフラインの両方のインストールをサポートするために、Nano 用の IIS で多くの変更が行われています。 "オンライン" は、マシンが "実行中" のとき (ネットワーク接続に関する意味でのオンラインではありません) を意味し、"オフライン" は、マシンが実行中でないときを意味します。
従来、および通常のサーバーでは、IIS はオンライン (実行中のマシン) でのみインストールできます。 IIS を備えたマシンを準備するときは、通常、次のような手順に従います。
- OS をインストールする
- インストールが完了するまで待つ
- IIS ロールを有効にする
- IIS ロールが完了するまで待つ
- 設定 (認証設定、モジュール、Asp.Net など) を構成する
Nano Server を使用すると、セットアップをオフラインでプロビジョニングできるため、上記の手順 1 から 4 が大幅に簡素化および高速化されます。
New-NanoServerImage を使用して Microsoft-NanoServer-IIS-Package を含めて vhd(x) を作成する場合、既定での IIS の正常なインストールを構成します
インストールされている IIS サービス (WAS、W3SVC など)
既定のドキュメント、静的コンテンツ、HTTP ログなど、有効になっている既定の IIS サブ機能セット。
- サブ機能が既定で有効になっているチャートを参照してください。
既定の 80/443 ポートで有効になっているファイアウォール規則
IIS が既に組み込まれた生成済み vhd(x) イメージを使用すると、新しい Web サーバー マシンのプロビジョニングが大幅に高速化されます。 事務所のデスクトップ コンピューターで、新しい VM の作成、オフラインでの特殊化、起動、Web 要求の処理をすべて約 25 秒で行うことができました。 Server Core で同じ作業を実行しようとすると、その何倍もの時間がかかります。
構成
認証やログなどの IIS サブ機能の構成は、現在もオンラインのみの手順です (通常のサーバーと同じ)。
通常のサーバーでは、IIS サブ機能は dism /online /enable-feature /all /featurename:IIS-WindowsAuthentication
などの DISM コマンドを使用して有効または無効にすることができます。
Windows Server 2016 テクニカル プレビューでは、DISM を使用して IIS サブ機能を構成できず、さらに多くの作業が必要でした (そのため、テクニカル プレビュー...)これがまさに、改善が検討されている領域です。
現時点では、PowerShell コマンドを使用して該当するモジュールを有効または無効にするか、applicationHost.config を編集できます。詳細については、IIS Nano のドキュメントを参照してください。
そこにあるチャートには、最新のテクニカル プレビュー時点で Nano において使用できる IIS サブ機能も示されています。 * は既定で有効になっているものを示しています (* のないものも引き続き使用できますが、有効にする必要があります)。
サポートされるフレームワーク
ASP.NET Core
Nano と通常のサーバーの最も顕著な違いは、Nano が Asp.Net Core (旧称 Asp.Net 5) を対象にしていることです。 クラシック Asp は Nano では実行されず、Asp.Net <=4 などの .Net Framework アプリケーションも完全には実行されません。
Nano 上の IIS で Asp.Net Core アプリケーションを実行する方法に関するブログ投稿を次に示します。
Java
Java アプリケーションは、HttpPlatformHandler を介して IIS でホストできます。
同僚の Jeong Hwan による、Java を Nano上の IIS で動作させる方法に関するブログ投稿をここに紹介します
その他
IIS Nano で ASP.NET Core と Java をサポートすることは素晴らしいスタートですが、追加のプラットフォームをサポートする予定があります。 HttpPlatformHandler は、http リスナーへの要求の管理および送信のための汎用モジュールです。こうして、Nano 上で適切に実行できるものの、まだテストしていないために一覧に含めていないプラットフォームが他にもある可能性があります。
(Ruby や Node などを使用して) これを試し、動作させる場合は、お知らせください。
管理
Nano Server は "ヘッドレス" OS です。つまり、そのサーバー自体に GUI はありません。 PowerShell は、Nano 管理エクスペリエンスの中心です。 当然、これは、IIS PowerShell コマンドレットを使用して Nano 上の IIS を管理できることを意味します。
IIS 10.0 の時点では、次の 2 つの IIS PowerShell モジュールが存在します。
- 以前の WebAdministration モジュール
- 新しい IISAdministration モジュール
Nano Server は将来のためのクリーン サーバー プラットフォームであるため、現時点では以前のレガシ WebAdministration モジュールを含める計画はありません。 代わりに、新しい IISAdministration モジュールを提供します。
PowerShell (IISAdministration) に加え、appcmd.exe を使用して IIS を管理することもできます。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示