运行PythonScriptStep时出错 - Microsoft.WindowsAzure.Storage.StorageException [英] Error running PythonScriptStep - Microsoft.WindowsAzure.Storage.StorageException

查看:155
本文介绍了运行PythonScriptStep时出错 - Microsoft.WindowsAzure.Storage.StorageException的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试运行一个非常简单的PythonScriptStep作为Azure ML管道的一部分。这个实验是在AML Compute Cluster上运行的,但我也在Ubuntu DSVM上试过了。该实验使用Workspace中的Azure Blob容器。通过密钥访问Blob是
,我没有使用Active Directory。

I am trying to run a very simple PythonScriptStep as part of an Azure ML Pipeline. This experiment is running on an AML Compute Cluster, but I have also tried it on an Ubuntu DSVM. The experiment uses an Azure Blob container from the Workspace. Access to the Blob is via a key, I am not using Active Directory.

运行配置如下所示:

无论是amlcompute群集还是DSVM,这都是我得到的错误

This is the error I get regardless of amlcompute cluster or DSVM

"error":{

    "code":"ServiceError","
    " message":" InternalServerError",&
    "target":null,

    "详情":[],

    " innerError":null,

    "debugInfo":{

      "type":"Microsoft.WindowsAzure.Storage.StorageException",

      " message":"服务器无法验证请求。确保正确形成授权标题的值,包括签名。",

      " stackTrace":"    at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteAsyncInternal [T](RESTCommand`1 cmd,IRetryPolicy policy,OperationContext operationContext,CancellationToken token)\ n    at
Microsoft.WindowsAzure.Storage.File.CloudFileDirectory.CreateIfNotExistsAsync(FileRequestOptions options,OperationContext operationContext,CancellationToken cancellationToken)\ n   在/ home / vsts / work / 1 / s / src / azureml-api / src / Execution / Services / AzureFileShareManager中的Microsoft.MachineLearning.Execution.Services.AzureFileShareManager.GetDirectoryReference(String
path,Boolean createDirectories) .cs:第103行\\ n \\ n    at Microsoft.MachineLearning.Execution.Services.AzureFileShareManager.GetFileReference(String path,Boolean createDirectories)
in / home / vsts / work / 1 / s / src / azureml-api / src / Execution / Services / AzureFileShareManager .cs:第113行\\ n \\ n   在/home/vsts/work/1/s/src/azureml-api/src/Execution/Services/AzureFileShareManager.cs:line中的Microsoft.MachineLearning.Execution.Services.AzureFileShareManager.UploadFile(字符串路径,流内容)
35 \ n   在/ home / vsts / work / 1 / s / src / azureml-api / src / Execution / Services中的Microsoft.MachineLearning.Execution.Services.DynamicStrategy.StartRun(StrategyState状态,RunDocument runDocument,Stream projectZipStream,RunToken runToken) /DynamicStrategy.cs:line
454 \ n   在/ home中的Microsoft.MachineLearning.Execution.EntryPoints.Api.Controllers.ExecutionController.StartRun(ConfigurationManager configurationManager,Guid subscriptionId,String resourceGroupName,String workspaceName,String experimentName,RunDefinition
definition,Stream zipStream,RunId runId) /vsts/work/1/s/src/azureml-api/src/Execution/EntryPoints/Api/Controllers/ExecutionController.cs:line 650 \ n   在/ home中的Microsoft.MachineLearning.Execution.EntryPoints.Api.Controllers.ExecutionController.StartRun(ConfigurationManager
configurationManager,Guid subscriptionId,String resourceGroupName,String workspaceName,String experimentName,RunDefinition定义,Stream zipStream,RunId runId) /vsts/work/1/s/src/azureml-api/src/Execution/EntryPoints/Api/Controllers/ExecutionController.cs:line
659 \ n    at
/ home / vsts / work / 1中的Microsoft.MachineLearning.Execution.EntryPoints.Api.Controllers.ExecutionController.StartSnapshotRun(Guid subscriptionId,String resourceGroupName,String workspaceName,String experimentName,RunDefinition定义,RunId runId) /s/src/azureml-api/src/Execution/EntryPoints/Api/Controllers/ExecutionController.cs:line 299 \ n    at lambda_method(Closure,Object)\ n    at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeActionMethodAsync()\ n 
  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeNextActionFilterAsync()\ n    at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow(ActionExecutedContext context)\ n    at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next(State&
next,Scope& scope,Object& state,Boolean& isCompleted)\ n    at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeInnerFilterAsync()\ n    at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextExceptionFilterAsync()",

      " innerException":null,

      "data":{},

      " errorResponse":null

    }¥b $ b  },

