2011-01-19 5 views
4

「Windowsサービス」で使用できる最適な自動展開方法を探しています。私はAppFabricを見てきましたが、これはWebサービス/ IISとWCFに非常に関連しているようです。Windowsサービスの導入を自動化する最良の方法/複数のリモートエンドポイントへのインストール?

MSDeployも調べましたが、これは私が探していたすべての機能を実際にカバーしていないようです。

例として、複数のプロジェクト/ウィンドウサービスを持つ.NETソリューションがあります。これらのパッケージを複数のサーバーにリモート展開してから、リモートでWindowsサービスをインストールしたいと考えています。すべて1つのスクリプト/マシンから。それぞれのサーバーへのユーザーログインを必要とせずに、手動でインストールします。

これに対応するソフトウェアの提案はありますか?

答えて

5

これを処理するためのツールは、基本的なスクリプトの例だけではありません。私は基本的なスクリプトの例について話します。

これをバッチスクリプトで対処する方法は、PsExec(SysInternalsツールの1つ)を呼び出すことです。 PsExecを使用して、タスクのリモート実行を行うことができます。指定する必要がある資格情報は、リモートマシンのローカル管理者である必要があります。私は2つのディレクトリ間でファイルをコピーしたい場合は、私は次のことを行うことができ

PsExec \\computername -u adminuser -p adminuserpassword somecommand somecommandarguments 

:たとえば

PsExec \\computername -u adminuser -p adminuserpassword xcopy "C:\TestFile.txt" "C:\MyDir\TestFile.txt" /i /e /r /y 

私はTOOLSディレクトリにSysInternalsのツールをダウンロードし、私にそれを追加したいです私はPsExecへの完全なパスを使用する必要はありませんので、PATH環境変数。

WindowsサービスをラップしてMSIでパッケージ化してインストールすることができます。 MSIパッケージでは、Windowsサービスをインストールする方法を定義することができます。これにより、手動でWindowsを起動するか、または他の方法でも起動できます。ユーザーアカウントを設定して、それを実行することもできます。私はいつも手動でサービスを開始することを好みます。 MSIパッケージを実行するには、コマンドラインツールMSIEXECを使用します。あなたはそうのようなコピーと展開を行うために一緒にこれらのコマンドをチェーンすることができます

PsExec \\computername -u adminuser -p adminuserpassword xcopy "\\buildserver\DeploymentPackages\MyWinService-v1\MyWinService.msi" "C:\Updates\MyWinService.msi" /i /e /r /y 

PsExec \\computername -u adminuser -p adminuserpassword MSIEXEC /i "C:\Updates\MyWinService.msi" INSTALLDIR="C:\Program Files (x86)\MyWinService" 

PsExec \\computername -u adminuser -p adminuserpassword sc start "MyWinService" 

それがマシンを指定するためのオプションを持っているので、あなたは、リモートコンピュータ上のに対しSC.exeを実行するPsExecは必要ありません。

これがあなたに何かを手伝ってくれることを願っています。 Visual Studio内からMSIパッケージをビルドするために、SysInternalsツールとWindows Installer XML(WiX)へのリンクを含めます。

PsExec from the SysInternals Suite

Windows Installer XML (WiX)

1

あなたはkwateeでこれを行うことができます。ネットワーク上のファイルを任意の数のコンピュータにコピーし、リモート操作を実行して、サービスの登録/登録解除、およびサービスの開始/停止を設定できます。唯一の捉え方は、ターゲットにtelnet/ftpまたはssh/scpをインストールする必要があることです。

関連する問題