Greg greg
  • Joined on 2018-11-05
greg commented on issue kosmos/chef#160 2020-05-07 09:02:13 +00:00
Set up Postgres replication

This took more work than I originally thought to get it right, but I'm getting satisfied with the Chef resource I wrote to set up a PostgreSQL primary or replica, with a TLS cert provided by Let's Encrypt.

Now I'm going to perform the PostgreSQL upgrade in a VM and make sure everything goes smoothly

greg deleted branch feature/turn_ip_config from kosmos/chef 2020-05-02 12:43:46 +00:00
greg closed issue kosmos/chef#159 2020-05-02 12:43:41 +00:00
STUN and TURN discovery for ejabberd
greg merged pull request kosmos/chef#162 2020-05-02 12:43:40 +00:00
Make audio/video calls work
greg merged pull request kosmos/chef#162 2020-05-02 12:43:40 +00:00
Make audio/video calls work
greg pushed to master at kosmos/chef 2020-05-02 12:43:40 +00:00
0aae86b545 Merge branch 'feature/turn_ip_config' of kosmos/chef into master
4448ec2173 Configure TURN properly
Compare 2 commits »
greg commented on pull request kosmos/chef#161 2020-05-02 09:24:49 +00:00
Support audio/video calls for Kosmos XMPP accounts

LGTM! Let's merge after deploying it, in case the turn_ip is required for STUN to function

greg commented on issue kosmos/chef#160 2020-05-01 10:01:39 +00:00
Set up Postgres replication

As discussed in #147 it makes sense to first upgrade the current PostgreSQL server on andromeda to version 12, since the replication configuration has been improved (and simplified). In version 10 the replication settings had to be added to a config file in the data directory, since 12 they live in postgresql.conf with the rest of the config.

I have followed this tutorial to set up replication between two VMs: https://www.percona.com/blog/2019/10/11/how-to-set-up-streaming-replication-in-postgresql-12/

The new set up will have PostgreSQL run with TLS enabled, with certs generated by Let's Encrypt, so the clients and replication can be achieved securely.

In order to secure the servers, we will use a firewall rule that only allows connections from the IP of the servers that need it. We will also use client authentication to limit access to specific databases for each server, and allow for the replication server to the replication database

Now I need to remove some hardcoded values from the new recipes, using instead values from the Chef nodes living in the repo in nodes

I think we can start with the upgrade to 12 on Andromeda and switch to the new config, maybe on Tuesday? After this first step that will require a short downtime, we can install PostgreSQL to the new Hetzner server and confirm replication works, this will not require downtime

greg deleted branch bugfix/152-remove_encryption_keys_tls from kosmos/chef 2020-04-30 15:50:52 +00:00
greg merged pull request kosmos/chef#157 2020-04-30 15:50:30 +00:00
Remove the encryption keys after TLS cert renewal
greg closed issue kosmos/chef#152 2020-04-30 15:50:30 +00:00
Remove the encryption key lines from the dirsrv config on TLS cert renewal
greg pushed to master at kosmos/chef 2020-04-30 15:50:30 +00:00
53d53f2375 Merge branch 'bugfix/152-remove_encryption_keys_tls' of kosmos/chef into master
1c920a8cb2 Remove the encryption keys after TLS cert renewal
5e3c8066f9 Add the missing certbot command to generate the LDAP TLS cert
d01c9a4d0a Fix the name of the deploy certbot hook
Compare 4 commits »
greg merged pull request kosmos/chef#157 2020-04-30 15:50:30 +00:00
Remove the encryption keys after TLS cert renewal
greg commented on issue kosmos/chef#147 2020-04-23 13:57:49 +00:00
Prepare Gitea migration (from GKE to Kosmos server)

Thanks, I got replication in Postgres 12 to work and it is much better. Its options are part of the normal config, no more recovery.conf in the data directory, and the initial sync can now set up the master. PostgreSQL provide official packages for 12 on Ubuntu 18.04, so that's easy to set up using the existing upstream cookbook

We should update from Postgres 10 to 12 before setting up replication on the new server, I think that would be the easiest route. For our setup with just one database pg_upgrade looks like a good fit, I remember using it before, probably to switch from PostgreSQL 9 to 10

greg deleted branch bugfix/153-update_ejabberd_20.03 from kosmos/chef 2020-04-21 13:39:04 +00:00
greg merged pull request kosmos/chef#155 2020-04-21 13:38:57 +00:00
Update ejabberd to 20.03
greg pushed to master at kosmos/chef 2020-04-21 13:38:57 +00:00
ee13c3cbe9 Merge branch 'bugfix/153-update_ejabberd_20.03' of kosmos/chef into master
db8bb44c8b Update ejabberd to 20.03
f5dd2c7de9 Fix the command importing the schema on db creation
Compare 3 commits »
greg closed issue kosmos/chef#153 2020-04-21 13:38:57 +00:00
ejabberd web admin auth failing
greg deleted branch bugfix/ldap_invalid_aci from kosmos/chef 2020-04-21 11:23:00 +00:00
greg pushed to master at kosmos/chef 2020-04-21 11:22:53 +00:00
4c1879b84e Merge branch 'bugfix/ldap_invalid_aci' of kosmos/chef into master
3ca8ab45da Fix the invalid ACIs on initial creation
Compare 2 commits »