首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用helm部署时,基于环境的不同grafana.ini

使用helm部署时,基于环境的不同grafana.ini
EN

Stack Overflow用户
提问于 2020-12-02 01:00:06
回答 1查看 383关注 0票数 0

我正在使用一个自定义的helm图表将grafana部署到kubernetes。自定义grafana.ini文件在构建时被复制到docker镜像,grafana.ini文件包含RDS实例连接配置和各种自定义身份验证设置。当我将多个环境引入其中时,这并不理想,因为每个构建都需要不同的grafana.ini文件,并且我希望使用相同的基础docker映像。它也不安全。

我有三个kubernetes集群,dev、preprod和prod。关键的区别将是RDS配置。

根据环境,将grafana.ini文件绑定到某个grafana版本的最佳方式是什么?我可以使用一些参数化的configMap吗?

我使用helmfile来部署helm图表,因此我熟悉这样的概念:为每个环境单独创建values.yaml文件,并设置一个环境变量来针对正确的环境。

EN

回答 1

Stack Overflow用户

发布于 2020-12-02 02:50:56

您可以将configmap挂载为pod中的卷。

举个例子:

代码语言:javascript
运行
复制
apiVersion: v1
kind: ConfigMap
metadata:
  creationTimestamp: null
  labels:
    env: prod
    app: metis
    client: ueuropea
  name: metis-clients-configmap
data:
  clients_db_config.yaml: |
    default-tenant:
      DB_HOST: dbhost
      DB_USERNAME: user
      DB_PASSWORD: pass
      DB_NAME: dbname
      DB_PORT: 3306

部署:

代码语言:javascript
运行
复制
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  labels:
    env: dev
    app: metis
  name: metis-rules-evaluator-dev
spec:
  progressDeadlineSeconds: 3600
  replicas: 0
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
  template:
    metadata:
      labels:
        env: dev
        app: metis
        client: ueuropea
        mode: rules-evaluator
    spec:

      containers:
        - image: metis
          name: metis
          imagePullPolicy: Always
          resources: 
            requests:
              memory: "1024Mi"
              cpu: "3000m"
            limits:
              memory: "16384Mi"
              cpu: "4000m"
          volumeMounts:
            - name: config-vol
              mountPath: /usr/src/metis/config/
      volumes:
        - name: config-vol
          configMap:
            name: metis-clients-configmap
      terminationGracePeriodSeconds: 150
      restartPolicy: Always

在此示例中,配置映射数据将装载在path:/usr/src/metis/config/上,并将创建文件clients_db_config.yaml,该文件也可以是.ini

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

https://stackoverflow.com/questions/65095004

复制
相关文章

相似问题

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