"error": {
    "code": "ServiceError",
    "message": "InternalServerError",
    "target": null,
    "details": [],
    "innerError": null,
    "debugInfo": {
      "type": "Microsoft.WindowsAzure.Storage.StorageException",
      "message": "Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.",
      "stackTrace": "   at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteAsyncInternal[T](RESTCommand`1 cmd, IRetryPolicy policy, OperationContext operationContext, CancellationToken token)\n   at Microsoft.WindowsAzure.Storage.File.CloudFileDirectory.CreateIfNotExistsAsync(FileRequestOptions options, OperationContext operationContext, CancellationToken cancellationToken)\n   at Microsoft.MachineLearning.Execution.Services.AzureFileShareManager.GetDirectoryReference(String path, Boolean createDirectories) in /home/vsts/work/1/s/src/azureml-api/src/Execution/Services/AzureFileShareManager.cs:line 103\n   at Microsoft.MachineLearning.Execution.Services.AzureFileShareManager.GetFileReference(String path, Boolean createDirectories) in /home/vsts/work/1/s/src/azureml-api/src/Execution/Services/AzureFileShareManager.cs:line 113\n   at Microsoft.MachineLearning.Execution.Services.AzureFileShareManager.UploadFile(String path, Stream contents) in /home/vsts/work/1/s/src/azureml-api/src/Execution/Services/AzureFileShareManager.cs:line 35\n   at Microsoft.MachineLearning.Execution.Services.DynamicStrategy.StartRun(StrategyState state, RunDocument runDocument, Stream projectZipStream, RunToken runToken) in /home/vsts/work/1/s/src/azureml-api/src/Execution/Services/DynamicStrategy.cs:line 454\n   at Microsoft.MachineLearning.Execution.EntryPoints.Api.Controllers.ExecutionController.StartRun(ConfigurationManager configurationManager, Guid subscriptionId, String resourceGroupName, String workspaceName, String experimentName, RunDefinition definition, Stream zipStream, RunId runId) in /home/vsts/work/1/s/src/azureml-api/src/Execution/EntryPoints/Api/Controllers/ExecutionController.cs:line 650\n   at Microsoft.MachineLearning.Execution.EntryPoints.Api.Controllers.ExecutionController.StartRun(ConfigurationManager configurationManager, Guid subscriptionId, String resourceGroupName, String workspaceName, String experimentName, RunDefinition definition, Stream zipStream, RunId runId) in /home/vsts/work/1/s/src/azureml-api/src/Execution/EntryPoints/Api/Controllers/ExecutionController.cs:line 659\n   at Microsoft.MachineLearning.Execution.EntryPoints.Api.Controllers.ExecutionController.StartSnapshotRun(Guid subscriptionId, String resourceGroupName, String workspaceName, String experimentName, RunDefinition definition, RunId runId) in /home/vsts/work/1/s/src/azureml-api/src/Execution/EntryPoints/Api/Controllers/ExecutionController.cs:line 299\n   at lambda_method(Closure , Object )\n   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeActionMethodAsync()\n   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeNextActionFilterAsync()\n   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow(ActionExecutedContext context)\n   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)\n   at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeInnerFilterAsync()\n   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextExceptionFilterAsync()",
      "innerException": null,
      "data": {},
      "errorResponse": null
    }
  },

我是否缺少一个步骤,我必须为计算目标提供连接到存储的方法?

Is there a step I'm missing where I have to provide the compute target with a way to connect to the storage?

推荐答案

Hello Salil,

Hello Salil,

您是否正在使用笔记本运行上述python代码?如果是,您是否可以尝试使用Azure从您的笔记本连接到Azure->连接到Azure? 

Are you using the notebooks to run the above python code? If Yes, Could you please try to connect to Azure from your notebook using Azure->Connect to Azure? 

使用AD进行授权不会将任何密钥存储在应用程序中,而是  共享密钥 选项可以。错误似乎是密钥现在无效
或更改。使用任何培训目标的选项是
这里

Authorization using AD will not store any of your keys in applications whereas shared key option does. The error seems like the key is now invalid or changed. The options to use any training target are here.

-Rohit


这篇关于运行PythonScriptStep时出错 - Microsoft.WindowsAzure.Storage.StorageException的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