在Kubernetes中,来自ConfigMap的环境变量不会更改PostgreSql荚中的max_connections属性。如何通过Kubernetes中的环境变量更改Postgres max_connections配置?
我尝试过以下参数来配置Postgres。
问题是,我可以使用DB,用户和密码参数和值都是按预期设置的。但我需要更改max_connections配置。我做了相关的研究,看来PGOPTIONS是发送配置更改的正确选择。即使我尝试了PGOPTIONS和其他变体,对max_connections值也没有影响。我正在连接postgresql并执行SHOW MAX_CONNECTIONS查询,即使我在环境配置值中指定了1000,它也显示了100。
我在数字海洋中使用Kubernetes 1.14。
ConfigMap
apiVersion: v1
kind: ConfigMap
metadata:
name: postgres-config-demo
labels:
app: postgres
data:
POSTGRES_DB: demopostgresdb
POSTGRES_USER: demopostgresadmin
POSTGRES_PASSWORD: demopostgrespwd
PGOPTIONS: "-c max_connections=1000 -c shared_buffers=1024MB"
POSTGRES_OPTIONS: "-c max_connections=1000 -c shared_buffers=1024MB"
PG_OPTIONS: "-c max_connections=1000 -c shared_buffers=1024MB"
MAX_CONNECTIONS: "1000"状态集
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: pgdemo
spec:
serviceName: "postgres"
replicas: 2
selector:
matchLabels:
app: postgres
template:
metadata:
labels:
app: postgres
spec:
containers:
- name: postgres
image: postgres:latest
envFrom:
- configMapRef:
name: postgres-config-demo
env:
- name: PGOPTIONS
value: "-c max_connections=1000 -c shared_buffers=1024MB"
- name: "MAX_CONNECTIONS"
value: "1000"
ports:
- containerPort: 5432
name: postgredb
volumeMounts:
- name: postgredb
mountPath: /var/lib/postgresql/data
subPath: postgres
volumeClaimTemplates:
- metadata:
name: postgredb
spec:
accessModes: ["ReadWriteOnce"]
storageClassName: do-block-storage
resources:
requests:
storage: 3Gi我期望得到max_connections值为1000。但它看起来是默认值,类似于100。
在任何日志中都没有错误。
发布于 2019-06-10 06:39:58
您需要扩展基本映像(postgres:最新)。用自定义更改覆盖默认配置,然后启动postgres。
https://stackoverflow.com/questions/56515367
复制相似问题