Как насчет использования StatefulSet для развертывания каждого модуля? StatefulSet
заставляет каждый модуль использовать каждый PersistentVolume, поэтому, если вы поместите каждый файл конфигурации, который сконфигурирован с другими данными соединения с базой данных, на каждый PersistentVolume, каждый модуль может использовать другие базы данных друг с другом. Поскольку модуль может ссылаться на другой файл конфигурации.
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: app
spec:
serviceName: "app"
replicas: 2
selector:
matchLabels:
app: app
template:
metadata:
labels:
app: app
spec:
containers:
- name: app
image: example.com/app:1.0
ports:
- containerPort: 8080
name: web
volumeMounts:
- name: databaseconfig
mountPath: /usr/local/databaseconfig
volumeClaimTemplates:
- metadata:
name: databaseconfig
spec:
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 10Mi