Windows の機能のインストール: IIS - AWS OpsWorks

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Windows の機能のインストール: IIS

重要

この AWS OpsWorks Stacks サービスは 2024 年 5 月 26 日にサポート終了となり、新規および既存のお客様の両方で無効になっています。できるだけ早くワークロードを他のソリューションに移行することを強くお勧めします。移行についてご質問がある場合は、 AWS re:Post または AWS Premium Support を通じて AWS Support チームにお問い合わせください。

Windows の機能は、.NET Framework や Internet Information Services (IIS) など、一連のオプションのシステムコンポーネントです。このトピックでは、一般的に使用される機能として Internet Information Services (IIS) をインストールするクックブックを実装する方法について説明します。

注記

パッケージのインストール」では、MSI ファイルなどのインストーラパッケージに付属していて、インスタンスにダウンロードして実行する必要のあるソフトウェアをインストールする方法を示しています。IIS クックブック

Windows インスタンスでのレシピの実行」では、powershell_script リソースを使用して Windows の機能をインストールする方法を示しています。この例では、別のアプローチとして、Chef の Windows クックブックwindows_feature リソースを使用しています。このクックブックには、デプロイイメージサービスおよび管理を使用して Windows でさまざまなタスク (機能のインストールなど) を実行する一連のリソースが含まれています。

注記

Chef には、IIS の管理に使用できる IIS のクックブックも用意されています。詳細については、「IIS クックブック」を参照してください。

クックブックをセットアップするには
  1. Windows クックブック GitHub リポジトリに移動し、クwindowsックブックをダウンロードします。

    この例では、windows リポジトリを .zip ファイルとしてダウンロードしますが、必要に応じてリポジトリを複製できることも前提としています。

  2. Chef_handler クックブック GitHub リポジトリに移動し、クchef-handlerックブックをダウンロードします。

    windows クックブックは chef_handler に依存しており、直接使用することはありません。この例では、chef_handler リポジトリを .zip ファイルとしてダウンロードしますが、必要に応じてリポジトリを複製できることも前提としています。

  3. windowschef_handler という名前のディレクトリに windows および chef_handler クックブックを抽出します。

  4. install-iis という名前のクックブックディレクトリ内にディレクトリを作成し、そのディレクトリに移動します。

  5. install-iis に、次のコンテンツを含む metadata.rb ファイルを追加します。

    name "install-iis" version "0.1.0" depends "windows"

    depends ディレクティブにより、レシピで windows クックブックのリソースを使用できます。

  6. recipes ディレクトリを install-iis に追加し、以下のレシピコードを保存した default.rb という名前のレシピファイルをそのディレクトリに追加します。

    %w{ IIS-WebServerRole IIS-WebServer }.each do |feature| windows_feature feature do action :install end end service 'w3svc' do action [:start, :enable] end

    レシピによって windows クックブックの windows_feature リソースが使用されて、以下のものがインストールされます。

    その後、レシピによって service リソースが使用されて、IIS サービス (W3SVC) が有効になります。

    注記

    利用可能な Windows の機能の完全なリストについては、RDP を使用してインスタンスにログインし、コマンドプロンプトウィンドウを開き、以下のコマンドを実行してください。リストは非常に長くなっています。

    dism /online /Get-Features
  7. install-iischef_handler、および windows クックブックを含む .zip アーカイブを作成し、アーカイブを S3 バケットにアップロードします。アーカイブを公開し、後で使用できるようにその URL を記録します。この例では、アーカイブ名を install-iis.zip としています。詳細については、「クックブックリポジトリ」を参照してください。

    Amazon S3 バケットに配信されるコンテンツには、カスタマーコンテンツが含まれている場合があります。機密データの削除の詳細については、「S3 バケットを空にする方法」または「S3 バケットを削除する方法」を参照してください。

以下のようにこの例のスタックを作成します。既存の Windows スタックを使用することもできます。後で説明するように、クックブックを更新するだけです。

Stack を作成する
  1. AWS OpsWorks スタックコンソールを開いて [Add Stack] を選択します。以下の設定を指定し、その他の設定はデフォルト値を受け入れて、[Add Stack] を選択します。

    • Name (名前) – InstallIIS

    • リージョン – 米国西部 (オレゴン)

      この例はいずれのリージョンでも動作しますが、チュートリアルでは米国西部 (オレゴン) を使用することをお勧めします。

    • Default operating system (デフォルトのオペレーティングシステム) – Microsoft Windows Server 2012 R2

  2. [Add a layer] を選択し、以下の設定を使用してスタックにカスタムレイヤーを追加します。

    • Name (名前) – IIS

    • Short name (短縮名) – iis

  3. デフォルト設定で IISレイヤーに 24/7 インスタンスを追加し、起動します。

これで、クックブックをインストールし、レシピを実行できるようになりました。

クックブックをインストールし、レシピを実行するには
  1. カスタムクックブックを有効にするようにスタックを編集し、以下の設定を指定します。

    • Repository type (リポジトリタイプ) – S3 Archive (アーカイブ)

    • Repository URL (リポジトリの URL) – 前の手順で記録したクックブックのアーカイブの URL

    その他の設定ではデフォルト値を受け入れ、[Save] を選択してスタック設定を更新します。

  2. [Update Custom Cookbooks] スタックコマンドを実行します。スタックのオンラインインスタンスにカスタムクックブックの最新バージョンがインストールされます。以前のバージョンのクックブックがある場合は、このコマンドによって上書きされます。

  3. カスタムクックブックの更新が終了したら、実行するレシピinstall-iis::default に設定してレシピの実行スタックコマンドを実行することで、レシピを実行します。このコマンドによって Chef 実行が開始され、指定したレシピが実行されます。

    注記

    この例では、便宜上 Execute Recipes を使用していますが、通常、 AWS OpsWorks スタックは適切なライフサイクルイベントに割り当てることでレシピを自動的に実行します。このようなレシピは、イベントを手動でトリガーすることによって実行できます。Setup および Configure イベントをトリガーするにはスタックコマンドを使用し、Deploy および Undeploy イベントをトリガーするにはデプロイコマンドを使用できます。

  4. インストールを確認するには、RDP を使用してインスタンスに接続し、Windows Explorer を開きます。ファイルシステムに C:\inetpub ディレクトリがあることを確認できます。[Administrative Tools Control Panel] アプリケーションでサービスのリストを確認する場合、IIS は末尾近くで見つかります。ただし、IIS ではなく World Wide Web Publishing Service という名前になります。