ARMテンプレートとDesired State Configuration(DSC)を使用してAzureに仮想マシンスケールセットを配備しようとしています。 DSC構成を作成し、それが動作している別のVMで検証しました。存在しないAzure ARM DSCスケールデプロイメント - スクリプトを見つけることができません
{
"name": "Microsoft.Powershell.DSC",
"properties": {
"publisher": "Microsoft.Powershell",
"type": "DSC",
"typeHandlerVersion": "2.9",
"autoUpgradeMinorVersion": true,
"settings": {
"configuration": {
"url": "publicstoragebloburi/DSC/DSC.zip",
"script": "Main.ps1",
"function": "Main"
},
"configurationArguments": {
"MachineName": "localhost",
"WebDeployPackagePath": PublicStorageBlobPath_App.zip",
"UserName": "[parameters('adminUsername')]",
"Password": "[parameters('adminPassword')]",
"AppName": "FileScanApp",
"AppPath": "C:\\inetpub\\dev\\MyWebApp"
}
}
Main.ps1ファイルと名前のメインともConfigratuion:ARMテンプレートでは、私は以下のDSC拡張の定義を持っています。 Main.ps1は、ZIPアーカイブのルートディレクトリにあります。拡張機能がVM上で実行されている場合、C:\ Packages \ Plugins \ Microsoft.Powershell.DSC \ 2.71.1.0 \ bin .. \ DSCWork \ DSC.1 \ MainディレクトリにあるMain.ps1ファイルを検索しようとしています。 .ps1。ただし、マシンにリモート接続した場合、Main.ps1がフォルダに存在せず、次のエラーが発生します。
{"code": "DeploymentFailed"、 "message": "少なくとも1つのリソースの展開[{"code": "Conflict"、 "message": "{\ r \ n \"ステータス\ ":\\\" \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ "エラー":\ "リソース配備失敗\"、\ r \ n \ "メッセージ\":\ "ターミナルで完了したリソース操作[\ r \ n \ "コード\":\ "VMExtensionProvisioningError \"、\ r \ n \ "メッセージ\"、 :\ "VMが拡張機能を処理する際にエラーを報告しました" Microsoft.P owershell.DSC '。エラーメッセージ:\\ "DSC拡張機能が不正な入力を受け取りました:スクリプトまたはモジュール 'Main.ps1'の実行中にエラーが発生しました: 'C:\\ Packages \\ Plugins \\ Microsoft.Powershell.DSC \\ 2.71。 1.0 \\ bin \\ .. \\ DSCWork \\ DSC.1 \\ Main.ps1 'は、コマンドレット、関数、スクリプトファイル、または実行可能なプログラムの名前として認識されません。パスが含まれていることを確認し、パスが正しいかどうかを確認して、もう一度やり直してください。\ n入力を修正し、拡張機能の実行を再試行してください。\ "" \ "\ r \ n} \ r \ n] \ r \ n} \ r \ n} "}]}
誰かが私に間違っていると教えてもらえますか?私は道に従っていました。これはgithubで入手可能な公式のサンプルARMテンプレート内で実装されています。ありがとうございました!
これはそうすべき場所なので、拡張が失敗した後にvmにログインし、ファイルがC:\ Packages \ Plugins \ Microsoft.Powershell.DSC \ 2.71.1.0 \ DSCWork \ DSCにあることを確認します.1 \ Main.ps1'。そうでない場合、dscアーカイブに何か問題があります – 4c74356b41
私はそれを確認しましたが、そこにはありません。私も私の質問を編集しました。アーカイブには、Main.ps1ファイルと、構成内で使用する追加モジュールのみが含まれています。アーカイブは公開されているBLOBコンテナにアップロードされます。アーカイブを作成する際に間違いを犯した可能性のあるアイデアはありますか?よろしくお願いします。 –
@marek_laniあなたはこれを解決しましたか?私は同じエラーが出て、私はログを見て、それを実行しようとしているログにC:\ ProgramFiles \ WindowsPowerShell \ Modules \ DSCのスクリプトを置いているように見える実行中にエラーが発生しました スクリプトまたはモジュール 'script.ps1': 'C:\ Packages \ Plugins \ Microsoft.Powershell.DSC \ 2.71.1.0 \ bin \ .. \ DSCWork \ DSC.0 \ scriptという用語。ps1 'は、コマンドレット、関数、 スクリプトファイル、または実行可能なプログラムの名前として認識されません。 – Boomerang