我正在尝试编写一个小 shell 脚本,用于在 Pod 完成后检查长时间运行的 Kubernetes Pod 的日志输出。
脚本应等待状态“Completed”,但当状态从“Running”切换到“Completed”时,以下命令不会退出:
$ kubectl wait --for=条件=已完成 --timeout=24h pod/longrunningpodname
^C
$ kubectl 获取 Pod
名称就绪状态重新开始年龄
longrunningpodname 0/1 已完成 0 18h
如果 Pod 已处于该状态,我还希望该命令立即返回。但这并没有发生。
kubectl wait 不是我正在寻找的命令吗?
我使用无服务器来配置通过 AWS SQS 接收事件的 Lambda 函数。现在我想添加一个死信队列。这就是我到目前为止所拥有的:
service: myservice
plugins:
- serverless-plugin-lambda-dead-letter
provider:
name: aws
runtime: go1.x
region: eu-central-1
iamRoleStatements:
- Effect: "Allow"
Action:
- "sqs:*"
Resource:
- "*"
package:
exclude:
- ./**
include:
- ./bin/**
functions:
main:
handler: bin/send-mail
deadLetter:
sqs:
queueName: send-mail-dlx
messageRetentionPeriod: 200000
events:
- sqs: arn:aws:sqs:eu-central-1:123456789:send-mail
Run Code Online (Sandbox Code Playgroud)
两个 SQS 队列均已成功创建,但死信队列send-mail-dlx未分配为 的死信队列send-mail。如何在我的无服务器配置中正确分配它?