我正在尝试创建一个 Cloudwatch 规则,该规则在实例终止时将 EC2 实例的名称(而不是 InstanceID)发送到 SNS。下面的代码片段是当我选择创建这个简单规则时 AWS 提供的默认事件模式,但我向“详细类型”对象添加了 1 个部分。此部分是“实例名称”。但这不起作用,因为我收到的 SNS 电子邮件仍然不包含实例的名称。它仅在消息中包含 InstanceID。
{
"source": [
"aws.ec2"
],
"detail-type": [
"Instance Name",
"EC2 Instance State-change Notification"
]
}
Run Code Online (Sandbox Code Playgroud)
到目前为止,我仅成功地从 Cloudwatch 规则获取了 InstanceID。是否可以通过 Cloudwatch 检索标签中的自定义元数据?
话虽这么说,如果无法通过 Cloudwatch,是否可以以某种方式将 SNS 主题发送到 Lambda,并使用 Lambda 函数将 instanceID 转换为实例名称?
我的项目的重点是,我可以使用 Lambda 运行一个脚本,一旦这些实例终止,该脚本就会从监控应用程序中删除这些实例。在 AWS 之外,我们使用他们的名称来识别他们,而不是他们的实例 ID。
amazon-ec2 amazon-web-services amazon-sns amazon-cloudwatch aws-lambda
我正在尝试在使用ffmpeg的aws lambda上运行节点js脚本.为此,我需要在机器上安装ffmpeg.
我看过文档,但我找不到如何连接到运行lambda的机器.
我有一个只有私有 IP 的 EC2 实例,并且我在 say 上运行的同一个实例上安装了 Apache Kafka 10.0.4.44:9092。现在,我创建了 AWS Lambda 函数,它从给定的 Bucket 读取文档并将文档正文发送到在 EC2 实例上运行的 Apache Kafka。
现在,AWS Lambda 无法访问 EC2 实例服务。
如何授予 Lambda 访问权限以访问 EC2 上的 Apache kafka 服务?
我在我的多个网站上使用RDS.将子域指向该RDS服务器是不是一个坏/不安全的想法?这会对安全产生负面影响吗?
对 AWS 和 CLI 非常陌生,所以很抱歉。
我正在使用以下行,该行正在运行,并且排除了我的 wp-content 目录,但使用通配符似乎是一种忽悠。我应该如何指定没有 * 的文件夹?
抱歉,* 位于下面一行中的 wp-content 周围,但已被删除,它应该显示为
“/(星号)wp-内容(星号)”
aws s3 cp /var/www/html s3://mybucket --recursive --exclude "/*wp-content*
谢谢
我试图将处理后的图像暂时保存在 /tmp 文件夹中,但它对我不起作用。假设它位于根文件夹下,我尝试以这种方式获取它:
let tempraryImageDirectory: string;
if (process.env.DEV && process.env.DEV === 'Yes') {
tempraryImageDirectory = path.join(__dirname, `../../tmp/`);
} else {
tempraryImageDirectory = path.join(__dirname, `./tmp/`);
}
Run Code Online (Sandbox Code Playgroud)
这里选择else的是本地测试。我不想在根目录中创建 /tmp 文件夹。当地一切都很好。但目前在 Lambda 中,目录 CloudWatch 上发生的任何操作都不会显示此后写入的任何日志,并且我的函数因未知原因而失败。知道我是否正确寻址 /tmp 文件夹吗?
我正在编写一个 tf 脚本来创建一个角色并将 AWS 托管策略附加到该角色。如果我的策略是自定义策略,这有效,如果我需要使用 AWS 托管策略,我如何将我的策略附加到角色。有没有办法使用“数据”从 AWS 推断角色 ARN
resource "aws_iam_role" "CloudWatchAgentServerRole" {
name = "CloudWatchAgentServerRole"
description = "Role created to allow Memory metrics to CloudWatch "
assume_role_policy = file("role.json")
}
#Create Policy - Not Required as its an AWS Managed Policy
/*resource "aws_iam_policy" "CloudWatchAgentServerPolicy" {
name = "CloudWatchAgentServerPolicy"
description = "Permissions required to use AmazonCloudWatchAgent on servers"
policy = file("policy.json")
}*/
# Attach Policy
resource "aws_iam_role_policy_attachment" "CloudWatchAgentServer" {
role = aws_iam_role.CloudWatchAgentServerRole.name
policy_arn = aws_iam_policy.CloudWatchAgentServerPolicy.arn
}
Run Code Online (Sandbox Code Playgroud)
谢谢
我使用 NodeJS 作为我的 lambda 函数。目前我正在使用 NPM 包来连接 Redis 并将数据读/写到 Elasticache 中。但它给出了内部服务器错误。在 aws-sdk NPM 包中也有一些与elasticache相关的方法,但我找不到任何方法来设置elasticache和从elasticache获取值。我应该为此做什么?
我有一个 AWS Cdk 部署程序应用程序,它在 AWS 中部署了多个资源。该应用程序使用一个配置文件作为输入文件,并使用该文件在 Fargate 集群中部署多个 ecs 任务,并将它们放置在应用程序负载均衡器后面。
有什么方法可以获取我运行时正在部署的所有组件/AWS 服务cdk deploy --all。我试图在不使用单独的 boto3 函数的情况下了解 cdk 是否提供了任何方法。
aws-lambda ×5
amazon-ec2 ×3
amazon-rds ×2
amazon-iam ×1
amazon-s3 ×1
amazon-sns ×1
aws-cdk ×1
aws-sdk ×1
boto3 ×1
dns ×1
ffmpeg ×1
node.js ×1
python ×1
redis ×1
terraform ×1
typescript ×1