/
message_queue.yaml
121 lines (121 loc) · 3.08 KB
/
message_queue.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
name: MessageQueue
description: A Tembo Postgres Stack optimized for Message Queue workloads.
image: "quay.io/tembo/standard-cnpg:15.3.0-1-1096aeb"
stack_version: 0.3.0
appServices:
- name: mq-api
image: postgrest/postgrest:v10.0.0
routing:
- port: 3000
ingressPath: /pgmq/v1
middlewares:
- map-pgmq
- strip-prefix
- headers
middlewares:
- !customRequestHeaders
name: headers
config:
Authorization: ""
Content-Profile: pgmq
Accept-Profile: pgmq
- !stripPrefix
name: strip-prefix
config:
- /rest/v1
- !replacePathRegex
name: map-pgmq
config:
regex: \/pgmq\/v1\/?
replacement: /rpc/
env:
- name: PGRST_DB_URI
valueFromPlatform: ReadWriteConnection
- name: PGRST_DB_SCHEMA
value: "public, pgmq"
- name: PGRST_DB_ANON_ROLE
value: postgres
- name: PGRST_LOG_LEVEL
value: info
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: 400m
memory: 256Mi
compute_templates:
- cpu: 1
memory: 4Gi
- cpu: 2
memory: 8Gi
- cpu: 4
memory: 16Gi
- cpu: 8
memory: 32Gi
- cpu: 16
memory: 32Gi
trunk_installs:
- name: pgmq
version: 0.33.1
- name: pg_partman
version: 4.7.3
extensions:
- name: pgmq
locations:
- database: postgres
enabled: true
version: 0.33.1
- name: pg_partman
locations:
- database: postgres
enabled: true
version: 4.7.3
postgres_metrics:
pgmq:
query: select queue_name, queue_length, oldest_msg_age_sec, newest_msg_age_sec, total_messages from pgmq.metrics_all()
master: true
metrics:
- queue_name:
usage: LABEL
description: Name of the queue
- queue_length:
usage: GAUGE
description: Number of messages in the queue
- oldest_msg_age_sec:
usage: GAUGE
description: Age of the oldest message in the queue, in seconds.
- newest_msg_age_sec:
usage: GAUGE
description: Age of the newest message in the queue, in seconds.
- total_messages:
usage: GAUGE
description: Total number of messages that have passed into the queue.
postgres_config_engine: mq
postgres_config:
- name: shared_preload_libraries
value: pg_stat_statements,pg_partman_bgw
- name: pg_partman_bgw.dbname
value: postgres
- name: pg_partman_bgw.interval
value: 60
- name: pg_partman_bgw.role
value: postgres
- name: random_page_cost
value: 1.1
- name: autovacuum_naptime
value: '20s'
- name: autovacuum_vacuum_cost_limit
value: 10000
- name: autovacuum_vacuum_scale_factor
value: 0.05
- name: autovacuum_vacuum_insert_scale_factor
value: 0.05
- name: autovacuum_analyze_scale_factor
value: 0.05
- name: track_io_timing
value: 'on'
- name: checkpoint_timeout
value: 10min
- name: pg_stat_statements.track
value: all