SharePoint 2010 をリモートから管理したい

by manamana 17. 3月 2013 14:30

SharePoint 2010 には多数の専用コマンドレットが用意されています。
これらをインストールしたサーバー上で使う時には問題が出ませんが、外部のPCからリモートで、
つまり WinRM 経由で呼び出すと何かと不具合が出ます。

先日作った、Get-SPDocumentPage.ps1 というスクリプトファイルがあります。
これを普通に起動すると… 

普通に動きますww  しかし、Invoke-Command -ComputerName xx で呼び出すと…

なにやら不穏なエラーが返ります。 しかもこのエラー、時々内容が変わります。

いろいろ調べてみたところ、PowerShell をリモート経由で呼び出す場合、SharePoint 用のコマンドレットのような大規模なものは
メモリー不足に陥りやすい事が判明しました。 回避するには WSMan プロバイダーの設定を変更してやる必要があります。

WSman:\localhost\shell に移動して、 MaxMemoryPerShellMB の値を大きくしてやります。
初期値が 150 なので 1024 にしてみました。

これで余裕が生まれ、リモートコマンドが成功します。

Invoke-Command でリモート実行すると、自動的に PSComputerName, RunspaceId というプロパティが追加されます。
便利な様で意外に邪魔だったりします。

Invoke-Command 時に -Credential オプションを指定せず、実行ユーザーの認証情報を使いたい場合には
Credential Security Provider の設定をする必要があります。 

クライアントPCで
> Enable-WSManCredSSP -role client -DelegateComputer sp2010    (※sp2010 はサーバー名)
サーバーで
Enable-WSManCredSSP -role server

としてやればOKですが、セキュリティレベルの低下に繋がるので要注意です。

これで Excel PowerShell Tool から SharePoint 2010 を管理する準備が出来ました。

Tags:

PowerShell

コメントを書く


スポンサーリンク

Calendar

<<  11月 2024  >>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

View posts in large calendar

Month List

Twitter