PowerShellを有効にするには
PowerShellをApplications Managerで使うには、最新版のWindows Management Framework(Windows PowerShell 5.0)が、Applications ManagerのサーバーとリモートWindows Serverの双方で必要です。
PowerShellスクリプト実行の有効化
Applications Managerでデータ収集を行うには、PowerShellスクリプトの実行を有効にする必要があります。その手順を記します。
- PowerShellを管理者権限で開き、次のコマンドレットを実行します。
- Set-ExecutionPolicy Unrestricted
- 下記エラーが出る場合は、グループ ポリシー エディターからPowerShellスクリプト実行の設定を行ってください。
グループ ポリシー エディターからPowerShellスクリプト実行を設定する
- Win+R > ファイル名を指定して実行 > gpedit.mscなどとして、グループ ポリシー エディターを開きます。
- コンピューターの構成から、ポリシー > 管理用テンプレート > Windowsコンポーネント > Windows PowerShellと進んでください。
- 「スクリプトの実行を有効にする」設定が、以下のように表示されます。
- 設定をダブルクリックしてください。ドロップダウンから有効にするものを選択します。
- 「すべてのスクリプトを許可」にセットします。
- 「適用」をクリックしてOKしてください。
Windows PowerShellリモート コマンドの有効化と利用法
PowerShellが双方のサーバーで有効であることを確認ください。
- コントロール パネルを開きます。
- プログラム、プログラムと機能と選択してください(Windows 10世代の例)。
- タスク リストで、Windows機能の有効化または無効化をクリックしてください。
- サーバー マネージャーのコンソールが開いたら、Windows PowerShellが有効になっているか、確認ください。
Windowsリモート管理サービス(WinRM)が利用可能かの確認や、PowerShellリモート処理の設定は、以下の手順で行います。
- PowerShellを管理者として実行します。GUIでショートカット アイコンを右クリックし、管理者として実行を選択してください。
- PowerShellリモート処理を設定するには、次のコマンドを入力してください。Enable-PSRemoting -force
- 双方のコンピューターで信頼済みホストの設定を行い、互いに信頼させます。
リモートの監視対象サーバー側:
Set-Item wsman:\localhost\client\trustedhosts <Applications Manager hostname>
Applications Managerサーバー側:
Set-Item wsman:\localhost\client\trustedhosts * - リモート処理を有効にする際は、リモートのWindows Serverで次のコマンドレットも実行してください(Applications Managerサーバー側では不要)。
「Set-Item WSMan:\localhost\Shell\MaxShellsPerUser -value 25 -WarningAction SilentlyContinue」
これによって、リモートで開ける同時シェルの数が増えます。
「Set-Item WSMan:\localhost\Shell\IdleTimeout -value 60000 -WarningAction SilentlyContinue」
このコマンドレットにより、リモート コンピューターがローカル コンピューターから、ハートビートシグナルを含め通信を受信していない場合に、セッションをオープンにし続ける時間を決定できます。この時間が過ぎると、セッションはクローズとなります。 - 双方のコンピューターでWinRMを再起動し、新しい設定を有効にしてください。Restart-Service WinRM
設定と接続は、Applications Managerから次の手順でテストできます。
- PowerShellを管理者権限で開きます。
- 次のコマンドを実行してください。$testSession= New-PSSession -ComputerName <REMOTE-HOSTNAME> -Credential Get-Credential
- ポップアップ画面が表示されたら、リモート サーバーの資格情報を入力します。
- エラーの際は、設定を見直して解決ください。
- 手順3が問題なく実行できれば、テスト セッションの削除のため、次のコマンドを実行します。Get-PSSession | Remove-PSSession
上記の手順で、WinRMサービスがリモート コンピューターで稼働しているか、Applications Managerはリモート サーバーと通信できるかのテストができます。