管理InfluxDB集群中的环境变量
使用环境变量来定义InfluxDB集群中各个组件的设置并调整集群的运行配置。在您的AppInstance
资源中为每个组件定义环境变量。
InfluxDB集群组件支持各种环境变量。虽然其中许多变量有默认设置,但您可以自定义它们,通过设置自己的值。
覆盖默认设置可能会影响整体集群性能
InfluxDB集群组件之间存在复杂的交互,当覆盖默认配置设置时可能会受到影响。更改这些设置可能会影响整体集群性能。在通过环境变量进行配置更改之前,请考虑咨询InfluxData支持以确定任何潜在的不当后果。
AppInstance组件模式
在您的AppInstance
资源中,如果您直接配置AppInstance
资源,请在spec.package.spec.components
属性中配置单个组件设置;如果使用Helm,请在values.yaml
中的components
属性中配置。此属性支持以下InfluxDB集群组件键
ingester
querier
router
compactor
垃圾收集器
apiVersion: kubecfg.dev/v1alpha1
kind: AppInstance
metadata:
name: influxdb
namespace: influxdb
spec:
package:
# ...
spec:
components:
ingester:
# Ingester settings ...
querier:
# Querier settings ...
router:
# Router settings. ...
compactor:
# Compactor settings ...
garbage-collector:
# Garbage collector settings ...
# ...
components:
ingester:
# Ingester settings ...
querier:
# Querier settings ...
router:
# Router settings. ...
compactor:
# Compactor settings ...
garbage-collector:
# Garbage collector settings ...
有关InfluxDB v3存储引擎组件的更多信息,请参阅InfluxDB v3存储引擎架构。
为组件设置环境变量
在特定组件属性下,使用
<component>.template.containers.iox.env
属性来定义环境变量。在
env
属性中,将每个环境变量结构化为键值对,其中键是环境变量名称,值是环境变量值(字符串格式)。例如,要配置垃圾收集器的环境变量apiVersion: kubecfg.dev/v1alpha1 kind: AppInstance metadata: name: influxdb namespace: influxdb spec: package: # ... spec: components: garbage-collector: template: containers: iox: env: INFLUXDB_IOX_GC_OBJECTSTORE_CUTOFF: '6h' INFLUXDB_IOX_GC_PARQUETFILE_CUTOFF: '6h'
# ... components: garbage-collector: template: containers: iox: env: INFLUXDB_IOX_GC_OBJECTSTORE_CUTOFF: '6h' INFLUXDB_IOX_GC_PARQUETFILE_CUTOFF: '6h'
将配置更改应用到您的集群中,并在每个组件中添加或更新环境变量。
更新环境变量而不是删除它们
大多数可以由环境变量覆盖的配置设置都有默认值,如果环境变量未设置,则使用这些默认值。从您的AppInstance
资源配置中删除环境变量不会完全删除这些环境变量;相反,它们将恢复到默认设置。要恢复到默认设置,只需取消设置环境变量或将您的AppInstance
资源中的值更新为默认值。
在先前的示例中,环境变量INFLUXDB_IOX_GC_OBJECTSTORE_CUTOFF
设置为6h
。如果您从env
属性中删除INFLUXDB_IOX_GC_OBJECTSTORE_CUTOFF
,则截止日期将恢复到默认设置30d
。
这个页面有帮助吗?
感谢您的反馈!