我在Amazon的Elastic Beanstalk上运行.net服务器,当我尝试实例化AmazonDynamoDBClient时,它失败了。根据我从这两个页面获得的信息:http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/AWSHowTo.iam.roles.apps.html http://docs.aws.amazon.com/AWSSdkDocsNET/latest/DeveloperGuide/net-dg-roles.html,它应该从分配给EC2实例的IAM角色中检索凭据。它将DynamoDBFullAccess模板作为策略。如果我通过web.config文件在代码本身中提供凭据,它只能在本地调试时工作,而不是在部署到elastic beanstalk时工作。
下面是破坏它的代码:
AmazonDynamoDBClient client = new AmazonDynamoDBClient();
或
AmazonDynamoDBClient client = new AmazonDynamoDBClient(new InstanceProfileAWSCredentials());
两者都不起作用。而且我似乎不能从弹性豆茎中检索崩溃日志,所以它很难调试。我很确定我是按照这两个链接中的描述来写这封信的,我很困惑。我已经尝试了大半天的时间来解决这个问题,真的很感谢你的帮助。如果有任何信息丢失,请让我知道。谢谢。
发布于 2014-07-09 06:20:37
如果您转到亚马逊网络服务控制台并选择ec2视图实例,您将看到弹性豆茎的ec2实例。该实例的名称将是"Default- environment“或您为弹性豆茎环境选择的任何名称。然后,您可以通过ssh访问该ec2实例并查看日志。例如,我的tomcat日志存储在/var/log/tomcat7中
您还可以将您的凭据文件scp到您的ec2主机,以便调试和运行应用程序。它应该可以工作,因为您已经让它在本地机器上工作了。但我猜这种方法不被推荐,而且可能有安全方面的问题。
这至少可以让你开始学习。可能是EC2专家可以帮助您解决真正的问题:)
https://stackoverflow.com/questions/24645045
复制