Skip to content

Commit 6cce91e

Browse files
authored
Merge pull request #4 from alexeyklyukin/feature/patroni
Feature/patroni
2 parents ec66729 + b291072 commit 6cce91e

File tree

4 files changed

+126
-64
lines changed

4 files changed

+126
-64
lines changed
250 KB
Loading

postgres_helm/notes.txt

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,18 @@ Helm
2626

2727
Oleksii
2828

29+
Patroni
30+
- RAFT is the fabric that holds together your PostgreSQL containers
31+
- External consistent key-value store instead of a built-in one:
32+
advantages:
33+
- PostgreSQL failure doesn't break the consensus
34+
- use well-tested RAFT implementations (i.e. Etcd or Consul)
35+
disadvantages:
36+
- one needs to operate extra services
37+
Features:
38+
- synchronous vs asynchronous replication (consistency vs availability)
39+
- some parameters need to be kept in sync on all cluster nodes (max_connections)
40+
2941
CitusDB
3042
- sharded postgres
3143
- query node, plus shard nodes
@@ -36,6 +48,7 @@ giant robot elephant from The Nantes Project
3648
elephant helm by Blank Williams
3749
robot elephant by Robert Chew
3850
robot with elephant by Mark F Stosiak
51+
stubborn elephant by Kolja Wilcke @01k
3952

4053

4154

postgres_helm/postgres_helm.md

Lines changed: 30 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -118,39 +118,52 @@ Kubecon EU 2017
118118
---
119119

120120
![spilo_diagram](spilo_diagram.svg)
121+
121122
---
122123

123-
## Patroni customization
124+
## Extensibility
124125

125-
* Callbacks (on_role_chage)
126-
* Custom replica creation
127-
* Pluggable consistency layers
126+
* callbacks
127+
* custom replica creation methods
128+
* pluggable consistent KV-stores
128129

129130
---
130131

131-
## Not just autofailover
132+
## More than autofailover
132133

133-
* Synchronous mode
134-
* Cascading replication
135-
* Dynamic configuration
134+
* synchronous mode
135+
* cascading replication
136+
* dynamic configuration
136137

137138
---
138139

139140
## Cluster maintenance
141+
140142
* "Hands-off" mode
141143
* Scheduled failovers and restarts
142144

143145
---
144146

145-
## Controlling Patroni
147+
## Interfaces
146148

147149
* REST API
148150
* patronictl
149151

150152
---
151153

154+
## Helm parameters
155+
156+
* cluster name
157+
* Etcd host
158+
* number of replicas
159+
* credentials
160+
161+
---
162+
152163
#### Patroni Demo
153164

165+
![patroni demo](elephant_patroni_live_demo.png)
166+
154167
---
155168

156169
![citus sharded](citus_sharded.png)
@@ -232,6 +245,14 @@ github.com/jberkus/atomicdb
232245

233246
---
234247

248+
## Spilo demo:
249+
250+
* Helm Chart:
251+
<br />github.com/alexeyklyukin/
252+
<br />/charts/incubator/patroni
253+
254+
---
255+
235256
# ¿questions?
236257

237258
.left-column-narrow[

0 commit comments

Comments
 (0)