我们在 AWS EKS 中运行 k8s 1.10。
我们正在尝试通过向服务 yaml 文件添加所需的注释,将负载均衡器日志放入 S3 存储桶中如这里所述。
以下是我们服务 yaml 文件的片段。
metadata:
annotations:
service.beta.kubernetes.io/aws-load-balancer-access-log-enabled: true
service.beta.kubernetes.io/aws-load-balancer-access-log-emit-interval: 60
service.beta.kubernetes.io/aws-load-balancer-access-log-s3-bucket-name: [our-logs-bucket]
service.beta.kubernetes.io/aws-load-balancer-access-log-s3-bucket-prefix: [a-prefix]
但是,每当我们应用更改时,都会出现以下错误:
error: services "[service name]" could not be patched: cannot convert int64 to string
我们尝试了几种方法,包括将“60”放在引号中,以及对日志发送间隔使用不同的值。但都没有成功。
有任何想法吗?
谢谢你!
答案1
我在最新版本的 kubernetes 上尝试了相同的配置,但无法重现您的错误。我猜您需要同时引用“true”和“60”,因为注释应该是字符串,而 YAML 可能会以不同的方式解析 true。您的配置本身对我来说很好用,老实说,感谢您提供的模板。希望您能正常工作。