Murat Kabilov
969a06f521
Use DCS_ENABLE_KUBERNETES_API=true environment to enable kubernetes native deployment
2017-09-14 11:39:49 +02:00
Murat Kabilov
8430ee86c9
add comments on roles
2017-09-11 17:44:32 +02:00
Murat Kabilov
83f1dbe80c
add missing return in the api server
2017-09-11 17:44:32 +02:00
Murat Kabilov
90b49a24ba
make postgresql roles public
2017-09-11 17:44:32 +02:00
Oleksii Kliukin
8b85935a7a
Allow cloning clusters from the operator. ( #90 )
...
Allow cloning clusters from the operator.
The changes add a new JSON node `clone` with possible values `cluster`
and `timestamp`. `cluster` is mandatory, and setting a non-empty
`timestamp` triggers wal-e point in time recovery. Spilo and Patroni do
the whole heavy-lifting, the operator just defines certain variables and
gathers some data about how to connect to the host to clone or the
target S3 bucket.
As a minor change, set the image pull policy to IfNotPresent instead
of Always to simplify local testing.
Change the default replication username to standby.
2017-09-08 16:47:03 +02:00
Oleksii Kliukin
a0a9e8f849
Feature/configure replication role ( #97 )
...
Configure superuser and replication usernames
2017-09-07 10:12:34 +02:00
Murat Kabilov
4db5bd13d1
delete cluster key from the clusters list only when delete procedure is finished
2017-09-04 18:48:03 +02:00
Murat Kabilov
39c123e96a
fetch cluster resources by name, not by label selectors
2017-09-04 18:03:54 +02:00
Ferit Topcu
57c3111d1a
docs(general): Adding Security.md ( #88 )
2017-09-04 14:33:30 +02:00
Murat Kabilov
c5d97585b8
bump up the client-go version to v4
2017-09-01 14:35:50 +02:00
Murat Kabilov
8aa11ecee2
Add patroni api client
2017-08-30 16:01:18 +02:00
Murat Kabilov
899c0bef45
Use warningf instead of warnf
2017-08-30 14:35:56 +02:00
Murat Kabilov
a987ff39a7
Worker queue size in the status api endpoint
2017-08-28 12:13:42 +02:00
Murat Kabilov
53ceede3cb
show worker queue size in the cluster status
2017-08-28 12:05:33 +02:00
Murat Kabilov
f44c8e1206
Make pod termination grace period configurable
2017-08-18 16:52:19 +02:00
Murat Kabilov
71dfb33b2b
make pod termination grace period configurable
2017-08-18 16:38:25 +02:00
Murat Kabilov
5ff6d6a636
Discard cluster events from the queue on cluster delete
2017-08-17 21:30:54 +02:00
Murat Kabilov
83760ebbef
discard cluster events from the queue on cluster delete;
...
delete cluster from the clusters map before deleting cluster itself
2017-08-17 12:24:23 +02:00
Murat Kabilov
f2c23021bb
generate clusterEvent queue key in a separate function
2017-08-17 12:20:03 +02:00
Murat Kabilov
5967837875
pass the name of the status in the log message on set cluster status failure
2017-08-17 12:18:53 +02:00
Murat Kabilov
bf5879a71f
normalize log message text
2017-08-17 12:16:19 +02:00
Murat Kabilov
c557027e12
Fix cluster event queue consumption
2017-08-15 16:32:13 +02:00
Murat Kabilov
dad8e2f49f
make cluster event queue consumption non-blocking
2017-08-15 16:03:19 +02:00
Murat Kabilov
d2828e5ece
remove var shading; fix imports
2017-08-15 15:59:10 +02:00
Murat Kabilov
272d7e1bcf
rename service field to services as it contains service per role
2017-08-15 15:55:56 +02:00
Murat Kabilov
5a7a3fec17
Diagnostic API
2017-08-15 15:53:13 +02:00
Murat Kabilov
38e0ffecf7
make controllerinformer interface private;
...
use named regexp groups
2017-08-15 14:07:16 +02:00
Murat Kabilov
228639b839
add api port and ring log size values to the config map
2017-08-15 12:37:58 +02:00
Murat Kabilov
82d5583809
add diagnostic api http server
2017-08-15 12:20:09 +02:00
Murat Kabilov
51fdfb90f7
log cluster and controller events in the ringlog via logrus hook
2017-08-15 12:16:09 +02:00
Murat Kabilov
82f58b57d8
add cluster and controller methods for getting status
2017-08-15 12:11:06 +02:00
Murat Kabilov
4ee28e3818
add ringlog
2017-08-15 11:59:09 +02:00
Murat Kabilov
9c7492f38c
Move controller config to the spec package
2017-08-15 11:56:16 +02:00
Murat Kabilov
58572bb43f
move controller config to the spec package
2017-08-15 11:41:46 +02:00
Murat Kabilov
13bf0c6bea
Pass cluster name as a logger field
2017-08-15 11:40:13 +02:00
Murat Kabilov
606d000022
fix test
2017-08-15 10:41:04 +02:00
Murat Kabilov
5470f20be4
always pass a cluster name as a logger field
2017-08-15 10:29:18 +02:00
Murat Kabilov
e26db66cb5
start all the log messages with lowercase letters
2017-08-15 10:12:36 +02:00
Oleksii Kliukin
87a379f663
Avoid reusing closed DB connection. ( #79 )
...
Set DB connection to nil upon closing it.
2017-08-10 18:19:35 +02:00
Oleksii Kliukin
f15f93f479
Bugfix/close db connections ( #78 )
...
Open and close DB connections on-demand.
Previously, we used to leave the DB connection open while the
cluster was registered with the operator, potentially resutling
in dangled connections if the operator terminates abnormally.
Small refactoring around the role syncing code.
2017-08-10 10:10:00 +02:00
Oleksii Kliukin
8b58782a4a
fix pam_role_name parameter name.
2017-08-02 17:55:06 +02:00
Oleksii Kliukin
a8b5b77cc4
Fix missing labels in the replica service selector.
2017-08-02 17:46:24 +02:00
Murat Kabilov
50754c9a81
make global vars in the main file private
2017-08-01 16:44:29 +02:00
Murat Kabilov
cf663cb841
Fix golint warnings
2017-08-01 16:08:56 +02:00
Murat Kabilov
c02a740e10
Fix setting debug logger level
2017-08-01 11:51:03 +02:00
Murat Kabilov
1211220208
Skip running empty set of queries
2017-08-01 10:09:09 +02:00
Murat Kabilov
6183203f4d
fix cluster event queue processing
2017-07-31 10:30:49 +02:00
Murat Kabilov
2fe22ff614
Remove pod dispatcher
2017-07-27 14:16:49 +02:00
Murat Kabilov
3ad4b127c4
Fix graceful shutdown
...
graceful shutdown of goroutines on operator exit
2017-07-27 12:54:22 +02:00
Murat Kabilov
1f8b37f33d
Make use of kubernetes client-go v4
...
* client-go v4.0.0-beta0
* remove unnecessary methods for tpr object
* rest client: use interface instead of structure pointer
* proper names for constants; some clean up for log messages
* remove teams api client from controller and make it per cluster
2017-07-25 15:25:17 +02:00