首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Thanos S3配置

Thanos S3配置
EN

Stack Overflow用户
提问于 2020-09-23 02:57:22
回答 2查看 1.5K关注 0票数 1

我正在努力摆脱使用S3存储桶的想法。

从配置中可以看出,我们必须提供S3存储桶的访问权限和密钥,但它们是在可见范围内编写的,并且代码存储在git中,因此任何人都可以访问该存储桶。

有没有办法将它们作为kubernetes的秘密提供?我正在尝试在EKS上运行prometheus-operator

谢谢,

EN

回答 2

Stack Overflow用户

发布于 2020-09-23 21:18:31

假设您想要显式地传递带有auth数据的存储桶配置,那么您可以使用thanos的两个命令行选项来实现此目的:

  1. --objstore.config-file=FILEPATH
  2. --objstore.config=CONFIG_CONTENTS

使用1。您只需挂载secret并使用2将thanos指向该位置。您可以使用env变量并将secret加载到该变量中,例如:

代码语言:javascript
复制
      - args:
        - sidecar
(...)
        - --objstore.config=$(OBJSTORE_CONFIG)                                                                                                                                                                                                                                   
        env:
        - name: OBJSTORE_CONFIG
          valueFrom:
            secretKeyRef:
              key: thanos-bucket.yaml
              name: thanos-service-account

还有一些其他方法可以使用特定于云的身份信息。我对亚马逊网络服务产品不太熟悉,所以我推荐你去thanos docs

票数 1
EN

Stack Overflow用户

发布于 2021-03-25 16:48:04

对于EKS >= 1.13,您可以使用IAM Role for Service Account。它的要点是首先创建一个可以访问EKS的IAM角色,并更新信任策略以信任S3集群的OIDC身份提供者sts:AssumeRoleWithWebIdentity。然后,您可以使用IAM角色(eks.amazonaws.com/role-arn: <IAM_ROLE_ARN>)的ARN在EKS中创建并注释服务帐户,并将此服务帐户分配给您的pod。从今以后,从pod内的SDK到AWS的API调用( SDK必须在凭证链中支持sts:AssumeRoleWithWebIdentity )将在承担IAM角色的情况下完成。

对于普罗米修斯和塔诺斯,您将需要为Prometheus副本pod使用的服务帐户添加注释(对于使用IAM角色的塔诺斯sidecar容器)和塔诺斯存储网关pod。

更多细节可以在AWS official docs中找到。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64016099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档