Dominic Lunanuova | 50aafc5 | 2018-03-30 02:29:23 +0000 | [diff] [blame] | 1 | ## postgres image repository |
| 2 | image: "postgres" |
| 3 | ## postgres image version |
| 4 | ## ref: https://hub.docker.com/r/library/postgres/tags/ |
| 5 | ## |
| 6 | imageTag: "9.6.2" |
| 7 | |
| 8 | ## Specify a imagePullPolicy |
| 9 | ## 'Always' if imageTag is 'latest', else set to 'IfNotPresent' |
| 10 | ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images |
| 11 | ## |
| 12 | # imagePullPolicy: |
| 13 | |
| 14 | ## Specify imagePullSecrets |
| 15 | ## ref: https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod |
| 16 | ## |
| 17 | # imagePullSecrets: myregistrykey |
| 18 | |
| 19 | ## Create a database user |
| 20 | ## Default: postgres |
| 21 | #postgresUser: "dmaap" |
| 22 | ## Default: random 10 character string |
| 23 | #postgresPassword: "onapdemodb" |
| 24 | |
| 25 | ## Create a database |
| 26 | ## Default: the postgres user |
| 27 | #postgresDatabase: "dmaap" |
| 28 | |
| 29 | ## Specify initdb arguments, e.g. --data-checksums |
| 30 | ## ref: https://github.com/docker-library/docs/blob/master/postgres/content.md#postgres_initdb_args |
| 31 | ## ref: https://www.postgresql.org/docs/current/static/app-initdb.html |
| 32 | # postgresInitdbArgs: |
| 33 | |
| 34 | ## Use an alternate scheduler, e.g. "stork". |
| 35 | ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/ |
| 36 | ## |
| 37 | # schedulerName: |
| 38 | |
| 39 | ## Specify runtime config parameters as a dict, using camelCase, e.g. |
| 40 | ## {"sharedBuffers": "500MB"} |
| 41 | ## ref: https://www.postgresql.org/docs/current/static/runtime-config.html |
| 42 | # postgresConfig: |
| 43 | |
| 44 | ## Persist data to a persitent volume |
| 45 | persistence: |
| 46 | enabled: false |
| 47 | |
| 48 | ## A manually managed Persistent Volume and Claim |
| 49 | ## Requires persistence.enabled: true |
| 50 | ## If defined, PVC must be created manually before volume will be bound |
| 51 | # existingClaim: |
| 52 | |
| 53 | ## database data Persistent Volume Storage Class |
| 54 | ## If defined, storageClassName: <storageClass> |
| 55 | ## If set to "-", storageClassName: "", which disables dynamic provisioning |
| 56 | ## If undefined (the default) or set to null, no storageClassName spec is |
| 57 | ## set, choosing the default provisioner. (gp2 on AWS, standard on |
| 58 | ## GKE, AWS & OpenStack) |
| 59 | ## |
| 60 | # storageClass: "-" |
| 61 | accessMode: ReadWriteOnce |
| 62 | size: 8Gi |
| 63 | subPath: "postgresql-db" |
| 64 | mountPath: /var/lib/postgresql/data/pgdata |
| 65 | |
| 66 | # annotations: {} |
| 67 | |
| 68 | metrics: |
| 69 | enabled: false |
| 70 | image: wrouesnel/postgres_exporter |
| 71 | imageTag: v0.1.1 |
| 72 | imagePullPolicy: IfNotPresent |
| 73 | resources: |
| 74 | requests: |
| 75 | memory: 256Mi |
| 76 | cpu: 100m |
| 77 | ## Define additional custom metrics |
| 78 | ## ref: https://github.com/wrouesnel/postgres_exporter#adding-new-metrics-via-a-config-file |
| 79 | # customMetrics: |
| 80 | # pg_database: |
| 81 | # query: "SELECT d.datname AS name, CASE WHEN pg_catalog.has_database_privilege(d.datname, 'CONNECT') THEN pg_catalog.pg_database_size(d.datname) ELSE 0 END AS size FROM pg_catalog.pg_database d where datname not in ('template0', 'template1', 'postgres')" |
| 82 | # metrics: |
| 83 | # - name: |
| 84 | # usage: "LABEL" |
| 85 | # description: "Name of the database" |
| 86 | # - size_bytes: |
| 87 | # usage: "GAUGE" |
| 88 | # description: "Size of the database in bytes" |
| 89 | |
| 90 | ## Configure resource requests and limits |
| 91 | ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ |
| 92 | ## |
| 93 | resources: |
| 94 | requests: |
| 95 | memory: 256Mi |
| 96 | cpu: 100m |
| 97 | |
| 98 | service: |
| 99 | type: ClusterIP |
| 100 | port: 5432 |
| 101 | externalIPs: [] |
| 102 | ## Manually set NodePort value |
| 103 | ## Requires service.type: NodePort |
| 104 | # nodePort: |
| 105 | |
| 106 | networkPolicy: |
| 107 | ## Enable creation of NetworkPolicy resources. |
| 108 | ## |
| 109 | enabled: false |
| 110 | |
| 111 | ## The Policy model to apply. When set to false, only pods with the correct |
| 112 | ## client label will have network access to the port PostgreSQL is listening |
| 113 | ## on. When true, PostgreSQL will accept connections from any source |
| 114 | ## (with the correct destination port). |
| 115 | ## |
| 116 | allowExternal: true |
| 117 | |
| 118 | ## Node labels and tolerations for pod assignment |
| 119 | ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector |
| 120 | ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#taints-and-tolerations-beta-feature |
| 121 | nodeSelector: {} |
| 122 | tolerations: [] |
| 123 | affinity: {} |