我在EC2上创建了一个自动缩放组,它工作得很好.服务器根据负载向上和向下扩展.我想在管理方面获得更多信息,并且想知道是否有办法让自动缩放组动态地将名称添加到它启动的实例中.我指的是使用key = Name和value = autogeneratedid添加标签.
例如,如果我有一个名为test-group的自动缩放组,则服务器将使用以下名称启动:
test-group-1
test-group-2
test-group-3
...
Run Code Online (Sandbox Code Playgroud)
我想在EC2管理控制台中找到它们进行枚举,但是现在它们只是显示为"空"名称(Tag key = Name未在实例上明确设置).
有任何想法吗?
我正在构建一个使用亚马逊安全令牌服务的应用程序来创建临时用户来访问S3存储桶上的子目录.用户由具有对存储桶的完全读/写访问权限的IAM用户创建(以及创建用户所需的权限).
我创建的用户与会话过期完美配合等等,但我在制定正确的策略时遇到问题,以允许基于前缀的密钥列表.我希望最终用户拥有的权限是:
我设法读取和写入工作,但无论如何我尝试列表访问不能正常工作.这是我最接近时使用的Ruby代码:
AWS::STS::Policy.new do |policy|
policy.allow(
actions: ["s3:GetObject*", "s3:PutObject*", "s3:DeleteObject*"],
resources: "arn:aws:s3:::#{ENV['PROJECT_BUCKET']}/#{folder_path}/*"
)
policy.allow(
actions: ["s3:*"],
resources: ["arn:aws:s3:::#{ENV['PROJECT_BUCKET']}/*", "arn:aws:s3:::#{ENV['PROJECT_BUCKET']}"]
).where(:s3_prefix).like("#{folder_path}/*")
end
Run Code Online (Sandbox Code Playgroud)
如果我记得,这让我可以阅读和写作,但不能列出.由于我还处于开发阶段,我已将代码更改为:
AWS::STS::Policy.new do |policy|
# FIXME: This is way too permissive, but it's not working to be more specific.
policy.allow(
actions: ["s3:*"],
resources: ["arn:aws:s3:::#{ENV['PROJECT_BUCKET']}/*", "arn:aws:s3:::#{ENV['PROJECT_BUCKET']}"]
)
end
Run Code Online (Sandbox Code Playgroud)
这可以100%正常工作,显而易见的问题是没有任何东西限制在一个前缀,这将允许用户破坏彼此的工作.
我的政策中我做错了什么?
我正在寻找创建一个PHP脚本,它将回显Amazon EC2实例的唯一ID.有人知道怎么做吗?
通过命令行找到方法:http://af-design.com/blog/2010/07/27/testing-your-aws-elastic-load-balancer/
我可以使用PHP w/CURL提交查询吗?
我正在使用AWS控制台的测试功能:
console.log('Loading event');
exports.handler = function(event, context) {
console.log('value1 = ' + event.key1);
console.log('value2 = ' + event.key2);
console.log('value3 = ' + event.key3);
context.done(null, 'Hello World'); // SUCCESS with message
};
Run Code Online (Sandbox Code Playgroud)
并在nodejs中调用它,如下所示:
var params = {
FunctionName: 'MY_FUNCTION_NAME', /* required */
InvokeArgs: JSON.stringify({
"key1": "value1",
"key2": "value2",
"key3": "value3"
})
};
lambda.invokeAsync(params, function(err, data) {
if (err) {
// an error occurred
console.log(err, err.stack);
return cb(err);
}
// successful response
console.log(data);
});
Run Code Online (Sandbox Code Playgroud)
一切正常:
//Console Output
{ Status: 202 }
Run Code Online (Sandbox Code Playgroud)
但我期待从context.done(null,'Message')收到消息...... …
我在AWS EC2上执行以下操作:
基本上我想知道:
提前致谢.我无法从谷歌或EC2文件中弄清楚.
amazon-ec2 ×3
amazon-iam ×1
amazon-s3 ×1
autoscaling ×1
aws-lambda ×1
curl ×1
get ×1
node.js ×1
php ×1
ruby ×1