bos*_*ava 5 postgresql horizontal-scaling kubernetes
我对要部署在 Kubernetes 集群中的应用程序有以下要求。我正在尝试提出一种类似于我的其他微服务部署且并不复杂的架构。
我正在考虑拥有多个连接到同一卷(在我的例子中为 NAS)的副本。postgres 实例将位于像我的应用程序微服务这样的服务后面。应用程序将连接到服务,并且不需要知道它正在与哪个 Postgres 实例通信。这极大地简化了我的架构,因为我不必担心设置 Postgres 复制。
此架构中的一个问题是,如果 Postgres 实例在收到写入请求后出现故障,数据会发生什么情况。我可以引入一个带有消费者确认的消息代理来处理这种情况,但这会对性能产生一些影响。
下面显示了示例 Postgres K8s 部署配置。我需要添加服务等。
这种架构有哪些缺陷?有人实施过类似的事情吗?
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: postgres
spec:
replicas: 3
template:
metadata:
labels:
app: postgres
spec:
containers:
- name: postgres
image: postgres:latest
imagePullPolicy: "IfNotPresent"
ports:
- containerPort: 5432
envFrom:
- configMapRef:
name: postgres-config
volumeMounts:
- mountPath: /var/lib/postgresql/data
name: postgredb
volumes:
- name: postgredb
persistentVolumeClaim:
claimName: postgres-pv-claim
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3465 次 |
| 最近记录: |