sem*_*ral 1 postgresql kubernetes kubernetes-helm
我有一些微服务,其中之一需要使用 postreSQL。我使用 Helm 3 配置此微服务。每个环境都有两个不同的 values.yaml,例如 values.stage.yaml 和 values.prod.yaml。所以我的困惑是,
2.以后如果有更多的微服务要使用同一个PostreSQL,我该怎么做才能提供这个功能。
您的图表应在 Helm 3 的文件中声明postgresql为dependencyChart.yaml。(在 Helm 2 中,有一个单独的requirements.yaml文件。)您需要在部署图表之前运行helm dep up( ),但是当您运行时,它将安装您的应用程序及其数据库依赖项。helm dependency updatehelm install
所以你Chart.yaml可以看起来大致像
apiVersion: v2
name: app
...
dependencies:
- name: postgresql
version: '^8'
repository: @stable
Run Code Online (Sandbox Code Playgroud)
(在 Helm 3 中,您还需要helm repo add稳定的 Helm 图表存储库。)
您可以按照配置应用程序其余部分的相同方式配置每个环境的数据库。数据库设置将嵌套在子图的名称下;您可以在命令行中执行此操作--set postgresql.postgresqlPassword=...,并在 YAML 文件中将数据库设置放在某个postgresql:键下。
如果您有第二个服务需要 PostgreSQL,它应该以相同的方式声明依赖项并安装其自己的独立数据库副本。由于数据库安装隔离在容器内,因此这并不被认为是特别重量级的。如果您的两个服务需要通信,它们应该通过网络(通常是 HTTP)连接而不是共享数据库来完成。
| 归档时间: |
|
| 查看次数: |
1044 次 |
| 最近记录: |